JEVSystem One Modell · TypeSafe AI

Neu seit 15. September 2026 · Early Access

Jev schreibt keinen Text.
Jev entscheidet.

Jev ist ein neues Modell von TypeSafe AI aus San Francisco. Du schickst Daten und Fragen. Jev antwortet mit Werten, Wahrscheinlichkeiten und einer Confidence-Zahl. Dein Code arbeitet direkt damit weiter. Kein Text zum Herauspulen.

Ein Aufruf, drei Fragen

state die Daten

Ich versuche seit 3 Tagen, mein Stripe-Konto zu verbinden. Die Integration bricht immer wieder ab. Ich verliere gerade Verkäufe. Bitte hilf mir sofort.

questions die Fragen

{
  "department": {
    "type": "choice",
    "instructions": "Welches Team soll diese Nachricht bearbeiten?",
    "criteria": {
      "billing": "Zahlungen, Rechnungen, Abos",
      "technical": "Fehler und Integrationsprobleme",
      "sales": "Preise und neue Accounts"
    }
  }
}

answers die Werte

technical 0,85
billing 0,15
sales 0,00

choice technical

confidence 0,78

Choice heißt: eine Option aus deiner Liste. Die Antwort kommt mit allen Wahrscheinlichkeiten. Der höchste Wert steht in choice.

Beispiel aus der TypeSafe-Dokumentation, Text auf Deutsch übersetzt, Werte gerundet. Hinweis: Englisch ist die stärkste Sprache für Jev. Deutsch funktioniert, prüfe aber deine eigenen Fälle.

Typenschild

Modell
Jev 1.13 erstes System One Modell
Anbieter
TypeSafe AI, San Francisco 40 Mio. $ Seed-Funding, zwei Jahre im Stealth-Modus
Eingabe
Text, JSON-Objekt oder Liste keine Bilder, kein Ton, kein Video
Ausgabe
Choice, Score, Noul mit Wahrscheinlichkeiten, Confidence bei Choice und Score
Preis
0,042 $ pro Million Eingabe-Tokens Ausgabe kostenlos
Tempo
70 bis 500 ms pro Aufruf laut Anbieter, meist etwa 100 ms
Limits
64.000 Tokens pro Aufruf max. 255 Optionen pro Choice, 2 bis 10 Stufen pro Score
Status
Early Access Rate-Limits und Preise können sich noch ändern

Das Problem

Text ist kein Datenformat.

Chat-Modelle sind gut darin, Text zu schreiben. Software braucht aber keine Prosa. Software braucht Werte, die sie prüfen kann.

  • parsen

    Die Antwort ist Text. Irgendwo darin steht die Entscheidung. Dein Code muss sie heraussuchen und hoffen, dass sie da ist.

  • validieren

    Nichts garantiert, dass die Antwort zu deinem Schema passt. Ein Feld kann fehlen, falsch heißen oder den falschen Typ haben.

  • selbstsicher falsch

    Ein Modell klingt auch dann überzeugt, wenn es falsch liegt. Gefragte Confidence-Werte sind laut TypeSafe überzeugt und unbeständig.

  • Tempo und Preis

    Antwortzeiten reichen laut TypeSafe von 3 bis 329 Sekunden. Ausgabe-Tokens kosten deutlich mehr als Eingabe-Tokens.

Der Weg durch dein Programm

1Vorgabe"Antworte als JSON mit Feld department"
2Chat-Modellerzeugt Token für Token
3Text mit JSONmanchmal mit Vorrede, manchmal abgeschnitten
4parsen und validierenkann brechen
5Codearbeitet weiter, wenn Schritt 4 geklappt hat

Der Unterschied liegt nicht darin, wie klug das Modell ist. Der Unterschied liegt an der Schnittstelle. Bei Jev gibt es die Schritte 3 und 4 aus der linken Ansicht nicht mehr.

So sieht eine typische Chat-Antwort aus. Dein Code muss diesen Block erst finden.
Klar, gern! Hier ist die Einordnung:

