La temperatura de muestreo es un parámetro utilizado al generar texto u otro contenido a partir de un modelo probabilístico que controla cuán aleatoria o determinista es la salida, reescalando la distribución de probabilidad de la cual el modelo muestrea el siguiente token antes de extraer un valor. Es uno de los ajustes más comúnmente expuestos en APIs e interfaces para modelos de lenguaje grandes y otros modelos autorregresivos.
Cómo funciona
Un modelo de lenguaje autorregresivo produce, en cada paso, una distribución de probabilidad sobre los posibles siguientes tokens, típicamente calculada con una función softmax sobre las puntuaciones brutas de salida del modelo, o logits. Este proceso ocurre en el momento de la inferencia, después de que los pesos del modelo han sido fijados mediante el entrenamiento. La temperatura se aplica dividiendo esos logits por un valor de temperatura antes del paso de softmax. Una temperatura de 1.0 deja la distribución sin cambios respecto a lo que el modelo calculó. Una temperatura inferior a 1.0 afila la distribución, haciendo que los tokens más probables sean aún más propensos a ser elegidos y reduciendo las probabilidades de que aparezca un token de baja probabilidad; una temperatura cercana a 0 se aproxima a elegir siempre el token de mayor probabilidad, a veces llamado decodificación codiciosa. Una temperatura superior a 1.0 aplana la distribución, dando a los tokens de menor probabilidad una oportunidad comparativamente mejor de ser seleccionados, lo que aumenta la variedad e imprevisibilidad de la salida, pero también puede incrementar la probabilidad de alucinación, ya que un token menos probable pero incorrecto se vuelve más susceptible de ser muestreado.
Relación con otros controles de muestreo
La temperatura se combina usualmente con otros controles de decodificación en lugar de usarse sola. El muestreo top-p, también llamado muestreo de núcleo, restringe el modelo a elegir del conjunto más pequeño de tokens cuya probabilidad acumulada supera un umbral p, lo que evita que la temperatura seleccione ocasionalmente un token extremadamente improbable incluso cuando se eleva. El muestreo top-k restringe de manera similar el muestreo a un número fijo de los tokens más probables. Estos ajustes interactúan: una temperatura alta combinada con una restricción top-p o top-k laxa puede producir texto que se vuelve incoherente, mientras que una temperatura en o cerca de cero combinada con restricciones estrictas produce salidas altamente repetitivas y deterministas, lo cual a veces es deseable para tareas como generación de código o extracción de datos, donde se prefiere una respuesta única y consistente sobre la variación creativa.
Uso práctico
Los ajustes de temperatura baja o cero se utilizan típicamente para tareas que se benefician de la consistencia y la corrección, como responder preguntas factuales, extracción de datos estructurados, cálculo matemático y generación de código, donde la variación en la redacción no es valiosa y puede introducir errores. Los modelos de razonamiento que generan largas cadenas de razonamiento intermedio a menudo se ejecutan a baja temperatura para mantener ese proceso estable. Los ajustes de temperatura más alta se usan para tareas que se benefician de la variedad, como lluvia de ideas, escritura creativa, diálogo para chatbots o personajes de juegos, y algunas aplicaciones de generación texto a imagen, donde múltiples salidas distintas de la misma entrada pueden ser útiles. Debido a que la temperatura intercambia directamente previsibilidad por variedad, es un tema frecuente en las guías de ingeniería de prompts, y los conjuntos de evaluación y puntos de referencia típicamente fijan la temperatura en o cerca de cero para hacer los resultados reproducibles entre ejecuciones. La temperatura no afecta el conocimiento subyacente o la capacidad de razonamiento del modelo; solo cambia cómo el modelo selecciona entre las salidas que su entrenamiento ya hizo plausibles, por lo que aumentar la temperatura puede producir respuestas más variadas pero no más precisas.