CustomAddDocumentsVectorstore Class — langchain Architecture
Architecture documentation for the CustomAddDocumentsVectorstore class in test_vectorstore.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 772c8084_cd97_39bb_e9dc_0664d06811a8["CustomAddDocumentsVectorstore"] 6c336ac6_f55c_1ad7_6db3_73dbd71fb625["VectorStore"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|extends| 6c336ac6_f55c_1ad7_6db3_73dbd71fb625 547b9326_0fd1_ea2c_f15c_82026f35f74c["test_vectorstore.py"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|defined in| 547b9326_0fd1_ea2c_f15c_82026f35f74c 6527d411_3787_34f8_f3d3_9921d51c1d0a["__init__()"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|method| 6527d411_3787_34f8_f3d3_9921d51c1d0a 2f8ff0fc_e8aa_b0a3_2e0d_89782118c0c7["add_documents()"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|method| 2f8ff0fc_e8aa_b0a3_2e0d_89782118c0c7 56866761_9820_0bf7_e63a_bea066fe75f9["get_by_ids()"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|method| 56866761_9820_0bf7_e63a_bea066fe75f9 a4dd91a1_cd49_7327_2a4c_3a42aaf0fbda["from_texts()"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|method| a4dd91a1_cd49_7327_2a4c_3a42aaf0fbda 8dec573f_c0c5_92fa_b94d_30c5f77998fe["similarity_search()"] 772c8084_cd97_39bb_e9dc_0664d06811a8 -->|method| 8dec573f_c0c5_92fa_b94d_30c5f77998fe
Relationship Graph
Source Code
libs/core/tests/unit_tests/vectorstores/test_vectorstore.py lines 74–117
class CustomAddDocumentsVectorstore(VectorStore):
"""A VectorStore that only implements add documents."""
def __init__(self) -> None:
self.store: dict[str, Document] = {}
@override
def add_documents(
self,
documents: list[Document],
*,
ids: list[str] | None = None,
**kwargs: Any,
) -> list[str]:
ids_ = []
ids_iter = iter(ids or [])
for document in documents:
id_ = next(ids_iter) if ids else document.id or str(uuid.uuid4())
self.store[id_] = Document(
id=id_, page_content=document.page_content, metadata=document.metadata
)
ids_.append(id_)
return ids_
def get_by_ids(self, ids: Sequence[str], /) -> list[Document]:
return [self.store[id_] for id_ in ids if id_ in self.store]
@classmethod
@override
def from_texts(
cls,
texts: list[str],
embedding: Embeddings,
metadatas: list[dict] | None = None,
**kwargs: Any,
) -> CustomAddDocumentsVectorstore:
vectorstore = CustomAddDocumentsVectorstore()
vectorstore.add_texts(texts, metadatas=metadatas, **kwargs)
return vectorstore
def similarity_search(
self, query: str, k: int = 4, **kwargs: Any
) -> list[Document]:
raise NotImplementedError
Extends
Source
Frequently Asked Questions
What is the CustomAddDocumentsVectorstore class?
CustomAddDocumentsVectorstore is a class in the langchain codebase, defined in libs/core/tests/unit_tests/vectorstores/test_vectorstore.py.
Where is CustomAddDocumentsVectorstore defined?
CustomAddDocumentsVectorstore is defined in libs/core/tests/unit_tests/vectorstores/test_vectorstore.py at line 74.
What does CustomAddDocumentsVectorstore extend?
CustomAddDocumentsVectorstore extends VectorStore.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free