HeadlinesBriefing HeadlinesBriefing.com

Temperatura 0: por qué no es determinista

Towards Data Science •
×

En septiembre de 2025, Horace He y sus colegas de Thinking Machines Lab enviaron el prompt "Tell me about Richard Feynman" a Qwen3-235B 1000 veces a temperatura 0, esperando respuestas idénticas de 1000 tokens. Recibieron 80 finalizaciones únicas. Todas las ejecuciones fueron idénticas para los primeros 102 tokens; en el token 103, 992 continuaron con "Queens, New York" y 8 con "New York City". Los cambios no son causados por aleatoriedad de hilos GPU, sino por kernels cuyo orden de reducción cambia con el tamaño del lote, haciendo que las salidas dependan de cuántos otros están solicitando en ese momento.

A temperatura 0, el modelo elige el token con el logit más alto, lo cual es determinista en matemáticas pero no en aritmética de punto flotante, donde la adición no es asociativa. Una red neuronal realiza miles de millones de tales sumas, por lo que el orden del hardware importa. He et al. muestran que los pases directos típicos no contienen adiciones atómicas y devuelven los mismos bits con la misma entrada, pero muchos kernels no son invariantes por lote.

Matemáticamente, sea z₁ y z₂ los dos logits más grandes con brecha M = z₁ - z₂ >= 0. El ruido numérico cambia la brecha por un error Δ, y el argmax cambia solo si M + Δ < 0. Una brecha de 8 logits nunca cambia; solo las casi empates están en riesgo. La probabilidad de cambio por token es p ≈ f(0) · E|Δ| / 2, donde f(0) es la densidad de casi empates y E|Δ| es la magnitud esperada del ruido.

Con kernels invariantes por lote, las 1000 finalizaciones de Feynman salieron idénticas. La corrección cuesta rendimiento: la versión determinista no optimizada tomó 55 segundos frente a 26 para vLLM por defecto.

Fuente: Towards Data Science · Resumido por HeadlinesBriefing