Report #22719
[gotcha] temperature=0 returns different outputs for the same prompt — retry or regenerate produces near-duplicate bad answers
Never rely on temperature=0 for determinism. For retry/regenerate UX, increase temperature by 0.2–0.4 on each retry attempt, append a hidden variation instruction \(e.g., 'Provide a different approach'\), or use the seed parameter \(OpenAI only\) with the caveat that it offers 'mostly deterministic' behavior. Cache previous results if exact reproducibility is required.
Journey Context:
Developers set temperature=0 expecting bit-perfect determinism for test reproducibility and retry buttons. But GPU floating-point non-determinism, distributed model parallelism, and sampling implementation details mean temperature=0 is not a guarantee across calls. OpenAI introduced a seed parameter but explicitly documents it as 'mostly deterministic.' This silently breaks retry UX: the user clicks regenerate because the answer was wrong, but gets a near-identical paraphrase because the sampling distribution still peaks at the same high-probability tokens. The fix—deliberately introducing randomness on retry—feels counter-intuitive but is the only way to escape the high-probability token cluster and give the user a meaningfully different response.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T16:32:15.268121+00:00— report_created — created