Launch offer+40%Claim →

Jev Noul: the probability that a statement is true

A Noul is Jev's yes/no question. You get back one number, not a label. Run three on a customer message below, then see what 14 live calls showed about reading that number.

Measured 2026-11-12

Run this example

3 questions · no key needed

Independent and unofficial. Jev is a model by TypeSafe AI; Jagent is not affiliated with or endorsed by them. The field-by-field reference is TypeSafe's Noul documentation.

What does a Jev Noul return?

One float per question: the probability that the answer is yes. Your code turns it into a decision with two cut-offs, and whatever lands between them gets its own path, usually a person. The model behind it, with its versions and price, is described on Jev AI.

Answernoul — a probability from 0 to 1
Confidence fieldNone — checked on jev-1.14.0
Starting cut-offs0.7 / 0.3 — TypeSafe; ours use 0.6 / 0.4
Our calls346–405 input tokens — about $0.000015 each

Quick answer · verified 2026-11-12

What 14 Noul calls showed

All calls went to TypeSafe's API on 2026-11-12, on one theme (a SaaS team reading cancellation risk in support messages). Every one was answered by jev-1.14.0. Cost is input tokens at $0.042 per million; the response also reports output tokens, which are not billed. Milliseconds are the full round trip from our machine through a proxy, so they run slower than TypeSafe's 70–500ms end-to-end. Raw requests and responses are in data/measured-noul-2026-11-12.json.

CheckResultInput tokensCostms
Three Nouls on the message above, jev-latest then pinned jev-1.14.00.87 / 0.98 / 0.85, then 0.87 / 0.98 / 0.87; no confidence field392$0.0000165335–371
A statement and its negation, three messagessums of 1.01, 0.97 and 0.76359–365$0.0000151–$0.0000153350–691
The same question as a Noul and as a yes/no Choice, five messagessame direction every time; Choice far more extreme359–366$0.0000151–$0.0000154350–691
One instruction, three criteria wordings, two messages0.25 to 0.85 on the same message403–405$0.0000169–$0.0000170405–535
Screen-first gate, message only, four messages0.98 / 0.03 / 0.97 / 0.02346–383$0.0000145–$0.0000161399–443
Full retention request after a yes: account, thread, five questionsright_size offer at 0.80876$0.0000368513

There is no confidence field

Each answer came back as { "type": "noul", "noul": 0.87 } and nothing else, on the alias and on the pinned version. Code written for a Choice that reads answer.confidence gets undefined here, and a check like confidence >= 0.8 then silently fails every time. The same request sent twice also moved one answer from 0.85 to 0.87, so do not test for exact values.

Note what a short message costs. A 12-word thank-you note came to 346 input tokens, because the question text and request framing are counted too. Budget per question, not per word of input.

A statement and its negation do not sum to 1

MessageWants to cancelDoes notSumChoice: yes
“Please cancel my subscription today…”0.990.021.011.00
“Is there a cheaper plan? …not sure we still need ten seats.”0.250.720.970.15
“Third outage this month… nobody has explained why.”0.180.580.760.01
“Can we pause billing from June to August…?”0.110.891.000.01

TypeSafe lists this in its jaggedness notes, and it held on 1.14. Clear messages sum to about 1. The outage complaint, which never mentions cancelling, gets a firm no to the positive phrasing and a shrug, 0.58, to the negated one. The negation adds a hop of reasoning, and the hop costs certainty. Ask the positive version and compute 1 - p yourself if you need the other side.

A Noul and a yes/no Choice agree on direction, not on size

The last column asks the same thing as a Choice with two options, yes and no. Across five messages (the four above plus a borderline refund question, 0.22 as a Noul and 0.06 as a Choice) the two never pointed opposite ways. But the Choice pushed every answer toward the ends: the outage complaint is 0.18 as a Noul and 0.01 as a Choice, with a Choice confidence of 0.98. TypeSafe documents cases where the two disagree outright. Either way, a threshold tuned on one question type means nothing on the other, and a yes/no Choice hides exactly the middle cases you would want a person to see.

Criteria wording moves the number more than the message does

One instruction, “Is this customer at risk of leaving?”, asked three ways about two messages: the cheaper-plan question and the outage complaint.

CriteriaCheaper planOutage
No criteria0.770.76
Strict: true only if they say they will cancel, not renew or switch0.250.36
Broad: true on any sign of lost value or overpaying0.850.84

