similarity_search_with_score() — langchain Function Reference
Architecture documentation for the similarity_search_with_score() function in qdrant.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 554efa04_b226_2427_5014_2b27a2b0b32f["similarity_search_with_score()"] 671b47a0_cdd3_a89d_e90f_0631a4bd67d3["QdrantVectorStore"] 554efa04_b226_2427_5014_2b27a2b0b32f -->|defined in| 671b47a0_cdd3_a89d_e90f_0631a4bd67d3 7d69a481_b834_1cc5_a801_d2c961c57680["similarity_search()"] 7d69a481_b834_1cc5_a801_d2c961c57680 -->|calls| 554efa04_b226_2427_5014_2b27a2b0b32f 301071b8_045d_6589_e8d8_41bad61e4260["_require_embeddings()"] 554efa04_b226_2427_5014_2b27a2b0b32f -->|calls| 301071b8_045d_6589_e8d8_41bad61e4260 a55135fe_576d_57f4_200f_c6402baada22["_document_from_point()"] 554efa04_b226_2427_5014_2b27a2b0b32f -->|calls| a55135fe_576d_57f4_200f_c6402baada22 style 554efa04_b226_2427_5014_2b27a2b0b32f fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/qdrant/langchain_qdrant/qdrant.py lines 551–643
def similarity_search_with_score(
self,
query: str,
k: int = 4,
filter: models.Filter | None = None, # noqa: A002
search_params: models.SearchParams | None = None,
offset: int = 0,
score_threshold: float | None = None,
consistency: models.ReadConsistency | None = None,
hybrid_fusion: models.FusionQuery | None = None,
**kwargs: Any,
) -> list[tuple[Document, float]]:
"""Return docs most similar to query.
Returns:
List of documents most similar to the query text and distance for each.
"""
query_options = {
"collection_name": self.collection_name,
"query_filter": filter,
"search_params": search_params,
"limit": k,
"offset": offset,
"with_payload": True,
"with_vectors": False,
"score_threshold": score_threshold,
"consistency": consistency,
**kwargs,
}
if self.retrieval_mode == RetrievalMode.DENSE:
embeddings = self._require_embeddings("DENSE mode")
query_dense_embedding = embeddings.embed_query(query)
results = self.client.query_points(
query=query_dense_embedding,
using=self.vector_name,
**query_options,
).points
elif self.retrieval_mode == RetrievalMode.SPARSE:
query_sparse_embedding = self.sparse_embeddings.embed_query(query)
results = self.client.query_points(
query=models.SparseVector(
indices=query_sparse_embedding.indices,
values=query_sparse_embedding.values,
),
using=self.sparse_vector_name,
**query_options,
).points
elif self.retrieval_mode == RetrievalMode.HYBRID:
embeddings = self._require_embeddings("HYBRID mode")
query_dense_embedding = embeddings.embed_query(query)
query_sparse_embedding = self.sparse_embeddings.embed_query(query)
results = self.client.query_points(
prefetch=[
models.Prefetch(
using=self.vector_name,
query=query_dense_embedding,
filter=filter,
limit=k,
params=search_params,
),
models.Prefetch(
using=self.sparse_vector_name,
query=models.SparseVector(
indices=query_sparse_embedding.indices,
values=query_sparse_embedding.values,
),
filter=filter,
limit=k,
params=search_params,
),
],
query=hybrid_fusion or models.FusionQuery(fusion=models.Fusion.RRF),
**query_options,
).points
else:
msg = f"Invalid retrieval mode. {self.retrieval_mode}."
raise ValueError(msg)
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does similarity_search_with_score() do?
similarity_search_with_score() is a function in the langchain codebase, defined in libs/partners/qdrant/langchain_qdrant/qdrant.py.
Where is similarity_search_with_score() defined?
similarity_search_with_score() is defined in libs/partners/qdrant/langchain_qdrant/qdrant.py at line 551.
What does similarity_search_with_score() call?
similarity_search_with_score() calls 2 function(s): _document_from_point, _require_embeddings.
What calls similarity_search_with_score()?
similarity_search_with_score() is called by 1 function(s): similarity_search.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free