P

P Tuning : Définition et Exemples

Le P-Tuning est une technique d'adaptation des grands modèles de langage qui consiste à optimiser des embeddings continus (« prompts apprenables ») insérés dans l'entrée du modèle, sans modifier les poids du modèle lui-même.

Définition complète

Le P-Tuning (pour Prompt Tuning) est une méthode de fine-tuning efficace qui permet d'adapter un grand modèle de langage (LLM) à une tâche spécifique sans toucher à ses milliards de paramètres internes. Au lieu de réécrire les poids du réseau de neurones, on ajoute des vecteurs continus apprenables — appelés « soft prompts » ou « virtual tokens » — directement dans la séquence d'entrée. Ces vecteurs sont optimisés par rétropropagation pendant l'entraînement.

Contrairement au prompt engineering classique où l'on rédige manuellement des instructions en langage naturel, le P-Tuning travaille dans l'espace des embeddings du modèle. Les tokens virtuels ne correspondent à aucun mot réel : ce sont des représentations numériques que l'algorithme d'optimisation ajuste pour maximiser la performance sur la tâche cible. Cette approche permet d'atteindre des performances comparables au fine-tuning complet tout en ne modifiant qu'une infime fraction des paramètres.

Il existe deux versions principales de cette technique. P-Tuning v1, introduit par Liu et al. en 2021, utilise un petit réseau LSTM pour générer les embeddings des prompts apprenables. P-Tuning v2, publié peu après, étend le concept en insérant des préfixes apprenables à chaque couche du transformer (et pas seulement à l'entrée), ce qui améliore significativement les performances sur les tâches complexes comme la compréhension de texte ou l'extraction d'entités.

Le P-Tuning s'inscrit dans la famille plus large des méthodes PEFT (Parameter-Efficient Fine-Tuning), aux côtés de LoRA et du Prefix Tuning. Son principal avantage est de permettre à une même instance de modèle de servir plusieurs tâches différentes : il suffit de charger le jeu de soft prompts correspondant à chaque tâche, sans dupliquer le modèle entier en mémoire.

Étymologie

Le terme « P-Tuning » est une contraction de « Prompt Tuning », combinant le concept de prompt (instruction donnée au modèle) et de tuning (ajustement, optimisation). Il a été introduit dans l'article « GPT Understands, Too » par Xiao Liu et al. (Tsinghua University) en 2021, pour désigner spécifiquement l'optimisation de prompts continus dans l'espace des embeddings.

Exemples concrets

Classification de sentiments sur des avis clients sans réentraîner tout le modèle

Entraîner des soft prompts de 20 tokens virtuels sur un dataset d'avis annotés, puis les insérer avant chaque avis à classifier pour obtenir une prédiction positif/négatif.

Extraction d'entités nommées dans des documents médicaux avec un modèle généraliste

Utiliser P-Tuning v2 avec des préfixes apprenables à chaque couche du transformer pour spécialiser un modèle généraliste sur la reconnaissance d'entités médicales (médicaments, symptômes, pathologies).

Déploiement multi-tâches sur un seul serveur d'inférence

Stocker un jeu de soft prompts par tâche (résumé, traduction, Q&A) et charger dynamiquement le bon jeu au moment de l'inférence, le modèle de base restant partagé en mémoire GPU.

Usage pratique

En pratique, le P-Tuning est particulièrement utile lorsque vous devez adapter un LLM à une tâche métier sans disposer de ressources GPU suffisantes pour un fine-tuning complet. Vous pouvez utiliser des frameworks comme PEFT de Hugging Face pour implémenter le P-Tuning v2 en quelques lignes de code. C'est une solution idéale pour les déploiements en production multi-tâches où la mémoire GPU est une contrainte critique.

Concepts liés

Prompt TuningLoRAPrefix TuningPEFT (Parameter-Efficient Fine-Tuning)

FAQ

Quelle est la différence entre le P-Tuning et le prompt engineering classique ?
Le prompt engineering classique consiste à rédiger manuellement des instructions en langage naturel. Le P-Tuning, en revanche, optimise automatiquement des vecteurs numériques continus (soft prompts) dans l'espace des embeddings du modèle par rétropropagation. Ces tokens virtuels ne correspondent à aucun mot humain et sont souvent plus performants que les prompts rédigés à la main pour des tâches spécifiques.
Quelle différence entre P-Tuning v1 et P-Tuning v2 ?
P-Tuning v1 insère des embeddings apprenables uniquement dans la couche d'entrée du modèle et utilise un réseau LSTM pour les générer. P-Tuning v2 étend cette approche en ajoutant des préfixes apprenables à chaque couche du transformer, ce qui lui confère une capacité d'adaptation bien supérieure, notamment sur les tâches de compréhension complexes et les modèles de taille moyenne.
Le P-Tuning est-il aussi performant qu'un fine-tuning complet ?
Sur les très grands modèles (10 milliards de paramètres et plus), le P-Tuning atteint des performances très proches du fine-tuning complet, tout en ne modifiant que 0,1 à 1 % des paramètres. Pour les modèles de taille moyenne, P-Tuning v2 comble largement l'écart grâce à ses préfixes multi-couches. En revanche, sur de petits modèles, le fine-tuning complet peut rester supérieur.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.