3 · Sampling y decoding
El modelo emite probabilidades; TÚ eliges cómo convertirlas en un token. La temperatura, top-k y top-p son los mandos que controlan creatividad vs fiabilidad.
El modelo te da una distribución de probabilidad; la estrategia de decoding la convierte en un token. La temperatura la afila o aplana, top-k conserva las k mejores opciones y top-p (nucleus) conserva el conjunto más pequeño que cubre la probabilidad p — intercambiando determinismo por diversidad.
Sin esto:
Sin controlar el decoding obtienes o bien repetición robótica (temperatura muy baja) o divagación incoherente (muy alta), y no puedes hacer reproducibles las tareas de extracción.
La salida cruda del modelo es un vector de logits — un número real por cada token del vocabulario. Dos pasos lo convierten en un token elegido:
- Softmax convierte los logits en una distribución de probabilidad.
- Una estrategia de decoding elige un token de esa distribución.
La estrategia de decoding la eliges tú, y cambia el comportamiento drásticamente:
- Greedy — siempre toma el token más probable. Determinista, pero tiende a ser repetitivo y soso.
- Temperatura — divide los logits por una temperatura
Tantes del softmax.T<1afila la distribución (más confiada, más determinista);T>1la aplana (más aleatoria, más creativa);T→0se acerca a greedy. - Top-k — conserva solo los
ktokens de mayor probabilidad, renormaliza y muestrea entre ellos. Limita qué tan raro puede ser el elegido. - Top-p (nucleus) — conserva el conjunto más pequeño de tokens cuya probabilidad suma
p(p. ej. 0.9), renormaliza y muestrea. Adapta el corte a qué tan confiado está el modelo.
Regla práctica: temperatura baja (0–0.3) para extracción, clasificación, código, JSON (quieres la misma respuesta siempre); más alta (0.7–1.0) para lluvia de ideas y escritura creativa.
Python (in browser)
La temperatura remodela los MISMOS logits: T baja → afilada/determinista, T alta → plana/diversa.
Python runs entirely in your browser via Pyodide (~6 MB on first Run, cached after).
Ahora los decodificadores completos. Observa cómo greedy es totalmente determinista, mientras que top-k y top-p restringen qué tokens pueden muestrearse antes de añadir aleatoriedad — la forma estándar de mantener la generación coherente sin ser robótica.
Python (in browser)
Greedy, temperatura, top-k y top-p lado a lado — los cuatro decodificadores detrás de los parámetros `temperature` / `top_p` de cada API.
Python runs entirely in your browser via Pyodide (~6 MB on first Run, cached after).
Construyes una función que extrae el nombre y email de una persona a JSON. ¿Qué ajuste de decoding es más apropiado?
- Softmax convierte logits en probabilidades; la estrategia de decoding convierte probabilidades en un token — y la eliges tú.
- La temperatura afila (T<1) o aplana (T>1) la distribución; top-k limita la cantidad de candidatos; top-p (nucleus) conserva el conjunto más pequeño que cubre la probabilidad p.
- Temperatura baja para extracción/código/JSON (reproducible); más alta para lluvia de ideas/escritura creativa.
Los parámetros `temperature` y `top_p` de cada API son exactamente estos mandos; los frameworks de agentes ponen temperatura 0 para el tool-calling y que el plan sea estable.
Si lo quitas: Sin control de decoding no puedes balancear fiabilidad vs creatividad, y las salidas estructuradas se vuelven no reproducibles.