Home / Function/ add_documents() — langchain Function Reference

add_documents() — langchain Function Reference

Architecture documentation for the add_documents() function in time_weighted_retriever.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  e114f71b_ff52_f31f_69a1_90f44dd5480b["add_documents()"]
  57cc5b02_6622_339b_0806_ef06db1bc8c7["TimeWeightedVectorStoreRetriever"]
  e114f71b_ff52_f31f_69a1_90f44dd5480b -->|defined in| 57cc5b02_6622_339b_0806_ef06db1bc8c7
  style e114f71b_ff52_f31f_69a1_90f44dd5480b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain/langchain_classic/retrievers/time_weighted_retriever.py lines 164–178

    def add_documents(self, documents: list[Document], **kwargs: Any) -> list[str]:
        """Add documents to vectorstore."""
        current_time = kwargs.get("current_time")
        if current_time is None:
            current_time = datetime.datetime.now()
        # Avoid mutating input documents
        dup_docs = [deepcopy(d) for d in documents]
        for i, doc in enumerate(dup_docs):
            if "last_accessed_at" not in doc.metadata:
                doc.metadata["last_accessed_at"] = current_time
            if "created_at" not in doc.metadata:
                doc.metadata["created_at"] = current_time
            doc.metadata["buffer_idx"] = len(self.memory_stream) + i
        self.memory_stream.extend(dup_docs)
        return self.vectorstore.add_documents(dup_docs, **kwargs)

Domain

Subdomains

Frequently Asked Questions

What does add_documents() do?
add_documents() is a function in the langchain codebase, defined in libs/langchain/langchain_classic/retrievers/time_weighted_retriever.py.
Where is add_documents() defined?
add_documents() is defined in libs/langchain/langchain_classic/retrievers/time_weighted_retriever.py at line 164.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free