```json
{ "department": "technical", "confidence": 0.8 }
```

Ich hoffe, das hilft dir weiter.

Die Idee

Ein schlauer if-Befehl.

Normale Bedingungen prüfen Dinge, die ein Computer exakt ausrechnen kann: if (summe > 100). Jev prüft Dinge, die Bedeutung brauchen: Ist diese Nachricht dringend? Ist dieser Befehl gefährlich? Welches Team ist zuständig?

Kein Assistent

Jev ist kein Chat und kein Agent. Es gibt keine Unterhaltung, keine Werkzeugaufrufe und keine Schleife. Ein Aufruf: Daten rein, Werte raus. Danach ist Jev fertig.

Deshalb ist Jev auch kein Ersatz für ChatGPT. Es ist ein Bauteil in deinem Programm. Text schreiben weiterhin LLMs, entscheiden kann Jev.

Woher die Namen kommen

System One kommt von Daniel Kahneman. System 1 sind die schnellen, intuitiven Urteile. Für diese Art Urteil ist Jev gebaut. Langes, schrittweises Nachdenken bleibt bei Reasoning-Modellen.

Jev kommt von William Stanley Jevons. Er beschrieb, dass mehr Effizienz den Verbrauch erhöhen kann: bessere Dampfmaschinen, mehr Kohle. TypeSafe setzt auf dieselbe Logik. Wenn eine Entscheidung fast nichts kostet, baut man sie viel öfter ein.

klassischer Code

Entscheidet exakt und vorhersagbar. Aber nur über Dinge, die sich ausrechnen lassen.

Agent

Ein LLM entscheidet in einer Schleife. Mächtig, aber jede Runde braucht Aufsicht.

Code + Jev

Code behält die Kontrolle. Jev liefert nur die Urteile, für die man Sprache verstehen muss.

Warum so schnell?

Chat-Modell: Token für Token0 ms

wartet auf das letzte Token

Jev: alle Antworten auf einmal0 ms

department technical 0,85 frustration 1,0 urgency 1,0

noch nicht gestartet

Zeit gerafft dargestellt. Zahlen aus der TypeSafe-Demo: 0,114 s gegen 8,566 s (GPT-5.6 Terra). Der Anbieter nennt 70 bis 500 ms pro Aufruf, meist etwa 100 ms. Das Rennen ist eine Illustration, keine Messung auf deinem Rechner.

Die Bausteine

Drei Fragetypen. Mehr braucht es nicht.

Jede Frage ist eine von drei Formen. Du kannst alle drei in einem Aufruf mischen. Jede Frage bekommt eine ID von dir, damit dein Code die Antwort wiederfindet.

Die drei Fragetypen von Jev
TypDeine FrageWas zurückkommtTypisch für
noul Ist das wahr? eine Zahl von 0 bis 1 Spam, Dringlichkeit, Freigabe, Prompt-Injection
choice Welche Option aus meiner Liste? choice, probabilities, confidence Routing, Kategorie, Team, Sprache, Modellwahl
score Welche Stufe auf meiner Skala? score, legend, probabilities, confidence Schwere, Frust, Qualität, Risiko

Fünf Regeln, die viel ausmachen

  1. Eine Frage, ein Urteil. "Ist die Nachricht dringend?" ist gut. "Analysiere die Nachricht und entscheide das Beste" ist zu viel.
  2. Schreibe die Bedingung genau. Jev liest deine Worte, nicht deine Absicht. Wenn du eine falsche Antwort erklären musst, fehlt diese Erklärung in der Frage.
  3. Beschreibe Situationen, keine Stufen. "Funktion kaputt, aber es gibt einen Workaround" hilft. "Mittelschwer" hilft nicht.
  4. Gib eine Ausweich-Option. Ein other in jeder Choice-Liste. Sonst muss Jev etwas wählen, auch wenn nichts passt.
  5. Die ID ist für deinen Code. Sie wird nicht an das Modell geschickt. Die ganze Frage gehört in instructions.

Frage-Doktor

