> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wandb.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Classe : EvaluationLogger

> Référence du SDK TypeScript

[weave](../) / EvaluationLogger

EvaluationLogger permet la mise au journal incrémentielle des prédictions et des scores.

Contrairement à la classe Evaluation traditionnelle, qui nécessite un jeu de données défini à l’avance et un traitement par lots,
EvaluationLogger vous permet de mettre au journal les prédictions au fur et à mesure, avec une attribution flexible des scores.

`Exemple`

```ts theme={null}
const ev = new EvaluationLogger({name: 'my-eval', dataset: 'my-dataset'});

for (const example of streamingData) {
  const output = await myModel.predict(example);
  const pred = ev.logPrediction(example, output);

  if (shouldScore(output)) {
    pred.logScore("accuracy", calculateAccuracy(output));
  }
  pred.finish();
}

await ev.logSummary();
```

<div id="table-of-contents">
  ## Table des matières
</div>

<div id="constructors">
  ### Constructeurs
</div>

* [constructeur](./evaluationlogger#constructor)

<div id="methods">
  ### Méthodes
</div>

* [logPrediction](./evaluationlogger#logprediction)
* [logPredictionAsync](./evaluationlogger#logpredictionasync)
* [logSummary](./evaluationlogger#logsummary)

## Constructeurs

<div id="constructor">
  ### constructor
</div>

• **new EvaluationLogger**(`options`): [`EvaluationLogger`](./evaluationlogger)

<div id="parameters">
  #### Paramètres
</div>

| Nom       | Type                      |
| :-------- | :------------------------ |
| `options` | `EvaluationLoggerOptions` |

<div id="returns">
  #### Renvoie
</div>

[`EvaluationLogger`](./evaluationlogger)

<div id="defined-in">
  #### Défini dans
</div>

[evaluationLogger.ts:570](https://github.com/wandb/weave/blob/6538626556c93d6f31ae725fdefe4e6b8b71bc2c/sdks/node/src/evaluationLogger.ts#L570)

## Méthodes

<div id="logprediction">
  ### logPrediction
</div>

▸ **logPrediction**(`inputs`, `output`): [`ScoreLogger`](./scorelogger)

Journalise une prédiction avec son entrée et sa sortie (version synchrone).
Crée un appel `predict_and_score` (avec un appel enfant `predict`).
Renvoie immédiatement un `ScoreLogger` pour ajouter des scores.

Cette méthode renvoie le `ScoreLogger` de façon synchrone. Les opérations sur le
`ScoreLogger` (`logScore`, `finish`) seront placées dans la file d'attente et exécutées une fois l'initialisation terminée.

<div id="parameters">
  #### Paramètres
</div>

| Nom      | Type                       |
| :------- | :------------------------- |
| `inputs` | `Record`\<`string`, `any`> |
| `output` | `any`                      |

<div id="returns">
  #### Renvoie
</div>

[`ScoreLogger`](./scorelogger)

`Exemple`

```ts theme={null}
// Style « fire-and-forget »
const scoreLogger = evalLogger.logPrediction({input: 'test'}, 'output');
scoreLogger.logScore('accuracy', 0.95);
scoreLogger.finish();
await evalLogger.logSummary(); // Attend la fin de toutes les opérations
```

<div id="defined-in">
  #### Défini dans
</div>

[evaluationLogger.ts:657](https://github.com/wandb/weave/blob/6538626556c93d6f31ae725fdefe4e6b8b71bc2c/sdks/node/src/evaluationLogger.ts#L657)

***

<div id="logpredictionasync">
  ### logPredictionAsync
</div>

▸ **logPredictionAsync**(`inputs`, `output`): `Promise`\<[`ScoreLogger`](./scorelogger)>

Journalise une prédiction avec son entrée et sa sortie (version asynchrone).
Comme logPrediction(), mais renvoie une Promise qui se résout lorsque
l'appel de prédiction est entièrement initialisé.

Utilisez cette méthode si vous devez attendre l'initialisation avant de continuer.

<div id="parameters">
  #### Paramètres
</div>

| Nom      | Type                       |
| :------- | :------------------------- |
| `inputs` | `Record`\<`string`, `any`> |
| `output` | `any`                      |

<div id="returns">
  #### Renvoie
</div>

`Promise`\<[`ScoreLogger`](./scorelogger)>

`Exemple`

```ts theme={null}
// Style avec await
const scoreLogger = await evalLogger.logPredictionAsync({input: 'test'}, 'output');
await scoreLogger.logScore('accuracy', 0.95);
await scoreLogger.finish();
```

<div id="defined-in">
  #### Défini dans
</div>

[evaluationLogger.ts:682](https://github.com/wandb/weave/blob/6538626556c93d6f31ae725fdefe4e6b8b71bc2c/sdks/node/src/evaluationLogger.ts#L682)

***

<div id="logsummary">
  ### logSummary
</div>

▸ **logSummary**(`summary?`): `Promise`\<`void`>

Journalise un summary et finalise l’évaluation.
Crée un appel summarize et termine l’appel evaluate.

Cette méthode peut être appelée sans await (fire-and-forget), mais en interne
elle attendra que toutes les opérations en attente soient terminées.

<div id="parameters">
  #### Paramètres
</div>

| Nom        | Type                       |
| :--------- | :------------------------- |
| `summary?` | `Record`\<`string`, `any`> |

<div id="returns">
  #### Renvoie
</div>

`Promise`\<`void`>

<div id="defined-in">
  #### Défini dans
</div>

[evaluationLogger.ts:783](https://github.com/wandb/weave/blob/6538626556c93d6f31ae725fdefe4e6b8b71bc2c/sdks/node/src/evaluationLogger.ts#L783)
