MÓDULO 1 · EJERCICIO 2/3 · GUIADO · ~30 MIN

Temperatura y Top_p en el Playground

Comparar cómo temperature, top_p y frequency_penalty cambian la salida de un modelo real, y separar lo que es efecto del muestreo de lo que es un hábito aprendido del modelo.

Temperature y top_p no deciden qué contenido puede generar el modelo — redistribuyen la probabilidad sobre los tokens que ya existen en su distribución. Un hábito muy reforzado durante el fine-tuning (un tic de cierre, una nota de autoanálisis) puede seguir apareciendo incluso a temperature muy baja, porque sigue siendo una opción de alta probabilidad. Esos hábitos no se arreglan con parámetros de muestreo — se arreglan en el prompt.
Setup

Producto: Auriculares inalámbricos Sony WH-1000XM5
Modelo: Qwen3-14B, local vía LM Studio
Prompt: descripción persuasiva de e-commerce, 100-150 palabras, público profesional en oficinas ruidosas, tono profesional-cercano.

// Qwen3 tiene modo "thinking" que puede envolver razonamiento en <think>...</think> antes de la respuesta — no apareció en ninguna de las 9 ejecuciones de este ejercicio, LM Studio parece filtrarlo por defecto.
Test A — Determinista
Temperature
0.1
Top_p
1.0
Freq. penalty
0.0

Similitud: muy alta — la frase de apertura es prácticamente idéntica entre la Ejecución 1 y la 3.

"...son la solución perfecta para profesionales que necesitan concentrarse en entornos ruidosos. Con cancelación de ruido activa mejorada, bloquean [el estruendo de oficinas / eficazmente sonidos molestos]..." — Exec 1 vs Exec 3

Estructura: las tres siguen el mismo orden de contenido (ruido → batería/carga → Bluetooth → controles → cierre inspiracional).

Tic del modelo: las tres ejecuciones añaden un comentario meta no solicitado al final — pero con una sorpresa: dos usan la etiqueta "Nota:" y la tercera usa "Tono:" / "Destacado:". Incluso a temperature 0.1, hubo un punto de la generación donde dos o tres tokens candidatos debían tener probabilidad muy similar entre sí, y "ganó" uno distinto en esa ejecución.

// lectura: temperature baja hace muy probable repetir el mismo patrón, pero no lo garantiza al 100% — es una garantía estadística, no absoluta.
Test B — Creativa
Temperature
1.2
Top_p
1.0
Freq. penalty
0.0

Similitud: el contenido (ruido, batería, carga, Bluetooth) se mantiene estable en las tres, pero la redacción varía mucho más que en A — cambia cómo lo dice, no qué dice.

Cierre forzado: sí, en la Ejecución 3 — mezcla "el alivio en el último minuto" con "¿Listo para transformar el ruido en productividad?" en el mismo párrafo, un salto de registro que suena a copy sobreescrito.

Tic del modelo: la "Nota:" desaparece por completo. En su lugar, las tres arrancan con un titular/eslogan no solicitado ("Tu escudo contra el ruido...", "Tu aliado silencioso en medio del caos...").

// a top_p=1.0 con temperature alta, la cola de tokens improbables gana peso — la "Nota:" deja de ser la continuación más probable, así que puede que no se muestree.
Test C — Intermedia (propuesta propia)
Temperature
0.7
Top_p
0.8
Freq. penalty
0.0

Estructura: estable en las tres, igual que en A (una ejecución añade una mención extra sobre comodidad — variación menor).

Cierre-eslogan: reaparece en 2 de 3, y con una plantilla casi calcada entre ellas:

"¡Haz de tu oficina un espacio de tranquilidad y productividad!" — Exec 1
"¡Haz de tu oficina un refugio de enfoque y eficiencia!" — Exec 2

La Exec 3 rompe el patrón con un cierre sobrio: "Tu productividad, sin distracciones."

Longitud: las tres dentro de 100-150 palabras.

Comparativa
Test A (0.1/1.0/0)Test B (1.2/1.0/0)Test C (0.7/0.8/0)
Similitud entre ejecucionesMuy alta — frase casi idénticaBaja en redacción, estructura estableIntermedia — cuerpo estable, cierre variable
VocabularioRepetido, poco variadoVariado, algo arriesgadoPunto medio
¿Suena forzado?NoSí (cierre Exec 3)Ocasional, menos que B
Tic del modelo"Nota:" de autoanálisis en las 3Desaparece; titular/eslogan no pedidoCierre-eslogan en 2 de 3
Configuración recomendada
Temperature 0.7
creatividad controlada sin arriesgar que el modelo invente especificaciones del producto (alucinación).
Top_p 0.8
recorta la cola de tokens menos probables para evitar cierres tan forzados como los de Test B, sin perder toda la variedad léxica.
Freq. penalty 0.0
en un texto de <150 palabras, forzar sinónimos para evitar repetir una palabra suena más artificial que dejarla repetir de forma natural.
⚠ el problema que ningún parámetro de sampling resuelve

El cierre-eslogan no pedido apareció en los tres tests — a 0.1, a 0.7 y a 1.2. Si dependiera de temperature, debería haber desaparecido casi del todo en el test más determinista, y no fue así. Es la prueba de que es un hábito aprendido en el fine-tuning/RLHF, con probabilidad alta en la distribución del modelo — temperature solo controla cuánto te alejas del token más probable, no qué patrones existen.

"Poco probable" no es "cero": a escala de producción (p. ej. las 2.000 reuniones/mes del Ejercicio 1), un evento del 1% son ~100 outputs al mes con el problema colándose igual. La mitigación combina dos capas complementarias — instrucción explícita en el prompt (cubre variaciones de fraseo, pero depende de que el prompt se mantenga) y stop-sequence (garantía dura, pero solo detecta una cadena literal exacta — si el modelo frasea "Resumen:" en vez de "Nota:", no lo detiene). Ninguna sustituye a la otra.

Repaso activo

¿Qué cambia temperature realmente: el contenido que el modelo puede generar, o la forma en que se muestrea el siguiente token?

Cambia cómo se muestrea el siguiente token (redistribuye la probabilidad entre las opciones existentes) — no decide qué contenido existe en la distribución. Por eso un hábito muy reforzado en fine-tuning puede seguir apareciendo incluso a temperature muy baja.

Al bajar top_p de 1.0 a 0.8, ¿amplías o recortas las opciones de tokens disponibles?

Las recortas — cortas la "cola" de tokens menos probables, dejando solo los que juntos suman el 80% de probabilidad más alta. Bajar top_p es más conservador, no más creativo.

Si un comportamiento del modelo aparece igual a temperature 0.1, 0.7 y 1.2, ¿qué te dice eso sobre su origen?

Que es un hábito aprendido durante el fine-tuning/RLHF, no un efecto de los parámetros de muestreo — hay que corregirlo a nivel de prompt o con un stop-sequence, no ajustando temperature/top_p.

¿Por qué conviene combinar instrucción explícita en el prompt Y un stop-sequence, en vez de confiar solo en uno de los dos?

Son defensas complementarias: el prompt cubre variaciones de fraseo pero puede perderse si nadie lo mantiene; el stop-sequence da una garantía dura pero solo detecta una cadena literal exacta. Juntos cubren más casos que cualquiera por separado (defensa en profundidad).