Skip to main content
Ceci est un notebook interactif. Vous pouvez l’exécuter localement ou utiliser les liens suivants :

Importer des traces depuis des systèmes tiers

Ce notebook vous montre comment importer dans W&B Weave des traces de conversation historiques provenant d’un fichier CSV, afin de les analyser, de comparer le comportement des modèles et d’exécuter des évaluations sur des données générées en dehors d’une application instrumentée avec Weave. Il arrive que vous ne puissiez pas instrumenter votre code Python ou JavaScript avec l’intégration Weave pour obtenir des traces en temps réel de votre application d’IA générative. Souvent, ces traces ne sont disponibles qu’a posteriori, au format CSV ou JSON. Ce notebook utilise l’API Python de bas niveau de Weave pour extraire les données d’un fichier CSV et les importer dans Weave, afin que vous puissiez les analyser et les évaluer. Le dataset d’exemple utilisé dans ce guide pratique présente la structure suivante :
Pour comprendre les choix d’importation effectués dans ce notebook, gardez à l’esprit que les traces Weave présentent des relations parent-enfant continues, de type 1:N. Un même parent peut avoir plusieurs enfants, et ce parent peut lui-même être l’enfant d’un autre parent. Ce notebook utilise conversation_id comme identifiant parent et turn_index comme identifiant enfant afin de fournir une journalisation complète des conversations. Vous devez adapter les variables des sections suivantes à votre propre dataset, à vos chemins de fichiers et à votre projet Weights & Biases.

Configurer l’environnement

Installez et importez tous les paquets nécessaires. Définissez WANDB_API_KEY dans votre environnement afin de pouvoir vous connecter avec wandb.login() (fournissez cette clé à Colab sous forme de secret). Indiquez dans name_of_file le nom du fichier que vous téléversez sur Colab, puis indiquez dans name_of_wandb_project le projet Weights & Biases dans lequel vous souhaitez journaliser les données.
name_of_wandb_project peut également être au format [TEAM_NAME]/[PROJECT_NAME] afin de spécifier l’équipe dans laquelle journaliser les traces.
Ensuite, récupérez un client Weave en appelant weave.init().

Charger les données

Une fois l’environnement prêt, vous pouvez charger les données CSV et les mettre en forme afin qu’elles correspondent à la structure parent-enfant attendue par Weave. Chargez les données dans un DataFrame pandas, puis triez-les par conversation_id et turn_index pour que les parents et les enfants soient dans le bon ordre. Vous obtenez ainsi un DataFrame pandas à deux colonnes, dans lequel les tours de conversation figurent sous forme de tableau dans conversation_data.

Journaliser les traces vers Weave

Une fois les données structurées en conversations et en tours de conversation, l’étape suivante consiste à écrire ces enregistrements dans Weave sous forme d’Appels parents et enfants. Parcourez le DataFrame pandas :
  • Créez un Appel parent pour chaque conversation_id.
  • Parcourez le tableau des tours de conversation pour créer des Appels enfants triés selon leur turn_index.
Concepts importants de l’API Python de bas niveau :
  • Un Appel Weave équivaut à une trace Weave. Cet Appel peut être associé à un parent ou à des enfants.
  • D’autres éléments peuvent être associés à un Appel Weave, comme du feedback et des métadonnées. Cet exemple n’associe que des entrées et des sorties, mais vous pouvez ajouter ces autres éléments lors de votre importation si les données les fournissent.
  • Un Appel Weave est created puis finished, car ces Appels sont conçus pour être suivis en temps réel. Comme il s’agit ici d’une importation a posteriori, vous créez et terminez les Appels une fois les objets définis et reliés entre eux.
  • La valeur op d’un Appel permet à Weave de regrouper les Appels de même structure. Dans cet exemple, tous les Appels parents sont de type Conversation et tous les Appels enfants sont de type Turn. Vous pouvez adapter ce choix selon vos besoins.
  • Un Appel peut avoir des inputs et un output. Les inputs sont définis à la création de l’Appel, et l’output lorsque l’Appel se termine.

Résultat : traces journalisées vers Weave

À ce stade, vos données CSV ont été importées dans Weave. Vous pouvez désormais parcourir les conversations et leurs tours de conversation dans l’interface de Weights & Biases, regroupés sous les opérations Conversation et Turn que vous avez définies. Traces :
Traces de conversation importées dans l’interface de Weights & Biases
Opérations :
Opérations Conversation et Turn dans l’interface de Weights & Biases

Facultatif : exportez vos traces pour exécuter des évaluations

Une fois les traces dans Weave et la structure des conversations bien comprise, vous pouvez les exporter vers un autre processus pour exécuter des Weave Evaluations.
Exportation de traces depuis un projet Weave
Pour ce faire, récupérez toutes les conversations depuis W&B à l’aide de l’API de requête, puis créez-en un dataset.

Résultat

Le dataset exporté est désormais republié dans Weave et peut servir d’entrée pour une évaluation.
Dataset publié dans l’interface Weights & Biases, prêt à être utilisé dans une évaluation
Pour en savoir plus sur les évaluations, consultez le Démarrage rapide, qui explique comment utiliser votre nouveau dataset pour évaluer votre application RAG.
Dernière modification le 30 septembre 2026