cosine_similarity() — langchain Function Reference
Architecture documentation for the cosine_similarity() function in _utils.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 44a9c158_f806_06f9_68ca_428cf2587404["cosine_similarity()"] 9778091a_f21e_e4e8_4db2_952e2e1cc2bc["_utils.py"] 44a9c158_f806_06f9_68ca_428cf2587404 -->|defined in| 9778091a_f21e_e4e8_4db2_952e2e1cc2bc 4297cc75_c880_749f_f3c8_4244b5565373["maximal_marginal_relevance()"] 4297cc75_c880_749f_f3c8_4244b5565373 -->|calls| 44a9c158_f806_06f9_68ca_428cf2587404 style 44a9c158_f806_06f9_68ca_428cf2587404 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/qdrant/langchain_qdrant/_utils.py lines 42–68
def cosine_similarity(X: Matrix, Y: Matrix) -> np.ndarray: # noqa: N803
"""Row-wise cosine similarity between two equal-width matrices."""
if len(X) == 0 or len(Y) == 0:
return np.array([])
x: np.ndarray = np.array(X)
y: np.ndarray = np.array(Y)
if x.shape[1] != y.shape[1]:
msg = (
f"Number of columns in X and Y must be the same. X has shape {x.shape} "
f"and Y has shape {y.shape}."
)
raise ValueError(msg)
try:
import simsimd as simd # noqa: PLC0415
x = np.array(x, dtype=np.float32)
y = np.array(y, dtype=np.float32)
return 1 - np.array(simd.cdist(x, y, metric="cosine"))
except ImportError:
x_norm = np.linalg.norm(x, axis=1)
y_norm = np.linalg.norm(y, axis=1)
# Ignore divide by zero errors run time warnings as those are handled below.
with np.errstate(divide="ignore", invalid="ignore"):
similarity = np.dot(x, y.T) / np.outer(x_norm, y_norm)
similarity[np.isnan(similarity) | np.isinf(similarity)] = 0.0
return similarity
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does cosine_similarity() do?
cosine_similarity() is a function in the langchain codebase, defined in libs/partners/qdrant/langchain_qdrant/_utils.py.
Where is cosine_similarity() defined?
cosine_similarity() is defined in libs/partners/qdrant/langchain_qdrant/_utils.py at line 42.
What calls cosine_similarity()?
cosine_similarity() is called by 1 function(s): maximal_marginal_relevance.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free