P

Prefix Tuning : Définition et Exemples

Technique d'adaptation de modèles de langage qui consiste à ajouter une séquence de vecteurs apprenables (le « préfixe ») en amont de l'entrée, sans modifier les poids du modèle pré-entraîné.

Définition complète

Le Prefix Tuning est une méthode d'apprentissage efficace en paramètres (Parameter-Efficient Fine-Tuning) introduite par Lisa Li et Percy Liang en 2021. Plutôt que de réentraîner l'ensemble des milliards de paramètres d'un grand modèle de langage, cette technique ajoute un petit ensemble de vecteurs continus — appelés « préfixes » — à chaque couche du transformeur. Ces préfixes sont les seuls éléments optimisés pendant l'entraînement, tandis que tous les poids originaux du modèle restent gelés.

Concrètement, le préfixe agit comme un contexte virtuel qui oriente le comportement du modèle vers une tâche spécifique. Contrairement au fine-tuning classique qui crée une copie complète du modèle pour chaque tâche, le Prefix Tuning ne nécessite de stocker que quelques milliers de paramètres supplémentaires par tâche. Cela représente typiquement moins de 0,1 % des paramètres du modèle original, ce qui rend la méthode extrêmement économe en mémoire et en stockage.

Le Prefix Tuning se distingue du prompt tuning (soft prompting) par le fait que les vecteurs apprenables sont insérés dans toutes les couches du transformeur, et pas uniquement dans la couche d'embedding d'entrée. Cette insertion en profondeur permet au préfixe d'influencer plus finement les représentations internes du modèle, ce qui se traduit généralement par de meilleures performances, surtout sur les tâches de génération de texte.

Cette approche s'inscrit dans un mouvement plus large visant à démocratiser l'adaptation des grands modèles de langage. En réduisant drastiquement les ressources nécessaires, le Prefix Tuning permet à des équipes disposant de moyens limités de spécialiser des modèles puissants pour leurs cas d'usage, tout en conservant la possibilité de basculer rapidement entre plusieurs tâches en changeant simplement de préfixe.

Étymologie

Le terme combine « prefix » (préfixe), désignant les vecteurs ajoutés en amont de la séquence d'entrée, et « tuning » (réglage), indiquant que seuls ces vecteurs sont ajustés lors de l'entraînement. Le nom reflète l'idée centrale de la méthode : régler le modèle en ne touchant qu'à un préfixe, sans modifier le modèle lui-même.

Exemples concrets

Adaptation d'un modèle GPT pour la génération de résumés d'articles scientifiques sans réentraîner tout le modèle

On entraîne un préfixe dédié à la tâche de résumé. À l'inférence, le modèle reçoit : [préfixe résumé] + « Résume l'article suivant : [texte] »

Déploiement multi-tâches sur un seul serveur : un même modèle gère la traduction, le résumé et la classification en changeant simplement de préfixe

Pour la traduction : [préfixe traduction FR→EN] + « Traduis : Bonjour le monde ». Pour la classification : [préfixe classification] + « Classe ce texte : [texte] »

Personnalisation du style de réponse d'un chatbot d'entreprise tout en utilisant un modèle de base partagé

Usage pratique

En prompt engineering, le Prefix Tuning est particulièrement utile lorsque vous devez spécialiser un modèle pour une tâche précise sans avoir les ressources pour un fine-tuning complet. Vous pouvez entraîner plusieurs préfixes légers pour différentes tâches et les interchanger à la volée sur un même modèle déployé. C'est une approche à privilégier quand vous avez accès aux couches internes du modèle et que le simple prompt engineering textuel ne suffit pas à obtenir la qualité souhaitée.

Concepts liés

Fine-TuningPrompt TuningLoRAAdapter Layers

FAQ

Quelle est la différence entre le Prefix Tuning et le Prompt Tuning ?
Le Prompt Tuning (soft prompting) n'ajoute des vecteurs apprenables qu'à la couche d'entrée du modèle, tandis que le Prefix Tuning insère des vecteurs dans toutes les couches du transformeur. Cette insertion en profondeur donne au Prefix Tuning un pouvoir expressif supérieur et de meilleures performances, notamment sur les tâches de génération, mais au prix d'un nombre légèrement plus élevé de paramètres à stocker.
Le Prefix Tuning peut-il remplacer un fine-tuning classique ?
Dans de nombreux cas, oui. Des études montrent que le Prefix Tuning atteint des performances comparables au fine-tuning complet sur des tâches comme la génération de texte conditionnel et la compréhension de tables, tout en ne modifiant qu'une fraction infime des paramètres. Cependant, pour des tâches très éloignées des données de pré-entraînement ou nécessitant une restructuration profonde des connaissances du modèle, le fine-tuning complet peut rester préférable.
Faut-il avoir accès au code source du modèle pour utiliser le Prefix Tuning ?
Oui, le Prefix Tuning nécessite un accès aux couches internes du transformeur pour y insérer les vecteurs préfixes. Il n'est donc pas applicable via une API fermée comme celle de ChatGPT ou Claude. Pour les modèles accessibles uniquement via API, les techniques de prompt engineering textuel ou, quand disponible, le fine-tuning proposé par le fournisseur restent les alternatives.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.