Qu’est-ce que la température des LLM ?

Auteurs

Joshua Noble

Data Scientist

Qu’est-ce que la température des LLM ?

Dans le domaine de l’intelligence artificielle (IA) et du machine learning, la température est un paramètre permettant d’ajuster la sortie des grands modèles de langage (LLM). La température contrôle le caractère aléatoire du texte généré par les LLM lors de l’inférence.

Les LLM génèrent du texte en prédisant le mot suivant (ou plutôt, le token suivant) selon une distribution de probabilité. Chaque token se voit attribuer un logit (valeur numérique) du LLM et l’ensemble des tokens est normalisé dans une « distribution de probabilité softmax ». Chaque token se voit attribuer une « fonction softmax » comprise entre zéro et un, et la somme des probabilités softmax de tous les tokens est un.

Le paramètre de température LLM modifie cette distribution. Une température plus basse rend essentiellement les tokens ayant la probabilité la plus élevée plus susceptibles d’être sélectionnés ; une température plus élevée augmente la probabilité qu’un modèle sélectionne des tokens moins probables. En effet, une température plus élevée entraîne une plus grande variabilité dans la sélection des jetons par le LLM. Différents paramètres de température introduisent essentiellement différents niveaux d’aléatoire lorsqu’un modèle d’IA générative produit du texte.

La température est une fonctionnalité cruciale pour contrôler le caractère aléatoire des performances du modèle. Elle permet aux utilisateurs d’ajuster la sortie du LLM pour mieux s’adapter à différentes applications de génération de texte dans le monde réel. Plus précisément, ce paramètre du LLM leur permet de trouver un équilibre entre cohérence et créativité lors de la génération de sorties pour un cas d’utilisation spécifique. Par exemple, une température basse peut être préférable pour les tâches exigeant précision et exactitude factuelle, comme la documentation ou les réponses conversationnelles avec des chatbots. La valeur de température plus faible aide le LLM à produire un texte plus cohérent et à éviter les réponses non pertinentes. En revanche, une température élevée est préférable pour les sorties ou les tâches créatives telles que la rédaction de contenu créatif ou le brainstorming. Le paramètre de température permet aux utilisateurs d’affiner les LLM de façon efficace et d’ajuster la sortie d’un modèle en fonction du résultat souhaité.

On confond souvent la température avec la « créativité », mais ce n’est pas toujours le cas. Il est plus utile d’envisager cela comme l’étendue large du modèle qui utilise le texte de ses données d’entraînement. Max Peeperkorn et al1 ont mené une analyse empirique de la sortie du LLM pour différentes valeurs de température et ont conclu ce qui suit :

« Nous constatons que la température est faiblement corrélée à la nouveauté, et sans surprise, moyennement corrélée à l’incohérence, mais qu’’il n’y a aucune relation ni avec la cohésion, ni avec la singularité. Cependant, l’influence de la température sur la créativité est bien plus nuancée et faible que ne le suggère l’affirmation selon laquelle il existe un « paramètre de créativité ». Les résultats globaux indiquent que le LLM génère des sorties légèrement plus originales lorsque la température augmente. »

Une valeur de température élevée peut rendre les productions du modèle plus créatives, mais il est plus juste de penser qu’elles sont moins déterminées par les données d’entraînement.

Les dernières tendances en matière d’IA, vues par des experts

Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

Configuration de la température

De nombreuses API d’accès aux modèles, notamment IBM® Granite Instruct ou ChatGPT d’OpenAI, disposent de paramètres permettant de configurer la température ainsi que d’autres paramètres LLM. Les trois plus courants sont :

do_sample : ce paramètre contrôle si le modèle échantillonne pendant la génération de texte. L’échantillonnage est une méthode permettant de faire varier la sortie de texte. Lorsqu'il est réglé sur « True », le modèle échantillonne de manière aléatoire les probabilités de token expurgées au lieu de toujours sélectionner le mot le plus probable à partir d'une séquence dans un jeu de données. En fait, nous avons besoin que ce paramètre soit « True » pour permettre les ajustements de température pour le LLM pré-entraîné.

top_k : ce paramètre limite les choix possibles du modèle lors d’un échantillonnage aléatoire aux k tokens les plus probables. Alors que le paramètre précédent permet un échantillonnage aléatoire à d’autres tokens prédits au-delà du plus probable, ce paramètre limite le nombre de tokens potentiels à partir desquels le modèle sélectionne. Alors que l’échantillonnage aléatoire permet de produire des productions plus variées et plus diversifiées, ce paramètre permet de maintenir la qualité du texte généré en excluant les tokens les plus improbables de l’échantillonnage.

top_p: Ce paramètre est parfois également appelé échantillonnage de noyau. Il s’agit d’une autre méthode consistant à limiter les choix d’échantillonnage aléatoire pour éviter les résultats incohérents et absurdes. Ce paramètre permet au modèle de prendre en compte les tokens dont la probabilité cumulée est supérieure à une valeur de probabilité spécifiée. Lors de la sélection des tokens pour la sortie générée, le modèle ne sélectionne que le groupe de tokens dont la probabilité totale est supérieure, par exemple, à 95 %. Alors que l’échantillonnage aléatoire permet au modèle d’avoir une sortie plus dynamique, le paramètre top p garantit que la sortie conserve une certaine cohérence et consistance.

