A Pydantic AI már Jevvel is megmutatja, hogyan döntött az ügynök

A Pydantic AI 2.50.0 támogatja a TypeSafe Jev döntési modelljét, amely szövegből strukturált válaszokat választ ki generált szöveg nélkül. A Pydantic Logfire új nézete azt is megmutatja, milyen lehetőségeket mérlegelt az ügynök, és milyen valószínűségeket rendelt hozzájuk.
- A Pydantic AI 2.50.0 támogatja a TypeSafe Jev döntési modelljét.
- Jev strukturált válaszokat és hozzájuk tartozó valószínűségeket ad.
- A Logfire decide spanjei a kérdéseket, válaszokat és útvonalakat is rögzítik.
- A Live view Classifier output panelje részletesen megmutatja a döntési folyamatot.
- Jev a Pydantic Evalsben és a Pydantic AI Gatewayen is használható.
Strukturált döntések szöveggenerálás helyett
A Pydantic szeptember 29-i bejelentése szerint a Jev olyan feladatokra készült, amelyeknél egy ügynöknek nem kell hosszú választ írnia. Ilyen lehet egy támogatási jegy felelős csapathoz rendelése, egy parancs biztonságosságának eldöntése, vagy egy igen-nem válasz, kategória és pontszám kiválasztása.
A TypeSafe Jev modelljének használatakor az ügynök kimeneti típusának minden mezője egy kérdéssé válik. A mező leírása adja a kérdés szövegét, a vizsgálandó anyag pedig az ügynöknek átadott prompt. Az összes mező egyetlen kérésben küldhető el, és a modell minden válaszhoz valószínűséget rendel. Generált szöveget nem kell feldolgozni.
A Pydantic példájában egy támogatási jegyet kell osztályozni. A modell arra jut, hogy sürgős választ igényel, és a számlázási csapathoz tartozik: urgent=True, area='billing'. A támogatáshoz a pydantic-ai-slim[typesafe,logfire] csomag telepítése, valamint a TYPESAFE_API_KEY és LOGFIRE_TOKEN beállítása szükséges.
A kimeneti típus határozza meg a kérdéseket
A Pydantic AI dokumentációja szerint a bool típus igen-nem döntéshez, a Literal vagy Enum egyetlen lehetőség kiválasztásához használható. A 0 és 1 közé korlátozott float maga lehet a valószínűség, az egyes szintekhez leírást tartalmazó IntEnum pedig értékelési skálaként szolgálhat.
Unió használatakor Jev először kiválasztja, melyik kimeneti típus illik a szöveghez, majd kitölti annak mezőit. A Jev által nem kezelhető mező, például egy szabad formátumú str, még a kérés elküldése előtt UserError hibát okoz. Ha ilyen mező egy unió egyik tagjában szerepel, Jev kiválaszthatja ezt a tagot, a FallbackModel pedig átadhatja a lépést egy nyelvi modellnek.
Az agent modellnevének módosításával ugyanaz a Pydantic AI-ügynök nyelvi modellen is futtatható. Így ugyanazon saját adatokon lehet összehasonlítani a két megközelítést, a kód átírása nélkül.
A Logfire megmutatja, mi történt a háttérben
A Pydantic szerint a korábbi csevegési nyomvonal csak a végső kimenetet rögzítette. Ez nem mutatta meg, mennyire volt biztos a modell a döntésében, milyen alternatívákat mérlegelt, és milyen útvonalon töltötte ki a kimenetet.
A Pydantic AI 2.50.0 két változást tartalmaz ehhez. A DecisionModel közös alaposztályt ad a Decisions protokollt használó modelleknek, a TypeSafeModel pedig erre épülő adapterré válik. Emellett minden ilyen kéréshez a chat span alatt egy decide span is létrejön. Ez rögzíti a kérdéseket, a válaszokat és valószínűségeiket, az alkalmazott küszöbértékeket, valamint az éppen kitöltött útvonalat.
A Logfire Live view felületén egy ügynökfutás, modellfutás vagy decide span kiválasztásakor az Agent Run nézetben megjelenik a Classifier output panel. Az igen-nem válaszoknál látható a valószínűség, a választási listáknál a kiválasztott elem és az alternatívák, a rubric típusú értékelésnél pedig az egyes szintek valószínűsége.
A Pydantic példája szerint egy 1,6-os súlyossági pontszám mögött 65 százalékos, „nem tudja végezni a munkáját” értékelés, 30 százalékos, „rosszul működik” értékelés és 5 százalékos, „bosszantó” értékelés állhat. A döntési nézet ugyanakkor tiszteletben tartja a spanok include_content beállítását. Kikapcsolt tartalom esetén a kérdéstípusok és az útvonalak láthatók, a szöveg és a válaszok nem.
Evals és további döntési modellek
A Jev a Pydantic Evals rendszerében értékelőként is használható, és a Pydantic AI Gatewayen keresztül is elérhető saját TypeSafe-kulccsal. A DecisionModel emellett megkönnyíti új Decisions-háttérrendszerek bekötését, mivel az integrációhoz a szállítási réteg lefordítása szükséges, a döntési nyomvonalak és a Logfire-panel pedig ezekkel is együtt használható.
A Pydantic azt javasolja, hogy a fejlesztők ugyanazon saját adatokon futtassák a Jevet és egy nyelvi modellt, majd vizsgálják meg a valószínűségeket. Ha egy döntésre a rendszer elutasítással reagál, miközben a fejlesztő szerint működnie kellene, a projekt hibajegy nyitását kéri.
Pydantic: Running Pydantic AI agents on Jev, and seeing what they decided


