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

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

# Jev — sprendimų modelis

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

TypeSafe sprendimų modelis Jev atsako į tipizuotus klausimus apie tekstą ar JSON: parenka variantą, įvertina pagal skalę arba pateikia „taip / ne“ su tikimybėmis. Tai nėra pokalbis ar teksto generavimas.

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

Jev — sprendimų modelis

```bash
curl https://api.ailoot.ai/v1/systemone \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "jev-latest",
    "state": "Padėkite! Mano išmokos jau 3 dienas nevykdomos.",
    "questions": {
      "is_urgent": {
        "type": "noul",
        "instructions": "Ar tai rodo skubumą?"
      }
    }
  }' 
```

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

body = {
    "model": "jev-latest",
    "state": "Padėkite! Mano išmokos jau 3 dienas nevykdomos.",
    "questions": {
        "is_urgent": {"type": "noul", "instructions": "Ar tai rodo skubumą?"},
    },
}
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: "Padėkite! Mano išmokos jau 3 dienas nevykdomos.",
    questions: {
      is_urgent: { type: "noul", instructions: "Ar tai rodo skubumą?" },
    },
  }),
});
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 — TypeSafe System One klasės sprendimų modelis. Jis nerašo teksto ir neveda pokalbio: perduodate **būseną** (`state`) — tekstą arba JSON — ir rinkinį **klausimų**, o atsakyme gaunate tipizuotas reikšmes su tikimybėmis. Pagal jas kodas iškart parenka šaką, rūšiuoja ir nukreipia, neanalizuodamas laisvo teksto.

Visi vienos užklausos klausimai vertinami lygiagrečiai ir nepriklausomai vienas nuo kito pagal tą patį `state`. TypeSafe duomenimis, pridėjus klausimų atsakymo laikas beveik nesikeičia, o klausimai vienas kitam netrukdo.

