CONCEPT · DÉMONSTRATION EXÉCUTABLE
Un seul réglage transforme le même modèle en recopieur, en écrivain ou en ivrogne.
À la fin de son calcul, un modèle ne produit pas un mot. Il produit une liste de scores — un pour chaque fragment possible de son vocabulaire. Pour le contexte « Le chat dort sur le ___ », disons :
| Candidat | Score brut | |
|---|---|---|
| canapé | +3,2 | |
| lit | +3,0 | |
| tapis | +2,4 | |
| toit | +1,1 | |
| clavier | +0,4 | |
| volcan | −1,5 |
Il faut alors en choisir un. Et c’est là que se joue tout le caractère de la machine.
Les scores sont transformés en probabilités par une opération standard, dans laquelle un nombre — la température — divise les scores avant l’exponentielle. Température basse : les écarts sont amplifiés, le meilleur écrase les autres. Température haute : les écarts sont écrasés, tout le monde a sa chance.
Sortie exacte du script, sur les mêmes six scores :
T=0.2 froid : recopieur
canape 72.1 % #############################
lit 26.5 % ###########
tapis 1.3 % #
toit 0.0 %
clavier 0.0 %
volcan 0.0 %
T=1.0 tiede : ecrivain
canape 40.6 % ################
lit 33.3 % #############
tapis 18.3 % #######
toit 5.0 % ##
clavier 2.5 % #
volcan 0.4 %
T=2.5 chaud : ivrogne
canape 28.1 % ###########
lit 25.9 % ##########
tapis 20.4 % ########
toit 12.1 % #####
clavier 9.2 % ####
volcan 4.3 % ##
Aucun score n’a changé. Le modèle est exactement le même, il a exactement le même avis. Seule la manière de convertir cet avis en décision a bougé.
Vingt tirages à chaque température (graine fixée, donc reproductible) :
T=0.2 -> lit canape canape canape lit canape lit lit canape canape
canape lit canape lit lit lit canape canape canape lit (2 mots distincts)
T=1.0 -> tapis toit lit lit canape lit canape lit lit canape
canape lit tapis canape lit lit tapis canape lit canape (4 mots distincts)
T=2.5 -> lit lit lit lit tapis toit lit tapis canape toit
lit canape toit lit toit clavier volcan canape canape lit (6 mots distincts)
À 2,5, « volcan » finit par sortir — un mot que le modèle jugeait franchement mauvais (score négatif). C’est la démonstration la plus courte de ce qu’est une « hallucination » de sélection : personne n’a rien inventé, on a simplement tiré dans la queue de la distribution.
| Ce qu’on observe | Pourquoi |
|---|---|
| « Je repose la même question et j’obtiens autre chose » | Le modèle tire au sort dans une liste pondérée. Ce n’est pas un défaut, c’est le fonctionnement nominal. À température nulle, la réponse serait reproductible — et monotone. |
| « En baissant la température, il devient plus fiable » | Plus prévisible, pas plus juste. Si le meilleur score est faux, une température basse garantit qu’il ressortira à tous les coups. On échange de la variété contre de la constance dans l’erreur. |
| « Il est plus créatif quand je lui demande d’être créatif » | En partie un effet de consigne… et en partie, chez certains outils, un réglage de température effectivement plus haut selon la tâche. |
Le fichier : demos-complementaires/demo-temperature.py
— Python pur, aucune dépendance.
La sortie : resultat-temperature.txt.
Le modèle ne choisit pas le mot le plus probable : il tire au sort dans une liste pondérée. Baisser la température le rend plus sûr de lui, pas plus juste.