AsyncBaseTracer#
- class langchain_core.tracers.base.AsyncBaseTracer(*, _schema_format: Literal['original', 'streaming_events', 'original+chat'] = 'original', **kwargs: Any)[source]#
Async Base interface for tracers.
Initialize the tracer.
- Parameters:
_schema_format (Literal['original', 'streaming_events', 'original+chat']) –
Primarily changes how the inputs and outputs are handled. For internal use only. This API will change.
’original’ is the format used by all current tracers. This format is slightly inconsistent with respect to inputs and outputs.
’streaming_events’ is used for supporting streaming events, for internal usage. It will likely change in the future, or be deprecated entirely in favor of a dedicated async tracer for streaming events.
’original+chat’ is a format that is the same as ‘original’ except it does NOT raise an attribute error on_chat_model_start
kwargs (Any) – Additional keyword arguments that will be passed to the superclass.
Attributes
ignore_agent
Whether to ignore agent callbacks.
ignore_chain
Whether to ignore chain callbacks.
ignore_chat_model
Whether to ignore chat model callbacks.
ignore_custom_event
Ignore custom event.
ignore_llm
Whether to ignore LLM callbacks.
ignore_retriever
Whether to ignore retriever callbacks.
ignore_retry
Whether to ignore retry callbacks.
log_missing_parent
raise_error
Whether to raise an error if an exception occurs.
run_inline
Whether to run the callback inline.
Methods
__init__
(*[, _schema_format])Initialize the tracer.
on_agent_action
(action, *, run_id[, ...])Run on agent action.
on_agent_finish
(finish, *, run_id[, ...])Run on the agent end.
on_chain_end
(outputs, *, run_id[, inputs])Run when a chain ends running.
on_chain_error
(error, *[, inputs])Run when chain errors.
on_chain_start
(serialized, inputs, *, run_id)Run when a chain starts running.
on_chat_model_start
(serialized, messages, *, ...)Run when a chat model starts running.
on_custom_event
(name, data, *, run_id[, ...])Override to define a handler for a custom event.
on_llm_end
(response, *, run_id[, ...])Run when LLM ends running.
on_llm_error
(error, *, run_id[, ...])Run when LLM errors.
on_llm_new_token
(token, *[, chunk, ...])Run on new LLM token.
on_llm_start
(serialized, prompts, *, run_id)Run when LLM starts running.
on_retriever_end
(documents, *, run_id[, ...])Run on the retriever end.
on_retriever_error
(error, *, run_id[, ...])Run on retriever error.
on_retriever_start
(serialized, query, *, run_id)Run on the retriever start.
on_retry
(retry_state, *, run_id, **kwargs)Run on a retry event.
on_text
(text, *, run_id[, parent_run_id, tags])Run on an arbitrary text.
on_tool_end
(output, *, run_id, **kwargs)Run when the tool ends running.
on_tool_error
(error, *, run_id[, ...])Run when tool errors.
on_tool_start
(serialized, input_str, *, run_id)Run when the tool starts running.
- __init__(*, _schema_format: Literal['original', 'streaming_events', 'original+chat'] = 'original', **kwargs: Any) None #
Initialize the tracer.
- Parameters:
_schema_format (Literal['original', 'streaming_events', 'original+chat']) –
Primarily changes how the inputs and outputs are handled. For internal use only. This API will change.
’original’ is the format used by all current tracers. This format is slightly inconsistent with respect to inputs and outputs.
’streaming_events’ is used for supporting streaming events, for internal usage. It will likely change in the future, or be deprecated entirely in favor of a dedicated async tracer for streaming events.
’original+chat’ is a format that is the same as ‘original’ except it does NOT raise an attribute error on_chat_model_start
kwargs (Any) – Additional keyword arguments that will be passed to the superclass.
- Return type:
None
- async on_agent_action(action: AgentAction, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None #
Run on agent action.
- Parameters:
action (AgentAction) – The agent action.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_agent_finish(finish: AgentFinish, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None #
Run on the agent end.
- Parameters:
finish (AgentFinish) – The agent finish.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_chain_end(outputs: dict[str, Any], *, run_id: UUID, inputs: dict[str, Any] | None = None, **kwargs: Any) None [source]#
Run when a chain ends running.
- Parameters:
outputs (Dict[str, Any]) – The outputs of the chain.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
inputs (dict[str, Any] | None)
- Return type:
None
- async on_chain_error(error: BaseException, *, inputs: dict[str, Any] | None = None, run_id: UUID, **kwargs: Any) None [source]#
Run when chain errors.
- Parameters:
error (BaseException) – The error that occurred.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
inputs (dict[str, Any] | None)
- Return type:
None
- async on_chain_start(serialized: dict[str, Any], inputs: dict[str, Any], *, run_id: UUID, tags: list[str] | None = None, parent_run_id: UUID | None = None, metadata: dict[str, Any] | None = None, run_type: str | None = None, name: str | None = None, **kwargs: Any) None [source]#
Run when a chain starts running.
- Parameters:
serialized (Dict[str, Any]) – The serialized chain.
inputs (Dict[str, Any]) – The inputs.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
metadata (Optional[Dict[str, Any]]) – The metadata.
kwargs (Any) – Additional keyword arguments.
run_type (str | None)
name (str | None)
- Return type:
None
- async on_chat_model_start(serialized: dict[str, Any], messages: list[list[BaseMessage]], *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, metadata: dict[str, Any] | None = None, name: str | None = None, **kwargs: Any) Any [source]#
Run when a chat model starts running.
- ATTENTION: This method is called for chat models. If you’re implementing
a handler for a non-chat model, you should use on_llm_start instead.
- Parameters:
serialized (Dict[str, Any]) – The serialized chat model.
messages (List[List[BaseMessage]]) – The messages.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
metadata (Optional[Dict[str, Any]]) – The metadata.
kwargs (Any) – Additional keyword arguments.
name (str | None)
- Return type:
Any
- async on_custom_event(name: str, data: Any, *, run_id: UUID, tags: list[str] | None = None, metadata: dict[str, Any] | None = None, **kwargs: Any) None #
Override to define a handler for a custom event.
- Parameters:
name (str) – The name of the custom event.
data (Any) – The data for the custom event. Format will match the format specified by the user.
run_id (UUID) – The ID of the run.
tags (list[str] | None) – The tags associated with the custom event (includes inherited tags).
metadata (dict[str, Any] | None) – The metadata associated with the custom event (includes inherited metadata).
kwargs (Any)
- Return type:
None
Added in version 0.2.15.
- async on_llm_end(response: LLMResult, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None [source]#
Run when LLM ends running.
- Parameters:
response (LLMResult) – The response which was generated.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_llm_error(error: BaseException, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None [source]#
Run when LLM errors.
- Parameters:
error (BaseException) – The error that occurred.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID | None) – The parent run ID. This is the ID of the parent run.
tags (list[str] | None) – The tags.
kwargs (Any) –
Additional keyword arguments. - response (LLMResult): The response which was generated before
the error occurred.
- Return type:
None
- async on_llm_new_token(token: str, *, chunk: GenerationChunk | ChatGenerationChunk | None = None, run_id: UUID, parent_run_id: UUID | None = None, **kwargs: Any) None [source]#
Run on new LLM token. Only available when streaming is enabled.
- Parameters:
token (str) – The new token.
chunk (GenerationChunk | ChatGenerationChunk) – The new generated chunk, containing content and other information.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_llm_start(serialized: dict[str, Any], prompts: list[str], *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, metadata: dict[str, Any] | None = None, **kwargs: Any) None [source]#
Run when LLM starts running.
- ATTENTION: This method is called for non-chat models (regular LLMs). If
you’re implementing a handler for a chat model, you should use on_chat_model_start instead.
- Parameters:
serialized (Dict[str, Any]) – The serialized LLM.
prompts (List[str]) – The prompts.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
metadata (Optional[Dict[str, Any]]) – The metadata.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_retriever_end(documents: Sequence[Document], *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None [source]#
Run on the retriever end.
- Parameters:
documents (Sequence[Document]) – The documents retrieved.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_retriever_error(error: BaseException, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None [source]#
Run on retriever error.
- Parameters:
error (BaseException) – The error that occurred.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_retriever_start(serialized: dict[str, Any], query: str, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, metadata: dict[str, Any] | None = None, name: str | None = None, **kwargs: Any) None [source]#
Run on the retriever start.
- Parameters:
serialized (Dict[str, Any]) – The serialized retriever.
query (str) – The query.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
metadata (Optional[Dict[str, Any]]) – The metadata.
kwargs (Any) – Additional keyword arguments.
name (str | None)
- Return type:
None
- async on_retry(retry_state: RetryCallState, *, run_id: UUID, **kwargs: Any) None [source]#
Run on a retry event.
- Parameters:
retry_state (RetryCallState) – The retry state.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_text(text: str, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None #
Run on an arbitrary text.
- Parameters:
text (str) – The text.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_tool_end(output: Any, *, run_id: UUID, **kwargs: Any) None [source]#
Run when the tool ends running.
- Parameters:
output (Any) – The output of the tool.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_tool_error(error: BaseException, *, run_id: UUID, parent_run_id: UUID | None = None, tags: list[str] | None = None, **kwargs: Any) None [source]#
Run when tool errors.
- Parameters:
error (BaseException) – The error that occurred.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- async on_tool_start(serialized: dict[str, Any], input_str: str, *, run_id: UUID, tags: list[str] | None = None, parent_run_id: UUID | None = None, metadata: dict[str, Any] | None = None, name: str | None = None, inputs: dict[str, Any] | None = None, **kwargs: Any) None [source]#
Run when the tool starts running.
- Parameters:
serialized (Dict[str, Any]) – The serialized tool.
input_str (str) – The input string.
run_id (UUID) – The run ID. This is the ID of the current run.
parent_run_id (UUID) – The parent run ID. This is the ID of the parent run.
tags (Optional[List[str]]) – The tags.
metadata (Optional[Dict[str, Any]]) – The metadata.
inputs (Optional[Dict[str, Any]]) – The inputs.
kwargs (Any) – Additional keyword arguments.
name (str | None)
- Return type:
None