Intermédiaire 11 minConfiguration

Température, top-p, top-k : les paramètres

Réponse directe

Le top-p (nucleus sampling) ne garde que les tokens les plus probables dont la probabilité cumulée atteint p, par exemple 0,9. Le top-k garde un nombre fixe de candidats, par exemple 40. La température règle le hasard du tirage : proche de 0, le modèle choisit presque toujours le token le plus probable. Ollama démarre à température 0,8, top-k 40 et top-p 0,9.

Trois nombres reviennent dans tous les réglages d'un modèle local : la température, le top-p et le top-k. Ce guide explique ce que chacun retire ou déplace dans la liste des mots possibles, avec un exemple chiffré, les valeurs par défaut d'Ollama et de llama.cpp, les recommandations publiées par les éditeurs de modèles, et la façon de les appliquer.

Par Mohamed Meguedmi·Màj 2026-09-29·Testé sur Windows, macOS, Linux

#Top-p, top-k, température : la définition en un tableau

À chaque mot produit, un modèle calcule une probabilité pour chacun des tokens de son vocabulaire. Les paramètres d'échantillonnage décident ensuite lequel tirer. Top-p et top-k réduisent la liste des candidats ; la température modifie l'écart entre les probables et les improbables. Aucun n'ajoute de connaissance au modèle : ils règlent seulement la variété et le risque.

Ce que fait chaque paramètre
ParamètreCe qu'il agit surValeur basseValeur hauteDéfaut Ollama
temperatureÉcart entre tokens probables et improbablesRéponses plus déterministesPlus de variété, plus d'erreurs0,8
top_pTaille de la liste, définie par la probabilité cumuléeListe courte, sortie conservatriceListe large, plus de diversité0,9
top_kNombre maximal de candidatsPeu de candidatsBeaucoup de candidats40
min_pSeuil relatif à la meilleure probabilitéFiltrage légerFiltrage fort0,0 (désactivé)
repeat_penaltyPénalité sur les tokens récemment utilisésPlus de répétitionsMoins de répétitions, risque d'étrangeté1,0 (désactivé)

Ces défauts viennent de la référence du Modelfile d'Ollama. Beaucoup de modèles fournissent leurs propres valeurs dans leur fichier de configuration, qui remplacent alors ces défauts : d'où l'intérêt de lire la fiche du modèle, comme on le verra plus bas.

#Comment un LLM choisit le prochain mot

Le kit IA Locale

Ton ChatGPT privé et gratuit sur ta machine en 1 heure — LM Studio, Ollama, Open WebUI, tes documents, sans cloud.

  • Espace en ligne à vie
  • PDF + fichiers
  • Mises à jour à vie

Le modèle produit, pour chaque position, une distribution de probabilités sur tout son vocabulaire. Choisir toujours le token le plus probable, dit décodage glouton, donne des textes plats, répétitifs et parfois bloqués dans une boucle. On introduit donc un tirage aléatoire, encadré par les paramètres d'échantillonnage. Une graine fixe (seed) rend ce tirage reproductible : la documentation Ollama précise qu'une graine donnée produit le même texte pour la même invite.

L'ordre dans lequel les filtres s'appliquent compte. Dans llama.cpp, le moteur d'inférence GGUF utilisé notamment par LM Studio, l'ordre par défaut est : pénalités, DRY, top-n sigma, top-k, typical-p, top-p, min-p, XTC, puis température en dernier. Autrement dit, top-k et top-p opèrent sur les probabilités d'origine, et la température ne sert qu'à tirer dans ce qui reste. Beaucoup de tutoriels annoncent l'inverse ; l'ordre réel peut différer d'un moteur à l'autre, et se règle dans llama.cpp par le paramètre --samplers.

i
Ce qui change pour vous
Comme la température s'applique après les filtres dans llama.cpp, monter la température ne fait pas entrer de tokens absurdes que top-k ou top-p avaient déjà écartés : elle redistribue les chances entre les candidats restants.

#Un exemple chiffré : ce que retient chaque réglage

