Datasets
Les Datasets sont des ensembles soigneusement sélectionnés d'historiques de conversations utilisés pour évaluer la qualité des modèles et créer des tests de non-régression.
Contrairement au trafic brut dans Explorer, les enregistrements d'un Dataset sont modifiables : vous pouvez corriger les messages, ajouter les sorties attendues, retirer le bruit et ajuster les données directement depuis l’interface Studio.
Contenu d’un enregistrement
Chaque enregistrement comprend trois parties :
| Champ | Contenu | Objectif |
|---|---|---|
| Conversation | Messages système, saisies utilisateur, réponses de l’assistant et appels d’outils. | Les données centrales évaluées par les Judges. |
| Propriétés | Métadonnées personnalisées : sortie attendue, catégorie, consignes de notation, difficulté, etc. | Les Judges se réfèrent aux propriétés dans leurs consignes via {{ properties.* }}. |
| Source | Origine de l'enregistrement : EXPLORER, UPLOADED_FILE, DIRECT_INPUT ou PLAYGROUND. | Permet de remonter à l'origine de l'enregistrement. |
Properties
Les Properties font des Datasets bien plus qu'une simple liste de conversations. Elles vous permettent d'associer un contexte structuré à chaque enregistrement :
expected_output: la réponse idéale, permettant à un Judge de la comparer.category: le type de requête (par exemple,billing,technical,general).grading_guidance: instructions spécifiques sur la façon dont le Judge doit évaluer cet enregistrement.difficulty: un marqueur de difficulté pour segmenter les résultats par complexité.
Les Judges peuvent référencer n'importe quelle propriété dans leurs instructions en utilisant {{ properties.your_field_name }}. Voir Lignes directrices pour les instructions pour plus de détails.
Ajouter des données à un Dataset
Cliquez sur New dataset, puis choisissez une source :
Créer manuellement
Ajoutez des enregistrements à la main dans Studio. Définissez les tours de conversation, puis associez propriétés et métadonnées.
Utile pour :
- Des tests de régression ciblant un cas limite connu.
- Des exemples de référence avec des sorties attendues soigneusement élaborées.
- Des scénarios spécifiques qui n'apparaissent pas naturellement dans le trafic de production.
Les propriétés peuvent être saisies sous forme de paires clé-valeur ou collées au format JSON brut pour une édition en masse.
Depuis le Playground
Importez des conversations depuis le Playground — utile si vous avez testé des agents ou des prompts et souhaitez réutiliser ces conversations sans les recréer manuellement.
Depuis une Campaign
Importez tout ou partie des enregistrements d'une Campaign, y compris les annotations du Judge en tant que propriétés. Cela vous permet de créer des Datasets organisés à partir du trafic évalué.
Depuis Explorer
Sélectionnez des événements dans Explorer et cliquez sur Export to Dataset. Voir le guide Explorer pour plus de détails.
Depuis un fichier
Importez un fichier JSONL pour importer des enregistrements en masse. Chaque ligne doit être un objet JSON avec messages et éventuellement properties :
{"messages": [{"role": "user", "content": "How do I reset my password?"}, {"role": "assistant", "content": "Go to Settings > Security > Reset password."}], "properties": {"expected_output": "Clear reset instructions", "category": "account"}}
{"messages": [{"role": "user", "content": "What's the rate limit?"}], "properties": {"expected_output": "Tier-specific rate limit info", "category": "technical"}}Les imports peuvent prendre du temps. Vérifiez le statut en cliquant sur le bouton Import Tasks.
Exporter un Dataset
Cliquez sur Actions → Export to JSONL pour exporter un Dataset sous forme de fichier JSONL. Chaque ligne contient un enregistrement avec sa conversation et ses propriétés.
Bonnes pratiques
Organisez vos enregistrements
Cliquez sur n'importe quel enregistrement pour le modifier :
- Messages : corrigez les fautes de frappe, clarifiez les entrées ambiguës ou reformulez la conversation pour mieux représenter un cas de test.
- Properties : ajoutez
expected_output,grading_guidanceou toute métadonnée nécessaire à vos Judges.
Supprimez les enregistrements peu pertinents
Éliminez les enregistrements qui ajoutent du bruit :
- Duplicatas : conversations similaires qui sur-représentent un scénario.
- Hors périmètre : enregistrements qui ne correspondent pas à l'objectif du Dataset.
- Ambigus : conversations pour lesquelles même un humain ne pourrait pas évaluer la réponse de manière fiable.
Testez avant de vous engager
Exécutez un Judge sur un seul enregistrement avant de lancer une Campaign complète. C'est le moyen le plus rapide de vérifier que vos instructions et propriétés fonctionnent ensemble. Voir Validez avant de passer à l'échelle.
Maintenir la qualité des Datasets
Si vous réutilisez vos Datasets dans le temps (ce qui est conseillé) :
- Nommez-les explicitement. Mentionnez le périmètre et la date :
support_billing_baseline_2025_06, jamaistest_data. - Renseignez l’origine. Notez la provenance des enregistrements et les corrections effectuées.
- Gérez les versions de référence. Figez un Dataset de référence entre deux usages. Créez une nouvelle version en cas de modifications.
- Ne mélangez pas des tâches sans lien. Séparez « qualité du support » et « précision de la génération de code » dans des Datasets distincts.
- Vérifiez l’équilibre des classes. Si 90 % des enregistrements sont des cas simples, le Dataset ne révélera pas vraiment les problèmes.
[Développeur] Accès programmatique aux Datasets
Le SDK permet de créer des Datasets, d’importer des enregistrements et de gérer vos données via le code.
import os
from mistralai.client import Mistral
mistral = Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
)
# Créer un Dataset vide
dataset = mistral.beta.observability.datasets.create(
name="Customer Support Analysis Set",
description="Exemples sélectionnés pour analyser la qualité du support"
)
print(f"Dataset created: {dataset.id}")