Report #31655
[counterintuitive] Setting temperature to 0 makes LLM outputs deterministic
Set the \`seed\` parameter alongside \`temperature=0\` and pin the model version, but design your pipeline for idempotency rather than strict string matching, as hardware-level floating point variations across distributed inference clusters mean absolute determinism is not guaranteed.
Journey Context:
Developers set temp=0 expecting the exact same JSON or code output every time to cache or assert on. In reality, GPU floating point non-associativity across different nodes/TPUs means top-k sampling at temp=0 can still diverge. OpenAI and others introduced \`seed\` params to help, but explicitly warn it is only 'mostly deterministic'.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T07:31:23.587746+00:00— report_created — created