langchain_core.callbacks.manager.CallbackManager

class langchain_core.callbacks.manager.CallbackManager(handlers: List[BaseCallbackHandler], inheritable_handlers: Optional[List[BaseCallbackHandler]] = None, parent_run_id: Optional[UUID] = None, *, tags: Optional[List[str]] = None, inheritable_tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, inheritable_metadata: Optional[Dict[str, Any]] = None)[源代码]

LangChain 的回调管理器。

初始化回调管理器。

参数
  • handlers (列表[BaseCallbackHandler]) – 处理器。

  • inheritable_handlers (可选[列表[BaseCallbackHandler]]) – 可以继承的处理器。默认为 None。

  • parent_run_id (可选[UUID]) – 父运行ID。默认为None。

  • tags (可选[列表[字符串]]) – 标签。默认为None。

  • inheritable_tags (可选[列表[字符串]]) – 可继承的标签。默认为None。

  • metadata (可选[字典[字符串, 任意类型]]) – 元数据。默认为None。

  • inheritable_metadata (可选[字典[字符串, 任意类型]]) –

属性

is_async

回调管理器是否为异步。

方法

__init__(处理器[, 继承处理器, ...])

初始化回调管理器。

add_handler(处理器[, 继承])

向回调管理器添加处理器。

add_metadata(元数据[, 继承])

向回调管理器添加元数据。

add_tags(标签[, 继承])

向回调管理器添加标签。

configure([继承回调, ...])

配置回调管理器。

copy()

复制回调管理器。

on_chain_start(序列化版本, 输入[, 运行ID])

在链开始运行时执行。

on_chat_model_start(序列化版本, 消息[, ...])

在LLM开始运行时执行。

on_custom_event(名称, 数据[, 运行ID])

向处理器发送临时事件(异步版本)。

on_llm_start(序列化版本, 提示[, 运行ID])

在LLM开始运行时执行。

on_retriever_start(序列化版本, 查询[, ...])

在检索器开始运行时执行。

on_tool_start(序列化版本, 输入字符串[, ...])

在工具开始运行时执行。

remove_handler(处理器)

从回调管理器中移除处理器。

remove_metadata(键)

从回调管理器中删除元数据。

remove_tags(tags)

从回调管理器中删除标签。

set_handler(handler[, inherit])

将处理程序设置为回调管理器上的唯一处理程序。

set_handlers(handlers[, inherit])

将处理程序设置为回调管理器上的唯一处理程序。

__init__(handlers: List[BaseCallbackHandler], inheritable_handlers: Optional[List[BaseCallbackHandler]] = None, parent_run_id: Optional[UUID] = None, *, tags: Optional[List[str]] = None, inheritable_tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, inheritable_metadata: Optional[Dict[str, Any]] = None) None

初始化回调管理器。

参数
  • handlers (列表[BaseCallbackHandler]) – 处理器。

  • inheritable_handlers (可选[列表[BaseCallbackHandler]]) – 可以继承的处理器。默认为 None。

  • parent_run_id (可选[UUID]) – 父运行ID。默认为None。

  • tags (可选[列表[字符串]]) – 标签。默认为None。

  • inheritable_tags (可选[列表[字符串]]) – 可继承的标签。默认为None。

  • metadata (可选[字典[字符串, 任意类型]]) – 元数据。默认为None。

  • inheritable_metadata (可选[字典[字符串, 任意类型]]) –

返回类型

None

add_handler(handler: BaseCallbackHandler, inherit: bool = True) None

向回调管理器添加处理器。

参数
  • handler (BaseCallbackHandler) – 需要添加的处理程序。

  • inherit (bool) – 是否继承处理程序。默认值是 True。

返回类型

None

add_metadata(metadata: Dict[str, Any], inherit: bool = True) None

向回调管理器添加元数据。

参数
  • metadata (Dict[str, Any]) – 需要添加的元数据。

  • inherit (bool) – 是否继承元数据。默认值是 True。

返回类型

None

add_tags(tags: List[str], inherit: bool = True) None

向回调管理器添加标签。

参数
  • tags (List[str]) – 需要添加的标签。

  • inherit (bool) – 是否继承标签。默认值是 True。

返回类型

None

classmethod configure(inheritable_callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None, local_callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None, verbose: bool = False, inheritable_tags: Optional[List[str]] = None, local_tags: Optional[List[str]] = None, inheritable_metadata: Optional[Dict[str, Any]] = None, local_metadata: Optional[Dict[str, Any]] = None) CallbackManager[source]

配置回调管理器。

参数
  • inheritable_callbacks (Optional[Callbacks], optional) – 可继承的回调。默认值是 None。

  • local_callbacks (Optional[Callbacks], optional) – 本地回调。默认值是 None。

  • verbose (bool, optional) – 是否启用详细模式。默认值是 False。

  • inheritable_tags (Optional[List[str]], optional) – 可继承的标签。默认值是 None。

  • local_tags (Optional[List[str]], optional) – 本地标签。默认值是 None。

  • inheritable_metadata (Optional[Dict[str, Any]], optional) – 可继承的元数据。默认值是 None。

  • local_metadata (Optional[Dict[str, Any]], optional) – 本地元数据。默认值是 None。

