> Discover all available pages from the documentation index: https://mastra.zisheng.pro/fr/llms.txt # Scorer de cohérence du ton La fonction `createToneScorer()` évalue la cohérence du ton émotionnel et du sentiment d’un texte. Elle peut fonctionner selon deux modes : comparer le ton de paires entrée/sortie ou analyser la stabilité du ton au sein d’un seul texte. ## Paramètres La fonction `createToneScorer()` n’accepte aucune option. Cette fonction renvoie une instance de la classe MastraScorer. Consultez la [référence de MastraScorer](https://mastra.zisheng.pro/fr/reference/evals/mastra-scorer) pour en savoir plus sur la méthode `.run()` et ses entrées/sorties. ## Valeur renvoyée par `.run()` **runId** (`string`): ID de l’exécution, facultatif. **analyzeStepResult** (`object`): Objet contenant les métriques de ton : { responseSentiment: number, referenceSentiment: number, difference: number } pour le mode de comparaison, OU { avgSentiment: number, sentimentVariance: number } pour le mode de stabilité **score** (`number`): Score de cohérence ou de stabilité du ton, de 0 à 1. `.run()` renvoie un résultat possédant la structure suivante : ```typescript { runId: string, analyzeStepResult: { responseSentiment?: number, referenceSentiment?: number, difference?: number, avgSentiment?: number, sentimentVariance?: number, }, score: number } ``` ## Détails du calcul du score Le Scorer évalue la cohérence du sentiment en analysant les modèles de ton et en calculant un score propre au mode utilisé. ### Processus de calcul du score 1. Analyse les modèles de ton : - Extrait les caractéristiques du sentiment - Calcule les scores de sentiment - Mesure les variations de ton 2. Calcule le score propre au mode : **Cohérence du ton** (entrée et sortie) : - Compare le sentiment entre les textes - Calcule la différence de sentiment - Score = 1 - (sentiment\_difference / max\_difference) **Stabilité du ton** (une seule entrée) : - Analyse le sentiment dans les différentes phrases - Calcule la variance du sentiment - Score = 1 - (sentiment\_variance / max\_variance) Score final : `mode_specific_score * scale` ### Interprétation du score (de 0 à scale, valeur par défaut de 0 à 1) - 1.0 : cohérence ou stabilité parfaite du ton - 0.7-0.9 : forte cohérence avec de légères variations - 0.4-0.6 : cohérence modérée avec des changements perceptibles - 0.1-0.3 : faible cohérence avec d’importants changements de ton - 0.0 : aucune cohérence, les tons sont complètement différents ### `analyzeStepResult` Objet contenant les métriques de ton : - **responseSentiment** : score de sentiment de la réponse, en mode de comparaison. - **referenceSentiment** : score de sentiment de l’entrée ou de la référence, en mode de comparaison. - **difference** : différence absolue entre les scores de sentiment, en mode de comparaison. - **avgSentiment** : sentiment moyen dans les différentes phrases, en mode de stabilité. - **sentimentVariance** : variance du sentiment dans les différentes phrases, en mode de stabilité. ## Exemple Évaluez la cohérence du ton entre des réponses associées d’un Agent : ```typescript import { runEvals } from '@mastra/core/evals' import { createToneScorer } from '@mastra/evals/scorers/prebuilt' import { myAgent } from './agent' const scorer = createToneScorer() const result = await runEvals({ data: [ { input: 'How was your experience with our service?', groundTruth: 'The service was excellent and exceeded expectations!', }, { input: 'Tell me about the customer support', groundTruth: 'The support team was friendly and very helpful.', }, ], scorers: [scorer], target: myAgent, onItemComplete: ({ scorerResults }) => { console.log({ score: scorerResults[scorer.id].score, }) }, }) console.log(result.scores) ``` Pour en savoir plus sur `runEvals`, consultez la [référence de runEvals](https://mastra.zisheng.pro/fr/reference/evals/run-evals). Pour ajouter ce Scorer à un Agent, consultez le guide de [présentation des Scorers](https://mastra.zisheng.pro/fr/docs/evals/overview). ## Voir aussi - [Scorer de similarité du contenu](https://mastra.zisheng.pro/fr/reference/evals/content-similarity) - [Scorer de toxicité](https://mastra.zisheng.pro/fr/reference/evals/toxicity)