Same request, same answer#
The model reads the request in one pass and returns the answer directly; nothing is sampled, so there is no temperature or seed to set. Send a request twice and you get the same probabilities to the last digit.
Pin the version#
decisionnode-latest moves to new versions as we release them. The model field in every response says which version answered. Where answers must not change, send the pinned id instead.
| Send | Answers from | Use when |
|---|---|---|
decisionnode-latest | the newest version, today decisionnode-1.0 | you want improvements as they ship |
decisionnode-1.0 | exactly that version | answers must stay identical: tests, audits, tuned thresholds |
What changes an answer#
- Any change to the state, images, instructions or criteria, even whitespace.
- The order of options in
criteriafor a score (it defines the levels), and the option keys and descriptions for a choice. - A different model version.
What you can build on it#
- Snapshot tests: post a fixed request in CI and assert the answer, the way you would test a pure function.
- Caching: hash the request body and cache the response. A hit is exactly what the API would have returned.
- Audit trails: store the request and the
x-request-id; replaying the request on the pinned version reproduces the decision.