Passer au contenu principal
Il s’agit d’un notebook interactif. Vous pouvez l’exécuter en local ou utiliser les liens ci-dessous :
Ce notebook vous montre comment utiliser un jeu de données HuggingFace comme source d’entrée pour une Evaluation Weave. À la fin, vous disposerez d’un pipeline d’évaluation opérationnel qui fait référence aux lignes d’un jeu de données HuggingFace par leur index, prétraite chaque ligne dans le format attendu par votre modèle et suit les résultats évalués dans Weave. Ce schéma est utile lorsque vous souhaitez évaluer des modèles à partir de jeux de données HuggingFace existants sans devoir d’abord les convertir en jeu de données natif Weave.
Ce guide présente une solution de contournement pour utiliser des jeux de données HuggingFace avec les évaluations Weave. L’approche fonctionne aujourd’hui, et des intégrations plus fluides pour les jeux de données externes sont en cours de développement.

Configuration et imports

Commencez par initialiser Weave et vous connecter à W&B pour que Weave suive les runs d’évaluation et leurs résultats dans votre projet Weave.

Charger et préparer le jeu de données HuggingFace

Chargez ensuite le jeu de données HuggingFace et créez un index léger que l’évaluation parcourt. Au lieu de transmettre directement à Weave les lignes du jeu de données, transmettez une liste de références d’index, puis résolvez-les en lignes complètes lors du prétraitement. Cette approche conserve le lien entre l’évaluation et le jeu de données HuggingFace d’origine, tout en maintenant les références vers celui-ci.
Dans l’index, encodez hf_hub_name avec hf_id afin de garantir que chaque ligne dispose d’un ID unique. Weave utilise cette empreinte unique pour suivre et référencer des entrées spécifiques du jeu de données pendant les évaluations.

Définissez les fonctions de traitement et d’évaluation

Une fois l’index en place, définissez les trois fonctions qui composent le pipeline d’évaluation : l’une pour convertir chaque référence de l’index en exemple exploitable, l’une pour attribuer un score à la sortie du modèle, et l’une qui représente le modèle en cours d’évaluation. Le pipeline de traitement utilise les fonctions suivantes :
  • preprocess_example : transforme la référence de l’index en données réelles nécessaires à l’évaluation.
  • hf_eval : définit comment attribuer un score aux sorties du modèle.
  • function_to_evaluate : la fonction ou le modèle effectivement évalué.

Créez et exécutez l’évaluation

Enfin, intégrez l’index, le scorer et la fonction de prétraitement dans une Evaluation Weave, puis exécutez-la sur le modèle. Pour chaque entrée de hf_index, Weave effectue les étapes suivantes :
  1. preprocess_example récupère les données correspondantes depuis le jeu de données HuggingFace.
  2. Weave transmet les données prétraitées à function_to_evaluate.
  3. hf_eval évalue le résultat.
  4. Weave suit les résultats.
Une fois l’évaluation terminée, le run et ses scores pour chaque ligne sont disponibles dans votre projet Weave pour examen.