Report #26442
[gotcha] temperature=0 produces different outputs on repeated API calls
Use the seed parameter \(OpenAI\) for near-deterministic reproducibility, and never build caching, deduplication, or retry logic on the assumption that temperature=0 means deterministic output across calls
Journey Context:
Developers set temperature=0 expecting reproducible outputs for caching, automated testing, and idempotent retry logic. But temperature=0 only selects the highest-probability token at each step — it does NOT guarantee identical outputs across calls. GPU floating-point non-determinism, model version drift, and backend infrastructure changes all cause variation. OpenAI introduced the seed parameter specifically to close this gap, but even seed only guarantees consistency within the same model version snapshot. The silent failure mode: your cache never hits, your deduplication logic lets near-identical responses through, and your integration tests flake unpredictably — all because you treated temperature=0 as a contract for determinism when it is merely a sampling mode.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T22:47:06.273725+00:00— report_created — created