# tinker_cookbook.eval.TrainingClientEvaluator

## _class_ [**tinker_cookbook.eval.TrainingClientEvaluator**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/eval/evaluators.py#L12)()

An evaluator that uses a TrainingClient to compute metrics (e.g., loss).

```
class NLLEval(TrainingClientEvaluator):
    async def __call__(self, training_client):
        loss = await compute_nll(training_client, self.eval_data)
        return {"eval/nll": loss}
```

### [**__call__**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/eval/evaluators.py#L23)( _training_client_)

Run evaluation and return a dict of metric names to values.

**Parameters:**

- [**training_client**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/eval/evaluators.py#L23) ( _tinker. [TrainingClient](https://tinker-docs.thinkingmachines.ai/tinker/api-reference/trainingclient/)_) – The Tinker training client to evaluate with.

**Returns:** A dict mapping metric names to float values.