Vier typische Fehler. Klick auf den Fall und lies die Reparatur.

So nicht

"amount_ok": {
  "type": "noul",
  "instructions": "Ist `claim.total` über dem Limit von 75 $?"
}

Warum das schiefgeht: Jev ist kein Taschenrechner. Vergleiche und Beträge gehören in Code.

So ist es klar

"amount_bucket": {
  "type": "choice",
  "instructions": "In welchen Bereich fällt `claim.total`?",
  "criteria": {
    "unter_75": "kleiner als 75",
    "ueber_75": "75 oder größer",
    "nicht_genannt": "Betrag steht nicht im Dokument"
  }
}

// danach in deinem Code:
if (claim.total > 75 && answers.amount_bucket.choice === "ueber_75") …

Was einfacher wird

Fünf Gewohnheiten ändern sich.

Jev ist billig und schnell genug, dass man anders baut als mit einem Chat-Modell. Diese fünf Muster stehen in der TypeSafe-Dokumentation.

Speculative Fan-Out

Alle Fragen auf einmal

Bei LLMs fragt man eine Sache und entscheidet dann, was man als Nächstes fragt, weil jeder Aufruf teuer ist. Bei Jev schickst du alle unabhängigen Fragen zusammen. Zusatzfragen kosten fast keine Zeit, nur ihre eigenen Tokens.

13 Fragen in einem Aufruf waren 12,2-mal billiger und 10-mal schneller als 13 einzelne Aufrufe. Gemessen an einem Dokument mit 53.777 Zeichen.

Composite Scoring

Zerlegen und selbst gewichten

Ein großes Urteil wird zu mehreren kleinen. Die Gewichte liegen sichtbar in deinem Code. Wenn sich Prioritäten ändern, änderst du eine Zahl und keinen Prompt.

priority = 0.6 * norm(severity)
         + 0.3 * norm(frustration)
         + 0.1 * norm(report_quality)

Confidence-Gated Routing

Confidence sagt, ob du handeln darfst

Die Antwort sagt, was Jev gewählt hat. Die Confidence sagt, wie sicher es ist. Dein Code entscheidet: automatisch handeln, nachfragen oder an einen Menschen geben.

Ein Test mit rm -rf ergab "irreversibel" mit 0,56. Die Confidence lag bei 0,33. Der Code fragt deshalb nach, statt zu löschen.

Intent Routing

Erst die Absicht, dann der Weg

Ein Aufruf erkennt, was die Person will. Danach läuft normale Software, ein LLM oder ein Mensch weiter. Der teure Weg startet nur, wenn er gebraucht wird.

switch (answers.intent.choice) {
  case "order_status":    return lookupOrder(id)      // kein LLM
  case "product_question":return answerWithLLM(ctx)   // LLM
  case "complaint":       return needsReasoning > 1
                               ? routeToHuman(msg)
                               : answerWithLLM(msg)
}

Verifikation

Alles prüfen, was ein LLM anfasst

Jede Eingabe und jede Ausgabe eines LLM kann durch eine Jev-Frage laufen: Ist das ein Jailbreak-Versuch? Stützt das Zitat die Behauptung? Enthält die Passage eine versteckte Anweisung? Ein Prüfaufruf kostet einen Bruchteil des LLM-Aufrufs.

Was Entwickler in den ersten Tagen gebaut haben

  • 1.018 zusammengefasste AI-Papers in 24 Themen sortiert, für 0,08 $. Im Mittel 256 ms pro Paper.
  • 3,99 $ kosteten die LLM-Zusammenfassungen derselben 1.018 Papers. Die Einordnung mit Jev kostete 0,08 $.
  • 98.000 Produkt-Listings in zehn Minuten klassifiziert.
  • 0,02 $ für rund 500.000 Eingabe-Tokens. Das passt genau zum Listenpreis.
  • 10/s Abfragen für einen Doom-Bot aus strukturiertem Spielzustand, etwa 7 $ pro Stunde.
  • ~7 s für eine Flugbuchung mit einem Browser-Agenten, bei dem Jev jeweils das nächste Element wählt.