AI Academy

Pourquoi les modèles de fondation constituent-ils un changement de paradigme pour l’IA ?

Découvrez une nouvelle catégorie de modèles IA flexibles et réutilisables, capables de générer de nouveaux revenus, de réduire les coûts et d’augmenter la productivité. Utilisez ensuite notre guide pour obtenir plus d’informations.

Contrôle de la sortie

Souvent, les modèles permettent aux utilisateurs de contrôler la sortie du modèle de manière plus explicite. Voici quelques paramètres couramment utilisés pour le contrôle des sorties :

Longueur maximale : la longueur maximale correspond au nombre total de tokens que l’IA est autorisée à générer. Ce paramètre est utile, car il permet aux utilisateurs de gérer la durée de la réponse du modèle et peut éviter les réponses trop longues ou non pertinentes. 

Séquences d’arrêt : ces séquences indiquent au modèle quand arrêter la génération de sortie et permettent de contrôler la longueur et la structure du contenu. Demander à un LLM d’écrire un e-mail en utilisant « Cordialement » ou « Bien cordialement » comme séquence d’arrêt indique au modèle de s’arrêter avant la formule de politesse de fin. Ce prompt peut vous aider à faire en sorte que votre e-mail soit court et précis. Les séquences d’arrêt servent à obtenir une sortie dans un format structuré, comme un e-mail, une liste numérotée ou une boîte de dialogue.

Pénalité de fréquence : une pénalité de fréquence est un paramètre qui décourage la répétition dans le texte généré en pénalisant les tokens proportionnellement à la fréquence à laquelle ils apparaissent. Plus un token est utilisé dans le texte, moins le LLM est susceptible de le réutiliser.

Pénalité de présence : la pénalité de présence est similaire à la pénalité de fréquence, mais elle pénalise les tokens en fonction de leur présence ou non plutôt que de les pénaliser proportionnellement.

Comparaison des résultats avec IBM Granite

Pour comprendre comment la température affecte la sortie d’un LLM, il suffit de regarder les sorties créées par le modèle IBM Granite 3.1 aux 2 milliards de paramètres. Le prompt fourni ici était le suivant : « Écrivez une histoire à propos d’un data scientist qui adore Python. »

À une température de 0,1, Granite génère :

Il était une fois, dans la ville animée de San Francisco, un brillant data scientist nommé Alex. Alex était connu pour ses compétences exceptionnelles en programmation Python et en analyse de données. Il passait ses journées et ses nuits plongé dans le monde des données, utilisant Python pour extraire des informations et faire des prédictions.Un jour, Alex fut chargé d’analyser l’attrition des clients pour un service de streaming populaire. Il utilisa la bibliothèque scikit-learn de Python pour créer un modèle de machine learning capable de prédire quels clients étaient susceptibles d’annuler leurs abonnements.

Avec une température de 0,75, Granite génère :

Il était une fois, dans la ville animée de San Francisco, un brillant data scientist nommé Alex. Alex était connu pour son amour profond pour Python, un langage de programmation qui était selon lui l’outil idéal pour l’analyse de données et le machine learning.

Chaque jour, Alex se levait tôt, préparait un café et s’installait à son bureau. Il passait des heures à écrire du code en Python, à explorer des jeux de données et à construire des modèles prédictifs. Son amour pour Python ne concernait pas seulement le langage lui-même, mais aussi la communauté qui s’était développée autour de lui.

À une température de 1,25, Granite génère :

Il était une fois, dans une ville animée remplie de gratte-ciel imposants et de néons, un data scientist qui aimait Python plus que tout au monde. Le data scientist a une assistante féline nommée Suki. Suki est une chatte curieuse et espiègle, toujours prête à explorer les moindres recoins de la maison.Un jour, le data scientist travaille sur un problème de codage complexe. Suki ne cesse de miauler bruyamment, comme si elle essayait de communiquer un message au data scientist. Le data scientist remarque que les miaulements bruyants se produisent généralement lorsqu’il est sur le point de trouver une solution à un problème de codage complexe.

Vous remarquerez que même si chaque histoire commence par un début similaire, l’augmentation de la température augmente la variabilité du texte et des détails générés.

Solutions connexes
Modèles de fondation

Explorez la bibliothèque de modèles de fondation d’IBM dans le portefeuille watsonx pour déployer l’IA générative dans votre entreprise en toute confiance.

Découvrir watsonx.ai
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.

Découvrir les solutions d’IA
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Explorez la bibliothèque de modèles de fondation d’IBM dans le portefeuille IBM watsonx pour déployer l’IA générative dans votre entreprise en toute confiance.

Découvrir watsonx.ai Découvrir les solutions d’IA
Notes de bas de page

1 Max Peeperkorn, Tom Kouwenhoven, Dan Brown, and Anna Jordanous, Is Temperature the Creativity Parameter of Large Language Models?, 2024