
    3fiD                     <    d Z ddlmZ ddlmZmZmZ ddlmZ g dZ	y)a  LangSmith evaluation utilities.

This module provides utilities for evaluating Chains and other language model
applications using LangChain evaluators and LangSmith.

For more information on the LangSmith API, see the
[LangSmith API documentation](https://docs.langchain.com/langsmith/home).

**Example**

```python
from langsmith import Client
from langchain_openai import ChatOpenAI
from langchain_classic.chains import LLMChain
from langchain_classic.smith import EvaluatorType, RunEvalConfig, run_on_dataset


def construct_chain():
    model = ChatOpenAI(temperature=0)
    chain = LLMChain.from_string(model, "What's the answer to {your_input_key}")
    return chain


evaluation_config = RunEvalConfig(
    evaluators=[
        EvaluatorType.QA,  # "Correctness" against a reference answer
        EvaluatorType.EMBEDDING_DISTANCE,
        RunEvalConfig.Criteria("helpfulness"),
        RunEvalConfig.Criteria(
            {
                "fifth-grader-score": "Do you have to be smarter than a fifth "
                "grader to answer this question?"
            }
        ),
    ]
)

client = Client()
run_on_dataset(
    client, "<my_dataset_name>", construct_chain, evaluation=evaluation_config
)
```

**Attributes**

- `arun_on_dataset`: Asynchronous function to evaluate a chain or other LangChain
    component over a dataset.
- `run_on_dataset`: Function to evaluate a chain or other LangChain component over a
    dataset.
- `RunEvalConfig`: Class representing the configuration for running evaluation.
- `StringRunEvaluatorChain`: Class representing a string run evaluator chain.
- `InputFormatError`: Exception raised when the input format is incorrect.

    )RunEvalConfig)InputFormatErrorarun_on_datasetrun_on_dataset)StringRunEvaluatorChain)r   r   r   r   r   N)
__doc__)langchain_classic.smith.evaluation.configr   /langchain_classic.smith.evaluation.runner_utilsr   r   r   7langchain_classic.smith.evaluation.string_run_evaluatorr   __all__     i/var/www/auto_recruiter/arenv/lib/python3.12/site-packages/langchain_classic/smith/evaluation/__init__.py<module>r      s'   5n D 
r   