"temperature = 0 means the LLM gives the same output every time"
not necessarily
- temperature 0 makes decoding greedy, picking the highest-probability token
- GPU floating-point operations aren't always perfectly deterministic
- batching and parallel execution can slightly change numerical results
- even tiny differences can flip the next token when probabilities are close
and once one token changes, the entire response can diverge. deterministic decoding ≠ deterministic inference


