test_similarity.py — langchain Source File
Architecture documentation for test_similarity.py, a python file in the langchain codebase. 7 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 1458705c_6963_08f1_0216_aefb63eadfc8["test_similarity.py"] cfe2bde5_180e_e3b0_df2b_55b3ebaca8e7["collections.abc"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> cfe2bde5_180e_e3b0_df2b_55b3ebaca8e7 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3 91721f45_4909_e489_8c1f_084f8bd87145["typing_extensions"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> 91721f45_4909_e489_8c1f_084f8bd87145 c554676d_b731_47b2_a98f_c1c2d537c0aa["langchain_core.documents"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> c554676d_b731_47b2_a98f_c1c2d537c0aa bc46b61d_cfdf_3f6b_a9dd_ac2a328d84b3["langchain_core.embeddings"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> bc46b61d_cfdf_3f6b_a9dd_ac2a328d84b3 a4804e3f_4fa3_c9fc_7121_e057c2daa7e3["langchain_core.example_selectors"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> a4804e3f_4fa3_c9fc_7121_e057c2daa7e3 d55af636_303c_0eb6_faee_20d89bd952d5["langchain_core.vectorstores"] 1458705c_6963_08f1_0216_aefb63eadfc8 --> d55af636_303c_0eb6_faee_20d89bd952d5 style 1458705c_6963_08f1_0216_aefb63eadfc8 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
from collections.abc import Iterable
from typing import Any
from typing_extensions import override
from langchain_core.documents import Document
from langchain_core.embeddings import Embeddings, FakeEmbeddings
from langchain_core.example_selectors import (
MaxMarginalRelevanceExampleSelector,
SemanticSimilarityExampleSelector,
)
from langchain_core.vectorstores import VectorStore
class DummyVectorStore(VectorStore):
def __init__(self, init_arg: str | None = None):
self.texts: list[str] = []
self.metadatas: list[dict] = []
self._embeddings: Embeddings | None = None
self.init_arg = init_arg
@property
def embeddings(self) -> Embeddings | None:
return self._embeddings
@override
def add_texts(
self,
texts: Iterable[str],
metadatas: list[dict] | None = None,
**kwargs: Any,
) -> list[str]:
self.texts.extend(texts)
if metadatas:
self.metadatas.extend(metadatas)
return ["dummy_id"]
@override
def similarity_search(
self, query: str, k: int = 4, **kwargs: Any
) -> list[Document]:
return [
Document(
page_content=query, metadata={"query": query, "k": k, "other": "other"}
)
] * k
@override
def max_marginal_relevance_search(
self,
query: str,
k: int = 4,
fetch_k: int = 20,
lambda_mult: float = 0.5,
**kwargs: Any,
) -> list[Document]:
return [
Document(
page_content=query,
metadata={"query": query, "k": k, "fetch_k": fetch_k, "other": "other"},
// ... (188 more lines)
Domain
Subdomains
Functions
Classes
Dependencies
- collections.abc
- langchain_core.documents
- langchain_core.embeddings
- langchain_core.example_selectors
- langchain_core.vectorstores
- typing
- typing_extensions
Source
Frequently Asked Questions
What does test_similarity.py do?
test_similarity.py is a source file in the langchain codebase, written in python. It belongs to the CoreAbstractions domain, Serialization subdomain.
What functions are defined in test_similarity.py?
test_similarity.py defines 10 function(s): test_aadd_example, test_add_example, test_afrom_examples, test_aselect_examples, test_from_examples, test_mmr_afrom_examples, test_mmr_aselect_examples, test_mmr_from_examples, test_mmr_select_examples, test_select_examples.
What does test_similarity.py depend on?
test_similarity.py imports 7 module(s): collections.abc, langchain_core.documents, langchain_core.embeddings, langchain_core.example_selectors, langchain_core.vectorstores, typing, typing_extensions.
Where is test_similarity.py in the architecture?
test_similarity.py is located at libs/core/tests/unit_tests/example_selectors/test_similarity.py (domain: CoreAbstractions, subdomain: Serialization, directory: libs/core/tests/unit_tests/example_selectors).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free