DEVELOPER GUIDE
Deine erste Entscheidung erstellen
Ein praxisnaher Leitfaden für diesen Dienst: ausführen, prüfen, integrieren und messen.
OpenAIs GPT-6 Luna Decisions ist ebenfalls über OpenRouter mit dem gemeinsamen Jev-Vertrag verfügbar. Diese Website ist ein unabhängiger Workbench- und API-Dienst für Jev von TypeSafe AI, Liquid d1, Laya von Convai Innovations, Solar Decide und Solar Decide Flash von Upstage, Tev1 von Together AI, Kev 4B von Jared Palmer, Decider V1 und V1.1 von Perplexity, Mercury Decide von Inception sowie Clef Flash und Clef von Cloudflare, Nace.AIs Drex v2.0 und Perplexitys Decider-27B-Latest-Alias. Auch eingeschränkte Antworten können falsch sein; prüfe sie mit eigenen Daten.
Schnellstart
Erstelle ein Konto und erhalte 100 Guthabenpunkte. Lade ein Rezept, prüfe das Budget und führe es aus. Passe die Fragen an, speichere deine Konfiguration und öffne den Code-Tab. Erstelle einen API-Schlüssel für die Website, um dasselbe Guthaben von deinem Server aus zu verwenden.
export DECISIONS_API_KEY="YOUR_API_KEY"
curl --fail-with-body 'https://decisions-api.dev/v1/systemone' \
-H "Authorization: Bearer $DECISIONS_API_KEY" \
-H "Content-Type: application/json" \
--data-raw '{
"model": "typesafe/jev-1.13",
"state": "I was charged twice for order A-4471. Please refund the duplicate payment.",
"questions": {
"route": {
"type": "choice",
"instructions": "Which team should handle this ticket? Use other when no option fits.",
"criteria": {
"billing": "Payments, charges and refunds",
"technical": "Bugs and product errors",
"account": "Login and account access",
"other": "None of these teams"
}
}
}
}'Bewahre API-Schlüssel auf deinem Server auf. Binde sie nicht in Browsercode ein und committe sie nicht in die Versionsverwaltung.
API-Referenz
POST https://decisions-api.dev/v1/systemone
Sende JSON mit model, state und questions. Verwende Authorization: Bearer mit einem Schlüssel dieser Website. Erfolgreiche Antworten enthalten code: 0; die Antworten findest du unter data.result.answers. Die Antwortformate der offiziellen Anbieter-SDKs unterscheiden sich. Text, JSON und Bilder werden unterstützt. Bis zu 4 PNG-, JPEG- oder WebP-Bilder (je 4 MiB und 16 MP, insgesamt 8 MiB); Bildanfragen dürfen 13 MiB umfassen, Text samt Fragen weiterhin 32 KiB. Das Textzustandslimit zählt keine Bilddaten.
| Feld | Struktur |
|---|---|
| model | OpenAIs GPT-6 Luna Decisions ist ebenfalls über OpenRouter mit dem gemeinsamen Jev-Vertrag verfügbar. Modell-ID: openai/gpt-6-luna-decisions. Playground und API unterstützen typesafe/jev-1.13 (Alias: jev-latest), liquid/d1, convaiinnovations/laya, upstage/solar-decide, upstage/solar-decide-flash, togethercomputer/tev1-4b-experimental, jaredpalmer/kev-4b, perplexity/pplx-decider-v1-27b, perplexity/pplx-decider-v1.1-27b, ~perplexity/pplx-decider-27b-latest, inception/mercury-decide, cloudflare/clef-flash, cloudflare/clef, respan/span-01 und respan/span-01-lite. Liquid d1 und Laya nutzen Vercel AI Gateway; die anderen Modelle nutzen OpenRouter. Span akzeptiert nur Noul-Fragen; andere Modelle unterstützen Choice, Score und Noul. Tev1 Choice erlaubt 2–20 Optionen, Laya 2–100, Solar Decide Flash 2–26 und andere allgemeine Entscheidungsmodelle 2–255. Solar Decide Flash und Mercury Decide unterstützen nur Text. Perplexity Decider V1, V1.1 und Latest, GPT-6 Luna Decisions, Clef Flash und Clef akzeptieren Bilder. Die Plattform erlaubt bis zu 8 Fragen und 32 KiB für Text samt Fragen. Bis zu 4 PNG-, JPEG- oder WebP-Bilder (je 4 MiB und 16 MP, insgesamt 8 MiB); Bildanfragen dürfen 13 MiB umfassen. Clef begrenzt den Textzustand auf 2.000 UTF-8-Bytes. Ebenfalls verfügbar: microsoft/microsoft-decision-1, nace-ai/drex-v1.5, nace-ai/drex-v2.0, cloudflare/clef-omni (Text, JSON und Bilder), inception/mercury-decide:free und respan/span-01-lite:free (nur Noul). Clef Omni verwendet das allgemeine Textlimit; das 2.000-Byte-Limit gilt nur für Clef und Clef Flash. |
| state | Nicht leerer Text, ein JSON-Objekt oder ein Array. Alle Fragen verwenden denselben Zustand. Span akzeptiert Text oder {input: Nachrichten-Array, output: Assistentennachricht}; jede Nachricht besteht nur aus role und Textinhalt. Allgemeine JSON-Objekte und einfache Arrays werden von Span nicht unterstützt. |
| images | Optionales images-Feld: bis zu 4 {url}-Objekte. GPT-6 Luna Decisions, Decider, Clef Flash und Clef akzeptieren PNG-, JPEG- und WebP-Base64-Daten-URLs sowie öffentliche HTTPS-Adressen von konfigurierten Download-Hosts. Pro Bild gelten 4 MiB und 16 MP, insgesamt 8 MiB; die gesamte Anfrage darf 13 MiB und Text samt Fragen 32 KiB nicht überschreiten. Alternativ kann state ein Array mit text- und image_url-Teilen sein; images entfällt dann. Alle Fragen verwenden dieselben Bilder. Dieser Dienst wandelt images in eingebettete Bildteile für den Anbieter um. |
| questions | 1–8 benannte Fragen. IDs beginnen mit einem Buchstaben; danach sind Buchstaben, Ziffern, _ oder - erlaubt. Höchstens 64 Zeichen. |
choice
Definiere unter criteria 2–255 benannte Optionen. Die Antwort enthält choice, Wahrscheinlichkeiten und Konfidenz. Füge für unpassende Fälle eine ausdrückliche Ausweichoption hinzu. Solar Decide Flash akzeptiert höchstens 26 Optionen.
score
Definiere unter criteria 2–10 geordnete Zeichenfolgen. Der Score reicht von 0 bis zum Index der letzten Stufe und kann Nachkommastellen haben; die Wahrscheinlichkeiten beziehen sich auf die Stufen.
noul
Noul liefert P(true) zwischen 0 und 1. Unter criteria.true und criteria.false kannst du optional beschreiben, was als Ja und Nein gilt. Es wird kein boolescher Wert zurückgegeben; verwende deinen eigenen Schwellenwert.
Wahrscheinlichkeiten sind Modellausgaben über deinen Antwortbereich. Konfidenz ist ein separates Signal. Keines von beiden ist eine gemessene Genauigkeitsrate. Für Noul wird beim Schwellenwert max(P(Ja), 1 − P(Ja)) verwendet; 0,01 kann ein eindeutiges Nein sein. Prüfe Schwellenwerte anhand gekennzeichneter Fälle unter „Regeln vergleichen“.
Bilder
Optionales images-Feld: bis zu 4 {url}-Objekte. GPT-6 Luna Decisions, Decider, Clef Flash und Clef akzeptieren PNG-, JPEG- und WebP-Base64-Daten-URLs sowie öffentliche HTTPS-Adressen von konfigurierten Download-Hosts. Pro Bild gelten 4 MiB und 16 MP, insgesamt 8 MiB; die gesamte Anfrage darf 13 MiB und Text samt Fragen 32 KiB nicht überschreiten. Alternativ kann state ein Array mit text- und image_url-Teilen sein; images entfällt dann. Alle Fragen verwenden dieselben Bilder. Dieser Dienst wandelt images in eingebettete Bildteile für den Anbieter um.
// Server-side JavaScript (Node 20+ or Bun). Set DECISIONS_API_KEY.
import { readFileSync } from "node:fs";
// Place these local images beside this script, or edit their paths.
const payload = {
"model": "cloudflare/clef-flash",
"state": "Inspect the supplied screenshot.",
"questions": {
"screenshot": {
"type": "noul",
"instructions": "Does the image show a software interface?"
}
},
"images": [
{
"url": "READ_FROM_LOCAL_FILE"
}
]
};
payload.images[0].url = "data:image/png;base64," + readFileSync("image-1.png").toString("base64");
const response = await fetch("https://decisions-api.dev/v1/systemone", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.DECISIONS_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify(payload),
});
const body = await response.json();
if (!response.ok || body.code !== 0) throw new Error(body.message);
console.log(body.data.result.answers);
console.log(body.data.creditsUsed);Der Bildcode liest lokale Dateien wie image-1.png. Speichere die Bilder unter den Namen im Code oder ändere die Pfade. Die API-Einrichtung speichert keine Bilddaten.
Der Browser lädt Bilder herunter und bettet sie ein. API-Downloads erlauben nur App-/Speicher-Hosts und DECISION_IMAGE_ALLOWED_HOSTS, auch bei Weiterleitungen. Vor dem Download reserviert die Vorschau ein vollständiges Modellkontextbudget pro Bild und Frage. Danach reserviert der Server anhand der Abmessungen ein kleineres Budget und berechnet den tatsächlichen Verbrauch.
Beispielhafte Antwort — keine Live-Messung
{
"code": 0,
"message": "ok",
"data": {
"requestId": "example-request-id",
"creditsUsed": 1,
"historySaved": true,
"result": {
"model": "typesafe/jev-1.13",
"answers": {
"route": {
"type": "choice",
"choice": "billing",
"probabilities": {
"billing": 0.94,
"technical": 0.02,
"account": 0.02,
"other": 0.02
},
"confidence": 0.9
}
},
"usage": {
"input_tokens": 1000,
"output_tokens": 0
},
"elapsedMs": 250
}
}
}Die Latenz misst die serverseitige Verarbeitungszeit dieses Dienstes einschließlich der Anfrage beim Anbieter. Sie schließt die Netzwerkverbindung des Browsers aus und ist keine Leistungsgarantie.
Abrechnung und Limits
Eingabetarife pro Million Tokens: GPT-6 Luna Decisions 1.500 Credits; Perplexity Decider V1 600; Decider V1.1 und Mercury Decide jeweils 300; Clef Flash 600; Clef 3.500; Drex v2.0 900; Decider Latest 300 (aktuelles Ziel V1.1). Clef und Clef Flash begrenzen den JSON-serialisierten Zustand auf 2.000 UTF-8-Bytes, um Textkürzungen beim Anbieter zu verringern. Bis zu 8 Fragen; Text samt Fragen bis 32 KiB. Tev1 Choice erlaubt 2–20 Optionen, Laya 2–100, Solar Decide Flash 2–26 und andere allgemeine Entscheidungsmodelle 2–255. Webversuche liegen mindestens 3 Sekunden auseinander. Web, API und Evaluation berechnen den tatsächlichen Eingabeverbrauch zum jeweiligen Modellsatz, aufgerundet und mit mindestens 1 Credit pro erfolgreicher Anfrage; Ausgabetokens sind kostenlos. Vor dem Anbieteraufruf reservieren wir das angezeigte vorsichtige Budget. Bei Erfolg rechnen wir die tatsächlichen Eingabetokens ab und erstatten den Rest. Fehlgeschlagene Aufrufe geben die Reservierung frei; unterbrochene Reservierungen verfallen nach 10 Minuten und werden bei der nächsten Kontostandsprüfung oder Anfrage freigegeben. Text, JSON und Bilder werden unterstützt. Bis zu 4 PNG-, JPEG- oder WebP-Bilder (je 4 MiB und 16 MP, insgesamt 8 MiB); Bildanfragen dürfen 13 MiB umfassen, Text samt Fragen weiterhin 32 KiB. Das Textzustandslimit zählt keine Bilddaten. Microsoft-Decision-1, Drex v1.5 und Liquid d1 verwenden 600 Credits/M; Drex v2.0 900 und Decider Latest 300 (aktuelles Ziel V1.1); Clef Omni 2.200. Mercury Decide :free und Span-01 Lite :free kosten 1 Credit je erfolgreicher Anfrage. Clef Omni akzeptiert Bilder und das allgemeine Textlimit von 32 KiB.
400 ungültige Eingabe · 401 Anmeldung/API-Schlüssel erforderlich · 402 nicht genügend Guthaben · 409 doppelte Anfrage · 413 Anfrage zu groß · 429 warte auf Retry-After · 502 Anbieterfehler · 503 Dienst nicht verfügbar. Sende für jede logische API-Anfrage einen eindeutigen Idempotency-Key (8–64 Buchstaben, Ziffern, _ oder -). Bei Wiederverwendung wird 409 zurückgegeben, ohne das Modell erneut aufzurufen. Prüfe bei unklarem Ergebnis den Verlauf, bevor du es erneut versuchst.
Credits pro Million tatsächlicher Eingabetokens: Jev, Kev, Tev1, Microsoft-Decision-1, Drex, Liquid d1, Decider V1 und Clef Flash: 600; Solar Decide und Flash: 720; Decider V1.1, Mercury Decide und Span-01: 300; GPT-6 Luna Decisions: 1.500; Clef Omni: 2.200; Clef: 3.500. Laya, Mercury Decide :free und beide Span-01-Lite-Varianten: 1 Credit je erfolgreicher Anfrage. 1 $ = 10.000 Credits. Je Anfrage aufgerundet, mindestens 1 Credit. Web, API und Evaluation teilen diese Tarife. Ausgabe kostenlos; Fehler geben die Reservierung frei. Ohne Steuern.
Daten und Verlauf
Gespeicherte Konfigurationen sowie Anfrageinhalte und Ergebnisse aus Webaufrufen sind nur für dein Konto sichtbar. Der API-Verlauf speichert Metadaten, Tokenverbrauch und Guthaben, aber keine Anfrageinhalte. Browserentwürfe bleiben lokal in diesem Browser. Eingebettete Bilddaten werden aus Entwürfen, Konfigurationen und Verlauf entfernt; Metadaten und die Anzahl fehlender Bilder bleiben. Vor erneutem Aufruf müssen Bilder hinzugefügt werden. API-Bildadressen können ablaufen. Die API-Einrichtung exportiert Code für lokale Dateien ohne Bilddaten zu speichern.
Rezepte
Supportanfragen weiterleiten
Abrechnungs-, Technik- und Kontoanfragen weiterleiten; eine ausdrückliche Ausweichoption vorsehen.
Rezept öffnen ↗Agenten weiterleiten
Zwischen einer deterministischen Abfrage, einem Modell oder einer menschlichen Prüfung wählen.
Rezept öffnen ↗Quellenangaben prüfen
Eine Behauptung anhand ihrer Quelle prüfen, auch bei fehlenden oder widersprüchlichen Belegen.
Rezept öffnen ↗Dieselben Fälle mit zwei Regelsätzen testen
Speichere A mit dem aktuellen Modell und den aktuellen Regeln im Workbench. Ändere Modell oder Fragen und speichere anschließend B. Importiere bis zu 25 gekennzeichnete Fälle und vergleiche beide Versionen. Der Zustand aus dem Datensatz ersetzt jeweils den gespeicherten Zustand.
{"id":"refund","state":"Please refund my duplicate payment.","expected":{"route":"billing"}}
{"id":"login","state":"My reset link has expired.","expected":{"route":"account"}}1–25 Fälle. JSONL: ein {id, state, expected} je Zeile. CSV: id,state,expected; expected ist ein JSON-Objekt mit Fragen-IDs als Schlüsseln. Die Übereinstimmungsrate vergleicht gekennzeichnete Antworten abgeschlossener Anfragen; Fehler werden getrennt gezählt. Noul verwendet die Bezeichnungen true/false (P(Ja) ≥ 0,5). Für Score gilt die vor dem Durchlauf festgelegte Toleranz.