Température : Qu'est-ce que la température en IA ?
Définition
La température est un paramètre d'inférence des LLM qui contrôle le degré de créativité (ou de déterminisme) des réponses générées. Une température basse (0) produit des réponses prévisibles et factuelles ; une température haute (1+) favorise la diversité et la créativité.Qu'est-ce que la Température en IA ?
La température est un hyperparamètre utilisé lors de la génération de texte par les modèles de langage. Elle modifie la distribution de probabilité sur le vocabulaire avant la sélection du prochain token. Techniquement, les logits (scores bruts) produits par le modèle sont divisés par la valeur de température avant l'application de la fonction softmax. Une température de 1.0 laisse la distribution inchangée. Une température inférieure à 1 « aiguise » la distribution, augmentant la probabilité des tokens les plus probables et réduisant celle des tokens moins probables. Une température supérieure à 1 « aplatit » la distribution, donnant plus de chances aux tokens moins probables d'être sélectionnés.
En termes simples : à température 0, le modèle choisit toujours le token le plus probable, produisant des réponses quasi-déterministes. À température 1 ou plus, le modèle explore des choix de mots plus variés et créatifs, mais au risque de s'éloigner de la cohérence ou de la factualité. C'est un compromis entre fiabilité et créativité que chaque application doit calibrer selon ses besoins.
La température est généralement réglable entre 0 et 2 selon les fournisseurs (OpenAI va jusqu'à 2, Anthropic recommande des valeurs entre 0 et 1). Elle interagit avec d'autres paramètres de sampling comme top-p (nucleus sampling) et top-k, qui filtrent les tokens candidats avant la sélection finale. La combinaison de ces paramètres offre un contrôle fin sur le comportement de génération du modèle.
Pourquoi la Température est importante
Le réglage de la température a un impact direct et mesurable sur la qualité et la pertinence des réponses. Un mauvais réglage peut ruiner une application IA par ailleurs bien conçue.
- Tâches factuelles : pour l'extraction de données, la classification, l'analyse de documents ou les réponses à des questions factuelles, une température basse (0 à 0.3) est recommandée pour maximiser la précision et la reproductibilité.
- Tâches créatives : pour la rédaction marketing, le brainstorming, la génération d'idées ou la paraphrase, une température modérée à haute (0.7 à 1.0) encourage la diversité et l'originalité.
- Cohérence : une température trop haute (>1.5) produit souvent du texte décousu, des non-sens ou des hallucinations. C'est rarement souhaitable en contexte professionnel.
- Reproductibilité : à température 0, les mêmes entrées produisent (presque) toujours les mêmes sorties, ce qui est crucial pour les tests, le débogage et les applications nécessitant des résultats déterministes.
- Contrôle du risque d'hallucination : abaisser la température réduit le risque d'hallucination en limitant l'exploration de tokens improbables qui pourraient mener à des affirmations non fondées.
Comment ça fonctionne
Mathématiquement, à chaque étape de génération, le modèle produit un vecteur de logits — un score pour chaque token du vocabulaire. Ces logits sont divisés par la température T, puis la fonction softmax convertit les résultats en probabilités. Formellement : P(token_i) = exp(logit_i / T) / sum(exp(logit_j / T)) pour tout j dans le vocabulaire.
Quand T tend vers 0, la distribution softmax converge vers un one-hot vector : le token avec le logit le plus élevé obtient une probabilité proche de 1, et tous les autres de 0. Le modèle est alors purement déterministe (greedy decoding). Quand T = 1, la distribution originale est préservée. Quand T > 1, la distribution devient plus uniforme, et même des tokens à faible probabilité peuvent être sélectionnés.
En pratique, la température interagit avec les paramètres top-p et top-k. Top-p (nucleus sampling) filtre les tokens dont la probabilité cumulée dépasse un seuil (typiquement 0.9 ou 0.95), éliminant les candidats très improbables avant l'échantillonnage. Top-k limite la sélection aux k tokens les plus probables. La combinaison température + top-p est la configuration la plus courante. Claude d'Anthropic utilise par défaut une température de 1.0 avec top-p de 0.999 et top-k de 0.
Exemple concret
Chez Kern-IT, KERNLAB calibre la température différemment selon les modules de ses solutions IA. Dans A.M.A, l'assistant de gestion, la température varie selon le type de requête : 0.0 pour l'extraction de données structurées depuis des factures ou des contrats (aucune créativité souhaitée), 0.3 pour les réponses à des questions sur la documentation interne (factualité prioritaire avec un minimum de variété), 0.7 pour la rédaction assistée de comptes rendus et d'emails (créativité encadrée), et 0.9 pour le brainstorming et la génération d'idées lors de sessions stratégiques.
Un cas concret : pour un client dans la génération de contenu marketing, Kern-IT a mis en place un pipeline à deux températures. Un premier appel LLM à température 0.9 génère 5 variantes créatives d'un texte publicitaire. Un second appel à température 0.1 sélectionne et affine la meilleure variante pour la cohérence et la conformité. Cette approche « generate-then-refine » combine le meilleur des deux mondes.
Mise en œuvre
- Identifier le type de tâche : classer chaque tâche sur un axe factualité-créativité pour déterminer la plage de température appropriée.
- Commencer par des valeurs standard : utiliser 0.0-0.3 pour les tâches factuelles, 0.5-0.7 pour les tâches mixtes, 0.8-1.0 pour les tâches créatives comme point de départ.
- Tester et évaluer : générer plusieurs réponses à différentes températures pour la même requête et évaluer la qualité, la pertinence et la cohérence.
- Combiner avec top-p : pour un contrôle plus fin, fixer la température à 1.0 et ajuster top-p entre 0.8 et 0.95 plutôt que de modifier la température.
- Adapter dynamiquement : implémenter un routage de température basé sur le type de requête détecté automatiquement, comme le fait KERNLAB dans A.M.A.
- Documenter les choix : noter les réglages de température pour chaque cas d'usage et leur justification, afin de faciliter le debugging et l'optimisation future.
Technologies et outils associés
- APIs avec contrôle de température : OpenAI API, Anthropic API, Google Vertex AI — tous exposent le paramètre température dans leurs endpoints
- Paramètres complémentaires : top-p (nucleus sampling), top-k, frequency_penalty, presence_penalty pour un contrôle fin
- Évaluation : Promptfoo, RAGAS, DeepEval pour comparer la qualité des réponses à différentes températures
- Frameworks : LangChain, LlamaIndex permettent de configurer la température par chaîne ou par agent
- Outils de test : OpenAI Playground, Anthropic Console pour expérimenter visuellement les effets de la température
Conclusion
La température est un levier simple mais puissant pour contrôler le comportement d'un LLM. Son réglage judicieux fait la différence entre une application IA fiable et une application qui hallucine ou produit des réponses génériques. KERNLAB, la division IA de Kern-IT, intègre un calibrage dynamique de la température dans ses solutions, adaptant le comportement du modèle au type de tâche en temps réel pour optimiser à la fois la qualité des réponses et l'expérience utilisateur.
Pour les tâches critiques (extraction de données, conformité, analyse juridique), fixez toujours la température à 0. La reproductibilité et la précision sont plus importantes que la variété dans ces contextes.