Frühe Experimente aus der Entwickler-Community, keine Produktionsberichte. Die Liste zeigt, was möglich ist, nicht was schon Geld verdient. Quelle: flaviocopes.com/jev und der TypeSafe-Blog.

Die zweite Achse

Wie sicher ist die Antwort?

Jede Choice- und Score-Antwort bringt eine confidence zwischen 0 und 1 mit. Sie entsteht aus der Form der Wahrscheinlichkeiten. Ein klarer Sieger ergibt eine hohe Zahl, eine flache Verteilung eine niedrige.

Antworten für department

85 %
15 %
0 %
0,50

confidence0,78

So liest dein Code die Zahl

if (confidence < FLOOR) {
  routeToHuman(message)
} else if (action === "approve_transfer") {
  if (confidence > 0.9) execute()
  else askUserToConfirm()
} else {
  showBalance()
}

Die Formel im Beispiel ist die Näherung aus der TypeSafe-Dokumentation für drei Optionen: confidence = (3 × größte Wahrscheinlichkeit − 1) / 2. In der echten API rechnet TypeSafe die Zahl für dich. Sie gilt über viele Fälle, nicht für eine einzelne Antwort. Eine hohe Confidence macht eine Antwort nicht wahr, sie macht sie nur belastbarer.

Tempo und Preis

Schnell und sehr billig.

Der Listenpreis ist einfach. Du zahlst nur für die Eingabe. Die Ausgabe ist kostenlos, weil es fast keine gibt.

0,042 $

pro Million Eingabe-Tokens

0 $

für Ausgabe-Tokens

70 bis 500 ms

pro Aufruf, meist etwa 100 ms

238×

billiger beim Eingabepreis als Claude Fable 5.1, laut TypeSafe

Rechne es für deinen Fall

Standardwerte aus den TypeSafe-Beispielen. Ändere sie auf deine Zahlen.

Jev

0,0000126 $ pro Aufruf
0,1260 $ pro Tag
3,78 $ pro Monat

Chat-Modell

0,0013800 $ pro Aufruf
13,80 $ pro Tag
414,00 $ pro Monat

Ersparnis

99 % weniger Kosten
Faktor 110

Jev: 0,042 $ pro Million Eingabe-Tokens, Ausgabe kostenlos. Die LLM-Preise sind deine Annahme, voreingestellt mit 2 $ und 12 $ pro Million Tokens (GPT-5.6 Terra laut The Register). Die Rechnung vergleicht nur die Modellkosten. Vor- und Nacharbeiten, Retries und menschliche Prüfung kommen extra dazu.

TypeSafes eigene Workflow-Benchmarks

Vier Workflows, gleiche Fragen, jeweils Durchschnitt aus Genauigkeit, Kosten und Zeit pro Fall. Weiter links und oben ist besser.

Genauigkeit, Kosten und Zeit pro Fall aus den TypeSafe-Workflow-Evals
Konfiguration Genauigkeit Kosten pro Fall Zeit pro Fall
Jev 67,8 % 0,0004 $ 0,4 s
GPT-5.6 Luna 66,8 % 0,0033 $ 12,9 s
GPT-5.6 Terra 67,9 % 0,0304 $ 10,1 s
Claude Sonnet 5 67,8 % 0,1172 $ 78,1 s
GPT-5.6 Sol 74,1 % 0,0836 $ 23,3 s
Claude Opus 5 73,1 % 0,1761 $ 37,8 s
Claude Haiku 4.5 53,6 % 0,0195 $ 12,5 s

Die Kostenskala ist logarithmisch, von 0,0001 $ bis 1 $. Die Genauigkeitsskala läuft von 40 % bis 80 %.

Derselbe Inhalt, nur als Prompt statt als Workflow

TypeSafe hat die gleiche Aufgabe auch als eine einzige Anweisung an das Modell gegeben. Die Struktur aus kleinen Fragen gewinnt in jedem Fall, bei Genauigkeit, Preis und Zeit.

