jev-latest
A TypeSafe döntési modellje: szöveg írása helyett szövegről vagy JSON-ról feltett, típusozott kérdésekre válaszol — választással, skálás értékeléssel vagy valószínűségi „igen/nem” válasszal. Útválasztásra, megkeresések rendezésére, moderálásra és pontozásra használható; egy kérés összes kérdését párhuzamosan értékeli.
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
A Jev a TypeSafe zászlóshajó-modellje és az új System One osztály első modellje. Nem szöveget ír, hanem gyors döntéseket hoz, amelyeket egy program közvetlenül felhasználhat: meg kell adni az állapotot (state) — szöveget vagy JSON-t — és a kérdések készletét, a válasz pedig típusozott értékeket tartalmaz kalibrált valószínűségekkel.
A nyelvi modellek embereknek írnak szavakat, a Jev viszont a TypeSafe szerint közelebb áll a kódhoz: a válasz rögtön a kódnak megfelelő formában érkezik, nagy sebességgel, és egyetlen érték sem esik a megadott lehetőségeken kívülre. A modellt úgy tervezték, hogy ismételt kéréseknél is stabil válaszokat adjon.
Miben különbözik a System One a nyelvi modelltől?
- Nem generál. A Jev nem ír felhasználói válaszokat, kódot vagy magyarázatot a következtetési folyamatáról. A lehetséges válaszokat a felhasználó adja meg a három kérdéstípus egyikével.
- Kalibrált döntésekre tanították. A TypeSafe RLCD-vel (Reinforcement Learning for Calibrated Decisions) tanítja a modellt: a valószínűségeket a tényleges kimenetelekhez igazítják, így azok a bizonytalanságot tükrözik. Sok 0,8 valószínűségű válasz közül körülbelül 80%-nak kell helyesnek lennie. A kalibráltság nagy mintára vonatkozó tulajdonság, nem az egyes válaszok helyességének garanciája.
- Más a tanítás célja. A chatmodelleket úgy tanítják, hogy az emberek kedveljék őket (RLHF); a TypeSafe megfigyelése szerint ez megfelelési kényszert és magabiztosan előadott hibákat ösztönöz. Az RLHF egyik társszerzője, Diogo Almeida a TypeSafe társalapítója.
A név Daniel Kahneman Gyors és lassú gondolkodás című könyvének „1. rendszerére” utal: a gyors, intuitív ítélet áll szemben a „2. rendszer” lassú, megfontolt gondolkodásával. A Jev gyors, szűk körű ítéletekre készült.
Három kérdéstípus
Egy kérdés egyetlen ítéletet kér az állapotról, a válasz pedig olyan érték, amelyet a kód küszöbbel összevethet, rendezhet vagy továbbadhat.
- Choice — választás a lehetőségek közül. A megkeresést kezelő részleg, egy termék kategóriája vagy egy kódrészlet nyelve. A lehetőségek „változat → leírás” szótárt alkotnak, legfeljebb 255 elemmel. A válasz tartalmazza a kiválasztott
choiceértéket, az összes lehetőségprobabilitiesvalószínűségét (összegük 1) és aconfidencebizonyossági értéket. Ha a lista nem fedhet le minden esetet, érdemes „egyéb” vagy „egyik sem” lehetőséget hozzáadni. - Score — skálás értékelés. Hely egy rendezett skálán, amelyet a felhasználó ír le: a hiba súlyossága, az ügyfél elégedetlensége vagy a készségszint. A skála 2 és 10 közötti szintet tartalmazhat, az alacsonytól a magasig; a modell minden szintet külön értékel, anélkül hogy látná annak sorszámát vagy a szomszédait. A válaszban szerepel a
score(a szintek sorszámának a valószínűségeikkel súlyozott összege, ezért az érték két szint közé is eshet), a szintek leírását tartalmazólegend, valamint aprobabilitiesés aconfidence. - Noul — igen vagy nem. Igaz-e az állítás? A
noulválasz az „igen” valószínűsége 0 és 1 között: az 1 körüli érték biztos „igen”, a 0 körüli biztos „nem”, a 0,5 körüli pedig bizonytalanságot jelez. Különconfidencenincs: egyetlen szám teljesen leírja a választ. Az opcionáliscriteriapontosítja, mi számít „igennek” és mi „nemnek”.
Választás: ismert, nem rendezett lehetőségekhez choice; egy tartomány lépcsőihez score; tiszta „igen/nem” kérdéshez, ahol maga a valószínűség fontos, noul. A noul 0,5 egyenlő esélyű „igent” és „nemet” jelent, nem „közepes szintet”: a mértéket a score méri. Két megfelelő típus közül azt érdemes választani, amellyel a kód közvetlenül cselekedhet: choice — elágazások, score — küszöb, noul — if.
A típusok egy kérésben keverhetők. A válasz mindig a megadott lehetőségekre korlátozódik, és nem függ a többi kérdéstől: kérdések hozzáadhatók és eltávolíthatók a többi válasz megváltoztatása nélkül.
Állapot
Az állapot az, amit a modell értékel: ügyfélüzenet, dokumentumrészlet, adatbázisrekord vagy az alkalmazás állapota.
- Karakterlánc — ha egyetlen szöveg van: üzenet, cikk vagy részlet.
- Objektum — elnevezett mezők, kapcsolódó rekordok vagy az alkalmazás állapota. A TypeSafe a legtöbb kéréshez objektumot ajánl, mert minden résznek egyértelmű neve van.
- Tömb — üzenetek vagy rekordok sorozata.
Szakértőknek összeállított anyagként érdemes előkészíteni: a levelezés, a rendelés és a visszatérítési szabályok kerüljenek egy helyre, ha a döntéshez össze kell vetni őket. A tartalom az állapotba, az ítéletek a kérdésekbe kerüljenek. Ha a kérdés az állapot egy részére vonatkozik, abban backtickek között kell megadni az elérési utat, például ticket.messages[0].text.
Kérdések megfogalmazása
- Egy gyors ítélet kérdésenként. Jó kérdés az, amelyre a szükséges kontextust ismerő ember egy másodperc alatt válaszolhat: „Van sürgősség az üzenetben?”. A „Vizsgáld meg az üzenetet, és döntsd el, mit tegyünk” már lassú következtetés, ezért egyszerű kérdésekre kell bontani.
- A teljes kérdés az
instructionsmezőbe kerüljön. A kérdés kulcsa, példáulrefund_requested, csak a saját kódhoz szükséges, a modell nem kapja meg. - Az egy állapothoz tartozó összes kérdés egy kérésbe kerüljön. A modell párhuzamosan értékeli őket: a TypeSafe szerint a további kérdések alig növelik a válaszidőt, és csak a saját tokenjeikbe kerülnek. Egy „biztos, ami biztos” kérdés szinte ingyen van — a kód maga dönti el, mely válaszokra van szükség.
- Összetett ítéletet részekre bontva. Az „értékeld a startup kérelmét” helyett külön érdemes rákérdezni a piac méretére, a műszaki megvalósíthatóságra és a versenytársaktól való eltérésekre, a végeredményt pedig súlyokkal kiszámítani a kódban. Ha változnak a prioritások, a súlyokat kell módosítani, nem a kérdést átírni.
- Függő kérdések második kérésben. Egy kérés válaszai nem szolgálnak egymás kontextusául. Második kérésre csak akkor van szükség, ha az első válasz nélkül nem állítható össze: például adatot kell betölteni, vagy ki kell választani a következő kérdés lehetőségeit.
- Hosszú kérdés objektumként. Az
instructionsés acriteriaáltalában karakterlánc, de objektum vagy tömb is lehet: a kérdés az egyik mezőben, az adatok a többiben szerepelnek. Így egyetlen kérdéssel kényelmesen összevethető egy önéletrajz az adatbázisrekordokkal.
Bizonyosság
Choice és score esetében a 0 és 1 közötti confidence azt mutatja, mennyire összpontosul a valószínűség egy válaszra: 1 esetén teljesen egy lehetőségre, 0 esetén egyenlően az összesre. Score esetében a szomszédos szint kevésbé csökkenti a bizonyosságot, mint egy távoli. Noul esetében maga az érték a bizonyosság: minél távolabb van 0,5-től, annál határozottabb a válasz.
A TypeSafe három tartományt ajánl:
- Magas bizonyosság — automatikus végrehajtás.
- Közepes — óvatos végrehajtás, például megerősítés kérése a felhasználótól.
- Alacsony — az eset átadása embernek, a kérés pontosítása vagy tartalék út bekapcsolása, például egy erősebb, következtető modell használata.
Minél költségesebb a hiba, annál szigorúbb a küszöb: visszafordíthatatlan műveleteknél magasabb, mint olvasásnál. A válasz azt mondja meg, mit válasszunk, a bizonyosság pedig azt, érdemes-e cselekedni. A küszöböket saját adatokon kell meghatározni, a bizonyosságot a pontossággal összevetve.
Hogyan épüljön rendszer a Jev köré?
A Jev nem olyan ügynökökhöz készült, amelyek maguk választják ki a következő lépést, és minden körben eltévedhetnek, hanem olyan programokhoz, amelyekben a folyamatot a kód vezérli, a modell pedig szűk szemantikai kérdésekre válaszol. A TypeSafe nyolc tervezési lépése:
- Amit kóddal el lehet végezni, azt kóddal kell megoldani — megbízhatóan és olcsón.
- Az állapotba csak az kerüljön, amire az aktuális kérdésekhez szükség van; a friss tények saját tudásbázisból, ne a modell emlékezetéből származzanak.
- Szerkezet az állapotban: beágyazott JSON, a kérdésben pedig a szükséges mező elérési útja backtickek között, ha ez csökkenti a kétértelműséget.
- A lehető legszűkebb és legkonkrétabb kérdések — a TypeSafe szerint talán ez a legfontosabb szabály: egy tág kérdés több ítéletet rejt egy válasz mögé.
- Szerkezet a kérdésekben: maga a kérdés rövid; a magyarázatok, példák és saját adatbázisból származó értékek az
instructionsvagy acriteriaobjektum szomszédos mezőiben, ne egy hosszú karakterláncban legyenek. - Sok független kérdés ugyanahhoz az állapothoz, egyetlen kérésben — több haszon minden dollárért.
- A válaszokat a kód egyesíti: szabályokkal, súlyozott összeggel vagy egy hagyományos gépi tanulási modell jellemzőiként.
- Elágazás a bizonyosság szerint: a bizonytalan esetek emberhez vagy következtető modellhez kerüljenek.
A Jev nem chatmodell és nem kódkiegészítő modell, ezért programozó ügynökben nem helyettesíthet nyelvi modellt. Egy ügynök viszont megírhatja azt a kódot, amely ott hívja meg a Jevet, ahol gyors, kalibrált válasz szükséges.
Felhasználási területek
- Háttérautomatizálás — emberi jelenlét nélkül milliószor lefuttatott döntések.
- Valós idő — a TypeSafe szerint a kérések többsége körülbelül 100 ms alatt teljesül: ez elegendő menet közbeni feldolgozáshoz és felületekhez.
- Nagy adathalmazok — keresés hatalmas korpuszokban, ügynökök munkanaplóinak címkézése, előrejelzési jellemzők.
- Más modellek ellenőrzése — kérések, kinyert adatok, következtetések és eszközhívások: korlátozások megkerülése, idézési hibák, kitalált állítások.
- Keresés és rangsorolás — „kérés — jelölt” párok relevanciája, újrarangsorolás, kontextusválogatás.
- Elágazás a szándék szerint — mit szeretne a felhasználó, és melyik kezelő szükséges: egyszerű logika, szakmodell vagy ember; a téma, az összetettség és a kockázat határozza meg, melyik nyelvi modell kapja a kérést.
- Védelmi ellenőrzések — a nyelvi modell bemenete, kimenete és eszközhívásai: beágyazott utasítások, szabálysértések, személyes adatok kiszivárgása.
- Ügyféltámogatás — a megkeresés témája és szándéka, sürgősség, elégedetlenség, lemorzsolódási kockázat, visszatérítési kérés és sorba állítás.
- Moderálás — a saját platform szabályai alapján: mérgező tartalom, zaklatás, spam, csalás, veszélyes tanácsok és személyes adatok; súlyosság és bizonyosság alapján engedélyezés, figyelmeztetés, ellenőrzés vagy blokkolás.
- Ágazatok — biztosítási esetek, pénzügyi vizsgálatok és KYC, szerződések és reklám, termékkártyák, toborzás, érdeklődők, játékok, kockázatok, kereslet-előrejelzés, tudásgráfok, tudományos áttekintések és a kód szemantikai ellenőrzése CI-ban.
Jellemzők
jev-latest— a legújabb stabil verzió álneve, jelenleg Jev 1.13; a válaszoló verzió amodelmezőben látható, példáuljev-1.13.0. Új verzió megjelenésekor az álnév arra vált, és a válaszok saját módosítás nélkül is megváltozhatnak — figyelni kell ezt a mezőt, ha a küszöbök egy adott verzióhoz igazodnak.- Kontextus — kérésenként 64K token: az állapot és az összes kérdés együtt; az állapot a leghosszabb kérdéssel együtt legfeljebb 32K. A modell egyszer olvassa az állapotot, és az összes kérdést párhuzamosan ellenőrzi vele szemben.
- Bemenet — kizárólag szöveg: karakterlánc, JSON-objektum vagy szövegtömb. Képek, hang és videó egyelőre nem támogatottak — előbb szöveggé kell alakítani őket.
- Nyelv — a tanítás fő nyelve az angol, jelenleg ezen a legnagyobb a pontosság. A modell más nyelveket, köztük kínait, japánt és koreait is fogad, de kisebb pontossággal — saját adatokon kell ellenőrizni.
- Árak és számlázás az Ailoot API-ban — a feltételek a választott metódustól függnek, és annak kártyáján szerepelnek.
- Beállítás — a Jevet nem finomhangolják az ügyfél adataival: a saját anyagok a
state, a szakterületi szabályok azinstructionsés acriteriamezőbe kerüljenek. - Adatok — a TypeSafe közlése szerint a Jevet nem tanítják az ügyfelek kérésein és válaszain.
A Jev 1.13 ismert gyengeségei
A TypeSafe nyíltan felsorolja az aktuális verzió gyengeségeit, és sok javítást ígér a következőkre. A modell gyors, kalibrált és józan ítéletekre képes, de:
- Szó szerint olvas. A leírt kérdésre válaszol, nem a szándékoltra: a fenntartásokat, tagadásokat és kimondatlan feltételeket szó szerint érti. A pontos feltételt és a határeseteket a
criteriamezőben kell megadni; az elkerülhetetlen értelmezést két szó szerinti kérdésre kell bontani. - Nem számológép. A karakterek, ismétlődések és listaelemek számlálása megbízhatatlan, a hiba a mérettel nő — ezt kódban kell elvégezni, jelöltenként egy kérdéssel. A hex vagy RGB formájú színeket a modell kevésbé érti, mint a színneveket. A
scoreküszöbhöz megfelelő, de a szintek közötti pontos számhoz nem. - Dátumok és idő. Melyik dátum korábbi, mennyi idő van köztük, beleesik-e egy időszakba — ezek megbízhatatlanok, különösen vegyes formátumoknál és relatív dátumoknál. A dátum részeit choice kérdéssel érdemes kinyerni („nincs megadva” lehetőséggel), az összehasonlítást pedig kódban elvégezni.
- Közvetettség. A kettős tagadás és egy tulajdonság tulajdonságára vonatkozó kérdés csökkenti a pontosságot. Közvetlenül kell fogalmazni, és név szerint megadni az állapot részeit.
- Felesleges tartalom az állapotban. Az oda nem tartozó szöveg rontja a pontosságot. Kódban kell szűrni, ha ez nem lehetséges, noul kérdésekkel kiszűrni a nem releváns részeket.
- Ellenséges szöveg. A modell alapértelmezésben nem számít csapdákra az állapotban: egy beágyazott utasítás vagy a saját besorolásával vitatkozó szöveg eltolhatja a választ. Pontos kritériumokat kell írni, és indulás előtt ellenőrizni a határeseteket.
- Ellentmondások. Ha az
instructionsés acriteriamást kér — például a noul „igenje” „nemként” van leírva —, csökken a pontosság. A kritériumok a kérdés folytatását jelentik. - A lehetőségek sorrendje. A modell néha a choice első lehetőségéhez húz. Érdemes átrendezni őket, és ellenőrizni, hogy a válasz nem változik-e.
- Generálás. A Jevet nem tanították szövegírásra. Adatkinyeréshez a jelölteket reguláris kifejezéssel vagy generatív modellel kell megkeresni, a Jev pedig choice segítségével válassza ki a megfelelőt.
Ailoot · System One POST /v1/systemone jev-latest
jev-latestKezdő lépések
A TypeSafe döntési modellje: szöveg írása helyett szövegről vagy JSON-ról feltett, típusozott kérdésekre válaszol — választással, skálás értékeléssel vagy valószínűségi „igen/nem” válasszal. Útválasztásra, megkeresések rendezésére, moderálásra és pontozásra használható; egy kérés összes kérdését párhuzamosan értékeli.
- Elfogadott bemenetek
- Szöveg
- Eredmények
- structured
Elérhető az Ailootban · bemenetek és metódusok
Ailoot · System One POST /v1/systemone
- Bemenet
text- Kimenet
structured- Kontextus
- 64 000 tokens
- Kimeneti formátum
- json
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok jev-latest | Alapértelmezett— |
Mezőstate | Típusstring|object|array | KövetelményKötelező | Értékek és korlátok | Alapértelmezett— |
Mezőquestions | Típusobject | KövetelményKötelező | Értékek és korlátok Minimális objektummezőszám: 1 | Alapértelmezett— |
Mezőquestions.<id>.type | Típusstring | KövetelményKötelező | Értékek és korlátok noul, choice, score | Alapértelmezett— |
Mezőquestions.<id>.instructions | Típusstring|object|array|null | KövetelményOpcionális | Értékek és korlátok | Alapértelmezett— |
Mezőquestions.<id>.criteria | Típusobject|array|null | KövetelményOpcionális | Értékek és korlátok Feltételek: noul: opcionális, null értéket elfogadó true/false leírások; choice: feltételobjektum; score: nem üres feltételtömb | Alapértelmezett— |
Mezőstream | Típusboolean|null | KövetelményOpcionális | Értékek és korlátok false, null | Alapértelmezett— |
Bemeneti anyagok kombinációi
noul · Kötelező: state, questions.<id>.type=noul
choice · Kötelező: state, questions.<id>.type=choice, criteria object
score · Kötelező: state, questions.<id>.type=score, nonemptycriteriaarray
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétermaterial_types | Szerződéstext |
Paraméterrequired | Szerződésmodel, state, questions |
Paraméteroptional_controls | Szerződésnull |
Paramétercontent_type | Szerződésapplication/json |
Életciklus: exact retained published method
A metódusok szerkezete és azonosítói pontosak; a beszállítói képesség különbözik a kérelmek befogadásától.
Díjcsomagok
Ailoot-metódusok díjai
POST /v1/systemone- Bemenet
- ≈0,000084 USD / 1K
- Kimenet
- 0,00 USD / 1K
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
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
Eredmények fogadása és mentése
Ailoot · System One
json
Őrizzen meg minden elkészült eredményt
Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.
Őrizzen meg minden választ a megadott kérdésazonosítóval, valószínűséggel és jelmagyarázattal együtt; az n értékét használó megbízhatósági képlethez n>1 szükséges, de ez nem állít az API számára minimális választási darabszámot.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőanswers.<id>.type | Típusstring |
Mezőanswers.<id>.noul | Típusnumber |
Mezőanswers.<id>.choice | Típusstring |
Mezőanswers.<id>.score | Típusnumber |
Mezőanswers.<id>.confidence | Típusnumber |
Mezőanswers.<id>.probabilities | Típusobject |
Mezőanswers.<id>.legend | Típusobject |
Mezőusage | Típusobject |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételÉrvénytelen kötelező mezők, az anyag érvénytelen reprezentációja vagy érvénytelen paraméterérték | Következő lépésJavítsa a jelzett mezőket egy új létrehozási kérés előtt. |
Álnevek
Modell álnevei
Ailoot jev-latest
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
FAQ · jev-latest
- Milyen bemenetek és eredmények érhetők el?
POST /v1/systemone·jev-latest:text→structured- Mely mezőket használja a kérés?
POST /v1/systemone·jev-latest:model,state,questions,stream- Milyen korlátok érvényesek?
POST /v1/systemone·jev-latest:ctx:64000