Prenons sept candidats pour le mot suivant, avec leurs probabilités : 0,45 ; 0,25 ; 0,12 ; 0,08 ; 0,05 ; 0,03 ; 0,02. Ce tableau est un calcul illustratif, pas une mesure sur un modèle réel.

Quels candidats restent, selon le filtre
FiltreRègleCandidats conservésProbabilité couverte
AucunTout le vocabulaire7100 %
top_k = 3Les 3 meilleurs382 %
top_p = 0,9On s'arrête quand le cumul atteint 0,904 (0,45 + 0,25 + 0,12 + 0,08)90 %
top_p = 0,7Cumul de 0,70270 %
min_p = 0,1Garder les tokens à plus de 10 % du meilleur, soit un seuil de 0,045595 %

Le point à retenir : top-k garde toujours le même nombre de candidats, quelle que soit la situation ; top-p et min-p s'adaptent. Quand le modèle est très sûr de lui (un token à 0,95), top-p ne garde peut-être qu'un ou deux candidats ; quand il hésite entre dix mots, il en garde davantage. C'est pourquoi top-p est souvent préféré à top-k.

#1. Température : le bouton du hasard

Avant le tirage, la température divise les logits du modèle. À température basse, l'écart entre les tokens s'accroît : le plus probable écrase les autres. À température haute, l'écart se réduit. À 0, le modèle choisit toujours le token le plus probable et produit des sorties identiques à chaque essai, ce que la documentation de llama.cpp confirme.

Effet de la température sur l'exemple précédent (calcul illustratif)
CandidatProbabilité d'origineT = 0,5T = 1,5
1er45 %70 %34 %
2e25 %22 %23 %
3e12 %5 %14 %
4e8 %2 %11 %
5e à 7e10 % au total1,3 %17,8 %
0 à 0,3
Extraction, classification, résumé fidèle : vous voulez la même réponse à chaque essai.
0,4 à 0,7
Rédaction technique, traduction, support : de la variété sans dérive.
0,8
Valeur par défaut d'Ollama et de llama.cpp : conversation générale.
1 et plus
Créativité, brainstorming ; plus de risques d'erreurs et de digressions.
!
Température 0 : pas toujours la meilleure idée pour du code
Pour des sorties à parser (JSON, classification), une température basse est raisonnable. Mais les éditeurs de modèles à raisonnement recommandent souvent des valeurs plus élevées : la fiche de Qwen3.5 donne 0,6 pour le code en mode raisonnement, et 1,0 pour les tâches générales. Lisez la fiche avant d'imposer 0.

#2. Top-p : le filtre adaptatif

Top-p, ou nucleus sampling, retient les tokens les plus probables jusqu'à ce que leur probabilité cumulée atteigne p. Avec 0,9, on jette la queue de 10 % de probabilité ; avec 1,0, on ne filtre rien. La documentation d'Ollama rappelle qu'une valeur plus haute, par exemple 0,95, donne un texte plus varié, et une plus basse, par exemple 0,5, un texte plus ciblé et conservateur.

0,5 à 0,7
Très conservateur : réponses sûres, parfois monotones.
0,9
Défaut d'Ollama : coupe la queue sans étouffer la variété.
0,95
Valeur par défaut de llama-server, et valeur recommandée par plusieurs fiches de modèles.
1,0
Filtre désactivé : la température reste seule à agir.

#3. Top-k : le plafond fixe

Top-k ne conserve que les k tokens les plus probables. La documentation d'Ollama décrit ce paramètre comme un moyen de réduire la probabilité de produire du non-sens : plus haut (100), réponses plus diverses ; plus bas (10), plus conservatrices. Son défaut est 40, comme dans llama.cpp, où 0 le désactive.

Top-k, top-p ou min-p : lequel utiliser
FiltreAvantageLimiteQuand l'utiliser
top_kSimple, borne le calculIgnore la forme de la distribution : trop de candidats quand le modèle est sûr, pas assez quand il hésiteGarde-fou large (20 à 100)
top_pS'adapte à la confiance du modèlePeut laisser passer une longue queue si la distribution est plateRéglage principal de la diversité
min_pSeuil relatif à la meilleure probabilité, stable même à température élevéeMoins connu, non actif par défaut dans OllamaAlternative à top_p, souvent avec température plus haute

