_load_map_reduce_chain() — langchain Function Reference
Architecture documentation for the _load_map_reduce_chain() function in loading.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD e6777eb7_8bd9_f52f_f8f3_e508dcd0301b["_load_map_reduce_chain()"] bca47bc4_997d_4fc4_b050_2e6593c54792["loading.py"] e6777eb7_8bd9_f52f_f8f3_e508dcd0301b -->|defined in| bca47bc4_997d_4fc4_b050_2e6593c54792 style e6777eb7_8bd9_f52f_f8f3_e508dcd0301b fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain/langchain_classic/chains/qa_with_sources/loading.py lines 83–138
def _load_map_reduce_chain(
llm: BaseLanguageModel,
*,
question_prompt: BasePromptTemplate = map_reduce_prompt.QUESTION_PROMPT,
combine_prompt: BasePromptTemplate = map_reduce_prompt.COMBINE_PROMPT,
document_prompt: BasePromptTemplate = map_reduce_prompt.EXAMPLE_PROMPT,
combine_document_variable_name: str = "summaries",
map_reduce_document_variable_name: str = "context",
collapse_prompt: BasePromptTemplate | None = None,
reduce_llm: BaseLanguageModel | None = None,
collapse_llm: BaseLanguageModel | None = None,
verbose: bool | None = None,
token_max: int = 3000,
**kwargs: Any,
) -> MapReduceDocumentsChain:
map_chain = LLMChain(llm=llm, prompt=question_prompt, verbose=verbose)
_reduce_llm = reduce_llm or llm
reduce_chain = LLMChain(llm=_reduce_llm, prompt=combine_prompt, verbose=verbose)
combine_documents_chain = StuffDocumentsChain(
llm_chain=reduce_chain,
document_variable_name=combine_document_variable_name,
document_prompt=document_prompt,
verbose=verbose,
)
if collapse_prompt is None:
collapse_chain = None
if collapse_llm is not None:
msg = (
"collapse_llm provided, but collapse_prompt was not: please "
"provide one or stop providing collapse_llm."
)
raise ValueError(msg)
else:
_collapse_llm = collapse_llm or llm
collapse_chain = StuffDocumentsChain(
llm_chain=LLMChain(
llm=_collapse_llm,
prompt=collapse_prompt,
verbose=verbose,
),
document_variable_name=combine_document_variable_name,
document_prompt=document_prompt,
)
reduce_documents_chain = ReduceDocumentsChain(
combine_documents_chain=combine_documents_chain,
collapse_documents_chain=collapse_chain,
token_max=token_max,
verbose=verbose,
)
return MapReduceDocumentsChain(
llm_chain=map_chain,
reduce_documents_chain=reduce_documents_chain,
document_variable_name=map_reduce_document_variable_name,
verbose=verbose,
**kwargs,
)
Domain
Subdomains
Source
Frequently Asked Questions
What does _load_map_reduce_chain() do?
_load_map_reduce_chain() is a function in the langchain codebase, defined in libs/langchain/langchain_classic/chains/qa_with_sources/loading.py.
Where is _load_map_reduce_chain() defined?
_load_map_reduce_chain() is defined in libs/langchain/langchain_classic/chains/qa_with_sources/loading.py at line 83.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free