P

Presence Penalty : Définition et Exemples

La Presence Penalty est un paramètre des modèles de langage qui pénalise les tokens déjà apparus dans le texte généré, encourageant ainsi le modèle à introduire de nouveaux sujets et termes plutôt que de se répéter.

Définition complète

La Presence Penalty (pénalité de présence) est un hyperparamètre disponible dans la plupart des API de modèles de langage comme celles d'OpenAI ou de Cohere. Son rôle est simple : chaque fois qu'un token a déjà été généré dans la réponse, une pénalité fixe est appliquée à sa probabilité d'être sélectionné à nouveau. Contrairement à la Frequency Penalty qui augmente proportionnellement au nombre d'occurrences, la Presence Penalty s'applique de manière binaire — le token est soit déjà apparu (pénalisé), soit jamais apparu (non pénalisé).

Concrètement, ce paramètre accepte généralement une valeur entre -2.0 et 2.0. Une valeur positive décourage la répétition et pousse le modèle à explorer de nouveaux mots et concepts. Une valeur négative, à l'inverse, encourage le modèle à réutiliser les termes déjà mentionnés, ce qui peut renforcer la cohérence thématique. Une valeur de 0 désactive complètement l'effet.

L'intérêt principal de la Presence Penalty réside dans sa capacité à contrôler la diversité lexicale et thématique des réponses. Lorsqu'elle est augmentée, le modèle tend à aborder davantage de sujets différents et à varier son vocabulaire. Cela est particulièrement utile pour le brainstorming, la génération créative ou toute tâche nécessitant une couverture large de concepts.

Il est important de distinguer la Presence Penalty de la Frequency Penalty et de la Temperature, qui influencent toutes la diversité des sorties mais par des mécanismes différents. Un bon prompt engineer sait combiner ces paramètres de manière équilibrée pour obtenir le comportement souhaité du modèle, sans sacrifier la cohérence au profit de la diversité, ni l'inverse.

Étymologie

Le terme vient de l'anglais « presence » (présence) et « penalty » (pénalité). Il décrit littéralement une pénalité appliquée en fonction de la simple présence d'un token dans le texte déjà généré. Ce concept a été popularisé par OpenAI lors de l'introduction de ses paramètres de contrôle de génération dans l'API GPT-3 en 2020.

Exemples concrets

Brainstorming créatif — forcer le modèle à explorer des idées variées sans tourner en boucle

Donne-moi 20 idées de noms pour une startup dans l'IA. Sois le plus varié possible. [presence_penalty: 1.5]

Rédaction d'article — maintenir un vocabulaire riche sans répétitions excessives

Rédige un article de 500 mots sur les énergies renouvelables. [presence_penalty: 0.6]

Génération de code — garder une valeur basse pour que le modèle réutilise les noms de variables de manière cohérente

Écris une fonction Python qui trie une liste et gère les erreurs. [presence_penalty: 0.0]

Usage pratique

En pratique, utilisez une Presence Penalty entre 0.3 et 0.8 pour la plupart des tâches de rédaction afin d'obtenir un texte naturel et varié. Montez à 1.0-1.5 pour du brainstorming ou de l'exploration créative. Gardez la valeur à 0 pour les tâches techniques comme la génération de code ou les réponses factuelles où la cohérence terminologique est essentielle.

Concepts liés

Frequency PenaltyTemperatureTop-P (Nucleus Sampling)Répétition dans les LLM

FAQ

Quelle est la différence entre Presence Penalty et Frequency Penalty ?
La Presence Penalty applique une pénalité fixe dès qu'un token est apparu au moins une fois, quel que soit le nombre de répétitions. La Frequency Penalty, elle, augmente proportionnellement : plus un token est répété, plus il est pénalisé. La Presence Penalty favorise la diversité thématique, tandis que la Frequency Penalty cible spécifiquement les répétitions excessives.
Quelle valeur de Presence Penalty utiliser par défaut ?
Pour un usage général, une valeur entre 0 et 0.6 est recommandée. La valeur par défaut dans la plupart des API est 0 (désactivée). Commencez par 0.3 si vous constatez des répétitions, puis ajustez progressivement. Évitez les valeurs supérieures à 1.5 sauf pour des cas très spécifiques, car le texte peut devenir incohérent.
Peut-on combiner Presence Penalty et Temperature ?
Oui, et c'est même courant. La Temperature contrôle l'aléatoire global de la sélection des tokens, tandis que la Presence Penalty cible spécifiquement la réutilisation des tokens existants. Pour un texte créatif et varié, combinez une Temperature de 0.8-1.0 avec une Presence Penalty de 0.5-1.0. Attention toutefois à ne pas cumuler des valeurs trop élevées sur les deux paramètres, ce qui produirait un texte décousu.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.