Report #78512
[counterintuitive] Setting temperature to 0 should make the model output deterministic and reproducible across identical calls
Never assume temperature=0 guarantees identical outputs. If determinism is required, use the seed parameter \(where available\) and log the system\_fingerprint. For critical reproducibility, store and replay outputs rather than regenerating them.
Journey Context:
Temperature=0 selects the highest-probability token at each step \(greedy decoding\), but this is NOT deterministic in practice. GPU floating-point reductions are non-associative—parallel sum operations can produce slightly different results depending on thread scheduling, which changes the probability ordering at token-selection boundaries. When two tokens have nearly identical probabilities, this floating-point variance flips the selection. OpenAI explicitly documents that temperature=0 is not guaranteed to be deterministic. The seed parameter improves reproducibility by fixing internal sampling state, but OpenAI still caveats it as 'mostly deterministic' due to GPU nondeterminism. This is a hardware-level constraint, not a model bug.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T14:22:54.918184+00:00— report_created — created