返回

配置过的回调管理器。

返回类型

CallbackManager

copy() T

复制回调管理器。

参数

self (T) –

返回类型

T

on_chain_start(serialized: Dict[str, Any], inputs: Union[Dict[str, Any], Any], run_id: Optional[UUID] = None, **kwargs: Any) CallbackManagerForChainRun[源代码]

在链开始运行时执行。

参数
  • serialized (Dict[str, Any]) – 序列化的链。

  • inputs (Union[Dict[str, Any], Any]) – 链的输入。

  • run_id (UUID, 可选项) – 运行的ID。默认为None。

  • **kwargs (任何) – 额外的关键字参数。

返回

链运行时的回调管理器。

返回类型

CallbackManagerForChainRun

on_chat_model_start(serialized: Dict[str, Any], messages: List[List[BaseMessage]], run_id: Optional[UUID] = None, **kwargs: Any) List[CallbackManagerForLLMRun][source]

在LLM开始运行时执行。

参数
  • serialized(《序列化”LLM(《Portable Computer Dictations”Language Model》”)) – 序列化的LLM。

  • messages(消息列表 – 消息列表。

  • run_id (UUID, 可选项) – 运行的ID。默认为None。

  • **kwargs (任何) – 额外的关键字参数。

返回

每个消息列表的回调管理器。

作为一个LLM运行。

返回类型

回调管理器列表

on_custom_event(name: str, data: Any, run_id: Optional[UUID] = None, **kwargs: Any) None[source]

向处理器发送临时事件(异步版本)。

此事件不应在任何LangChain内部代码中使用。该事件专门供库用户使用,用于分发针对其应用程序定制的自定义事件。

参数
  • namestr) – adhoc事件的名称。

  • dataAny) – adhoc事件的数据。

  • run_id(《运行ID” - 运行ID。默认值为None。

  • kwargs (任意类型) –

返回类型

None

新增于版本 0.2.14。

on_llm_start(serialized: Dict[str, Any], prompts: List[str], run_id: Optional[UUID] = None, **kwargs: Any) List[CallbackManagerForLLMRun][source]

在LLM开始运行时执行。

参数
  • serialized(《序列化”LLM(《Portable Computer Dictations”Language Model》”)) – 序列化的LLM。

  • prompts (字符串列表) – 提示列表。

  • run_id (UUID, 可选项) – 运行的ID。默认为None。

  • **kwargs (任何) – 额外的关键字参数。

返回

每个消息列表的回调管理器。

将提示作为LLM运行。

返回类型

回调管理器列表

on_retriever_start(serialized: Dict[str, Any], query: str, run_id: Optional[UUID] = None, parent_run_id: Optional[UUID] = None, **kwargs: Any) CallbackManagerForRetrieverRun[source]

在检索器开始运行时执行。

参数
  • serialized (Dict[str, Any]) – 序列化的检索器。

  • query (字符串) – 查询。

  • run_id (UUID, 可选项) – 运行的ID。默认为None。

  • parent_run_id (UUID, 可选) – 父运行的ID。默认为None。

  • **kwargs (任何) – 额外的关键字参数。

返回类型

CallbackManagerForRetrieverRun

on_tool_start() CallbackManagerForToolRun[source]

在工具开始运行时执行。

参数
  • serialized (Dict[str, Any]) – 工具的序列化表示。

  • input_str (str) – 将作为字符串传递给工具的输入。非字符串输入将被转换为字符串。

  • run_id (Optional[UUID]) – 运行的ID。默认为None。

  • parent_run_id (Optional[UUID]) – 父运行的ID。默认为None。

  • inputs (Optional[Dict[str, Any]]) – 如果提供,原始输入工具的输入。建议在需要原始输入时使用inputs替代input_str。如果提供,期望inputs格式为字典。键将对应工具中命名的参数。

  • **kwargs (任何) – 额外的关键字参数。

返回

工具运行的回调管理器。

返回类型

CallbackManagerForToolRun

remove_handler(handler: BaseCallbackHandler) None

从回调管理器中移除处理器。

参数

handler (BaseCallbackHandler) – 要移除的处理程序。

返回类型

None

remove_metadata(keys: List[str]) None

从回调管理器中删除元数据。

参数

keys (List[str]) – 要删除的键。

返回类型

None

remove_tags(tags: List[str]) None

从回调管理器中删除标签。

参数

tags (List[str]) – 要删除的标签。

返回类型

None

set_handler(handler: BaseCallbackHandler, inherit: bool = True) None

将处理程序设置为回调管理器上的唯一处理程序。

参数
  • handler (BaseCallbackHandler) – 要设置的处理器。

  • inherit (bool) – 是否继承处理程序。默认值是 True。

返回类型

None

set_handlers(handlers: List[BaseCallbackHandler], inherit: bool = True) None

将处理程序设置为回调管理器上的唯一处理程序。

参数
  • handlers (List[BaseCallbackHandler]) – 要设置的处理器列表。

  • inherit (bool) – 是否继承处理器。默认为 True。

返回类型

None

使用 CallbackManager 的示例