Wat elk veld betekent
Het verzoek definieert de vragen en antwoordformaten. Het antwoord retourneert voor elk een resultaat. Dit zijn de JSON-velden die in het voorbeeld worden gebruikt.
Velden opvragen
model- De model-ID. In dit voorbeeld wordt Jev 1.13 vastgezet, zodat de versie ervan expliciet is.
state- De tekst of gestructureerde gegevens die moeten worden geëvalueerd, zoals een ondersteuningsbericht.
questions- Een verzameling beslissingen met een naam. Diezelfde namen staan in het veld answers van de respons.
<question_id>- Een naam zoals action of urgency; het antwoord gebruikt dezelfde naam.
type- Antwoordvorm: choice kiest een optie, score beoordeelt op een geordende schaal en noul beoordeelt een ja/nee-vraag.
instructions- De specifieke afweging die u het model wilt laten maken.
criteria- De toegestane Choice-opties, geordende Score-niveaus of de betekenis van false en true voor Noul.
Reactievelden
answers- Eén resultaat per vraag, geretourneerd onder dezelfde naam.
choice- De optiesleutel die door choice is geselecteerd: de optie met de hoogste waarschijnlijkheid.
probabilities- De waarschijnlijkheid van elke keuzeoptie; samen tellen deze waarden op tot 1.
confidence- Een afzonderlijke betrouwbaarheidswaarde berekend op basis van de waarschijnlijkheidsverdeling; het is niet de waarschijnlijkheid van de geselecteerde optie.
score- Een positie op een geordende schaal, gewogen naar waarschijnlijkheid; die kan tussen twee niveaus liggen.
legend- De koppeling tussen numerieke Score-posities en de beschrijvingen van je niveaus.
noul- Een getal van 0 (nee) tot 1 (ja) voor een ja/nee-vraag.
Dezelfde context, drie onafhankelijke vragen: Choice, Score en Probability. Elke keer uitvoeren kost één poging van je daglimiet. Een correct gevormd antwoord kan nog steeds fout zijn. Test representatieve cases en stel routeringsdrempels in voor uw eigen workflow.
TypeScript aan de serverzijde
TypeScript · fetch// Run on your server. Keep the API key out of browser code.
const apiKey = process.env.OPENROUTER_API_KEY;
if (!apiKey) throw new Error("Set OPENROUTER_API_KEY");
const response = await fetch("https://openrouter.ai/api/alpha/decisions", {
method: "POST",
headers: {
Authorization: "Bearer " + apiKey,
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "typesafe/jev-1.13",
state: {input: "A customer reports a duplicate charge."},
questions: {
team: {
type: "choice",
instructions: "Which team should handle this?",
criteria: {
billing: "Payments and refunds",
technical: "Bugs and integrations"
}
},
urgency: {
type: "score",
instructions: "How urgent is the issue?",
criteria: ["Can wait", "Needs attention today", "Immediate action"]
},
escalate: {
type: "noul",
instructions: "Should a human review this first?",
criteria: {false: "No review needed", true: "Review before acting"}
}
}
})
});
if (!response.ok) throw new Error("Decision request failed");
const {answers} = await response.json();
console.log(answers.team.choice, answers.urgency.score, answers.escalate.noul);