KonfigurationGenauigkeitKosten pro FallZeit pro Fall
GPT-5.6 Luna, Prompt statt Workflow51,9 % statt 66,8 %0,0079 $27,3 s
Claude Opus 5, Prompt statt Workflow64,8 % statt 73,1 %0,3417 $70,5 s
Claude Haiku 4.5, Prompt statt Workflow18,1 % statt 53,6 %0,0363 $21,2 s

Quelle: evals.typesafe.ai. Die Referenzantworten sind der Mittelwert aus GPT-6 Astra und Claude Fable 5.1 mit hohem Thinking. Die Workflows stammen nicht aus Jevs Trainingsdaten, aber von TypeSafes eigenem Team. Nimm die Zahlen als Anbieter-Messung. Der Werbespruch "193,6-mal schneller, 444,6-mal billiger" kommt aus derselben Messung und liegt laut TypeSafe am oberen Rand dessen, was du im Alltag siehst.

Die Grenzen

Wo Jev patzt.

TypeSafe veröffentlicht eine eigene Liste mit Schwächen für jede Modellversion. Das ist ungewöhnlich ehrlich und sehr nützlich. Hier steht sie in einfacher Sprache.

Bekannte Schwächen von Jev 1.13 und der jeweilige Ausweg
SchwächeWas passiertWas du stattdessen machst
wörtlichJev antwortet auf deine Worte, nicht auf deine Absicht. Verneinungen und Bedingungen werden genau gelesen.Schreibe die Bedingung exakt auf. Formuliere Grenzfälle in die Kriterien.
rechnenRechnen und Zählen sind unzuverlässig, auch Farbwerte und Zahlenformate.Alles Rechnen in Code. Für Zählungen eine Frage pro Element stellen und selbst summieren.
DatumDaten werden als Text gelesen. Reihenfolge, Abstand und Zeitfenster sind unzuverlässig.Teile abfragen, Datum in Code bauen, dort vergleichen.
UmwegeDoppelte Verneinung und mehrere Schritte kosten Genauigkeit.Direkt fragen und die betroffenen Felder im state benennen.
viel KontextViel unwichtiger Text senkt die Genauigkeit. Jev leidet wie andere Modelle unter Context Rot.Erst in Code filtern, dann nur die nötigen Felder schicken.
fremde AnweisungenText im state kann das Modell beeinflussen. Jev behandelt Daten nicht automatisch als feindlich.Kriterien sehr genau schreiben und mit bösartigen Eingaben testen.
WidersprücheWenn Frage und Kriterien nicht zusammenpassen, wird die Antwort schlechter.Beides gleich formulieren. Keine Frage, bei der "ja" eigentlich "nein" bedeutet.
keine Mathe-Gesetze"Ja" bei einer Frage ist nicht automatisch "nein" bei der Gegenfrage.Jede Frage so stellen, wie du sie meinst. Schwellen nicht zwischen Fragetypen übertragen.
kein TextJev schreibt nicht. Erklärungen, Zusammenfassungen und Code kommen nicht heraus.Für Text ein LLM nehmen. Jev entscheidet, das LLM schreibt.

Wichtig zu wissen

  • "Keine Halluzinationen" heißt nicht "keine Fehler". Jev kann keinen Wert erfinden, der nicht in deiner Liste steht. Eine falsche Entscheidung ist trotzdem möglich. The Register nennt den Halluzinations-Vergleich deshalb unfair, weil Jev gar keine Sprache erzeugt.
  • Keine Mathe-Gesetze, kein Determinismus. Gleiche Eingabe, leicht andere Zahlen. Wenn du Schwellen fein justierst, pinne die Version (jev-1.13.0) statt des Alias jev-latest.
  • Nur Text. Keine Bilder, kein Ton, kein Video. Alles andere musst du vorher in Text umwandeln. Das gehört in deine Kostenrechnung.
  • Englisch ist am besten. Andere Sprachen funktionieren, sind aber schwächer. Teste deine Fälle in deiner Sprache.
  • 64.000 Tokens pro Aufruf, davon 32.000 für state plus die längste Frage.
  • Early Access. Rate-Limits passen sich an, Preise können sich ändern. Höhere Limits gibt es auf Anfrage.
  • Richtig geroutet ist nicht richtig entschieden. Ein typisierter Wert garantiert nur, dass die Form stimmt, nicht dass die Wahl stimmt. Prüfe die Fragen mit gelabelten Beispielen, bevor du etwas automatisierst.

