CallbackManagerForChainRun Class — langchain Architecture
Architecture documentation for the CallbackManagerForChainRun class in manager.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD b93bd86b_bc7d_6306_d455_f46332e294fa["CallbackManagerForChainRun"] e85ab975_2820_2512_9967_d5636d6c818a["ParentRunManager"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|extends| e85ab975_2820_2512_9967_d5636d6c818a b793455e_fb4f_5778_19b0_9da3f3207dd5["ChainManagerMixin"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|extends| b793455e_fb4f_5778_19b0_9da3f3207dd5 35cf5db6_bcb1_b854_6ebb_5e0368e51b58["manager.py"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|defined in| 35cf5db6_bcb1_b854_6ebb_5e0368e51b58 906b2e13_7cba_ffa6_1121_b8be799d68d2["on_chain_end()"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|method| 906b2e13_7cba_ffa6_1121_b8be799d68d2 53be8fd5_4ffb_abb1_b63c_18b7fcbba2c4["on_chain_error()"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|method| 53be8fd5_4ffb_abb1_b63c_18b7fcbba2c4 37cc9641_ba91_34b8_3fe6_6dd0e4ccf2e0["on_agent_action()"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|method| 37cc9641_ba91_34b8_3fe6_6dd0e4ccf2e0 235bf91c_f450_7c16_db4b_6ee06b24a8a2["on_agent_finish()"] b93bd86b_bc7d_6306_d455_f46332e294fa -->|method| 235bf91c_f450_7c16_db4b_6ee06b24a8a2
Relationship Graph
Source Code
libs/core/langchain_core/callbacks/manager.py lines 855–942
class CallbackManagerForChainRun(ParentRunManager, ChainManagerMixin):
"""Callback manager for chain run."""
def on_chain_end(self, outputs: dict[str, Any] | Any, **kwargs: Any) -> None:
"""Run when chain ends running.
Args:
outputs: The outputs of the chain.
**kwargs: Additional keyword arguments.
"""
if not self.handlers:
return
handle_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,
)
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
handle_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,
)
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
handle_event(
self.handlers,
"on_agent_action",
"ignore_agent",
action,
run_id=self.run_id,
parent_run_id=self.parent_run_id,
tags=self.tags,
**kwargs,
)
def on_agent_finish(self, finish: AgentFinish, **kwargs: Any) -> None:
"""Run when agent finish is received.
Args:
finish: The agent finish.
**kwargs: Additional keyword arguments.
"""
if not self.handlers:
return
handle_event(
self.handlers,
"on_agent_finish",
Source
Frequently Asked Questions
What is the CallbackManagerForChainRun class?
CallbackManagerForChainRun is a class in the langchain codebase, defined in libs/core/langchain_core/callbacks/manager.py.
Where is CallbackManagerForChainRun defined?
CallbackManagerForChainRun is defined in libs/core/langchain_core/callbacks/manager.py at line 855.
What does CallbackManagerForChainRun extend?
CallbackManagerForChainRun extends ParentRunManager, ChainManagerMixin.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free