Temperature Zero
GitAuto sets the model's temperature to 0.0 for all code generation requests. This eliminates randomness from the model's output, producing deterministic and consistent code across every invocation.
Why This Exists
Non-zero temperature introduces randomness into the model's responses. When generating code that must be deterministic and correct, this randomness causes inconsistent output across retries - different variable names, different logic paths, different formatting each time. If a test fails and GitAuto retries, the retry should produce the same fix attempt, not a random variation that may introduce new bugs.
Why Non-Zero Temperature Is Dangerous for Code
Temperature adds randomness to token selection by sampling from lower-probability tokens. For creative writing, this produces variety. For code generation, it introduces unnecessary variation - different variable names on each retry, slightly different logic paths, inconsistent formatting. In code, there is usually one correct answer, and randomness only reduces the chance of finding it. Worse, when a test fails and the agent retries, temperature randomness means the retry might produce a completely different (and possibly worse) approach instead of converging on the fix.
How It Works
Every API call to the model includes temperature: 0.0 in the request parameters. At temperature zero, the model selects the highest-probability token at each step, making the output as deterministic as possible. This applies to all code generation, file editing, and tool-use calls throughout the agent loop.
Related Features
- Strict Tool Schemas - enforces valid JSON output structure alongside deterministic generation
- Duplicate Error Hashing - detects when deterministic output produces the same failing fix repeatedly
Need Help?
Have questions or suggestions? We're here to help you get the most out of GitAuto.
Contact us with your questions or feedback!