Source: https://ailoot.ai/docs/da/api/systemone/
Canonical: https://ailoot.ai/docs/da/api/systemone/
Language: da

[API](https://ailoot.ai/docs/da/) 

# Jev — beslutningsmodel

[Markdown](https://ailoot.ai/docs/da/api/systemone/index.md)

Jev fra TypeSafe er en beslutningsmodel, der besvarer typede spørgsmål om tekst eller JSON: valg mellem muligheder, vurdering på en skala eller »ja/nej« med sandsynligheder. Den er ikke en chat og genererer ikke tekst.

POST`https://api.ailoot.ai/v1/systemone`

Jev — beslutningsmodel

```bash
curl https://api.ailoot.ai/v1/systemone \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "jev-latest",
    "state": "Hjælp! Mine udbetalinger har slået fejl i 3 dage.",
    "questions": {
      "is_urgent": {
        "type": "noul",
        "instructions": "Udtrykker dette, at det haster?"
      }
    }
  }' 
```

```python
import json, os, urllib.request

body = {
    "model": "jev-latest",
    "state": "Hjælp! Mine udbetalinger har slået fejl i 3 dage.",
    "questions": {
        "is_urgent": {"type": "noul", "instructions": "Udtrykker dette, at det haster?"},
    },
}
req = urllib.request.Request(
    "https://api.ailoot.ai/v1/systemone",
    data=json.dumps(body).encode(),
    headers={"Authorization": "Bearer " + os.environ["AILOOT_API_KEY"],
             "Content-Type": "application/json"},
)
with urllib.request.urlopen(req, timeout=60) as resp:
    result = json.load(resp)
print(result["answers"]["is_urgent"]["noul"])  # 0.95
```

```js
const resp = await fetch("https://api.ailoot.ai/v1/systemone", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.AILOOT_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "jev-latest",
    state: "Hjælp! Mine udbetalinger har slået fejl i 3 dage.",
    questions: {
      is_urgent: { type: "noul", instructions: "Udtrykker dette, at det haster?" },
    },
  }),
});
const result = await resp.json();
if (!resp.ok) throw new Error(`${resp.status} ${JSON.stringify(result)}`);
console.log(result.answers.is_urgent.noul); // 0.95
```

200 OK

```json
{
  "model": "jev-1.13.0",
  "answers": {
    "is_urgent": {
      "type": "noul",
      "noul": 0.95
    }
  },
  "usage": { "input_tokens": 296, "output_tokens": 20 }
}
```

Jev fra TypeSafe er en beslutningsmodel af klassen System One. Den skriver ikke tekst og fører ikke samtaler: du sender en **tilstand** (`state`) — tekst eller JSON — og et sæt **spørgsmål**, og får typede værdier med sandsynligheder tilbage. Koden kan straks forgrene sig, sortere og foretage routning ud fra dem uden at fortolke fri tekst.

Alle spørgsmål i én anmodning vurderes parallelt og uafhængigt af hinanden i forhold til den samme `state`. Ifølge TypeSafe ændrer ekstra spørgsmål næsten ikke svartiden, og spørgsmålene påvirker ikke hinanden.

| Hvad | Kort fortalt |
| --- | --- |
| Model | `jev-latest` — et alias for den seneste stabile version af Jev; [kort i kataloget](https://ailoot.ai/models/da/#m=jev-latest) |
| Metode | `POST /v1/systemone`. Det er ikke en chat: OpenAI-, Anthropic- og Gemini-formaterne passer ikke til Jev. Svaret kommer samlet som ét JSON-objekt |
| Accepteret input | Kun tekst: en streng, et JSON-objekt eller en liste af tekster. Omdan først billeder, lyd og video til tekst |
| Kontekst | 64K tokens pr. anmodning — state og alle spørgsmål tilsammen; state sammen med det længste spørgsmål — op til 32K |
| Sprog | Ifølge TypeSafe er modellen mest præcis på engelsk; den accepterer andre sprog, men med lavere præcision — afprøv den med dine egne data |
| Pris | Input $0.084 pr. 1 mio. tokens, gratis output |

## [](https://ailoot.ai/docs/da/api/systemone/#request)Anmodning

### Godkendelse

| Parameter | Type | Påkrævet | Beskrivelse |
| --- | --- | --- | --- |
| `Authorization` | header | påkrævet | Ailoot-nøgle i formen `Bearer sk-…`. |

### Anmodningens indhold

| Parameter | Type | Påkrævet | Beskrivelse |
| --- | --- | --- | --- |
| `model` | string | påkrævet | `jev-latest`. |
| `state` | string \| object \| array | påkrævet | Det, der skal vurderes: en tekststreng eller JSON — en kundehenvendelse, en databasepost, en samtale eller applikationens aktuelle tilstand. Et objekt med beskrivende feltnavne er normalt mere praktisk end én streng. |
| `questions` | object | påkrævet | Spørgsmål. Du vælger nøglerne, og svarene kommer med de samme nøgler; nøglen påvirker ikke svaret — selve spørgsmålet angives i `instructions`. |
| `questions.*.type` | string | påkrævet | `noul`, `choice` eller `score` — se nedenfor. |
| `questions.*.instructions` | string \| object \| array | påkrævet | Selve spørgsmålet. Et langt spørgsmål med data kan sendes som et objekt: spørgsmålet i ét felt, data i andre; henvis til felterne ved navn i backticks. |
| `questions.*.criteria` | object \| array |  | Svarmuligheder, som afhænger af typen: beskrivelser af »ja« og »nej« for noul (valgfrit), en ordbog over muligheder for choice og en ordnet liste af niveauer for score. |

## [](https://ailoot.ai/docs/da/api/systemone/#question-types)Spørgsmålstyper

| Type | Hvad den spørger om | Hvad den returnerer |
| --- | --- | --- |
| `noul` | Om et udsagn er sandt: ja eller nej | `noul` — sandsynligheden for »ja« fra 0 til 1 |
| `choice` | Hvilken af de angivne muligheder der passer | `choice`, `probabilities`, `confidence` |
| `score` | Hvor state ligger på din niveauskala | `score`, `legend`, `probabilities`, `confidence` |

Typerne kan blandes i én anmodning.

### noul — ja eller nej

Feltet `criteria` er valgfrit: her kan du beskrive, hvad »ja« (`true`) og »nej« (`false`) betyder. Svaret `noul` — et tal fra 0 (nej) til 1 (ja).

```json
"is_urgent": {
  "type": "noul",
  "instructions": "Udtrykker dette, at det haster?",
  "criteria": {
    "true": "Udtrykkeligt tidskritisk",
    "false": "Intet tyder på, at det haster"
  }
}
```

```json
"is_urgent": {
  "type": "noul",
  "noul": 0.95
}
```

### choice — valg af mulighed

`criteria` — en ordbog »mulighed → beskrivelse«; hvis en beskrivelse ikke er nødvendig, angiv `null`. Op til 255 muligheder. I svaret er `choice` — den mest sandsynlige mulighed, `probabilities` — sandsynligheden for hver mulighed (tilsammen 1), `confidence` — sikkerhed fra 0 til 1.

```json
"department": {
  "type": "choice",
  "instructions": "Hvilket team skal håndtere dette?",
  "criteria": {
    "billing": "Betalinger, fakturering, refusioner",
    "technical": "Fejl, nedbrud, integrationer",
    "sales": "Priser, opgraderinger, nye kunder"
  }
}
```

```json
"department": {
  "type": "choice",
  "choice": "billing",
  "probabilities": { "billing": 0.88, "technical": 0.12, "sales": 0.0 },
  "confidence": 0.81
}
```

### score — vurdering på en skala

`criteria` — niveauer fra lavest til højest, højst 10 (TypeSafe anbefaler mindst to). I svaret er `score` — en værdi vægtet efter niveauernes sandsynligheder (kan ligge mellem niveauer), `legend` — niveauets nummer og beskrivelse, `probabilities` og `confidence`. Ifølge TypeSafe er `score` egnet til sammenligning med en tærskel, men ikke som et præcist tal mellem niveauerne.

```json
"frustration": {
  "type": "score",
  "instructions": "Hvor frustreret er kunden?",
  "criteria": ["Rolig", "Frustreret", "Meget vred"]
}
```

```json
"frustration": {
  "type": "score",
  "score": 1.05,
  "legend": { "0": "Rolig", "1": "Frustreret", "2": "Meget vred" },
  "probabilities": { "0": 0.0, "1": 0.95, "2": 0.05 },
  "confidence": 0.92
}
```

## [](https://ailoot.ai/docs/da/api/systemone/#response)Svar

| Parameter | Type | Påkrævet | Beskrivelse |
| --- | --- | --- | --- |
| `model` | string |  | Hvilken modelversion der svarede. Aliaset jev-latest peger med tiden på nye versioner: hvis du har tilpasset tærsklerne `confidence` til en bestemt version, skal du holde øje med dette felt. |
| `answers` | object |  | Ét svar pr. spørgsmål med de samme nøgler. Hvert svar har `type`, choice og score har desuden `confidence`. |
| `usage` | object |  | `input_tokens` og `output_tokens`. Kun inputtokens betales. |

`confidence` er praktisk som tærskel: ved et sikkert svar kan du handle automatisk; ved et usikkert svar kan du sende det til et menneske eller en stor model til kontrol. Svaret fortæller, hvad du skal vælge, mens `confidence` fortæller, om du bør handle.

## [](https://ailoot.ai/docs/da/api/systemone/#many-questions)Flere spørgsmål i én anmodning

Stil alle spørgsmål til samme state i én anmodning: de vurderes parallelt, og state sendes kun én gang. Ifølge TypeSafe var én samlet anmodning i deres eksempel med 13 spørgsmål 12,2 gange billigere og 10 gange hurtigere end 13 separate anmodninger sendt efter hinanden, med de samme svar.

Del helst en kompleks vurdering op i enkle spørgsmål, og kombiner svarene i koden: brug eksempelvis separate vurderinger af marked, gennemførlighed og forskelle fra konkurrenterne i stedet for »vurdér ansøgningen«. Vægtene ændres så i koden frem for i spørgsmålsteksten.

```json
{
  "model": "jev-latest",
  "state": "Hjælp! Mine udbetalinger har slået fejl i 3 dage.",
  "questions": {
    "department": {
      "type": "choice",
      "instructions": "Hvilket team skal håndtere dette?",
      "criteria": {
        "billing": "Betalinger, fakturering, refusioner",
        "technical": "Fejl, nedbrud, integrationer",
        "sales": "Priser, opgraderinger, nye kunder"
      }
    },
    "frustration": {
      "type": "score",
      "instructions": "Hvor frustreret er kunden?",
      "criteria": ["Rolig", "Frustreret", "Meget vred"]
    },
    "is_urgent": {
      "type": "noul",
      "instructions": "Udtrykker dette, at det haster?"
    }
  }
}
```

## [](https://ailoot.ai/docs/da/api/systemone/#use-cases)Hvornår den passer

- **Routing.** Send en henvendelse til den rette afdeling og en anmodning til den rette behandler: enkel kode, en stor model eller et menneske.
- **Sortering og prioritering.** Hastegrad, tone og risiko — på en skala med tærskler i koden.
- **Moderation og kontrol.** Om en besked bryder reglerne, en kilde bekræfter et citat, eller et dokument indeholder svaret på et spørgsmål — før teksten sendes videre.
- **Scoring og rangering.** Vurdér dokumenter, kandidater eller fundne tekstuddrag efter dine egne vurderingskriterier, og afgør i koden, hvad der skal videre.
- **I stedet for en skrøbelig »returnér JSON«-instruktion.** Et kald, der er konstrueret til at returnere typede værdier, frem for tekst, der skal fortolkes.

## [](https://ailoot.ai/docs/da/api/systemone/#not-for)Hvornår den ikke passer

- **Chat, svar til brugeren og generering af tekst eller kode.** Jev skriver ikke tekst — til det findes [tekstmodeller](https://ailoot.ai/models/da/?kind=text).
- **Som model til Claude Code, Cursor og andre agenter.** Du kan ikke erstatte agentens model med jev-latest: agenten har brug for en model, der skriver tekst og kalder værktøjer. Jev kan kaldes fra den kode, som agenten skriver til dig.
- **Regning, optælling og sammenligning af datoer.** Ifølge TypeSafe er det mere pålideligt at gøre dette i koden og kun spørge modellen om den betydningsmæssige del — for eksempel at udtrække datodele via choice.
- **Billeder, lyd og video.** Modellen accepterer kun tekst — omdan disse data til tekst på forhånd.

Modellen fungerer bedst, når hvert spørgsmål er én konkret, snæver vurdering. Angiv betingelsen direkte: ifølge TypeSafe forstår modellen spørgsmålet bogstaveligt, og et stort state med overflødige data sænker præcisionen — filtrér det i koden.

## [](https://ailoot.ai/docs/da/api/systemone/#price)Pris

Kun inputtokens betales — feltet `usage.input_tokens` i svaret: **$0.084 pr. 1 million**. Outputtokens er gratis.

Anmodningen i eksemplet på denne side (296 inputtokens) koster mindre end $0.0001.

Før anmodningen reserverer Ailoot beløbet på saldoen og debiterer efter svaret én gang ud fra det faktiske forbrug — [sådan fungerer det](https://ailoot.ai/docs/da/billing/reserve/).

## [](https://ailoot.ai/docs/da/api/systemone/#limits)Grænser

| Hvad | Grænse |
| --- | --- |
| Hele anmodningen: state og alle spørgsmål | 64K tokens |
| state sammen med det længste spørgsmål | 32K tokens |
| Muligheder i én choice | op til 255 |
| Niveauer i én score | fra 2 til 10 |
| Input | kun tekst: en streng, et JSON-objekt eller en liste af tekster |

Modelgrænserne er oplyst af TypeSafe. Begrænsninger for din nøgle og saldo gælder som for enhver anden Ailoot-model: [Fejl og grænser](https://ailoot.ai/docs/da/errors/).

## [](https://ailoot.ai/docs/da/api/systemone/#errors)Fejl

Fejl kommer i Ailoot APIs fælles format: kode, forståelig tekst og Request ID. De hyppigste for denne metode er:

| Kode | Hvornår | Hvad du skal gøre |
| --- | --- | --- |
| **400** `invalid_request` | Anmodningens indhold bestod ikke valideringen: state, model eller questions mangler, type er ukendt, choice har mere end 255 muligheder, eller score har mere end 10 niveauer | Ret anmodningen ud fra fejlteksten: uden en rettelse bliver den afvist igen |
| **400** `context_length_exceeded` | state og spørgsmålene overskrider tilsammen modellens grænse | Filtrér state i koden, og behold det, spørgsmålene kræver |
| **401** `invalid_api_key` | Nøglen mangler eller er ugyldig | Send nøglen i Authorization-headeren |
| **402** `insufficient_balance` | Den ledige saldo rækker ikke til reservationen | Fyld saldoen op |
| **404** `model_not_found`, `unsupported_endpoint` | ID indeholder en fejl, eller modellen kaldes med den forkerte metode, eksempelvis via /v1/chat/completions | Kald kun jev-latest via POST /v1/systemone |
| **429** `rate_limit_exceeded` | For mange anmodninger | Vent det antal sekunder, som står i Retry-After-headeren, og prøv igen |
| **503** `model_overloaded`, `model_unavailable` | Modellen er midlertidigt overbelastet eller utilgængelig | Hvis X-Should-Retry: true — prøv igen efter Retry-After sekunder; hvis false — kontrollér først Request ID i historikken |
| **504** `model_timeout` | Modellen svarede ikke i tide | Send ikke anmodningen igen, før du har kontrolleret Request ID i historikken |

Den fulde liste over koder findes på siden [Fejl og grænser](https://ailoot.ai/docs/da/errors/).

Har du stadig spørgsmål? Send Request ID og en beskrivelse — så hjælper vi med at finde ud af det.[Kontakt support](mailto:support@ailoot.ai)

## Ailoot · Virksomheden og dens projektportefølje





Ailoot bygger på solid driftserfaring, en stor kundebase, stabil service og løbende kontrol af KPI.





Virksomheden og dens projektportefølje: millioner af kunder; månedligt salg for milliarder.





Ailoot bruger denne driftserfaring til API-adgang til AI-funktioner i kundernes produkter, agenter, applikationer og automatiseringer.