Pour la requête « top p vs top k » : utilisez top-p comme réglage principal, gardez top-k comme garde-fou, et n'ajustez pas les deux dans le même essai, sinon vous ne saurez pas lequel a produit la différence.

#Valeurs par défaut et recommandations des éditeurs

Les défauts d'un moteur sont un compromis générique. Les éditeurs de modèles publient souvent des valeurs adaptées à leurs modèles, et elles peuvent s'écarter des défauts. Voici ce que la fiche de Qwen3.5 recommande pour ses modèles, à comparer aux défauts d'Ollama (température 0,8, top-p 0,9, top-k 40).

Réglages recommandés dans la fiche de Qwen3.5-9B sur Hugging Face
ModeTempératuretop_ptop_kpresence_penalty
Raisonnement, tâches générales1,00,95201,5
Raisonnement, code précis0,60,95200,0
Sans raisonnement, tâches générales0,70,8201,5

Ces valeurs valent pour cette famille de modèles, pas pour tous. Les fiches d'autres éditeurs donnent d'autres valeurs : cherchez la section sur les paramètres d'échantillonnage recommandés dans la fiche Hugging Face ou sur la page du modèle dans la bibliothèque Ollama. La fiche de Qwen précise aussi que la prise en charge de ces paramètres varie selon le moteur d'inférence.

#Pénalités : répétition, fréquence, présence

Les modèles locaux, surtout petits ou fortement quantifiés, bouclent parfois sur les mêmes phrases. Les pénalités sont le remède, mais leurs défauts sont souvent mal connus. Dans Ollama, repeat_penalty vaut 1,0 par défaut, donc désactivée ; la documentation donne 1,5 comme exemple d'une valeur qui pénalise plus fortement. La valeur 1,1 souvent citée est un choix à faire, pas un défaut.

repeat_penalty
Pénalise les tokens vus récemment ; repeat_last_n (64 par défaut) fixe la fenêtre regardée.
frequency_penalty
Pénalité proportionnelle au nombre d'occurrences, pour les longues générations.
presence_penalty
Pénalité dès qu'un token est apparu, pour encourager un vocabulaire plus varié ; Qwen recommande 1,5 dans plusieurs de ses modes, avec le risque de mélange de langues si la valeur est trop haute.
→
Monter les pénalités par petits pas
Une pénalité forte pousse le modèle vers des mots rares ou inattendus. Augmentez par paliers de 0,05 à 0,1 pour repeat_penalty et arrêtez-vous dès que les boucles disparaissent.

#Appliquer ces réglages dans Ollama

Il existe deux méthodes : un Modelfile, qui fixe des valeurs pour un modèle nommé, ou le champ options d'une requête API, qui accepte les mêmes paramètres que le Modelfile. Le Modelfile est adapté à un usage quotidien, l'API à un programme.

Modelfile : un modèle personnalisé
FROM llama3.2
PARAMETER temperature 0.3
PARAMETER top_p 0.9
PARAMETER top_k 40
Créer puis lancer ce modèle
ollama create llama-precis -f ./Modelfile
ollama run llama-precis
Même réglage dans une requête API
curl http://localhost:11434/api/generate -d '{"model":"llama3.2","prompt":"Résume en une phrase : ...","stream":false,"options":{"temperature":0.3,"top_p":0.9}}'

Pour aller plus loin sur les Modelfile (system prompt, contexte, gabarit), consultez le guide de personnalisation. Pour LM Studio et Jan, les mêmes paramètres se règlent dans le panneau de configuration du modèle.

#Modèles à raisonnement : ne pas tout régler par la température

Les modèles à raisonnement produisent d'abord une trace de réflexion avant leur réponse. Sur Ollama, ces modèles exposent un champ de réflexion séparé, et les commandes disponibles varient selon le modèle : la documentation invite à interroger l'API show pour connaître les valeurs acceptées et la valeur par défaut. Pour gpt-oss, par exemple, les niveaux sont low, medium et high, avec medium par défaut.

