Home / Function/ compress_documents() — langchain Function Reference

compress_documents() — langchain Function Reference

Architecture documentation for the compress_documents() function in base.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  0b18acd4_5fe5_100e_b2ca_bcdf82d0633e["compress_documents()"]
  fe1f22c7_98da_054f_3979_844dfb23684e["DocumentCompressorPipeline"]
  0b18acd4_5fe5_100e_b2ca_bcdf82d0633e -->|defined in| fe1f22c7_98da_054f_3979_844dfb23684e
  style 0b18acd4_5fe5_100e_b2ca_bcdf82d0633e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain/langchain_classic/retrievers/document_compressors/base.py lines 23–51

    def compress_documents(
        self,
        documents: Sequence[Document],
        query: str,
        callbacks: Callbacks | None = None,
    ) -> Sequence[Document]:
        """Transform a list of documents."""
        for _transformer in self.transformers:
            if isinstance(_transformer, BaseDocumentCompressor):
                accepts_callbacks = (
                    signature(_transformer.compress_documents).parameters.get(
                        "callbacks",
                    )
                    is not None
                )
                if accepts_callbacks:
                    documents = _transformer.compress_documents(
                        documents,
                        query,
                        callbacks=callbacks,
                    )
                else:
                    documents = _transformer.compress_documents(documents, query)
            elif isinstance(_transformer, BaseDocumentTransformer):
                documents = _transformer.transform_documents(documents)
            else:
                msg = f"Got unexpected transformer type: {_transformer}"  # type: ignore[unreachable]
                raise ValueError(msg)  # noqa: TRY004
        return documents

Domain

Subdomains

Frequently Asked Questions

What does compress_documents() do?
compress_documents() is a function in the langchain codebase, defined in libs/langchain/langchain_classic/retrievers/document_compressors/base.py.
Where is compress_documents() defined?
compress_documents() is defined in libs/langchain/langchain_classic/retrievers/document_compressors/base.py at line 23.

Analyze Your Own Codebase

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

Try Supermodel Free