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",
Source
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