Collecte de données : trajectoires et rejeu des traces
Rejouez les traces d’agents qui ont réussi afin de constituer un jeu d’entraînement de paires (état, action).
Collecte de données : trajectoires et rejeu des traces est une leçon AI Agents gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage AI Agents, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours AI Agents comprend 4 leçons au total.
Les données sont le produit
L’affinage repose à 10 % sur la modélisation et à 90 % sur les données. Les plus grandes améliorations de qualité viennent de meilleurs jeux de données, et non de modèles plus grands.
À quoi ressemble une trajectoire d’agent
Une trajectoire capture une exécution complète d’un agent :
trajectory = {
'task': 'Refactor the auth module',
'messages': [
{'role': 'system', 'content': '...'},
{'role': 'user', 'content': 'Task...'},
{'role': 'assistant', 'content': 'Plan...', 'tool_calls': [...]},
{'role': 'tool', 'content': '...'},
...
],
'outcome': 'success'
}Exploitation des traces de production
Votre meilleure source de données est l’utilisation réelle :
for trace in production_traces:
if trace.outcome == 'success' and trace.user_feedback == 'thumbs_up':
save_to_training_set(trace)Relecture d’une trace
Relisez une trace réussie pour vérifier sa reproductibilité et l’utiliser comme exemple d’entraînement :
def replay(trace):
messages = trace.messages[:1] # just the initial user msg
for expected_msg in trace.messages[1:]:
actual = agent.step(messages)
if actual.role == 'assistant':
messages.append(actual)
elif expected_msg.role == 'tool':
messages.append(expected_msg) # replay tool resultFiltrage des traces de haute qualité
- Le résultat est un succès (les tests réussissent, l’utilisateur est satisfait)
- La trace est courte (aucune activité vaine)
- Les appels d’outils sont pertinents
- Aucune alerte de sécurité n’a été déclenchée
Distillation à partir de grands modèles
Utilisez un modèle puissant (GPT-4o) pour générer des trajectoires destinées à un modèle à affiner (Llama 8B) :
for task in task_list:
traj = big_model_agent.run(task)
if traj.success:
save_for_training(traj)
# Now fine-tune Llama 8B on the GPT-4o traces.Élagage des mauvaises trajectoires
Un seul mauvais exemple suffit à contaminer l’entraînement. Filtrez rigoureusement :
- Écartez les traces contenant des erreurs
- Écartez les traces contenant des hallucinations d’outils
- Écartez les traces comportant plus de N appels d’outils
- Écartez les traces qui contredisent la politique
Format pour l’affinage
OpenAI attend du JSONL contenant des messages :
{"messages": [{"role": "system", "content": "..."}, {"role": "user", "content": "..."}, {"role": "assistant", "content": "..."}]}
{"messages": [...]}Appels d’outils dans les données d’entraînement
Incluez tool_calls et les messages d’outils : le modèle apprend la boucle complète de l’agent :
{
"messages": [
{"role": "user", "content": "Weather in Paris?"},
{"role": "assistant", "tool_calls": [{...}]},
{"role": "tool", "tool_call_id": "...", "content": "{...}"},
{"role": "assistant", "content": "It is 18C and sunny."}
]
}Exemples négatifs
Certaines méthodes d’entraînement (DPO, KTO) bénéficient également d’exemples BAD :
preferences = [
{'prompt': '...', 'chosen': good_response, 'rejected': bad_response}
]Calculateur de taille du jeu de données
Volume approximatif nécessaire selon la méthode d’entraînement :
- SFT pour le format : 500-2000
- SFT pour une nouvelle capacité : 5k-50k
- DPO : 1k-10k paires de préférences
- RLHF / RLAIF : 10k-100k+
Gestion des versions du jeu de données
Traitez votre jeu de données comme du code. Gérez ses versions, suivez les traces incluses et assurez la reproductibilité des compilations.
Sélection avec intervention humaine
Les meilleurs jeux de données passent par une file d’examen humain. Des outils comme Argilla, Label Studio et Snorkel rendent ce processus efficace.
Meilleure source de traces
Quelle est la source offrant le meilleur signal pour les trajectoires d’entraînement ?
Récapitulatif
Les trajectoires issues d’exécutions réelles réussies valent de l’or. Effectuez une distillation à partir de modèles puissants lorsque nécessaire. Filtrez rigoureusement. Gérez les versions de votre jeu de données.
Questions Fréquemment Posées
La leçon « Collecte de données : trajectoires et rejeu des traces » est-elle gratuite ?
Oui — le texte complet de « Collecte de données : trajectoires et rejeu des traces » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours AI Agents, passe à CoddyKit PRO. Le cours AI Agents comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Collecte de données : trajectoires et rejeu des traces » ?
Rejouez les traces d’agents qui ont réussi afin de constituer un jeu d’entraînement de paires (état, action). Tu pratiques AI Agents avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer AI Agents ?
Aucune expérience préalable n'est requise. AI Agents sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Collecte de données : trajectoires et rejeu des traces » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon AI Agents ?
Oui. Chaque leçon AI Agents inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Quand l’ajustement fin est préférable aux invites
- Collecte de données : trajectoires et rejeu des traces
- LoRA et QLoRA pour un ajustement économique
- Évaluer les modèles ajustés par rapport au modèle de base