How to use Jev

Go from the official Playground to your first API request, then learn how to structure state, Choice, Score, Noul, and production safeguards.

Signup announcement and API docs checked September 26, 2026

The fastest way to start

Existing account holders can sign in to the TypeSafe Console and open its Playground. The September 22 signup-pause announcement remains pinned as of September 26, 2026; do not assume new registration or the previously announced $5 credit is available. Without an account, start with the request example below.

  • Start with Noul to detect whether one property is present.
  • Then use Choice for classification and Score for an ordered rating.
  • Test a few atomic questions first, then expand.

Official signup announcement · Official Playground · Credit and access status · Estimate API costs

Understand one request

The state is the context Jev evaluates; questions define the permitted outputs; model usually uses jev-latest. Jev ingests the state once and evaluates all questions in parallel.

Example task: decide whether a support ticket is urgent. With API access, set TYPESAFE_API_KEY in your server or terminal and run this request. It consumes account credit.

curl -X POST https://api.typesafe.ai/v1/systemone \
  -H "Authorization: Bearer $TYPESAFE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "state": "Checkout has failed three times and we are losing sales.",
    "model": "jev-latest",
    "questions": {
      "urgent": {
        "type": "noul",
        "instructions": "The message is urgent"
      }
    }
  }'

Request schema: official quickstart

Read the result, then act in code

This simplified response is illustrative, not a live API result. answers.urgent.noul estimates the probability of urgency: 0.93 does not mean the ticket has been handled or that accuracy is 93%. Real responses also include usage; model identifies the version that answered.

The 0.9 / 0.1 thresholds below are examples that need validation on your labeled tickets. Ambiguous cases go to human review. High probability only changes review priority, never triggers refunds or account changes. Jev judges; your application writes to the queue.

{
  "model": "jev-1.13.0",
  "answers": {
    "urgent": {
      "type": "noul",
      "noul": 0.93
    }
  }
}
// Illustrative policy: tune thresholds on your own labeled tickets.
const urgency = response.answers.urgent.noul;
if (!Number.isFinite(urgency) || urgency < 0 || urgency > 1) {
  return queueForHumanReview(ticket);
}
if (urgency >= 0.9) return queueForPriorityReview(ticket);
if (urgency <= 0.1) return queueForNormalReview(ticket);
return queueForHumanReview(ticket);

What to check when your first request fails

  • Authentication failure: check the server-side key and Bearer header. Never expose the key in logs or screenshots.
  • Invalid request: check JSON, question types, and fields against the API docs. Do not send images or video directly as state.
  • 429 rate limit: honor retry-after when present and use bounded backoff. Route timeouts or unavailable service to human review, not an infinite retry loop.
  • Unexpected judgment: keep redacted input, model version, and human labels. Clarify question boundaries and retest beyond one successful sample.

Official API and rate-limit reference · Understand Jev’s limitations

Design questions Jev can judge

  • Split “What is this customer like?” into urgency, sentiment, topic, and routing.
  • Describe boundaries in criteria instead of relying on vague option names.
  • Use confidence thresholds to choose automation or human review.
  • Revalidate thresholds after upgrades; pin a version in production when needed.

Before production

  • Build an evaluation set from real historical data.
  • Log model version, input, output, and the eventual business outcome.
  • Evaluate Chinese workloads separately instead of assuming English performance.
  • Create fallback paths for timeouts, rate limits, and low confidence.
Never expose your API key in browser code. Call the TypeSafe API from your own server.

Continue reading

Explore real use cases

See exactly which decision Jev owns inside a larger workflow.