jev-latest
Rozhodovací model spoločnosti TypeSafe: nepíše text, ale odpovedá na typované otázky o texte alebo JSON — výber možnosti, hodnotenie na škále alebo „áno/nie“ s pravdepodobnosťami. Je vhodný na smerovanie, triedenie požiadaviek, moderovanie a skórovanie; všetky otázky jednej požiadavky vyhodnocuje súbežne.
O modeli
Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.
Jev je vlajkový model spoločnosti TypeSafe a prvý model novej triedy System One. Nepíše text, ale rýchlo prijíma rozhodnutia, ktoré môže program ihneď použiť: odovzdáte stav (state) — text alebo JSON — a súbor otázok a ako odpoveď dostanete typované hodnoty s kalibrovanými pravdepodobnosťami.
Jazykové modely píšu slová pre ľudí, zatiaľ čo Jev je podľa TypeSafe bližší ku kódu: odpoveď má hneď formu potrebnú pre kód, vysokú rýchlosť a ani jednu hodnotu mimo zadaných možností. Model je navrhnutý tak, aby pri opakovaných požiadavkách poskytoval stabilné odpovede.
Čím sa System One líši od jazykového modelu
- Negeneruje. Jev nepíše odpovede používateľovi, nepíše kód a nevysvetľuje postup uvažovania. Možné odpovede určujete vy prostredníctvom jedného z troch typov otázok.
- Je trénovaný na kalibrované rozhodnutia. TypeSafe trénuje model metódou RLCD (Reinforcement Learning for Calibrated Decisions): pravdepodobnosti sa prispôsobujú skutočným výsledkom a odrážajú neistotu. Z veľkého počtu odpovedí s pravdepodobnosťou 0,8 by malo byť správnych približne 80%. Kalibrácia je vlastnosťou veľkej vzorky, nie zárukou správnosti jednotlivej odpovede.
- Má iný cieľ trénovania. Chatové modely sa trénujú tak, aby sa páčili ľuďom (RLHF), a podľa pozorovania TypeSafe to podporuje snahu vyhovieť aj sebavedomo znejúce chyby. Jeden zo spoluautorov RLHF, Diogo Almeida, je spoluzakladateľom TypeSafe.
Názov odkazuje na „Systém 1“ z knihy Daniela Kahnemana „Myslenie, rýchle a pomalé“: rýchly intuitívny úsudok oproti pomalému premyslenému mysleniu „Systému 2“. Jev bol vytvorený na rýchle úzko zamerané úsudky.
Tri typy otázok
Otázka je jeden úsudok o stave, odpoveď je hodnota, ktorú kód porovnáva s prahom, triedi alebo odovzdáva ďalej.
- Choice — výber možnosti. Oddelenie pre požiadavku, kategória tovaru, jazyk úseku kódu. Možnosti tvorí slovník „možnosť → opis“, najviac 255 položiek. Odpoveď obsahuje zvolený
choice, pravdepodobnostiprobabilitiesvšetkých možností (ich súčet je 1) a istotuconfidence. Ak zoznam nemusí pokrývať všetky prípady, pridajte „iné“ alebo „nič z uvedeného“. - Score — hodnotenie na škále. Pozícia na usporiadanej škále, ktorú opisujete vy: závažnosť chyby, podráždenie zákazníka, úroveň zručnosti. Od 2 do 10 úrovní, od najnižšej po najvyššiu; model hodnotí každú úroveň osobitne bez toho, aby videl jej číslo a susedné úrovne. Odpoveď obsahuje
score(súčet čísel úrovní vynásobených ich pravdepodobnosťami, preto môže hodnota ležať medzi úrovňami),legends opismi úrovní,probabilitiesaconfidence. - Noul — áno alebo nie. Či je tvrdenie pravdivé. Odpoveď
noulje pravdepodobnosť „áno“ od 0 do 1: hodnota blízka 1 znamená isté „áno“, blízka 0 isté „nie“, blízka 0,5 znamená, že model váha. Samostatnéconfidenceneexistuje: jedno číslo úplne opisuje odpoveď. Voliteľnécriteriaspresňuje, čo sa má považovať za „áno“ a čo za „nie“.
Ako vyberať: známe možnosti bez poradia — choice; stupne spektra — score; čisté „áno/nie“, pri ktorom je dôležitá samotná pravdepodobnosť — noul. Noul 0,5 znamená rovnaké šance „áno“ a „nie“, nie „strednú úroveň“: mieru meria score. Z dvoch vhodných typov zvoľte ten, podľa ktorého kód koná ihneď: choice — vetvy, score — prah, noul — if.
Typy možno kombinovať v jednej požiadavke. Odpoveď je vždy obmedzená vašimi možnosťami a nezávisí od iných otázok: otázky možno pridávať a odoberať bez zmeny ostatných odpovedí.
Stav
Stav je to, čo model vyhodnocuje: správa zákazníka, úsek dokumentu, záznam z databázy alebo stav vašej aplikácie.
- Reťazec — keď ide o jeden text: správu, článok, úryvok.
- Objekt — pomenované polia, súvisiace záznamy, stav aplikácie. TypeSafe odporúča objekt pre väčšinu požiadaviek: každá časť má zrozumiteľný názov.
- Pole — postupnosť správ alebo záznamov.
Pripravujte ho ako podklady pre expertov: korešpondenciu, objednávku a pravidlá vrátenia vložte spolu, ak ich rozhodnutie vyžaduje porovnať. Obsah udržiavajte v stave, úsudky v otázkach. Ak sa otázka týka jednej časti stavu, uveďte v nej cestu k tejto časti v spätných apostrofoch, napríklad ticket.messages[0].text.
Ako klásť otázky
- Jeden rýchly úsudok na otázku. Dobrá otázka je taká, na ktorú znalý človek s potrebným kontextom odpovie za sekundu: „Je správa naliehavá?“. „Analyzuj správu a rozhodni, čo urobiť“ už vyžaduje pomalé uvažovanie a treba to rozdeliť na jednoduché otázky.
- Celá otázka patrí do
instructions. Kľúč otázky, napríkladrefund_requested, potrebuje iba váš kód a model ho nedostáva. - Všetky otázky k jednému stavu v jednej požiadavke. Model ich vyhodnocuje súbežne: podľa TypeSafe ďalšie otázky takmer nepredlžujú čas odpovede a stoja len svoje tokeny. Otázka „pre istotu“ stojí takmer nič — kód sám rozhodne, ktoré odpovede potrebuje.
- Zložitý úsudok po častiach. Namiesto „ohodnoť prihlášku startupu“ sa osobitne opýtajte na veľkosť trhu, technickú uskutočniteľnosť a odlišnosti od konkurencie a výsledok vypočítajte v kóde pomocou váh. Ak sa zmenia priority, zmeňte váhy, neprepisujte otázku.
- Závislé otázky v druhej požiadavke. Odpovede jednej požiadavky nie sú vzájomným kontextom. Druhá požiadavka je potrebná iba vtedy, keď ju bez prvej odpovede nemožno zostaviť: treba načítať údaje alebo vybrať možnosti ďalšej otázky.
- Dlhá otázka ako objekt.
instructionsacriteriasú zvyčajne reťazce, môžu však byť aj objektom alebo poľom: otázka je v jednom poli, údaje v ďalších. Takto možno pohodlne porovnať životopis so záznamami databázy jednou otázkou.
Istota
Pri choice a score hodnota confidence od 0 do 1 ukazuje, nakoľko je pravdepodobnosť sústredená na jednu odpoveď: 1 znamená všetku pravdepodobnosť na jednej možnosti, 0 rovnaké rozdelenie medzi všetky. Pri score znižuje susedná úroveň istotu menej než vzdialená. Pri noul je istotou samotná hodnota: čím ďalej je od 0,5, tým rozhodnejšia je odpoveď.
TypeSafe odporúča tri pásma:
- Vysoká istota — konajte automaticky.
- Stredná — konajte opatrne, napríklad požiadajte používateľa o potvrdenie.
- Nízka — odovzdajte prípad človeku, spresnite požiadavku alebo zapojte náhradný postup, napríklad výkonnejší model s uvažovaním.
Čím nákladnejšia je chyba, tým prísnejší má byť prah: pri nevratných úkonoch vyšší než pri čítaní. Odpoveď hovorí, čo vybrať, istota, či treba konať. Prahy prispôsobujte vlastným údajom porovnávaním istoty s presnosťou.
Ako budovať systém okolo Jev
Jev nie je navrhnutý pre agentov, ktorí sami vyberajú ďalší krok a v každom cykle môžu zísť z cesty, ale pre programy, v ktorých proces riadi kód a model odpovedá na úzko zamerané sémantické otázky. Osem krokov návrhu podľa TypeSafe:
- Všetko, čo možno urobiť kódom, robte kódom — spoľahlivo a lacno.
- Do stavu vložte iba to, čo potrebujú aktuálne otázky; čerstvé fakty získavajte z vlastnej znalostnej bázy, nie z pamäte modelu.
- Štruktúra v stave: vnorený JSON a v otázke cesta k potrebnému poľu v spätných apostrofoch, ak to znižuje nejednoznačnosť.
- Čo najužšie a najkonkrétnejšie otázky — podľa TypeSafe azda hlavné pravidlo: široká otázka skrýva viacero úsudkov za jednou odpoveďou.
- Štruktúra v otázkach: samotná otázka je krátka; vysvetlenia, príklady a hodnoty z vašej databázy patria do susedných polí objektu
instructionsalebocriteria, nie do jedného dlhého reťazca. - Veľa nezávislých otázok k jednému stavu v jednej požiadavke — viac úžitku za každý dolár.
- Odpovede spája kód: pravidlami, váženým súčtom alebo ako príznaky pre klasický model strojového učenia.
- Vetvenie podľa istoty: neisté prípady odovzdajte človeku alebo modelu s uvažovaním.
Jev nie je chat ani model na automatické dopĺňanie kódu a v agentovi na programovanie ho nemožno dosadiť namiesto jazykového modelu. Agent však môže pre vás napísať kód, ktorý volá Jev tam, kde je potrebná rýchla kalibrovaná odpoveď.
Kde sa používa
- Automatizácia na pozadí — rozhodnutia, ktoré sa spúšťajú miliónkrát bez človeka nablízku.
- Reálny čas — podľa TypeSafe sa väčšina požiadaviek vykoná približne za 100 ms: postačuje to na priebežné spracovanie aj rozhrania.
- Veľké dáta — vyhľadávanie v rozsiahlych korpusoch, označovanie záznamov práce agentov, príznaky pre predikcie.
- Kontrola iných modelov — požiadavky, získavanie údajov, uvažovanie, volania nástrojov: obchádzanie obmedzení, chyby citovania, vymyslené informácie.
- Vyhľadávanie a radenie — relevantnosť dvojice „požiadavka — kandidát“, nové usporiadanie výsledkov, výber kontextu.
- Vetvenie podľa zámeru — čo používateľ chce a ktorý spracovateľ je potrebný: jednoduchá logika, špecializovaný model alebo človek; téma, zložitosť a riziko určujú, ktorému jazykovému modelu odovzdať požiadavku.
- Ochranné kontroly — vstup, výstup a volania nástrojov jazykového modelu: vložené pokyny, porušenie pravidiel, únik osobných údajov.
- Podpora — téma a zámer požiadavky, naliehavosť, podráždenie, riziko odchodu zákazníka, žiadosť o vrátenie peňazí, front.
- Moderovanie — podľa pravidiel vašej platformy: toxicita, šikanovanie, spam, podvod, nebezpečné rady, osobné údaje; podľa závažnosti a istoty prepustiť, upozorniť, preveriť alebo zablokovať.
- Odvetvia — poistné udalosti, finančné vyšetrovania a KYC, zmluvy a reklama, produktové karty, nábor zamestnancov, obchodné kontakty, hry, riziká, predpoveď dopytu, znalostné grafy, vedecké prehľady, sémantické kontroly kódu v CI.
Charakteristiky
jev-latest— alias poslednej stabilnej verzie, aktuálne Jev 1.13; verzia, ktorá odpovedala, je v polimodel, napríkladjev-1.13.0. S novou verziou na ňu alias prejde a odpovede sa môžu zmeniť bez vašich úprav — sledujte toto pole, ak sú prahy nastavené pre konkrétnu verziu.- Kontext — 64K tokenov na požiadavku: stav a všetky otázky spolu; stav s najdlhšou otázkou najviac 32K. Model číta stav raz a voči nemu súbežne overuje všetky otázky.
- Vstup — iba text: reťazec, objekt JSON alebo pole textov. Obrázky, zvuk a video zatiaľ nie sú podporované — vopred ich preveďte na text.
- Jazyk — hlavným jazykom trénovania je angličtina a presnosť je v nej aktuálne najvyššia. Model prijíma aj iné jazyky vrátane čínštiny, japončiny a kórejčiny, presnosť je však nižšia — overte ju na vlastných údajoch.
- Ceny a účtovanie v Ailoot API — podmienky závisia od zvolenej metódy a sú uvedené na jej karte.
- Nastavenie — Jev sa nedotrénováva na údajoch zákazníka: vlastné podklady patria do
state, pravidlá odbornej oblasti doinstructionsacriteria. - Údaje — TypeSafe uvádza, že Jev sa netrénuje na požiadavkách a odpovediach zákazníkov.
Známe slabé miesta Jev 1.13
TypeSafe otvorene uvádza slabé miesta aktuálnej verzie a sľubuje mnohé opraviť v nasledujúcich. Model je rýchly, kalibrovaný a dobre posudzuje veci zdravým rozumom, ale:
- Číta doslovne. Odpovedá na napísanú otázku, nie na zamýšľanú: výhrady, negácie a nevyslovené podmienky chápe doslovne. Presnú podmienku a hraničné prípady píšte do
criteria; nevyhnutnú interpretáciu rozdeľte na dve doslovné otázky. - Nie je kalkulačka. Počítanie znakov, opakovaní a prvkov zoznamu je nespoľahlivé a chyba rastie s veľkosťou — počítajte v kóde a použite jednu otázku na kandidáta. Farby v hex alebo RGB model chápe horšie než názvy.
scoreje vhodné pre prah, nie pre presné číslo medzi úrovňami. - Dátumy a čas. Ktorý dátum je skorší, aký je medzi nimi odstup, či dátum patrí do obdobia — to je nespoľahlivé, najmä pri zmiešaných formátoch a relatívnych dátumoch. Časti dátumu získavajte cez choice (s možnosťou „neuvedené“) a porovnávajte v kóde.
- Nepriamosť. Dvojité negácie a otázky o vlastnosti vlastnosti znižujú presnosť. Píšte priamo a časti stavu uvádzajte podľa názvu.
- Nadbytočný obsah v stave. Nesúvisiaci text znižuje presnosť. Filtrujte v kóde, a ak to nejde, oddeľte nerelevantné otázkami noul.
- Nepriateľský text. Model predvolene neočakáva nástrahy v stave: vložený pokyn alebo text, ktorý spochybňuje vlastnú klasifikáciu, môže posunúť odpoveď. Píšte presné kritériá a pred spustením overte hraničné prípady.
- Rozpory. Ak
instructionsacriteriapožadujú odlišné veci — napríklad je pri noul „áno“ opísané ako „nie“ — presnosť klesá. Kritériá sú pokračovaním otázky. - Poradie možností. Model niekedy uprednostňuje prvú možnosť choice. Zmeňte poradie možností a overte, že odpoveď sa nemení.
- Generovanie. Jev nie je trénovaný na písanie textu. Na získanie údajov nájdite kandidátov regulárnym výrazom alebo generatívnym modelom a nech Jev vyberie správneho prostredníctvom choice.
Ailoot · System One POST /v1/systemone jev-latest
jev-latestÚvod
Rozhodovací model spoločnosti TypeSafe: nepíše text, ale odpovedá na typované otázky o texte alebo JSON — výber možnosti, hodnotenie na škále alebo „áno/nie“ s pravdepodobnosťami. Je vhodný na smerovanie, triedenie požiadaviek, moderovanie a skórovanie; všetky otázky jednej požiadavky vyhodnocuje súbežne.
- Povolené vstupy
- Text
- Výsledky
- structured
Dostupné v Ailoot · vstupy a metódy
Ailoot · System One POST /v1/systemone
- Vstup
text- Výstup
structured- Kontext
- 64 000 tokens
- Výstupný formát
- json
| Pole | Typ | Požiadavka | Hodnoty a limity | Predvolené |
|---|---|---|---|---|
Polemodel | Typstring | PožiadavkaPovinné | Hodnoty a limity jev-latest | Predvolené— |
Polestate | Typstring|object|array | PožiadavkaPovinné | Hodnoty a limity | Predvolené— |
Polequestions | Typobject | PožiadavkaPovinné | Hodnoty a limity Minimálny počet polí objektu: 1 | Predvolené— |
Polequestions.<id>.type | Typstring | PožiadavkaPovinné | Hodnoty a limity noul, choice, score | Predvolené— |
Polequestions.<id>.instructions | Typstring|object|array|null | PožiadavkaVoliteľné | Hodnoty a limity | Predvolené— |
Polequestions.<id>.criteria | Typobject|array|null | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: noul: voliteľné popisy true/false s povolenou hodnotou null; choice: objekt kritérií; score: neprázdne pole kritérií | Predvolené— |
Polestream | Typboolean|null | PožiadavkaVoliteľné | Hodnoty a limity false, null | Predvolené— |
Kombinácie vstupných podkladov
noul · Povinné: state, questions.<id>.type=noul
choice · Povinné: state, questions.<id>.type=choice, criteria object
score · Povinné: state, questions.<id>.type=score, nonemptycriteriaarray
Parametre a životný cyklus metódy
| Parameter | Špecifikácia |
|---|---|
Parametermaterial_types | Špecifikáciatext |
Parameterrequired | Špecifikáciamodel, state, questions |
Parameteroptional_controls | Špecifikácianull |
Parametercontent_type | Špecifikáciaapplication/json |
Životný cyklus: exact retained published method
Štruktúry metód a ID sú presné; možnosti dodávateľa sa posudzujú oddelene od prijatia požiadavky.
Cenník
Sadzby metód Ailoot
POST /v1/systemone- Vstup
- ≈0,000084 USD / 1K
- Výstup
- 0,00 USD / 1K
Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. Ako funguje rezervácia a vyúčtovanie →
Príklady požiadaviek
Ailoot · System One
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 customer message}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "jev-latest", "state": "", "questions": {"is_urgent": {"type": "noul", "instructions": "Does the supplied customer message express urgency?"}}}')
f=Path(os.environ["AILOOT_TEXT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 source material")
text=f.read_text(encoding="utf-8")
if not text.strip():raise SystemExit("Source material must contain text")
p["state"]=text
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/systemone \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("result.json").read_text()),ensure_ascii=False,indent=2))
PY_RESULT
Prijať a uložiť výsledky
Ailoot · System One
json
Uchovať všetky dokončené výsledky
Uložte každú úplnú vrátenú odpoveď, súbor a časť obsahu.
Zachovajte každú odpoveď podľa dodaného ID otázky, pravdepodobnosti a legendy; vzorec miery istoty používajúci n vyžaduje n>1, bez tvrdenia o pravidle API určujúcom minimálny počet možností.
Polia odpovede
| Pole | Typ |
|---|---|
Poleanswers.<id>.type | Typstring |
Poleanswers.<id>.noul | Typnumber |
Poleanswers.<id>.choice | Typstring |
Poleanswers.<id>.score | Typnumber |
Poleanswers.<id>.confidence | Typnumber |
Poleanswers.<id>.probabilities | Typobject |
Poleanswers.<id>.legend | Typobject |
Poleusage | Typobject |
Chyby a ďalšie kroky
| Odpoveď | Podmienka | Ďalší krok |
|---|---|---|
Odpoveď400 · invalid_request_error | PodmienkaNeplatné povinné polia, reprezentácia materiálu alebo hodnota parametra | Ďalší krokPred novou požiadavkou na vytvorenie opravte uvedené polia. |
Aliasy
Aliasy modelov
Ailoot jev-latest
Aliasy ciest metód
Použite cesty metód uvedené vyššie.
Súvisiace ID na volanie
FAQ · jev-latest
- Aké vstupy a výsledky sú dostupné?
POST /v1/systemone·jev-latest:text→structured- Aké polia používa požiadavka?
POST /v1/systemone·jev-latest:model,state,questions,stream- Aké limity platia?
POST /v1/systemone·jev-latest:ctx:64000