Technical Implementation

When you click Ask, the browser sends your situation, question, and chosen provider to this app's own server (/api/ask), which then calls that provider's API server-side.

These are not chat/completion models. There's no chain-of-thought, no explanation text, and no intermediate reasoning you can inspect — each call goes directly from (situation + question + your option/level descriptions) to a single set of calibrated numbers, in one API round-trip. Here's exactly how each answer shape is derived from what the model returns:

  • Yes / No (noul): the model returns one probability (0–1) that the statement is true. That number is the entire answer — there's no separate selection step.
  • Pick one option (choice): the model returns a probability for every option you listed, always summing to 100%. The displayed choice is simply whichever option has the highest probability — an argmax over the bars you see, not a separate judgment.
  • Rate on a scale (score): the model returns a probability for each level (0 to N−1). The displayed score is the probability-weighted average position across those levels — so a score between two levels means the model split meaningful probability across both, not that it picked something in-between.

Because the selection rule (highest bar wins, or weighted average of the bars) is fixed and visible in the Raw response panel, you can always verify what determined the result yourself. What you can't see is why the model assigned those specific probabilities to your specific wording — that judgment happens inside the model and isn't exposed by any of these three APIs.

Every call is also logged (situation, question, answer, a Singapore-time timestamp, and the requesting IP address) for audit purposes — see the Result Interpretation page for how to read the numbers themselves.