get_text_embedding_similarity

get_text_embedding_similarity(reference_1, reference_2, *, model=None)[source]

Get the pairwise similarity.

Parameters:
  • reference_1 (str | curies.Reference | curies.ReferenceTuple) – A reference, given as a string or Reference object

  • reference_2 (str | curies.Reference | curies.ReferenceTuple) – A second reference

  • model (sentence_transformers.SentenceTransformer | None) – A sentence transformer model. Defaults to all-MiniLM-L6-v2 if not given.

Returns:

A floating point similarity, if text is available for both references, otherwise none

Return type:

float | None

import pyobo

similarity = pyobo.get_text_embedding_similarity("GO:0000001", "GO:0000004")
# 0.24702128767967224

If you want to do multiple operations, load up the model for reuse

import pyobo
from pyobo.api.embedding import get_text_embedding_model

model = get_text_embedding_model()
similarity = pyobo.get_text_embedding_similarity("GO:0000001", "GO:0000004", model=model)
# 0.24702128767967224