| Kas | Trumpai |
| --- | --- |
| Modelis | `jev-latest` — naujausios stabilios Jev versijos pseudonimas; [kortelė kataloge](https://ailoot.ai/models/lt/#m=jev-latest) |
| Metodas | `POST /v1/systemone`. Tai nėra pokalbis: OpenAI, Anthropic ir Gemini formatai Jev netinka. Atsakymas pateikiamas visas, vienu JSON |
| Ką priima | Tik tekstą: eilutę, JSON objektą arba tekstų masyvą. Vaizdus, garsą ir vaizdo įrašus pirmiausia paverskite tekstu |
| Kontekstas | 64K žetonų vienai užklausai — state ir visi klausimai kartu; state su ilgiausiu klausimu — iki 32K |
| Kalba | TypeSafe duomenimis, tiksliausiai modelis veikia anglų kalba; kitas kalbas priima, tačiau tikslumas mažesnis — patikrinkite su savo duomenimis |
| Kaina | Įvestis — $0.084 už 1 mln. žetonų, išvestis nemokama |

## [](https://ailoot.ai/docs/lt/api/systemone/#request)Užklausa

### Autorizacija

| Parametras | Tipas | Privalomas | Aprašymas |
| --- | --- | --- | --- |
| `Authorization` | header | privalomas | Ailoot raktas formatu `Bearer sk-…`. |

### Užklausos turinys

| Parametras | Tipas | Privalomas | Aprašymas |
| --- | --- | --- | --- |
| `model` | string | privalomas | `jev-latest`. |
| `state` | string \| object \| array | privalomas | Ką vertinti: eilutė su tekstu arba JSON — kliento kreipimasis, duomenų bazės įrašas, susirašinėjimas, dabartinė jūsų programos būsena. Objektas su aiškiais laukų pavadinimais paprastai patogesnis nei viena eilutė. |
| `questions` | object | privalomas | Klausimai. Raktus pasirenkate patys, atsakymai pateikiami su tais pačiais raktais; raktas atsakymui įtakos neturi — pats klausimas nurodomas lauke `instructions`. |
| `questions.*.type` | string | privalomas | `noul`, `choice` arba `score` — žr. toliau. |
| `questions.*.instructions` | string \| object \| array | privalomas | Pats klausimas. Ilgą klausimą su duomenimis galima perduoti objektu: klausimas viename lauke, duomenys kituose; į laukus kreipkitės jų vardais tarp atgalinių kabučių. |
| `questions.*.criteria` | object \| array |  | Atsakymų variantai, kiekvienam tipui savi: „taip“ ir „ne“ aprašai noul atveju (neprivalomi), variantų žodynas choice atveju, surikiuotas lygių sąrašas score atveju. |

## [](https://ailoot.ai/docs/lt/api/systemone/#question-types)Klausimų tipai

| Tipas | Ko klausia | Ką grąžina |
| --- | --- | --- |
| `noul` | Ar teiginys teisingas: taip ar ne | `noul` — „taip“ tikimybė nuo 0 iki 1 |
| `choice` | Kuris iš pateiktų variantų tinka | `choice`, `probabilities`, `confidence` |
| `score` | Kur state yra jūsų lygių skalėje | `score`, `legend`, `probabilities`, `confidence` |

Vienoje užklausoje galima derinti skirtingus tipus.

### noul — taip arba ne

Laukas `criteria` neprivalomas: jame galima aprašyti, ką reiškia „taip“ (`true`) ir „ne“ (`false`). Atsakymas `noul` — skaičius nuo 0 (ne) iki 1 (taip).

```json
"is_urgent": {
  "type": "noul",
  "instructions": "Ar tai rodo skubumą?",
  "criteria": {
    "true": "Aiškiai nurodyta, kad laikas svarbus",
    "false": "Skubumas neišreikštas"
  }
}
```

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

### choice — varianto pasirinkimas

`criteria` — žodynas „variantas → aprašymas“; jei aprašymo nereikia, nurodykite `null`. Iki 255 variantų. Atsakyme `choice` — labiausiai tikėtinas variantas, `probabilities` — kiekvieno varianto tikimybė (suma — 1), `confidence` — patikimumas nuo 0 iki 1.

```json
"department": {
  "type": "choice",
  "instructions": "Kuri komanda turėtų tai tvarkyti?",
  "criteria": {
    "billing": "Mokėjimai, sąskaitų išrašymas, pinigų grąžinimas",
    "technical": "Klaidos, veikimo sutrikimai, integracijos",
    "sales": "Kainodara, perėjimas prie aukštesnių planų, nauji klientai"
  }
}
```

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

### score — vertinimas pagal skalę

`criteria` — lygiai nuo žemiausio iki aukščiausio, ne daugiau kaip 10 (TypeSafe rekomenduoja bent du). Atsakyme `score` — pagal lygių tikimybes pasverta reikšmė (gali būti tarp lygių), `legend` — lygio numeris ir jo aprašymas, `probabilities` ir `confidence`. TypeSafe duomenimis, `score` tinka palyginti su slenksčiu, tačiau ne tiksliam skaičiui tarp lygių nustatyti.

```json
"frustration": {
  "type": "score",
  "instructions": "Kiek klientas susierzinęs?",
  "criteria": ["Ramus", "Susierzinęs", "Labai piktas"]
}
```

```json
"frustration": {
  "type": "score",
  "score": 1.05,
  "legend": { "0": "Ramus", "1": "Susierzinęs", "2": "Labai piktas" },
  "probabilities": { "0": 0.0, "1": 0.95, "2": 0.05 },
  "confidence": 0.92
}
```

## [](https://ailoot.ai/docs/lt/api/systemone/#response)Atsakymas

| Parametras | Tipas | Privalomas | Aprašymas |
| --- | --- | --- | --- |
| `model` | string |  | Kuri modelio versija atsakė. Pseudonimas jev-latest laikui bėgant nukreipiamas į naujas versijas: jei parinkote slenksčius `confidence` konkrečiai versijai, stebėkite šį lauką. |
| `answers` | object |  | Po vieną atsakymą į kiekvieną klausimą, su tais pačiais raktais. Kiekvienas atsakymas turi `type`, o choice ir score — dar ir `confidence`. |
| `usage` | object |  | `input_tokens` ir `output_tokens`. Apmokestinami tik įvesties žetonai. |

`confidence` patogu naudoti kaip slenkstį: jei atsakymas patikimas, veikite automatiškai, jei ne — perduokite žmogui ar dideliam modeliui patikrinti. Atsakymas nurodo, ką pasirinkti, o `confidence` — ar verta veikti.

## [](https://ailoot.ai/docs/lt/api/systemone/#many-questions)Keli klausimai viena užklausa

Visus klausimus apie vieną state pateikite viena užklausa: jie vertinami lygiagrečiai, o state perduodamas vieną kartą. TypeSafe duomenimis, jų pavyzdyje su 13 klausimų viena bendra užklausa buvo 12,2 karto pigesnė ir 10 kartų greitesnė nei 13 atskirų užklausų, siunčiamų paeiliui, gaunant tokius pačius atsakymus.

Sudėtingą vertinimą geriau išskaidyti į paprastus klausimus ir atsakymus sujungti kode: pavyzdžiui, vietoj „įvertink paraišką“ — atskirai įvertinti rinką, įgyvendinamumą ir skirtumus nuo konkurentų. Tada svoriai keičiami kode, o ne klausimo tekste.

```json
{
  "model": "jev-latest",
  "state": "Padėkite! Mano išmokos jau 3 dienas nevykdomos.",
  "questions": {
    "department": {
      "type": "choice",
      "instructions": "Kuri komanda turėtų tai tvarkyti?",
      "criteria": {
        "billing": "Mokėjimai, sąskaitų išrašymas, pinigų grąžinimas",
        "technical": "Klaidos, veikimo sutrikimai, integracijos",
        "sales": "Kainodara, perėjimas prie aukštesnių planų, nauji klientai"
      }
    },
    "frustration": {
      "type": "score",
      "instructions": "Kiek klientas susierzinęs?",
      "criteria": ["Ramus", "Susierzinęs", "Labai piktas"]
    },
    "is_urgent": {
      "type": "noul",
      "instructions": "Ar tai rodo skubumą?"
    }
  }
}
```

## [](https://ailoot.ai/docs/lt/api/systemone/#use-cases)Kada tinka

- **Nukreipimas.** Nusiųsti kreipimąsi reikiamam skyriui, o užklausą — reikiamam vykdytojui: paprastam kodui, dideliam modeliui ar žmogui.
- **Rūšiavimas ir prioritetas.** Skubumas, tonas, rizika — pagal skalę su kode nustatytais slenksčiais.
- **Moderavimas ir patikros.** Ar pranešimas pažeidžia taisykles, ar šaltinis patvirtina citatą, ar dokumente yra atsakymas į klausimą — prieš perduodant tekstą toliau.
- **Vertinimas balais ir reitingavimas.** Įvertinti dokumentus, kandidatus ar rastus fragmentus pagal savo kriterijus ir kode nuspręsti, kas bus perduota toliau.
- **Vietoj nepatikimo „grąžink JSON“.** Iškvietimas, kuris pagal savo sandarą grąžina tipizuotas reikšmes, o ne tekstą, kurį reikia analizuoti.

## [](https://ailoot.ai/docs/lt/api/systemone/#not-for)Kada netinka

- **Pokalbiai, atsakymai vartotojui, teksto ar kodo generavimas.** Jev nerašo teksto — tam skirti [tekstiniai modeliai](https://ailoot.ai/models/lt/?kind=text).
- **Modelis Claude Code, Cursor ir kitiems agentams.** Pakeisti agento modelį į jev-latest nepavyks: agentui reikia modelio, kuris rašo tekstą ir iškviečia įrankius. Jev galima iškviesti iš kodo, kurį agentas jums parašo.
- **Aritmetika, skaičiavimas, datų palyginimas.** TypeSafe duomenimis, tai patikimiau atlikti kode, o modelio klausti tik prasminės dalies — pavyzdžiui, išgauti datos dalis naudojant choice.
- **Vaizdai, garsas ir vaizdo įrašai.** Modelis priima tik tekstą — tokius duomenis iš anksto paverskite tekstu.

Modelis geriausiai veikia, kai kiekvienas klausimas yra vienas konkretus, siauras vertinimas. Sąlygą rašykite tiesiogiai: TypeSafe duomenimis, modelis klausimą supranta pažodžiui, o didelis state su pertekliniais duomenimis mažina tikslumą — perfiltruokite jį kode.

## [](https://ailoot.ai/docs/lt/api/systemone/#price)Kaina

Apmokestinami tik įvesties žetonai — laukas `usage.input_tokens` atsakyme: **$0.084 už 1 mln**. Išvesties žetonai nemokami.

Šio puslapio pavyzdžio užklausa (296 įvesties žetonai) kainuoja mažiau nei $0.0001.

Prieš užklausą Ailoot rezervuoja sumą balanse, o gavus atsakymą vieną kartą nurašo pagal faktinį naudojimą — [kaip tai veikia](https://ailoot.ai/docs/lt/billing/reserve/).

## [](https://ailoot.ai/docs/lt/api/systemone/#limits)Limitai

| Kas | Limitas |
| --- | --- |
| Visa užklausa: state ir visi klausimai | 64K žetonų |
| state kartu su ilgiausiu klausimu | 32K žetonų |
| Variantų viename choice | iki 255 |
| Lygių viename score | nuo 2 iki 10 |
| Įvestis | tik tekstas: eilutė, JSON objektas arba tekstų masyvas |

Modelio limitai pateikti pagal TypeSafe duomenis. Jūsų rakto ir balanso apribojimai taikomi kaip bet kuriam Ailoot modeliui: [Klaidos ir limitai](https://ailoot.ai/docs/lt/errors/).

## [](https://ailoot.ai/docs/lt/api/systemone/#errors)Klaidos

Klaidos pateikiamos bendru Ailoot API formatu: kodas, aiškus tekstas ir Request ID. Šiame metode dažniausiai pasitaiko:

| Kodas | Kada | Ką daryti |
| --- | --- | --- |
| **400** `invalid_request` | Turinys nepraėjo patikros: nėra state, model arba questions, nežinomas type, choice turi daugiau nei 255 variantus, score — daugiau nei 10 lygių | Pataisykite užklausą pagal klaidos tekstą: nepataisyta ji vėl nepraeis patikros |
| **400** `context_length_exceeded` | state ir klausimai kartu viršija modelio limitą | Perfiltruokite state kode, palikite tik tai, ko reikia klausimams |
| **401** `invalid_api_key` | Rakto nėra arba jis neteisingas | Perduokite raktą Authorization antraštėje |
| **402** `insufficient_balance` | Nepakanka laisvo balanso rezervui | Papildykite balansą |
| **404** `model_not_found`, `unsupported_endpoint` | Klaidingas ID arba modelis iškviestas netinkamu metodu, pavyzdžiui, per /v1/chat/completions | jev-latest iškvieskite tik per POST /v1/systemone |
| **429** `rate_limit_exceeded` | Per daug užklausų | Palaukite tiek sekundžių, kiek nurodyta Retry-After antraštėje, ir bandykite dar kartą |
| **503** `model_overloaded`, `model_unavailable` | Modelis laikinai perkrautas arba neprieinamas | Jei X-Should-Retry: true — bandykite dar kartą po Retry-After nurodyto sekundžių skaičiaus; jei false — pirmiausia patikrinkite Request ID istorijoje |
| **504** `model_timeout` | Modelis laiku neatsakė | Nesiųskite užklausos iš naujo, kol nepatikrinsite Request ID istorijoje |

Visas kodų sąrašas pateiktas puslapyje [Klaidos ir limitai](https://ailoot.ai/docs/lt/errors/).

Liko klausimų? Atsiųskite Request ID ir aprašymą — padėsime išsiaiškinti.[Rašyti pagalbos tarnybai](mailto:support@ailoot.ai)

## Ailoot · Įmonė ir jos projektų portfelis





Ailoot remiasi sukaupta veiklos patirtimi, plačia klientų baze, stabiliomis paslaugomis ir nuolatine KPI kontrole.





Įmonė ir jos projektų portfelis: milijonai klientų; mėnesio pardavimai siekia milijardus.





Ailoot šią veiklos patirtį pritaiko teikdama API prieigą prie DI funkcijų klientų produktuose, agentuose, programose ir automatizavimo sprendimuose.
