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

Contenu d’un enregistrement

Chaque enregistrement comprend trois parties :

ChampContenuObjectif
ConversationMessages système, saisies utilisateur, réponses de l’assistant et appels d’outils.Les données centrales évaluées par les Judges.
PropriétésMé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.* }}.
SourceOrigine 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é.
Astuce

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

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.
i
Information

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"}}
i
Information

Les imports peuvent prendre du temps. Vérifiez le statut en cliquant sur le bouton Import Tasks.

Exporter un Dataset

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

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_guidance ou 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, jamais test_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

[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}")
FAQ

FAQ