Home / Class/ AsyncCallbackManagerForChainRun Class — langchain Architecture

AsyncCallbackManagerForChainRun Class — langchain Architecture

Architecture documentation for the AsyncCallbackManagerForChainRun class in manager.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  45c5be13_686d_fae5_89db_8507f0d9aa71["AsyncCallbackManagerForChainRun"]
  3a2e20d8_f61b_1bdd_21d3_f60011fbae36["AsyncParentRunManager"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|extends| 3a2e20d8_f61b_1bdd_21d3_f60011fbae36
  b793455e_fb4f_5778_19b0_9da3f3207dd5["ChainManagerMixin"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|extends| b793455e_fb4f_5778_19b0_9da3f3207dd5
  35cf5db6_bcb1_b854_6ebb_5e0368e51b58["manager.py"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|defined in| 35cf5db6_bcb1_b854_6ebb_5e0368e51b58
  69278717_503f_81f1_93db_b741754c3a19["get_sync()"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|method| 69278717_503f_81f1_93db_b741754c3a19
  fd5fc59b_6625_0483_d4cc_6667127acc1c["on_chain_end()"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|method| fd5fc59b_6625_0483_d4cc_6667127acc1c
  55b5c90c_150b_09ee_3f8c_2a9d3e5b5acd["on_chain_error()"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|method| 55b5c90c_150b_09ee_3f8c_2a9d3e5b5acd
  0936cb8a_46ef_fe47_1c67_5d953e5e285c["on_agent_action()"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|method| 0936cb8a_46ef_fe47_1c67_5d953e5e285c
  51a2b3ed_079f_5dab_af31_59776f86cd4c["on_agent_finish()"]
  45c5be13_686d_fae5_89db_8507f0d9aa71 -->|method| 51a2b3ed_079f_5dab_af31_59776f86cd4c

Relationship Graph

Source Code

libs/core/langchain_core/callbacks/manager.py lines 945–1051

class AsyncCallbackManagerForChainRun(AsyncParentRunManager, ChainManagerMixin):
    """Async callback manager for chain run."""

    def get_sync(self) -> CallbackManagerForChainRun:
        """Get the equivalent sync `RunManager`.

        Returns:
            The sync `RunManager`.
        """
        return CallbackManagerForChainRun(
            run_id=self.run_id,
            handlers=self.handlers,
            inheritable_handlers=self.inheritable_handlers,
            parent_run_id=self.parent_run_id,
            tags=self.tags,
            inheritable_tags=self.inheritable_tags,
            metadata=self.metadata,
            inheritable_metadata=self.inheritable_metadata,
        )

    @shielded
    async def on_chain_end(self, outputs: dict[str, Any] | Any, **kwargs: Any) -> None:
        """Run when a chain ends running.

        Args:
            outputs: The outputs of the chain.
            **kwargs: Additional keyword arguments.

        """
        if not self.handlers:
            return
        await ahandle_event(
            self.handlers,
            "on_chain_end",
            "ignore_chain",
            outputs,
            run_id=self.run_id,
            parent_run_id=self.parent_run_id,
            tags=self.tags,
            **kwargs,
        )

    @shielded
    async def on_chain_error(
        self,
        error: BaseException,
        **kwargs: Any,
    ) -> None:
        """Run when chain errors.

        Args:
            error: The error.
            **kwargs: Additional keyword arguments.

        """
        if not self.handlers:
            return
        await ahandle_event(
            self.handlers,
            "on_chain_error",
            "ignore_chain",
            error,
            run_id=self.run_id,
            parent_run_id=self.parent_run_id,
            tags=self.tags,
            **kwargs,
        )

    async def on_agent_action(self, action: AgentAction, **kwargs: Any) -> None:
        """Run when agent action is received.

        Args:
            action: The agent action.
            **kwargs: Additional keyword arguments.
        """
        if not self.handlers:
            return
        await ahandle_event(
            self.handlers,
            "on_agent_action",
            "ignore_agent",

Frequently Asked Questions

What is the AsyncCallbackManagerForChainRun class?
AsyncCallbackManagerForChainRun is a class in the langchain codebase, defined in libs/core/langchain_core/callbacks/manager.py.
Where is AsyncCallbackManagerForChainRun defined?
AsyncCallbackManagerForChainRun is defined in libs/core/langchain_core/callbacks/manager.py at line 945.
What does AsyncCallbackManagerForChainRun extend?
AsyncCallbackManagerForChainRun extends AsyncParentRunManager, ChainManagerMixin.

Analyze Your Own Codebase

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

Try Supermodel Free