Skip to Content
ModelleJev (TypeSafe)Übersicht

Jev

TypeSafe Jev ist ein Entscheidungsmodell. Es generiert keinen Text, sondern beantwortet ausschließlich vorab definierte Fragen. Die Anfrage enthält den zu bewertenden Inhalt und eine Reihe von Fragen; das Modell liefert für jede Frage eine strukturierte Antwort mit Wahrscheinlichkeit, anhand derer das Programm unmittelbar Verzweigungslogik ausführen kann.

Anwendungsbereiche

Kurz gesagtSoll das Programm abhängig vom Entscheidungsergebnis unterschiedliche Logik ausführen, verwenden Sie Jev; soll Text für menschliche Leser generiert werden, verwenden Sie ein Chatmodell.

Geeignet für:

  • Klassifizierung und Routing: zuständiges Team für ein Ticket, Kategorie der Nutzerabsicht.
  • Ja/Nein-Entscheidungen: ob personenbezogene Daten enthalten sind, ob es sich um einen Erstattungsantrag handelt, ob eine Prompt-Injection vorliegt.
  • Bewertung und Sortierung: Dringlichkeit, Relevanz, Stärke der Stimmung sowie Filterung von Suchergebnissen.
  • Qualitätsprüfung von LLM-Ausgaben: ob eine Antwort zum Thema passt und ob sie gegen Regeln verstößt.

Nicht geeignet für:

  • Generierung von Text, Zusammenfassungen, Übersetzungen oder Code.
  • Entscheidungen über Bilder (Jev unterstützt nur Text- und JSON-Eingaben; verwenden Sie für Bildentscheidungen GPT-6 Luna).
  • Offene Fragen, deren Antworten sich nicht vorab als Optionen oder Stufen festlegen lassen.

Vergleich mit „Chatmodell + JSON-Ausgabe“:

JevChatmodell + JSON-Ausgabe
RückgabeAusschließlich die vorgegebenen Optionen oder StufenWerte außerhalb der Optionen möglich; zusätzliche Validierung erforderlich
UnsicherheitJede Antwort enthält Wahrscheinlichkeiten; choice und score liefern zusätzlich eine KonfidenzIn der Regel keine verwertbaren Wahrscheinlichkeiten
Mehrere FragenGemeinsame Beantwortung in einer Anfrage mit derselben EingabeZusammenfassung in einem Prompt oder mehrere Aufrufe erforderlich
AbrechnungNur Eingabe-Token; die Ausgabe wird nicht berechnetEingabe und Ausgabe zu den Preisen des Chatmodells

Schnellstart

1. Verbindungsdaten vorbereiten: Erstellen Sie in der OfoxAI-Konsole  einen API Key und verwenden Sie die folgenden Angaben:

Verbindungsdaten
Base URLhttps://api.ofox.ai/v1
Modell-IDtypesafe/jev-latestAlternativ auch jev-latest
Endpunkt/v1/decisionsPOST; /v1/chat/completions ist nicht anwendbar

2. SDK installieren: Für den Aufruf mit dem offiziellen OpenAI Python SDK ist eine Version erforderlich, die client.decisions enthält:

Terminal
pip install -U openai
HinweisDie Meldung AttributeError: 'OpenAI' object has no attribute 'decisions' bei der Ausführung weist auf eine veraltete SDK-Version hin; aktualisieren Sie diese mit dem obigen Befehl (getestet mit openai 3.31.0). Ohne SDK ist der Aufruf auch per cURL wie unten gezeigt möglich.

3. Aufruf ausführen:

quickstart.py
import os from openai import OpenAI client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"]) r = client.decisions.create( model="typesafe/jev-latest", input="Customer message: I was charged twice, nobody has answered my two emails, and I need a refund today.", questions=[{"type": "predicate", "name": "is_frustrated", "instructions": "Is the customer frustrated?"}], ) print(r.answers[0].probability) # 0.98

Beispielantwort:

{ "model": "typesafe/jev-latest", "answers": [{ "type": "predicate", "name": "is_frustrated", "probability": 0.98 }], "usage": { "prompt_tokens": 302, "completion_tokens": 23, "total_tokens": 325 } }

probability gibt die Wahrscheinlichkeit für die Antwort „Ja“ an; 0.98 bedeutet, dass das Modell die Unzufriedenheit des Kunden als sehr wahrscheinlich einstuft. Für den eigenen Anwendungsfall ersetzen Sie input durch den tatsächlichen Inhalt und questions durch die tatsächlichen Fragen.

Fragetypen

Der Fragetyp richtet sich nach der benötigten Form des Ergebnisses:

Benötigtes ErgebnisFragetypZu übergebende FelderRückgabefelder
Ja oder NeinpredicateDie Frage; optional criteria zur Festlegung, was Ja und Nein bedeutenprobability: Wahrscheinlichkeit für Ja
Auswahl einer Option aus mehrerenchoicechoices: 2–255 Optionenchoice, Wahrscheinlichkeit je Option, confidence
Ausprägungsgradscorelevels: 2–10 Stufen in aufsteigender Reihenfolgescore, Wahrscheinlichkeit je Stufe, confidence

