Home / Function/ _do_generation() — langchain Function Reference

_do_generation() — langchain Function Reference

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

Entity Profile

Dependency Diagram

graph TD
  00bfeba3_6a6a_fdf0_f606_e42b68be827d["_do_generation()"]
  c827daf0_9d8e_4865_a678_af8144586d0e["FlareChain"]
  00bfeba3_6a6a_fdf0_f606_e42b68be827d -->|defined in| c827daf0_9d8e_4865_a678_af8144586d0e
  275efbc2_764c_f1ab_5418_e3b25379ab50["_do_retrieval()"]
  275efbc2_764c_f1ab_5418_e3b25379ab50 -->|calls| 00bfeba3_6a6a_fdf0_f606_e42b68be827d
  style 00bfeba3_6a6a_fdf0_f606_e42b68be827d fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain/langchain_classic/chains/flare/base.py lines 135–158

    def _do_generation(
        self,
        questions: list[str],
        user_input: str,
        response: str,
        _run_manager: CallbackManagerForChainRun,
    ) -> tuple[str, bool]:
        callbacks = _run_manager.get_child()
        docs = []
        for question in questions:
            docs.extend(self.retriever.invoke(question))
        context = "\n\n".join(d.page_content for d in docs)
        result = self.response_chain.invoke(
            {
                "user_input": user_input,
                "context": context,
                "response": response,
            },
            {"callbacks": callbacks},
        )
        if isinstance(result, AIMessage):
            result = result.content
        marginal, finished = self.output_parser.parse(result)
        return marginal, finished

Subdomains

Called By

Frequently Asked Questions

What does _do_generation() do?
_do_generation() is a function in the langchain codebase, defined in libs/langchain/langchain_classic/chains/flare/base.py.
Where is _do_generation() defined?
_do_generation() is defined in libs/langchain/langchain_classic/chains/flare/base.py at line 135.
What calls _do_generation()?
_do_generation() is called by 1 function(s): _do_retrieval.

Analyze Your Own Codebase

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

Try Supermodel Free