Ressources/Entraînement du modèle/Des conversations aux exemples d'entraînement

Concept

Rôles des messages

Comment une conversation est stockée sous forme de messages système, utilisateur et assistant, et comment ces rôles deviennent le flux unique de tokens qu'un modèle lit réellement.

Chapitre 33 min de lecture4 références

Les trois rôles

Une conversation est stockée sous forme de liste de messages, et chaque message comporte un rôle indiquant sa provenance :

  • system — les instructions permanentes qui encadrent l'ensemble de la conversation : qui est l'assistant, ce qu'il doit faire et ne pas faire. Rédigées par la personne qui déploie le modèle, et non prononcées par un participant à la conversation.
  • user — ce que la personne a demandé ou dit.
  • assistant — ce que le modèle a répondu.

Certains fournisseurs utilisent d'autres noms pour la même idée — model au lieu de assistant, un champ distinct pour les instructions système, ou developer pour les instructions — et certains ajoutent un rôle tool pour les résultats renvoyés par les fonctions appelées par le modèle. La structure reste la même.

Ce que le modèle lit réellement

Un modèle lit une séquence plate de tokens, et non une liste d'objets. Un template de chat convertit les messages en cette séquence, en insérant des tokens spéciaux qui marquent le début et la fin de chaque tour de parole, ainsi que l'identité de celui qui parle. Le modèle a appris ces marqueurs lors de l'ajustement par instructions. C'est ainsi qu'il sait que l'utilisateur a terminé, que c'est à son tour de parler, et quand s'arrêter.

Messages, tels que stockés
systemVous êtes l'assistant de support.
userComment puis-je réinitialiser mon mot de passe ?
assistantOuvrez Paramètres → Sécurité et choisissez Réinitialiser le mot de passe.
Ce que le modèle lit
<|im_start|>system
You are the support assistant.<|im_end|>
<|im_start|>user
How do I reset my password?<|im_end|>
<|im_start|>assistant
Open Settings → Security and choose
Reset password.<|im_end|>
À gauche : les messages tels qu'ils sont stockés. À droite : la même discussion après l'application du template de discussion du modèle, ici un template de style ChatML utilisé par certaines familles de modèles ouverts. Des marqueurs spéciaux indiquent au modèle à qui est le tour et où chaque tour se termine.

Chaque famille de modèles possède son propre template. Utiliser le mauvais, ou n'en utiliser aucun, produit une entrée que le modèle n'a jamais vue sous cette forme, et la qualité chute drastiquement. Les services d'entraînement hébergés appliquent le bon template pour vous ; pour les modèles ouverts, des bibliothèques telles que Hugging Face Transformers le stockent aux côtés du tokenizer.

Comment les rôles façonnent l'entraînement

Dans le fine-tuning supervisé, les rôles déterminent ce qui est appris. Le modèle est entraîné pour produire des messages assistant ; les messages system et user constituent le contexte qu'il lit mais qu'il n'est pas entraîné à rédiger. C'est pourquoi un jeu de données de conversations apprend au modèle à répondre comme votre assistant plutôt qu'à poser des questions comme vos utilisateurs.

Les rôles expliquent également pourquoi le prompt système est si important. Un modèle fine-tuné avec un message système particulier apprend son comportement en présence de ce message, et se comporte le plus fidèlement au modèle entraîné lorsqu'il reçoit les mêmes instructions lors de l'exécution.

Une conversation, trois rôles
  1. system : « Vous êtes l'assistant de support pour un produit de facturation. Répondez par de courtes étapes numérotées. »
  2. user : « Comment puis-je ajouter un numéro de TVA à une facture ? »
  3. assistant : « 1. Ouvrez les Paramètres → Entreprise. 2. Saisissez le numéro de TVA. 3. Enregistrez — il apparaît désormais sur les nouvelles factures. »
  4. Lors de l'entraînement, les deux premiers messages servent de contexte. Le troisième est ce que le modèle apprend à rédiger, compte tenu de ce contexte.

Règles imposées par la plupart des formats d'entraînement

  • Les tours de parole alternent entre l'utilisateur et l'assistant.
  • Après tout message système, la conversation commence par l'utilisateur.
  • Il y a généralement un seul message système, tout au début.
  • Un enregistrement se termine par un message de l'assistant s'il doit enseigner quoi que ce soit.

Erreurs courantes

  • Placer les instructions dans un message utilisateur lors de l'entraînement, mais dans le prompt système lors de l'exécution, ou inversement.
  • Entraîner avec un prompt système et déployer avec un autre.
  • Formater manuellement l'entrée d'un modèle ouvert au lieu d'utiliser son template de chat.
  • Laisser des messages consécutifs pour un même rôle, ce que la plupart des formats rejettent.

Références et lectures complémentaires

Les sources externes s'ouvrent dans un nouvel onglet.

  1. 01Chat templatesHugging Face Transformers docs · huggingface.coComment les messages sont transformés en entrée pour le modèle, avec des templates réels.
  2. 02Chat TemplatesHugging Face LLM Course · huggingface.coUn chapitre de cours sur les rôles et les templates dans le fine-tuning.
  3. 03Model Spec (2025/12/18)OpenAI · model-spec.openai.comComment un fournisseur hiérarchise les instructions issues des messages système, développeur et utilisateur.
  4. 04Training language models to follow instructions with human feedbackOuyang et al., 2022 · arXiv · arxiv.orgD'où vient le comportement de respect des instructions et d'alternance des tours de parole.

Transformez des semaines de travail d'expert en quelques minutes

Découvrez comment Scalata s'adapte à votre équipe, à vos données et à vos contrôles.

Contacter le service commercial