Beispiel: Für „Handelt es sich um einen Erstattungsantrag?“ wird predicate verwendet, für „Welches Team soll das Ticket bearbeiten?“ choice und für „Wie dringend ist der Fall?“ score. Alle drei Fragen können in derselben Anfrage gestellt werden; sämtliche Antworten werden gemeinsam zurückgegeben.

Prüfen Sie nach der Festlegung des Fragetyps Fragen und Optionen anhand von Fragendesign.

Häufige Fehler

SymptomUrsacheBehebung
AttributeError: 'OpenAI' object has no attribute 'decisions'Veraltete Version des OpenAI SDKpip install -U openai ausführen und erneut versuchen
400 endpoint_not_supported mit dem Hinweis Please use /v1/decisions insteadJev wurde als Chatmodell über /v1/chat/completions aufgerufenStattdessen /v1/decisions aufrufen
400 Invalid request payloadDas native TypeSafe-Format (state, questions als Objekt) wurde an /v1/decisions gesendetinput und questions als Array verwenden oder stattdessen /typesafe/v1/systemone aufrufen
400 questions are required for decisionquestions ist leerMindestens eine Frage angeben
400 question "a" has kind choice and requires criteria optionsEiner choice-Frage fehlen die choicesOptionen ergänzen
400 Too many score levels. Must have at most 10 levels.Eine score-Frage hat mehr als 10 StufenStufen zusammenfassen
400 max_tokens_exceededDie Eingabe überschreitet 64K TokenLange Dokumente aufteilen oder nur die relevanten Teile übergeben
400, die Fehlermeldung enthält input_image und Typesafe cannot readAn Jev wurde ein Bild übergebenBild entfernen oder ein Modell mit Bildunterstützung verwenden
404 model_not_foundFehlerhafte Modell-IDtypesafe/jev-latest verwenden
Die Anfrage ist erfolgreich, die Antwort jedoch offensichtlich falsch bei hoher KonfidenzDie choice-Optionen decken den tatsächlichen Fall nicht abEine Option „keine der genannten“ hinzufügen und die Optionsbeschreibungen ergänzen; siehe Fragendesign
In den Antworten fehlt name, eine Zuordnung zu den Fragen ist nicht möglichFür die Fragen ist kein name festgelegtFür jede Frage einen name festlegen

Die vollständige Fehlerliste finden Sie unter Decisions API · Häufige Fehler.

Offizielle Dokumentation

Häufig gestellte Fragen

Worin unterscheidet sich Jev davon, ein LLM JSON ausgeben zu lassen?

Jev antwortet ausschließlich innerhalb der vorgegebenen Optionen und Stufen und liefert keine Werte außerhalb dieses Bereichs. Jede Antwort enthält Wahrscheinlichkeiten; choice und score liefern zusätzlich eine Konfidenz, die sich unmittelbar für Schwellenwerte verwenden lässt. JSON-Ausgaben eines LLM erfordern zusätzliche Validierung und enthalten in der Regel keine verwertbaren Wahrscheinlichkeiten.

Welcher Endpunkt ist zu verwenden: /v1/decisions oder /typesafe/v1/systemone?

Für neue Projekte wird /v1/decisions empfohlen, das sich direkt über das OpenAI SDK aufrufen lässt. Projekte, die bereits das TypeSafe SDK oder dessen offiziellen Beispielcode verwenden, können /typesafe/v1/systemone nutzen; dabei ist lediglich die Base URL zu ändern.

Wie wird Jev abgerechnet?

Berechnet werden ausschließlich Eingabe-Token; die Ausgabe wird nicht berechnet. Die Preise sind auf der Modellseite angegeben. Mehrere Fragen in derselben Anfrage teilen sich dieselbe Eingabe; die Zusammenfassung von Fragen in einer Anfrage senkt daher die Kosten.

Bedeutet eine hohe Konfidenz, dass die Antwort korrekt ist?

Nicht zwingend. Decken die Optionen den tatsächlichen Fall nicht ab, wählt das Modell dennoch eine der vorhandenen Optionen, wobei die Konfidenz hoch sein kann. Für choice-Fragen sollte daher eine Auffangoption wie „keine der genannten“ vorgesehen und das Ergebnis anhand manuell annotierter Stichproben überprüft werden.

Was bedeutet ein score von 1.43?

Der score ist ein mit den Wahrscheinlichkeiten der Stufen gewichteter Wert; die Stufen sind ab 0 nummeriert. 1.43 liegt zwischen Stufe 1 und Stufe 2, näher an Stufe 1. Die Wahrscheinlichkeiten der einzelnen Stufen sind in probabilities angegeben.

Werden Inhalte in anderen Sprachen als Englisch unterstützt?

Ja. Getestet wurde chinesischer Inhalt sowohl mit chinesischen als auch mit englischen Fragen.

Unterstützt Jev Bilder?

Nein. Jev akzeptiert ausschließlich Text und JSON. Für Entscheidungen über Bilder kann stattdessen GPT-6 Luna (openai/gpt-6-luna) mit Unterstützung für Bildeingaben verwendet werden; das Anfrageformat ist identisch.

Zuletzt aktualisiert am