from sentence_transformers import SentenceTransformer, SimilarityFunction model = SentenceTransformer( "sentence-transformers/all-MiniLM-L6-v2", similarity_fn_name=SimilarityFunction.COSINE, ) reference_texts = [ "Reset an account password.", "Schedule a database backup.", "Bake sourdough bread.", ] queries = [ "Change my account password.", "Schedule a backup for the database.", ] reference_embeddings = model.encode(reference_texts) query_embeddings = model.encode(queries) scores = model.similarity(query_embeddings, reference_embeddings) print("similarity function:", model.similarity_fn_name) print("score matrix:") for query, row in zip(queries, scores): print(query) print(" " + " ".join(f"{float(score):.4f}" for score in row)) print("top matches:") for query, row in zip(queries, scores): best_index = int(row.argmax()) best_score = float(row[best_index]) print(f"{best_score:.4f} | {query} -> {reference_texts[best_index]}")