langchain.callbacks.tracers.evaluation.EvaluatorCallbackHandler¶
- class langchain.callbacks.tracers.evaluation.EvaluatorCallbackHandler(evaluators: Sequence[RunEvaluator], max_workers: Optional[int] = None, client: Optional[Client] = None, example_id: Optional[Union[UUID, str]] = None, skip_unfinished: bool = True, project_name: Optional[str] = None, **kwargs: Any)[source]¶
Bases:
BaseTracerA tracer that runs a run evaluator whenever a run is persisted.
- Parameters
evaluators (Sequence[RunEvaluator]) – The run evaluators to apply to all top level runs.
max_workers (int, optional) – The maximum number of worker threads to use for running the evaluators. If not specified, it will default to the number of evaluators.
client (LangSmith Client, optional) – The LangSmith client instance to use for evaluating the runs. If not specified, a new instance will be created.
example_id (Union[UUID, str], optional) – The example ID to be associated with the runs.
project_name (str, optional) – The LangSmith project name to be organize eval chain runs under.
- example_id¶
The example ID associated with the runs.
- Type
Union[UUID, None]
- client¶
The LangSmith client instance used for evaluating the runs.
- Type
Client
- evaluators¶
The sequence of run evaluators to be executed.
- Type
Sequence[RunEvaluator]
- executor¶
The thread pool executor used for running the evaluators.
- Type
ThreadPoolExecutor
- futures¶
The set of futures representing the running evaluators.
- Type
Set[Future]
- skip_unfinished¶
Whether to skip runs that are not finished or raised an error.
- Type
bool
- project_name¶
The LangSmith project name to be organize eval chain runs under.
- Type
Optional[str]
Methods
__init__(evaluators[, max_workers, client, ...])on_agent_action(action, *, run_id[, ...])Run on agent action.
on_agent_finish(finish, *, run_id[, ...])Run on agent end.
on_chain_end(outputs, *, run_id, **kwargs)End a trace for a chain run.
on_chain_error(error, *, run_id, **kwargs)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, *, ...)Run when a chat model starts running.
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, *, run_id[, ...])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 Retriever ends running.
on_retriever_error(error, *, run_id, **kwargs)Run when Retriever errors.
on_retriever_start(serialized, query, *, run_id)Run when Retriever starts running.
on_retry(retry_state, *, run_id, **kwargs)on_text(text, *, run_id[, parent_run_id])Run on 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.
Wait for all futures to complete.
Attributes
Whether to ignore agent callbacks.
Whether to ignore chain callbacks.
Whether to ignore chat model callbacks.
Whether to ignore LLM callbacks.
Whether to ignore retriever callbacks.
Whether to ignore retry callbacks.
- on_agent_action(action: AgentAction, *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) Any¶
Run on agent action.
- on_agent_finish(finish: AgentFinish, *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) Any¶
Run on agent end.
- on_chain_end(outputs: Dict[str, Any], *, run_id: UUID, **kwargs: Any) None¶
End a trace for a chain run.
- on_chain_error(error: Union[Exception, KeyboardInterrupt], *, run_id: UUID, **kwargs: Any) None¶
Handle an error for a chain run.
- on_chain_start(serialized: Dict[str, Any], inputs: Dict[str, Any], *, run_id: UUID, tags: Optional[List[str]] = None, parent_run_id: Optional[UUID] = None, metadata: Optional[Dict[str, Any]] = None, run_type: Optional[str] = None, **kwargs: Any) None¶
Start a trace for a chain run.
- on_chat_model_start(serialized: Dict[str, Any], messages: List[List[BaseMessage]], *, run_id: UUID, parent_run_id: Optional[UUID] = None, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) Any¶
Run when a chat model starts running.
- on_llm_error(error: Union[Exception, KeyboardInterrupt], *, run_id: UUID, **kwargs: Any) None¶
Handle an error for an LLM run.
- on_llm_new_token(token: str, *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) None¶
Run on new LLM token. Only available when streaming is enabled.
- on_llm_start(serialized: Dict[str, Any], prompts: List[str], *, run_id: UUID, tags: Optional[List[str]] = None, parent_run_id: Optional[UUID] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) None¶
Start a trace for an LLM run.
- on_retriever_end(documents: Sequence[Document], *, run_id: UUID, **kwargs: Any) None¶
Run when Retriever ends running.
- on_retriever_error(error: Union[Exception, KeyboardInterrupt], *, run_id: UUID, **kwargs: Any) None¶
Run when Retriever errors.
- on_retriever_start(serialized: Dict[str, Any], query: str, *, run_id: UUID, parent_run_id: Optional[UUID] = None, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) None¶
Run when Retriever starts running.
- on_retry(retry_state: RetryCallState, *, run_id: UUID, **kwargs: Any) None¶
- on_text(text: str, *, run_id: UUID, parent_run_id: Optional[UUID] = None, **kwargs: Any) Any¶
Run on arbitrary text.
- on_tool_end(output: str, *, run_id: UUID, **kwargs: Any) None¶
End a trace for a tool run.
- on_tool_error(error: Union[Exception, KeyboardInterrupt], *, run_id: UUID, **kwargs: Any) None¶
Handle an error for a tool run.
- on_tool_start(serialized: Dict[str, Any], input_str: str, *, run_id: UUID, tags: Optional[List[str]] = None, parent_run_id: Optional[UUID] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs: Any) None¶
Start a trace for a tool run.
- property ignore_agent: bool¶
Whether to ignore agent callbacks.
- property ignore_chain: bool¶
Whether to ignore chain callbacks.
- property ignore_chat_model: bool¶
Whether to ignore chat model callbacks.
- property ignore_llm: bool¶
Whether to ignore LLM callbacks.
- property ignore_retriever: bool¶
Whether to ignore retriever callbacks.
- property ignore_retry: bool¶
Whether to ignore retry callbacks.
- name = 'evaluator_callback_handler'¶
- raise_error: bool = False¶
- run_inline: bool = False¶