L'apprentissage en contexte est la capacité d'un modèle de langage à adapter son comportement à une nouvelle tâche en se basant uniquement sur le contenu de son prompt, sans aucune mise à jour des paramètres du modèle. Un utilisateur peut fournir des instructions, des exemples ou des documents de support dans la fenêtre de contexte d'une seule conversation, et le modèle conditionnera sa prochaine sortie sur ce matériel comme s'il avait été entraîné pour la tâche, même si aucun entraînement n'a réellement eu lieu. C'est le mécanisme sous-jacent des prompts d'apprentissage en quelques exemples et d'apprentissage en zéro exemple, et c'est l'un des comportements les plus conséquents observés dans les systèmes modernes de grand modèle de langage basés sur les transformeurs.
Le phénomène a été mis en évidence de manière marquante dans l'article de 2020 sur GPT-3, qui a montré qu'un modèle pré-entraîné suffisamment grand pouvait effectuer de nouvelles tâches à partir d'une poignée d'exemples dans le prompt sans aucune mise à jour de gradient. Parce que cela ressemblait superficiellement à un modèle qui « apprenait » en une seule passe avant, le terme apprentissage en contexte a été adopté pour le distinguer de l'apprentissage ordinaire en phase d'entraînement, qui modifie les poids, et du transfert d'apprentissage ou du réglage fin, qui nécessitent également une étape d'optimisation explicite sur des données spécifiques à la tâche.
Comment cela fonctionne
Il n'existe pas d'explication mécaniste unique et établie pour l'apprentissage en contexte, mais plusieurs comptes rendus complémentaires sont largement cités. Une vue le traite comme une forme de correspondance de motifs implicite : parce que le corpus de pré-entraînement du modèle contient d'innombrables exemples de tâches expliquées, démontrées et résolues en texte, le modèle a appris une procédure générale pour continuer des séquences « tâche, exemples, puis une nouvelle instance » d'une manière qui satisfait le motif implicite. Une ligne de recherche plus mécaniste en interprétabilité a proposé que le mécanisme d'attention à l'intérieur des transformeurs puisse implémenter quelque chose ressemblant à un algorithme d'apprentissage simple en interne, effectuant effectivement une forme légère de complétion de motifs ou même un calcul de type descente de gradient à travers les jetons du prompt, bien que cela reste un domaine d'étude actif et contesté lié à la recherche plus large sur l'interprétabilité. L'apprentissage en contexte est également étroitement lié à l'émergence de capacités avec l'échelle, discutée sous capacités émergentes, car les modèles plus petits ont tendance à bénéficier beaucoup moins du contexte ajouté que ceux suffisamment grands.
Utilisations
L'apprentissage en contexte sous-tend la plupart des utilisations pratiques de l'ingénierie de prompt, y compris les démonstrations en quelques exemples, les instructions de rôle et de persona via un prompt système, et la fourniture de matériel de référence directement dans le prompt afin que le modèle puisse répondre à des questions à son sujet, un modèle qui s'étend jusqu'à la génération augmentée par récupération lorsque le matériel de référence est récupéré dynamiquement à partir d'une source externe plutôt que collé à la main. Cela permet également un changement rapide de tâche au sein d'une seule conversation : un assistant de chat peut passer de l'écriture de code à la traduction d'un paragraphe puis au résumé d'un document uniquement parce que chaque nouvelle instruction reconditionne le comportement du modèle, sans aucun réentraînement entre les tours.
Limites et importance
L'apprentissage en contexte est limité par la taille de la fenêtre de contexte et tend à se dégrader lorsque la quantité d'informations dans le prompt devient très grande ou lorsque des détails pertinents sont enfouis au milieu d'une longue entrée, un effet parfois décrit informellement comme un modèle qui « perd le fil » du contexte. Il n'est également pas persistant : comme aucun poids ne change, tout ce qui est appris en contexte est oublié dès que la conversation se termine ou que le contexte est effacé, contrairement au réglage fin, qui produit un changement durable du modèle. Malgré ces limites, l'apprentissage en contexte est considéré comme l'une des propriétés les plus importantes de l'architecture de transformeur pour le déploiement pratique, car il permet à un seul modèle polyvalent d'être réutilisé pour une gamme effectivement illimitée de tâches au moment de l'inférence, sans le coût, le délai ou l'infrastructure qu'un réentraînement ou un réglage fin du modèle exigerait.