Introducing Krun One Closed beta

LLMs generate.
Krun decides.

The decision layer for autonomous agents.

An 879M parameter model built for intent routing, tool selection, and agent handoffs, over text, images, documents and audio. Calibrated probabilities. Zero output tokens.

Follow a decision
Model execution
~17ms
Parameters
879M
Output tokens
0
Order invariance
99.3%
Inside a decisionExplore the API
01 / 05 — Context

One request.

Your agent has the context. Now it needs to know what to do next.

“Where is my order?”
lookup_order
search_docs
issue_refund
escalate_to_human
Illustrative tool selection
Scroll to follow the decision
01 / Context

One request.

Your agent has the context. Now it needs to know what to do next.

“Where is my order?”
02 / Candidates

Many possible actions.

Look up an order. Search the docs. Issue a refund. Escalate to a human. The next step is a choice.

Four tools. One task.
03 / The detour

A decision, wrapped in generation.

In a generative routing pipeline, text is generated and parsed before your application can take the next step.

Context → Generate → Parse → Route
04 / The decision

A direct path forward.

Krun evaluates the context against your options and returns a decision with calibrated probabilities.

Context + options → Decision
05 / Execution

Your agent takes it from here.

Krun selects the tool. Your application executes it. A clear boundary between deciding and doing.

Selected tool: lookup_order
From context to action

See the decision. Keep the control.

Send your context and options. Get a typed answer, a probability distribution, and the information your application needs to act.

One request.
One forward pass.
Your next action.
Interactive example

A request. A calibrated answer.

Sample response
Request Payload [POST /v1/decide]application/json
{
  "context": "Customer wants to return an item.",
  "questions": {
    "department": {
      "type": "choice",
      "options": {
        "shipping": "Shipping and delivery issues",
        "returns": "Returns and refunds",
        "billing": "Billing and payment issues"
      }
    }
  }
}
Calibrated Distribution ArgMaxanswers.department
“shipping” 0.03%
“returns” Selected99.96%
“billing” 0.02%
Confidence0.9993
In Tokens48
Abstainfalse
Statusadvisory

Illustrative demo · Confidence = top-1 − top-2 probability. Abstention is advisory for options with descriptions.

Developer integration

A single endpoint.
Ready for your stack.

Send named questions: choice, noul, score or multi. Context can be text or parts: images, documents and audio. Receive one typed answer per question, with calibrated probabilities. ~17ms model execution.

Read the documentation
request.sh
cURL
curl -X POST https://api.krun.ai/v1/decide \
  -H "Authorization: Bearer $KRUN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "context": "Customer wants to return an item.",
  "questions": {
    "department": {
      "type": "choice",
      "options": {
        "shipping": "Shipping and delivery issues",
        "returns": "Returns and refunds",
        "billing": "Billing and payment issues"
      }
    }
  }
}'
200 OK · Examplekrun-one-v1
{
  "model": "krun-one-v1",
  "answers": {
    "department": {
      "type": "choice",
      "choice": "returns",
      "confidence": 0.9993,
      "probabilities": {
        "shipping": 0.0003,
        "returns": 0.9996,
        "billing": 0.0002
      },
      "abstain": false,
      "abstention_status": "advisory"
    }
  },
  "usage": {
    "input_tokens": 48
  }
}

The model defaults to krun-one-v1. The request ID is returned in the X-Request-ID response header. Usage reports input_tokens.

Built to decide

A different architecture. A direct answer.

Stop burning autoregressive tokens on deterministic branches. General generative LLMs generate one token at a time. Krun One is an encoder-style decision tensor mapping directly to state transitions.

ContextCandidate options
KOne forward pass
Decision+ probabilities
ECE 0.015

Calibrated Probabilities

Standard LLM logprobs suffer from sequence length distortions. Krun One yields mathematically sound, calibrated posterior likelihoods without prompt fragility or hallucinations.

Zero hallucination ceiling
~17ms

Zero Output Tokens

Eliminate token-by-token decoding loops. A single direct tensor forward pass resolves decisions instantly, slashing p99 latency by over 80% compared to typical prompt cascades.

Direct logits forward pass
99.3% Invariance

Order Invariance

Standard models show strong positional biases (primacy and recency effects). Krun One candidate routing guarantees symmetrical evaluation independent of list permutation.

Permutation invariant cross-attention
Measured, not imagined

Small model. Serious numbers.

Head-to-head on the same held-out evaluation set: Krun One V1 against the previous generation, Krun One v0.3.

+16.9pp

Tool routing accuracy
vs. Krun One v0.3

Krun One V1 (879M)Krun One v0.3 (421M)

Intent Routing Accuracy

97.50%vs 89.10%+8.4 pp

Tool Routing Accuracy

98.10%vs 81.20%+16.9 pp

Hard-Negative Candidate Routing

97.50%vs 87.70%+9.8 pp

Cross-Language Routing (PT / ES / FR context, EN options)

98.20%vs 82.70%+15.5 pp

Large Candidate Sets (128 options)

90.60%vs 64.90%+25.7 pp

Permutation Order Consistency

99.30%vs 86.00%+13.3 pp

Out-of-Scope False Acceptance at 70% Coverage (Lower is Better)

2.70%vs 35.80%13x fewer

Expected Calibration Error (ECE — Lower is Better)

0.0150vs 0.03402.3x tighter

Held-out KrunBench v1 evaluation split, identical code for both models; temperatures and thresholds fitted on a separate fit split. Latency: RTX 4090, bf16, one typical question (p50).

Where Krun fits

Every agent has a next move.

Offload routing decisions from expensive frontier LLMs. Save latency, token budgets, and reduce prompt schema bloat across autonomous agent runtimes.

Zero-Schema Tool Decision

Select tools without passing 50+ JSON definitions into the system prompt.

Frontier models hallucinate tool parameters and drop efficiency when context windows swell with repetitive OpenAPI specs. Krun One accepts lightweight tool keys, routes in ~17ms with 97.4% confidence, and yields execution control directly to deterministic handlers.

Latency saved: ~850msTokens saved: 1,840 / turn
Decision flowResolved
Input: “Query stripe balance”USER_EVENT
KRUN ONE0.974 Conf
evaluating 42 candidate tools (38.8ms)
Selected option: stripe_get_balance
OOD AUROC 0.947 on out-of-domain detection
Decision primitives

Four ways to ask. One model to decide.

Choice, noul, score and multi questions about the same context, mixed in a single call. One question is one decision, whatever its type.

Choice

option + probabilities

Pick one of several alternatives: departments, intents, tools.

{ "type": "choice", "options": { "billing": "", "support": "" } }

Noul

probability 0–1

Evaluate a yes/no proposition: needs a human? likely fraud? should retry?

{ "type": "noul", "instructions": "Is the customer asking for a human?" }

Score

expected level + distribution

Rate on ordered levels: severity, urgency, quality, risk.

{ "type": "score", "instructions": "How severe?", "levels": ["Minor", "Degraded", "Blocking"] }

Multi

selected set + per-option probabilities

Tag everything that applies: topics, risks, required follow-ups.

{ "type": "multi", "options": { "billing": "", "refund": "", "urgent": "" } }
Closed beta · Batch 04 open

Give your agents
a decisive edge.

Request early access. We are onboarding design partners running high-volume autonomous agents and intent classification pipelines.

Build with Krun One.

Tell us what you’re working on.

No credit card required