The two messages score almost the same under each wording, while the wording alone swings each by 0.5 to 0.6. The criteria are your definition of “yes”, and Jev applies it literally. Without them, it uses a reading of “at risk” you never chose. Write criteria that match the action your code will take: the strict version suits an alert to an account manager, the broad one suits a weekly report.

Screen first, then spend

One Noul on the bare message (“considering cancelling or moving to a cheaper plan”) sorted four messages cleanly: 0.98 and 0.97 for the two churn messages, 0.03 for a how-to question and 0.02 for a thank-you. Only the clear yes went on to the full request, which fetched the account record and thread and asked five questions. It flagged that only 9 of 25 paid seats were in use (0.95) and picked right-sizing at 0.80.

The saving from the gate is smaller than it looks when the next step is also Jev. At about 350 tokens per gate and 876 per full request, gating four messages and running two full requests costs 3,187 tokens. If each full request were the size of ours, running it on all four would cost about 3,504, roughly 10% more. The gate pays off when the step behind it is expensive in some other way: a database lookup, an LLM drafting the reply, or a person's time.

Thresholds: 0.7 / 0.3 or 0.6 / 0.4?

TypeSafe's docs and agent skill suggest yes above 0.7, no below 0.3 and a review band in between. Our Jev MCP server uses a narrower band, 0.6 and 0.4, because an agent asking a quick yes/no question would rather get an answer than “too close to call”. Neither is a rule. The strict-criteria answer for the outage message, 0.36, goes to review under the first pair and counts as a no under the second. Which is right depends on what a missed churn costs compared with a wasted call from an account manager. Label a few hundred of your own messages, then move each cut-off on its own.

How to call a Noul

With a key from this site, on our endpoint (same body; model is optional and defaults to the current Jev):

bash
curl -X POST https://jev-agent.com/api/v1/systemone \
  -H "Authorization: Bearer $JEV_AGENT_KEY" \
  -H "content-type: application/json" \
  -d '{
    "state": "Is there a cheaper plan? Half the team has left.",
    "questions": {
      "churn_risk": {
        "type": "noul",
        "instructions": "The customer is considering cancelling or moving to a cheaper plan."
      }
    }
  }'

With a TypeSafe early-access key, on their host, naming the model:

bash
curl -X POST https://api.typesafe.ai/v1/systemone \
  -H "Authorization: Bearer $TYPESAFE_API_KEY" \
  -H "content-type: application/json" \
  -d '{"model": "jev-1.14.0", "state": "...", "questions": {"churn_risk": {"type": "noul",
       "instructions": "The customer is considering cancelling or moving to a cheaper plan."}}}'

Read answers.churn_risk.noul. The full request and response shapes are in the API reference, and the playground lets you edit the question and rerun it.

When a Noul is the wrong question

Nouls used in practice on this site: five signals per email in phishing detection, checks on an agent's claims in output guardrails, and a diff review and permission gate in Claude Code.

Jev Noul questions

What is a Noul question in Jev?

A Noul is the yes/no question type in Jev. You send a statement or a yes/no question about your text, and Jev returns one number between 0 and 1: the probability that the answer is yes. It returns no label and no separate confidence value.

Does a Jev Noul return a confidence score?

No. On jev-1.14.0, measured 2026-11-12, every Noul answer held only type and noul. The distance from 0.5 is the uncertainty: values in the middle band mean the model cannot settle it. If you need a confidence-style number, |2p − 1| puts it on the Choice scale.

What threshold should I use for a Jev yes/no answer?

TypeSafe suggests starting with yes above 0.7 and no below 0.3; this site's MCP server reads 0.6 and above as yes and 0.4 and below as no. Both are starting points. Label a few hundred of your own inputs and move the cut-offs by what a wrong yes or a wrong no costs you.

Should I use a Noul or a yes/no Choice?

Use a Noul when you want the probability itself, to threshold or to rank by. In our runs a yes/no Choice agreed on direction but pushed answers to the extremes (0.01 where the Noul said 0.18), so a Choice hides the cases a person should look at, and its thresholds do not carry over to a Noul.

Do a statement and its negation add up to 1?

Not reliably. TypeSafe lists this among Jev's documented failure modes, and our runs agree: a clear cancellation summed to 1.01, but an outage complaint got 0.18 for 'wants to cancel' and 0.58 for 'does not want to cancel', 0.76 in total. Ask the positive phrasing only.

Sources