TASK / ROUTING · R04

Route a Task to the Right Path

Enter a task to see which route Jev selects and whether your app rules allow that route or require review.

Sample preview availableLive runs available

Quality status: Recipe-level semantic benchmark not completed.
Live availability does not certify result quality.

Recipe 1.0.0
Sources S07, S08
Content checked 20 Sep 2026

JEV EVALUATIONEXPERIMENT R04 · V1.0.0
01

YOUR INPUT

Edit the example input

1 credit per 5,000 billed input tokens. We’ll ask before any multi-credit run.

02

RESULT

Jev’s answers

Illustrative sample · Not a live run
TASK
Fast text
Deep text
Image tool
Human review

Model choice: Fast textApp path: Fast text

Routechoice
fast-text
Fast text82%
Deep text13%
Image tool1%
Human review4%

Provider confidence: 71%

Complexityscore
1.20 / 4

Probability-weighted rubric position, not a percentage or confidence score.

  1. 0

    A direct lookup or tiny transformation

  2. 1

    A simple bounded text operation

  3. 2

    Several related steps

  4. 3

    Substantial analysis with interacting constraints

  5. 4

    A complex plan with many uncertain or dependent steps

Provider confidence: 53%

External Side Effectboolean
Probability of true4%
YOUR APP’S NEXT STEPfast textroute-thresholds-cleared

The model evaluates. Deterministic policy code decides the displayed application path.

03

QUESTIONS FOR JEV

Edit the questions

Editing a question requires a new model run. Each experiment keeps its answer types, options, and scoring scale fixed.

04

APP RULES

Change how your app uses the answer

↯ Changing these rules updates the result in your browser without another model call.

Inspect result +
{
  "origin": "fixture",
  "answers": {
    "route": {
      "type": "choice",
      "choice": "fast-text",
      "probabilities": {
        "fast-text": 0.82,
        "deep-text": 0.13,
        "image-tool": 0.01,
        "human-review": 0.04
      }
    },
    "complexity": {
      "type": "score",
      "score": 1.2,
      "probabilities": {
        "0": 0.03,
        "1": 0.76,
        "2": 0.15,
        "3": 0.05,
        "4": 0.01
      }
    },
    "externalSideEffect": {
      "type": "boolean",
      "probability": 0.04
    }
  },
  "providerConfidence": {
    "route": 0.71,
    "complexity": 0.53
  },
  "policyDecision": {
    "action": "fast-text",
    "label": "fast text",
    "reasonCodes": [
      "route-thresholds-cleared"
    ]
  },
  "run": null
}
TypeScript export +
import { experimental_evaluate as evaluate } from 'ai';

const state = {
  "task": "Write a two-sentence release announcement from these supplied facts.",
  "routingContext": "Choose a text route for a low-risk task using the facts already supplied. Do not execute anything."
};
const questions = {
  "route": {
    "type": "choice",
    "instructions": "Which allowed route matches this task and the routing context?",
    "criteria": {
      "fast-text": "A small bounded text task needing little reasoning",
      "deep-text": "A text task requiring substantial analysis or multi-step reasoning",
      "image-tool": "The primary request is to create or edit an image",
      "human-review": "The task requires authority, consequential side effects, or clarification"
    }
  },
  "complexity": {
    "type": "score",
    "instructions": "How much reasoning complexity is explicit in this task?",
    "criteria": [
      "A direct lookup or tiny transformation",
      "A simple bounded text operation",
      "Several related steps",
      "Substantial analysis with interacting constraints",
      "A complex plan with many uncertain or dependent steps"
    ]
  },
  "externalSideEffect": {
    "type": "boolean",
    "instructions": "Does the task request a consequential change outside this playground, such as sending, paying, deleting or changing permissions?",
    "criteria": {
      "true": "The task explicitly requests such an external side effect.",
      "false": "It only requests analysis, drafting or a sandbox demonstration without an external change."
    }
  }
};
const policy = {
  "minSelectedProbability": 0.75,
  "minProviderConfidence": 0.4,
  "sideEffectReviewThreshold": 0.65
};

const result = await evaluate({
  model: 'typesafe-ai/jev',
  state,
  questions,
  maxRetries: 0,
  providerOptions: { gateway: { zeroDataRetention: true } },
});

// Validate result.answers before applying your deterministic policy.
console.log({ answers: result.answers, policy });

USE WHEN

When to use this experiment

You have a defined set of routes and want unclear cases to pause for review.

LIMITS

What this experiment cannot do

You need the playground to call a downstream model or perform an external action.

BUILT-IN CHECKS

How this experiment handles edge cases

  • Model choice and application route are separate fields.
  • Policy slider movement sends no new model call.
  • Missing confidence is displayed as missing, never fabricated.
  • No vendor ranking, routing performance or downstream costs are implied.