LoggingCallbackHandler#
- class langchain.callbacks.tracers.logging.LoggingCallbackHandler(logger: Logger, log_level: int = 20, extra: dict | None = None, **kwargs: Any)[source]#
Tracer that logs via the input Logger.
Initialize the tracer.
- Parameters:
_schema_format –
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.
logger (Logger)
log_level (int)
extra (dict | None)
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
name
The name of the tracer.
raise_error
Whether to raise an error if an exception occurs.
run_inline
Whether to run the callback inline.
Methods
__init__
(logger[, log_level, extra])Initialize the tracer.
get_breadcrumbs
(run)Get the breadcrumbs of a run.
get_parents
(run)Get the parents of a run.
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])End a trace for a chain run.
on_chain_error
(error, *[, inputs])Handle an error for a chain run.
on_chain_start
(serialized, inputs, *, run_id)Start a trace for a chain run.
on_chat_model_start
(serialized, messages, *, ...)Start a trace for an LLM run.
on_custom_event
(name, data, *, run_id[, ...])Override to define a handler for a custom event.
on_llm_end
(response, *, run_id, **kwargs)End a trace for an LLM run.
on_llm_error
(error, *, run_id, **kwargs)Handle an error for an LLM run.
on_llm_new_token
(token, *[, chunk, ...])Run on new LLM token.
on_llm_start
(serialized, prompts, *, run_id)Start a trace for an LLM run.
on_retriever_end
(documents, *, run_id, **kwargs)Run when the Retriever ends running.
on_retriever_error
(error, *, run_id, **kwargs)Run when Retriever errors.
on_retriever_start
(serialized, query, *, run_id)Run when the Retriever starts running.
on_retry
(retry_state, *, run_id, **kwargs)Run on retry.
on_text
(text, *, run_id[, parent_run_id])Run on an arbitrary text.
on_tool_end
(output, *, run_id, **kwargs)End a trace for a tool run.
on_tool_error
(error, *, run_id, **kwargs)Handle an error for a tool run.
on_tool_start
(serialized, input_str, *, run_id)Start a trace for a tool run.
- __init__(logger: Logger, log_level: int = 20, extra: dict | None = None, **kwargs: Any) None [source]#
Initialize the tracer.
- Parameters:
_schema_format –
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.
logger (Logger)
log_level (int)
extra (dict | None)
- Return type:
None
- get_breadcrumbs(run: RunTree) str #
Get the breadcrumbs of a run.
- Parameters:
run (RunTree) – The run to get the breadcrumbs of.
- Returns:
A string with the breadcrumbs of the run.
- Return type:
str
- get_parents(run: RunTree) list[RunTree] #
Get the parents of a run.
- Parameters:
run (RunTree) – The run to get the parents of.
- Returns:
A list of parent runs.
- Return type:
list[RunTree]
- on_agent_action(action: AgentAction, *, run_id: UUID, parent_run_id: UUID | None = None, **kwargs: Any) Any #
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.
kwargs (Any) – Additional keyword arguments.
- Return type:
Any
- on_agent_finish(finish: AgentFinish, *, run_id: UUID, parent_run_id: UUID | None = None, **kwargs: Any) Any #
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.
kwargs (Any) – Additional keyword arguments.
- Return type:
Any
- on_chain_end(outputs: dict[str, Any], *, run_id: UUID, inputs: dict[str, Any] | None = None, **kwargs: Any) RunTree #
End a trace for a chain run.
- Parameters:
outputs (dict[str, Any]) – The outputs for the chain.
run_id (UUID) – The run ID.
inputs (dict[str, Any] | None) – The inputs for the chain. Defaults to None.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_chain_error(error: BaseException, *, inputs: dict[str, Any] | None = None, run_id: UUID, **kwargs: Any) RunTree #
Handle an error for a chain run.
- Parameters:
error (BaseException) – The error.
inputs (dict[str, Any] | None) – The inputs for the chain. Defaults to None.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- 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) RunTree #
Start a trace for a chain run.
- Parameters:
serialized (dict[str, Any]) – The serialized chain.
inputs (dict[str, Any]) – The inputs for the chain.
run_id (UUID) – The run ID.
tags (list[str] | None) – The tags for the run. Defaults to None.
parent_run_id (UUID | None) – The parent run ID. Defaults to None.
metadata (dict[str, Any] | None) – The metadata for the run. Defaults to None.
run_type (str | None) – The type of the run. Defaults to None.
name (str | None) – The name of the run.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_chat_model_start(serialized: dict[str, Any], messages: list[list[BaseMessage]], *, run_id: UUID, tags: list[str] | None = None, parent_run_id: UUID | None = None, metadata: dict[str, Any] | None = None, name: str | None = None, **kwargs: Any) RunTree #
Start a trace for an LLM run.
- Parameters:
serialized (dict[str, Any]) – The serialized model.
messages (list[list[BaseMessage]]) – The messages to start the chat with.
run_id (UUID) – The run ID.
tags (list[str] | None) – The tags for the run. Defaults to None.
parent_run_id (UUID | None) – The parent run ID. Defaults to None.
metadata (dict[str, Any] | None) – The metadata for the run. Defaults to None.
name (str | None) – The name of the run.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_custom_event(name: str, data: Any, *, run_id: UUID, tags: list[str] | None = None, metadata: dict[str, Any] | None = None, **kwargs: Any) Any #
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:
Any
Added in version 0.2.15.
- on_llm_end(response: LLMResult, *, run_id: UUID, **kwargs: Any) RunTree #
End a trace for an LLM run.
- Parameters:
response (LLMResult) – The response.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_llm_error(error: BaseException, *, run_id: UUID, **kwargs: Any) RunTree #
Handle an error for an LLM run.
- Parameters:
error (BaseException) – The error.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_llm_new_token(token: str, *, chunk: GenerationChunk | ChatGenerationChunk | None = None, run_id: UUID, parent_run_id: UUID | None = None, **kwargs: Any) RunTree #
Run on new LLM token. Only available when streaming is enabled.
- Parameters:
token (str) – The token.
chunk (GenerationChunk | ChatGenerationChunk | None) – The chunk. Defaults to None.
run_id (UUID) – The run ID.
parent_run_id (UUID | None) – The parent run ID. Defaults to None.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_llm_start(serialized: dict[str, Any], prompts: list[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, **kwargs: Any) RunTree #
Start a trace for an LLM run.
- Parameters:
serialized (dict[str, Any]) – The serialized model.
prompts (list[str]) – The prompts to start the LLM with.
run_id (UUID) – The run ID.
tags (list[str] | None) – The tags for the run. Defaults to None.
parent_run_id (UUID | None) – The parent run ID. Defaults to None.
metadata (dict[str, Any] | None) – The metadata for the run. Defaults to None.
name (str | None) – The name of the run.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_retriever_end(documents: Sequence[Document], *, run_id: UUID, **kwargs: Any) Run #
Run when the Retriever ends running.
- Parameters:
documents (Sequence[Document]) – The documents.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
Run
- on_retriever_error(error: BaseException, *, run_id: UUID, **kwargs: Any) RunTree #
Run when Retriever errors.
- Parameters:
error (BaseException) – The error.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- 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) RunTree #
Run when the Retriever starts running.
- Parameters:
serialized (dict[str, Any]) – The serialized retriever.
query (str) – The query.
run_id (UUID) – The run ID.
parent_run_id (UUID | None) – The parent run ID. Defaults to None.
tags (list[str] | None) – The tags for the run. Defaults to None.
metadata (dict[str, Any] | None) – The metadata for the run. Defaults to None.
name (str | None) – The name of the run.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_retry(retry_state: RetryCallState, *, run_id: UUID, **kwargs: Any) RunTree #
Run on retry.
- Parameters:
retry_state (RetryCallState) – The retry state.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_text(text: str, *, run_id: UUID, parent_run_id: UUID | None = None, **kwargs: Any) None [source]#
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.
kwargs (Any) – Additional keyword arguments.
- Return type:
None
- on_tool_end(output: Any, *, run_id: UUID, **kwargs: Any) RunTree #
End a trace for a tool run.
- Parameters:
output (Any) – The output for the tool.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- on_tool_error(error: BaseException, *, run_id: UUID, **kwargs: Any) RunTree #
Handle an error for a tool run.
- Parameters:
error (BaseException) – The error.
run_id (UUID) – The run ID.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree
- 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) RunTree #
Start a trace for a tool run.
- Parameters:
serialized (dict[str, Any]) – The serialized tool.
input_str (str) – The input string.
run_id (UUID) – The run ID.
tags (list[str] | None) – The tags for the run. Defaults to None.
parent_run_id (UUID | None) – The parent run ID. Defaults to None.
metadata (dict[str, Any] | None) – The metadata for the run. Defaults to None.
name (str | None) – The name of the run.
inputs (dict[str, Any] | None) – The inputs for the tool.
kwargs (Any) – Additional arguments.
- Returns:
The run.
- Return type:
RunTree