Pour réduire les jetés inutiles sur une question simple, agissez d'abord sur ce niveau de réflexion, quand il existe, plutôt que sur la température. La température, elle, doit suivre la fiche du modèle : un raisonnement trop froid peut se figer, un raisonnement trop chaud peut se disperser.

#Presets de départ par usage

Points de départ à ajuster, hors modèles à recommandations spécifiques
UsageTempératuretop_pAutres réglages
Extraction, classification, JSON0 à 0,20,9Format strict demandé dans le prompt
Résumé fidèle0,2 à 0,30,9repeat_penalty légèrement au-dessus de 1
Conversation générale0,7 à 0,80,9Défauts du moteur
Rédaction, idées0,8 à 1,00,95presence_penalty modérée
Fiction, créativité1,00,95Contrôler les digressions

Ces presets sont des points de départ, pas des mesures. Changez un paramètre à la fois, relancez trois fois la même invite et comparez : si trois essais donnent la même réponse alors que vous attendez de la variété, la température est trop basse ou la graine est fixée.

#Symptômes et réglages à essayer

Le modèle répète la même phrase
Activez repeat_penalty vers 1,1 ou presence_penalty, ou raccourcissez la génération avec num_predict.
Réponses plates et génériques
Montez la température d'un pas (0,7 vers 0,9) ou relâchez top_p.
Le modèle invente des faits
Baissez la température, mais sachez que ce n'est pas suffisant : voir le guide sur les hallucinations.
JSON cassé
Température basse et format demandé explicitement ; utilisez le mode de sortie structurée d'Ollama quand il existe.
Mélange de langues ou mots étranges
Baissez presence_penalty ou repeat_penalty, ou montez légèrement la quantification du modèle.
Questions fréquentes sur top-p, top-k et la température
C'est quoi le top-p dans un LLM ?+
Le top-p est un filtre qui ne garde que les tokens les plus probables dont la somme des probabilités atteint le seuil p, par exemple 0,9. Le reste est écarté avant le tirage. Contrairement au top-k, le nombre de candidats varie : peu si le modèle est sûr, davantage s'il hésite.
Quelle est la différence entre top-p et top-k ?+
Le top-k garde toujours un nombre fixe de candidats, par exemple 40, quelle que soit la situation. Le top-p garde un nombre variable de candidats, selon la probabilité cumulée. Le top-p s'adapte donc mieux à la confiance du modèle ; le top-k sert de garde-fou simple contre les tokens très improbables.
Faut-il régler la température et le top-p en même temps ?+
Il vaut mieux modifier un seul paramètre à la fois pour comprendre son effet. En pratique, laissez top-p et top-k à leurs valeurs par défaut ou à celles de la fiche du modèle, et ajustez la température. Si vous changez plusieurs réglages en même temps, vous ne saurez pas lequel a produit la différence.
Quelle température pour du code ?+
Pour un modèle sans raisonnement, une valeur basse (0 à 0,2) donne des sorties reproductibles. Pour un modèle à raisonnement, suivez la fiche de l'éditeur : celle de Qwen3.5 recommande 0,6 pour le code précis en mode raisonnement. Testez sur vos propres cas et vérifiez que le code compile ou passe vos tests.
Quelles sont les valeurs par défaut dans Ollama ?+
La documentation du Modelfile indique une température de 0,8, un top-k de 40, un top-p de 0,9, un min-p de 0,0 (désactivé) et une pénalité de répétition de 1,0 (désactivée). Un modèle peut embarquer ses propres valeurs et remplacer celles-ci ; ollama show --modelfile permet de les voir.
Qu'est-ce que min-p et faut-il l'utiliser ?+
Le min-p élimine les tokens dont la probabilité est inférieure à une fraction de celle du meilleur candidat : avec 0,05 et un meilleur token à 0,9, le seuil est 0,045. C'est une alternative au top-p, désactivée par défaut dans Ollama. Utilisez-la seulement si la fiche du modèle la recommande.
Ce guide vous a aidé ?

Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.