compress_documents() — langchain Function Reference
Architecture documentation for the compress_documents() function in chain_filter.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD ca9184b3_c6c0_7b7a_53fb_b14fa9b3373f["compress_documents()"] c18417f6_2ef7_e19d_e7f5_79027ef3dd22["LLMChainFilter"] ca9184b3_c6c0_7b7a_53fb_b14fa9b3373f -->|defined in| c18417f6_2ef7_e19d_e7f5_79027ef3dd22 style ca9184b3_c6c0_7b7a_53fb_b14fa9b3373f fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain/langchain_classic/retrievers/document_compressors/chain_filter.py lines 49–79
def compress_documents(
self,
documents: Sequence[Document],
query: str,
callbacks: Callbacks | None = None,
) -> Sequence[Document]:
"""Filter down documents based on their relevance to the query."""
filtered_docs = []
config = RunnableConfig(callbacks=callbacks)
outputs = zip(
self.llm_chain.batch(
[self.get_input(query, doc) for doc in documents],
config=config,
),
documents,
strict=False,
)
for output_, doc in outputs:
include_doc = None
if isinstance(self.llm_chain, LLMChain):
output = output_[self.llm_chain.output_key]
if self.llm_chain.prompt.output_parser is not None:
include_doc = self.llm_chain.prompt.output_parser.parse(output)
elif isinstance(output_, bool):
include_doc = output_
if include_doc:
filtered_docs.append(doc)
return filtered_docs
Domain
Subdomains
Source
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/chain_filter.py.
Where is compress_documents() defined?
compress_documents() is defined in libs/langchain/langchain_classic/retrievers/document_compressors/chain_filter.py at line 49.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free