Skip to main content
Ouvrir dans Colab Les évaluateurs locaux de Weave constituent une suite de petits modèles de langage qui s’exécutent localement sur votre machine avec une latence minimale. Ces modèles évaluent la sécurité et la qualité des entrées, du contexte et des sorties de votre système d’IA. Certains de ces modèles sont affinés par Weights & Biases, tandis que d’autres sont des modèles open source de pointe entraînés par la communauté. Des Reports Weights & Biases (W&B) ont été utilisés pour l’entraînement et l’évaluation. Vous trouverez tous les détails dans cette liste de Reports W&B. Les poids des modèles sont accessibles publiquement dans W&B Artifacts et sont automatiquement téléchargés lorsque vous instanciez la classe de l’évaluateur. Vous trouverez ici les chemins des Artifacts si vous souhaitez les télécharger vous-même : weave.scorers.default_models L’objet renvoyé par ces évaluateurs contient un attribut booléen passed indiquant si le texte d’entrée est sûr ou de haute qualité, ainsi qu’un attribut metadata fournissant plus de détails, comme le score brut du modèle. Bien que vous puissiez exécuter des évaluateurs locaux sur CPU, nous vous recommandons d’utiliser des GPU pour obtenir les meilleures performances.
Les évaluateurs locaux sont uniquement disponibles pour le SDK Python de Weave. Ils ne sont pas encore disponibles pour le SDK TypeScript de Weave.Pour utiliser les évaluateurs Weave en TypeScript, voir les évaluateurs basés sur des fonctions.

Prérequis

Avant de pouvoir utiliser les évaluateurs locaux de Weave, installez des dépendances supplémentaires :

Sélectionner un évaluateur

Les évaluateurs locaux suivants sont disponibles. Sélectionnez un évaluateur selon votre cas d’usage.

WeaveBiasScorerV1

Ce scorer évalue les biais liés au genre et à la race/à l’origine selon deux dimensions :
  • Race et origine : racisme et biais envers un pays ou une région d’origine, le statut migratoire, l’origine ethnique, etc.
    • Genre et sexualité : sexisme, misogynie, homophobie, transphobie, harcèlement sexuel, etc.
WeaveBiasScorerV1 utilise un modèle deberta-small-long-nli affiné. Pour plus de détails sur le modèle, le jeu de données et le processus d’étalonnage, voir le rapport W&B WeaveBiasScorerV1.

Notes d’utilisation

  • La méthode score attend une chaîne de caractères dans le paramètre output.
    • Un score plus élevé indique une prédiction plus forte de biais dans le texte.
    • Le paramètre threshold est défini, mais peut aussi être remplacé lors de l’initialisation.

Exemple d’utilisation


WeaveToxicityScorerV1

Ce scorer évalue la toxicité du texte fourni en entrée selon cinq dimensions :
  • Race et origine : racisme et biais à l’encontre d’un pays ou d’une région d’origine, du statut migratoire, de l’origine ethnique, etc.
    • Genre et sexualité : sexisme, misogynie, homophobie, transphobie, harcèlement sexuel, etc.
    • Religion : biais ou stéréotypes liés à la religion d’une personne.
    • Capacité : biais liés aux capacités ou au handicap physique, mental ou intellectuel d’une personne.
    • Violence et abus : descriptions excessivement explicites de violence, menaces de violence ou incitation à la violence.
Le WeaveToxicityScorerV1 utilise le modèle open source Celadon de PleIAs. Pour plus d’informations, voir le W&B rapport WeaveToxicityScorerV1.

Notes d’utilisation

  • La méthode score attend qu’une chaîne de caractères soit passée au paramètre output.
    • Le modèle renvoie des scores de 0 à 3 dans cinq catégories différentes :
      • Si la somme de ces scores dépasse total_threshold (valeur par défaut : 5), l’entrée est signalée comme toxique.
      • Si une catégorie obtient à elle seule un score supérieur à category_threshold (par défaut : 2), l’entrée est signalée comme toxique.
    • Pour rendre le filtrage plus agressif, remplacez category_threshold ou total_threshold lors de l’initialisation.

Exemple d’utilisation


WeaveHallucinationScorerV1

Ce scorer vérifie si la sortie de votre système d’IA contient des hallucinations en fonction des données d’entrée. Le WeaveHallucinationScorerV1 utilise le modèle HHEM 2.1 open source de Vectara. Pour plus d’informations, voir le rapport W&B WeaveHallucinationScorerV1.

