Controlli di campionamento: temperatura e affini
- Cosa fanno davvero temperatura, top-p, top-k e stop sequence sulla scelta del token successivo
- Una tabella decisionale a colpo d'occhio: quando andare a freddo e quando a caldo
- Perché impostare temperature=0 NON garantisce output identici
- Come ragionare sul campionamento sui nuovi modelli Claude che nascondono le manopole
Quando un modello genera testo, sceglie il token successivo da una distribuzione di probabilità. I controlli di campionamento regolano come lo sceglie — quanto focalizzato o quanto vario sarà l'output.
Le manopole principali
- Scala l'intera distribuzione. Bassa (≈0) = focalizzata, quasi deterministica, ripetibile; il modello prende il percorso più probabile. Alta = più varia e creativa, ma più incline a divagare o sbagliare.
- Limita le scelte all'insieme più piccolo di token le cui probabilità sommano a p. Un altro modo di limitare la casualità — si adatta a quanto è appuntita la distribuzione.
- Considera solo i k token più probabili. Più grezzo di top-p; utile ogni tanto per output brevi e vincolati.
- Stringhe che, una volta generate, terminano subito la risposta. Utili per output strutturato quando vuoi che il modello si fermi dopo un delimitatore.
- Regola la temperatura OPPURE top-p, non entrambi — interagiscono e il comportamento combinato è difficile da prevedere.
- Lascia top-k in pace di default. È un martello pesante che di solito è d'intralcio.
- Le stop sequence sono un'ottima cintura di sicurezza per l'output strutturato — niente più prosa di coda dopo il tuo JSON.
Quando andare a freddo e quando a caldo
| Vai a freddo (temp bassa) | Vai a caldo (temp più alta) |
|---|---|
| Estrazione, classificazione, codice | Brainstorming, nomi, copy creativo |
| Qualsiasi cosa tu voglia riproducibile | Esplorare molte opzioni |
| Output fattuale / strutturato | Varietà di tono, ideazione |
| Valutazione / LLM-as-judge | Ideazione per copy A/B |
Un buon default per la maggior parte del lavoro è medio-basso (all'incirca 0–0.4). Alzalo solo quando vuoi la sorpresa.
Un esempio concreto
Stesso prompt, tre temperature. Pattern illustrativo, non un benchmark:
Prompt
Give me one clever name for a productivity app that helps writers.
- temp 0 → una scelta sicura e ripetibile come
WordFlow. Chiedi di nuovo, ottieni ancoraWordFlow. - temp 0.5 → ancora coerente, più varietà tra le run:
Draftly,Inkline,Composera. - temp 1.0 → creativo ma più rumoroso:
Quillspark,Verbatimo, ogni tanto una parola sbilenca che non scandisce.
La lezione: alza la temperatura solo dove la varietà è il punto del task.
I Claude più recenti le nascondono
Diversi modelli Claude recenti adattano il proprio decoding e depotenziano (o omettono) la temperatura. Se una manopola non è disponibile, è per design — plasma il comportamento tramite il prompt e (dove offerto) l'impostazione effort/thinking. Sui modelli moderni la chiarezza del prompt e il framing del ruolo fanno più lavoro delle manopole di campionamento.
Il caveat sul determinismo
Anche a temperatura 0, gli output non sono garantiti bit-identici tra run, versioni del modello o provider. Motivi:
- Batching e non-determinismo in virgola mobile lato server.
- Aggiornamenti silenziosi del modello dietro un alias.
- Piccole differenze nell'input (uno spazio di troppo, un tokenizer diverso).
Non contare sulla riproducibilità esatta. Conta sugli evals per intercettare la deriva quando conta.
Errori comuni
- Alzare la temperatura per rimediare a un output brutto — la correzione sta quasi sempre nel prompt, non nel sampler.
- Mischiare top-p e temperatura — scegli una manopola e tieni l'altra al default per capire cosa cambia.
- Dare per scontato che temp=0 significhi deterministico — non lo è. Usa gli evals, non i confronti di uguaglianza, per rilevare regressioni.
- Usare stop sequence sulla prosa — ottime per delimitatori JSON, imbarazzanti sul testo libero dove il modello potrebbe legittimamente produrre quella stringa.
Verifica
Verifica
0/4- La temperatura è la manopola principale; top-p è un'alternativa; top-k e stop sequence sono situazionali.
- Freddo per estrazione, codice e valutazione; caldo per brainstorming e copy creativo.
- Regola una sola manopola di casualità per volta — temperatura O top-p.
- Temp 0 ≠ deterministica. Conta sugli evals, non sull'uguaglianza, per cogliere la deriva del comportamento.
- Sui Claude più recenti, prompt + effort/thinking sostituiscono le manopole di campionamento.