So startest du

In sieben Schritten produktiv.

Der Rat aus allen Quellen ist derselbe: klein anfangen, erst protokollieren, dann automatisieren. Jev soll nichts kaputt machen können, was es nicht kaputt machen darf.

  1. Playground öffnen. Echten Fall einfügen, keine Beispieldaten. console.typesafe.ai/playground
  2. Eine Frage bauen. Noul, Choice oder Score. Erst eine, dann mehrere im selben Aufruf.
  3. Zweiten Weg behalten. Regeln, Regex oder der alte Code laufen weiter.
  4. Parallel laufen lassen. Antworten und Confidence nur protokollieren. Nichts ändern.
  5. Fehler ansehen. Fragen und Kriterien verbessern. Sammle mindestens 20 echte Beispiele mit erwarteten Antworten.
  6. Schwellen setzen. Erst risikoarme Pfade automatisieren. Riskante Pfade brauchen hohe Confidence oder einen Menschen.
  7. Alles an einen Ort. Fragen, Kriterien und Schwellen in eine Datei. Version mitschreiben und bei jeder Änderung erneut testen.

curl

curl -X POST https://api.typesafe.ai/v1/systemone \
  -H "Authorization: Bearer $TYPESAFE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "state": "Ich versuche seit 3 Tagen, mein Stripe-Konto zu verbinden. Es klappt nicht.",
    "model": "jev-latest",
    "questions": {
      "department": {
        "type": "choice",
        "instructions": "Welches Team soll diese Nachricht bearbeiten?",
        "criteria": {
          "billing": "Zahlungen, Rechnungen, Abos",
          "technical": "Fehler und Integration",
          "sales": "Preise und neue Accounts"
        }
      }
    }
  }'

JavaScript SDK

import { choice, noul, TypeSafeClient } from "@typesafe-ai/sdk"

const client = new TypeSafeClient()

const { answers } = await client.systemOne({
  state: { ticket },
  questions: {
    category: choice("Welche Art von Ticket ist `ticket`?", {
      bug_report: "Etwas ist kaputt",
      billing: "Rechnungen und Zahlungen",
      other: null,
    }),
    repro: noul("Enthält `ticket` Schritte zum Nachstellen?"),
  },
})

if (answers.repro.noul > 0.6) engineering(answers.category.choice)

Belege

Quellen und Wörterbuch.

Wörterbuch: sieben Begriffe kurz erklärt
state
Alles, was Jev sehen darf: eine Nachricht, ein JSON-Objekt oder eine Liste. Alle Fragen im Aufruf sehen denselben state.
questions
Deine Fragen mit ID, Typ und Kriterien. Sie werden parallel und unabhängig ausgewertet.
Noul
Ja/Nein-Frage. Die Antwort ist die Wahrscheinlichkeit für "ja", von 0 bis 1.
Choice
Auswahl aus deiner Liste. Antwort: die gewählte Option, alle Wahrscheinlichkeiten und die Confidence.
Score
Ein Wert auf deiner Skala. Antwort: der Score, die Stufen als Legende, alle Wahrscheinlichkeiten und die Confidence.
confidence
Eine Zahl von 0 bis 1 aus der Form der Wahrscheinlichkeiten. Sie sagt, wie klar die Antwort ist, nicht ob sie wahr ist.
kalibriert
Über viele Fälle verteilt passt die Wahrscheinlichkeit zur Trefferquote: Antworten mit 0,8 sind etwa in 80 % der Fälle richtig.