Notes d’utilisation

  • La méthode score attend des valeurs pour les paramètres query et output.
    • Le contexte doit être passé au paramètre output (sous forme de chaîne ou de liste de chaînes).
    • Un score de sortie plus élevé indique une probabilité plus forte d’hallucination dans la sortie.
    • Le paramètre threshold est défini, mais peut être redéfini lors de l’initialisation.

Exemple d’utilisation


WeaveContextRelevanceScorerV1

Ce scorer est conçu pour être utilisé lors de l’évaluation de systèmes RAG. Il évalue la pertinence du contexte par rapport à la requête. Le WeaveContextRelevanceScorerV1 utilise un modèle deberta-small-long-nli affiné sur tasksource. Pour plus de détails, voir le W&B rapport WeaveContextRelevanceScorerV1.

Notes d’utilisation

  • La méthode score attend des valeurs pour query et output.
    • Le contexte doit être transmis dans le paramètre output (chaîne ou liste de chaînes).
    • Un score plus élevé indique plus fortement que le contexte est pertinent pour la requête.
    • Vous pouvez passer verbose=True à la méthode score pour obtenir des scores pour chaque segment.

Exemple d’utilisation

WeaveCoherenceScorerV1

Ce scorer vérifie si le texte d’entrée est cohérent. WeaveCoherenceScorerV1 utilise un modèle deberta-small-long-nli affiné de tasksource. Pour plus d’informations, voir le W&B rapport de WeaveCoherenceScorerV1.

Notes d’utilisation

  • La méthode score attend du texte dans les paramètres query et output.
    • Plus le score de sortie est élevé, plus la prédiction de cohérence est forte.

Exemple d’utilisation


WeaveFluencyScorerV1

Ce scorer vérifie si le texte d’entrée est fluide, c’est-à-dire facile à lire et à comprendre, et proche du langage humain naturel. Il évalue la grammaire, la syntaxe et la lisibilité globale. Le WeaveFluencyScorerV1 utilise un modèle ModernBERT-base affiné par AnswerDotAI. Pour plus d’informations, voir le rapport W&B WeaveFluencyScorerV1.

Notes d’utilisation

  • La méthode score attend qu’un texte soit transmis au paramètre output.
    • Un score plus élevé en sortie indique une meilleure fluidité.

Exemple d’utilisation


WeaveTrustScorerV1

Le WeaveTrustScorerV1 est un scorer composite pour les systèmes RAG qui évalue la fiabilité des résultats du modèle en regroupant d’autres évaluateurs en deux catégories : Critical et Advisory. En fonction du score composite, il renvoie un niveau de confiance :
  • high : Aucun problème détecté
    • medium : Seuls des problèmes Advisory sont détectés
    • low : Des problèmes Critical sont détectés ou l’entrée est vide
Toute entrée qui ne satisfait pas un évaluateur Critical entraîne un niveau de confiance low. Si un évaluateur Advisory n’est pas satisfait, le niveau de confiance est medium.
  • Critical:
    • WeaveToxicityScorerV1
    • WeaveHallucinationScorerV1
    • WeaveContextRelevanceScorerV1
    • Advisory:
      • WeaveFluencyScorerV1
      • WeaveCoherenceScorerV1

Notes d’utilisation

  • Ce scorer est conçu pour évaluer les pipelines RAG.
    • Il nécessite les clés query, context et output pour calculer correctement le score.

Exemple d’utilisation


PresidioScorer

Ce scorer utilise la bibliothèque Presidio pour détecter les Personally Identifiable Information (PII) dans les inputs et les sorties de votre système d’IA.

Notes d’utilisation

  • Pour spécifier certains types d’entités, comme les adresses e-mail ou les numéros de téléphone, passez une liste d’entités Presidio au paramètre selected_entities. Sinon, Presidio détectera tous les types d’entités de sa liste par défaut.
    • Pour détecter certains types d’entités, comme les adresses e-mail ou les numéros de téléphone, passez une liste au paramètre selected_entities.
    • Vous pouvez passer des recognizers personnalisés via le paramètre custom_recognizers, sous la forme d’une liste d’instances presidio.EntityRecognizer.
    • Pour traiter du texte non anglais, utilisez le paramètre language pour préciser la langue.

Exemple d’utilisation