Kuidas hinnata AI-agente: testikomplektid, hindajad ja regressioonikontrollid

Praktiline kuuesammuline juhend AI-agentide hindamiseks: alates edukuse määratlemisest ja tegelike tõrgete põhjal testikomplektide loomisest kuni hindajate valimise, regressioonikontrollide käitamise ja tootmiskeskkonnas jälgimiseni.

An AI agent evaluation detects an unapproved spare-part recommendation and verifies the corrected result after a fix.

Iga suurepärase AI-toote taga on tugev AI-agendi hindamisprotsess (ingl evals), mis tuvastab vead varakult ja tagab agendi nõuetekohase toimimise. Hindamised on kriitilise tähtsusega AI-agentidele, kes teevad kellegi nimel kõrge riskiga toiminguid, näiteks raha tagastamist.

Sellise protsessi loomine nõuab mõningaid tehnilisi teadmisi ja andmeanalüüsi oskusi. Kuid see pole kaugeltki nii hirmutav ega keeruline, kui võib tunduda. Et aidata sul alustada, oleme kirja pannud kuus praktilist sammu AI-agentide hindamiseks ning levinud väärarusaamad, mis protsessi rikuvad.

Mida tähendab AI-agendi hindamine?

AI-agendi hindamine tähendab selle analüüsimist, kui hästi agent ülesandeid õigesti täidab ja kas tema otsused vastavad organisatsiooni nõuetele. Praktikas on AI-agendi hindamised (ingl evals) konkreetsed mõõdikud, mis aitavad organisatsioonidel kindlaks teha, kas agent töötab oma ettenähtud rollis piisavalt usaldusväärselt.

Kujuta ette tootmisettevõtte AI-ostuagenti, mis kontrollib varuosade laoseisu ja koostab täiendustellimusi. Kui heakskiidetud osa pole saadaval või tarnija teave on aegunud, kas agent annab probleemist märku või soovitab heaks kiitmata asendusosa?

Ja kui muudad selle probleemi lahendamiseks agendi süsteemiviipa, kuidas sa tead, et pole tekitanud uut probleemi?

Ilma hindamiseta jääb tootejuhtidele sisuliselt üle vaid oletada. Seega annavad hindamised tagasisidet, mille abil mõõta jõudlust, märgata korduvaid probleeme ja testida muudatusi suurema kindlusega.

Seejuures võib agendi hindamine vaadelda käivituse mitut aspekti:

  • Lõpptulemuse kvaliteet
  • Teave, mida agent kasutas
  • Tööriistad, mida agent välja kutsus
  • Kas agent järgis tema käitumist reguleerivaid reegleid

Levinud AI-agendi hindamismõõdikud

Hindamised põhinevad kvalitatiivsetel ja kvantitatiivsetel andmetel. Kvalitatiivne hindamine aitab mõista, mis toimub ja miks, sealhulgas agendi otsuste käsitsi ülevaatamise kaudu. Kvantitatiivne hindamine muudab need tähelepanekud mõõdetavateks signaalideks, näiteks loendades konkreetsete tõrkeliikide esinemissagedust või arvutades ülesannete edukuse määra.

Siin on AI-agendi hindamise põhimõõdikute loetelu:

  • Ülesande edukus näitab, kas agent saavutas soovitud tulemuse; tavaliselt mõõdetakse seda kehtivaid tulemusi andnud käivituste protsendina.
  • Toimingute õigsus näitab, kas agent kasutas tööriistu asjakohaselt, valis kehtivad argumendid ja järgis juurdepääsuõigusi.
  • Vastuse kvaliteet hindab, kas lõplik väljund on täpne, täielik ja kasulik. See võib hõlmata faktilist õigsust, juhiste järgimist ja seda, kas agent põhjendab oma otsuseid olemasoleva teabega.
  • Usaldusväärsus mõõdab järjepidevust korduvatel katsetel, erinevate sisendite ja piirjuhtumite korral.
  • Kulu ja latentsus mõõdavad eduka tulemuse saavutamiseks vajalikke ressursse, sealhulgas täitmisaega, tokenikulu ja tööriistakutseid.

Olenevalt sellest, mida mõõdad, saavad hindamised hinnata agendi jõudlust otsast lõpuni, selle täitmistrajektoori või üksikuid komponente, näiteks tööriistakutseid ja teabeotsingu samme.

1. samm: määratle, milline on agendi edukas käivitus

Esmalt kirjelda selgesõnaliselt, mida agent peaks saavutama — tootenõuded. Kõlab ilmselgena, kuid võib olla üllatavalt keeruline. Sellel on isegi nimi: spetsifikatsioonilõhe.

Meie vanemandmeteadlane Andrey Khomutov soovitab sellele läheneda nii:

„Alusta kahest küsimusest: „Mida lugeda töö tehtuks?“ ja „Mis muudaks näiliselt eduka käivituse vastuvõetamatuks?“

Agentide puhul tähendab see tehnilisest vaatenurgast nii tulemuse kui ka selle kontrollimist, kuidas agent selleni jõudis.“

Agent võib anda õige vastuse, kasutades lekkinud vastusevõtit, või teha ülesande täitmise käigus volitamata toiminguid. Khomutov juhib tähelepanu, et vastuste lekkimine ja ohtlikud toimingud hindamise ajal on konkreetsed põhjused, miks ei tohiks hinnata ainult lõplikku vastust.

„Eeldan, et trajektoori kontrollimisest saab agendi hindamiskomplektide standardne osa, mitte midagi, mida teeme ainult siis, kui tulemus tundub kahtlane,“ lisab ta.

Seejärel kaasa valdkonnaekspert, kes edukriteeriumid üle kontrolliks. Valdkonna praktiliste teadmistega inimesed oskavad öelda, kas AI-agendile seatud tingimused peegeldavad edukat tulemust.

2. samm. Koosta testikomplekt päris ülesannetest ja tõrgetest

Uuri agendi tegelikku käitumist, et mõista, milline on hea ja halb sooritus. Hoidu kiusatusest alustada kümnete testide genereerimisega ainult selle põhjal, mis sinu arvates võiks valesti minna.

Parlance Labi ML-insener Hamel Husain ja ML-süsteemide ning rakendusliku tehisintellekti hindamise uurija Shreya Shankar soovitavad alustada veaanalüüsist — masinõppest ja andmeteadusest laenatud meetodist. Protsess algab agendi täitmisjälgede kvalitatiivse analüüsiga — need on kirjed, mis näitavad kasutaja sisendit, tööriistakutseid, hangitud teavet ja agendi väljundit.

  1. Vaata üksikud jäljed läbi ja märgi vead üles (avatud kodeerimine). Lase valdkonnaeksperdil agendi käivitusi uurida ja kirja panna lühikesed tähelepanekud selle kohta, mis valesti läks. Keskendu esimesele olulisele veale.
  2. Rühmita tähelepanekud tõrkeliikideks (telgkodeerimine). Kui märkmeid on piisavalt, kasuta LLM-i, et see pakuks sarnastele vigadele kategooriaid. Need võivad hõlmata ühildumatute osade soovitamist, ebatäpset laoseisu päringut ja ebaõnnestunud üleandmist inimesele.
  3. Loenda esinemised. Määra iga tähelepanek kategooriasse ja arvuta seejärel tabelarvutuse või liigendtabeli abil, kui sageli iga tõrkeliik esineb.
  4. Sea lahendamist vajavad probleemid tähtsuse järjekorda, arvestades nii sagedust kui ka tõsidust.
  5. Muuda olulised tõrked testjuhtumiteks. Salvesta asjakohane sisend, algtingimused, oodatav tulemus ja hindamiskriteeriumid, et agenti saaks sama stsenaariumiga uuesti testida.

Kui palju jälgi peaksid uurima? Umbes 100, kuid maagilist arvu pole. Lõpeta varem, kui jõuad teoreetilise küllastumiseni: punktini, kus täiendavate jälgede ülevaatamine ei too enam esile olulisi uusi tõrkemustreid.

Kas rakendus pole veel avaldatud? Sünteetilised näited aitavad koostada esialgse testikomplekti, kuid niipea, kui päris kasutajaandmed on saadaval, tuleks neid arvesse võtta.

Võrdlustestide kasutamine AI-agentide hindamisel

Lisaks oma testjuhtumite loomisele saad agendi võimekuse hindamiseks kasutada olemasolevaid standardiseeritud hindamisülesannete kogumeid ehk võrdlusteste.

Kuid võrdlustestid pole eksimatud. SWE-benchi auditid, Epoch AI võrdlustestide ülevaated ja TheoPhysEvalis algselt tagasi lükatud õiged vastused näitavad, kuidas vigased ülesanded või oodatavad vastused võivad hindamistulemusi moonutada.

Khomutov soovitab valida ajakohased ja sinu valdkonnale asjakohased võrdlustestid ning uurida üllatavaid läbimisi või läbikukkumisi, enne kui käsitled tulemusi agendi soorituse usaldusväärse tõendina.

3. samm. Käivita agent korratavas testkeskkonnas

Korratav testkeskkond on kontrollitud seadistus, kus saad AI-agenti samade testjuhtumitega samadel algtingimustel käivitada ja tulemusi võrrelda. See hõlmab testjuhtumite kausta, agenti käivitavat Pythoni skripti või kontrollide kogumit, mis tulemusi hindab.

Võid alustada sellest, et salvestad tüüpilised sisendid JSON-failidena ning kasutad Pythoni skripti, et käivitada agendi töövoog ja kontrollida selle väljundeid assert-lausetega. Meie tootmisettevõtte laoagendi puhul võiks korratav testkeskkond välja näha nii:

Korratava testkeskkonna seadistamiseks toimi järgmiselt:

  1. Salvesta tüüpilised sisendid. Talleta tegelikud sündmused või testjuhtumid samas struktuuris, milles sinu rakendus neid tootmiskeskkonnas saab. Meie stsenaariumis salvestaksid JSON-failina hooldustaotluse, mis sisaldab masina ID-d, vajalikku varuosa ja hoolduskuupäeva, koos laoseisu ning heakskiidetud osade andmete hetktõmmisega.
  2. Käivita töövoog. Lase iga sisend läbi agendi, sealhulgas selle teabeotsingu sammude, tööriistakutsete ja vastuse genereerimise.
  3. Salvesta tulemus ja jälg. Jäädvusta lõppväljund ja asjakohased vahetoimingud (näiteks laoseisu päringud), et näha mitte ainult seda, kas agent ebaõnnestus, vaid ka seda, kus.
  4. Korda juhtumeid vastavalt tõrke tõsidusele, sagedusele ja probleemi parandamise keerukusele. LLM-rakendused on mittedeterministlikud (need võivad samade sisendite põhjal anda erinevaid tulemusi), seega ei garanteeri üks edukas käivitus, et ka järgmine õnnestub. Esita edukate katsete osakaal ja uuri tõrkeid.

Viimase puhul soovitab Khomutov mõõta näitajaid pass@1 (kui sageli agent ühe katsega edu saavutab) ja pass@k (tõenäosus saavutada edu vähemalt korra kindlaksmääratud arvu katsete jooksul). Kui esitad näitaja pass@k, täpsusta katsete arv, sest ühe õige vastuse andmine mitme hulgast ei tähenda, et agent teab, milline neist valida.

Rakenduse kasvades kasuta testide korraldamiseks ja käivitamiseks testimisraamistikku, näiteks pytest, ning kaalu suurte testiandmekogumite ja tulemuste talletamist andmebaasis.

4. samm. Vali iga kontrolli jaoks õige hindaja

Hindaja (sageli nimetatud ka evaluaatoriks) on mehhanism — koodijupp, hindamisjuhendist lähtuv LLM või inimesest ülevaataja —, mis kontrollib agendi väljundit või toimingut kindlaksmääratud kriteeriumi alusel. Hindaja tagastab otsuse „läbis/ei läbinud“ ja selgituse, mis osutab asjakohastele tõenditele.

Teave: Hindamisjuhend on kriteeriumide ja juhiste kogum, mis määratleb, mida loetakse õigeks või vastuvõetavaks tulemuseks.

Õige hindajatüüp sõltub sellest, mida soovid kontrollida. Siin on kolme lähenemisviisi võrdlus:

Hindaja

Sobib kõige paremini

Näide

Peamine piirang

Koodipõhine

Täpsed, kontrollitavad tingimused

Kas soovitatud varuosa oli heakskiidetud ühilduvusloendis?

Ei suuda usaldusväärselt hinnata kõiki subjektiivseid otsuseid

LLM kohtunikuna

Kontekstist sõltuvad hinnangud

Kas agent selgitas, miks ta ei saanud asendust soovitada?

Selle hinnangud võivad olla ekslikud või ebajärjekindlad

Inimene

Valdkonnapõhine asjatundlikkus ja ebaselged juhtumid

Kas hooldusjuht peab agendi soovitust asjakohaseks?

Suures mahus rakendamine on kulukas

Mõnikord võivad sama käivituse eri aspektid vajada erinevaid hindamismeetodeid, mistõttu võib olla vaja hindajaid kombineerida.

Kuidas hindajaid kombineerida?

Küsi endalt: „Kas tulemust saab kontrollida teadaoleva reegli või oodatava väärtuse alusel või nõuab see inimesesarnast otsustusvõimet?“

  • Kui tulemust saab täpselt kontrollida, alusta koodipõhisest hindajast. Koodipõhised hindajad saavad kontrollida ka struktureeritud väljundeid, väljade kehtivaid väärtusi, tööriistade argumente või andmebaasi lõppolekut.
  • Kui kontroll nõuab konteksti tõlgendamist, kasuta lähenemist LLM kohtunikuna.
  • Valdkonnapõhiste või vaieldavate otsuste puhul kasuta inimestest ülevaatajaid.

Tähtis! LLM-hindaja võib tõendeid valesti tõlgendada või hindamisjuhendit valesti rakendada. Seetõttu vajab see täiendavat hindamisetappi: kalibreerimist inimeste hinnangute järgi.

Kalibreeri LLM-hindaja inimeste hinnangute järgi.

Sisuliselt eeldab kalibreerimine, et valdkonnaekspert hindab agendi tegelikke käivitusi. Seejärel võrdleb ekspert oma hinnanguid LLM-i omadega ja täiustab erimeelsuste põhjal hindamisjuhendit.

Siin on viieetapiline hindaja kalibreerimise protsess:

  1. Kogu näiteid agendi sisenditest, väljunditest ja asjakohastest jälgedest.
  2. Lase valdkonnaeksperdil iseseisvalt hinnata, kas iga näide vastab hindamiskriteeriumile.
  3. Käivita LLM-hindaja nende näidetega.
  4. Võrdle inimese ja mudeli hinnanguid.
  5. Uuri erimeelsusi ja täiusta hindaja hindamisjuhendit, enne kui testid seda uute näidetega.

Khomutov rõhutab ka, kui oluline on testida LLM-hindaja järjepidevust eraldi:

„Anna sellele mitu korda täpselt sama salvestatud käivitus ja failid, ilma agenti uuesti käivitamata. Nii saad eristada agendi töö varieeruvust hindamise varieeruvusest.“

Kui sama väljund saab erinevaid hinnanguid, ära eelda, et iga tulemuse muutus tuleneb agendist. Selle asemel uuri eksimismaatriksit, mis näitab, millal hindaja vead õigesti tuvastas, need kahe silma vahele jättis või vastuvõetavad väljundid ekslikult märgistas.

Inimeste tehtav ülevaatus on endiselt hädavajalik võrdlushinnangute kehtestamiseks, vaidlusaluste juhtumite lahendamiseks ja uute tõrkeliikide avastamiseks, mille tuvastamiseks olemasolevaid hindajaid ei loodud.

5. samm. Võrdle versioone ja tee regressioonikontrolle

Oletame, et veaanalüüs näitab, et sinu laoagent soovitab sageli heaks kiitmata asendusosi. Muudad agendi süsteemiviipa nii, et see nõuaks selgesõnalist ühilduvuskontrolli. Algselt ebaõnnestunud juhtum läbib nüüd testi. Aga kuidas sa tead, et muudatus pole mõjutanud teisi ülesandeid?

Siin tulebki appi regressioonitestimine.

Regressioonitestimine tähendab varem edukate testjuhtumite uuesti käivitamist pärast agendi viiba, mudeli või töövoo muutmist, et veenduda, et muudatus pole toonud kaasa uusi tõrkeid.

  1. Taasesita algne tõrge, kasutades testikomplektist salvestatud sisendit.
  2. Tee sihipärane muudatus viibas, mudelis või töövoos.
  3. Käivita ebaõnnestunud test uuesti, et kontrollida, kas probleem on lahendatud.
  4. Käivitage ülejäänud testid, et veenduda, et muudatus pole rikkunud seni korrektselt toiminud käitumist.
  5. Vaadake tulemused üle ja uurige kõiki uusi tõrkeid.

Täpsete tulemuste saamiseks võrrelge baasversiooni ja uuendatud agenti samade testjuhtumite ja hindamiskriteeriumide alusel.

6. samm: jälgige AI-agendi jõudlust tootmiskeskkonnas

Agendi hindamine ei lõpe rakenduse juurutamisega. Nagu Husain ja Shankar selgitavad, saab samu hindajaid, mida kasutate arenduse käigus, rakendada ka tegelikele tootmisandmetele, et mõõta, kuidas teie agent aja jooksul toimib.

Seda nimetatakse online-hindamiseks ning see on osa laiemast tootmiskeskkonna jälgimise protsessist, mis aitab avastada korduvaid ja seni tundmatuid tõrkeid.

Protsess on iteratiivne ja hõlmab nelja üksteist täiendavat tegevust:

  • Rakendage kalibreeritud LLM-hindajaid tootmiskeskkonna täitmisjälgedele. Võtke valim agendi tegelikest interaktsioonidest ja rakendage neile hindajaid, mille olete juba inimhinnangute põhjal valideerinud.
  • Jälgige tõrgete määra aja jooksul. Kasutage veaanalüüsi käigus määratletud tõrkekategooriaid, et korduvaid probleeme kvantifitseerida.
  • Jätkake täitmisjälgede käsitsi ülevaatamist. Automaatsed hindajad tuvastavad ainult need probleemid, mille tuvastamiseks need on loodud. Vaadake käsitsi üle valimeid agendi tegelikest interaktsioonidest, et avastada uusi vigu või ebatavalisi kasutajapäringuid.
  • Kasutage A/B-testimist äritulemuste mõõtmiseks (ainult siis, kui see on asjakohane). Võrrelge erinevaid viipasid, mudeleid või töövoogusid selliste mõõdikute abil nagu ülesannete täitmine, kasutajate rahulolu ja lahendamiseni kuluv aeg. See aitab kindlaks teha, kas muudatus parandab peale üksikute testide läbimise ka tegelikku tootekogemust.

Üks oluline märkus: hindamised ei pea olema täiuslikkuseni lihvitud. Need peavad lihtsalt olema piisavalt head, et teie toodet paremaks muuta.

Levinud väärarusaamad AI-agentide hindamisel

  • Hindamised on lihtsalt ühiktestid. Ei ole; ühiktestid on väikesed automatiseeritud kontrollid, mis moodustavad hindamisest vaid ühe osa. Hindamine hõlmab ka kvalitatiivset veaanalüüsi, inimhinnanguid, tootmiskeskkonna jälgimist ja katseid rakenduse kvaliteedi mõõtmiseks.
  • Hindamisplatvorm saab teie eest kõik ära teha. Valmistööriistad suudavad osa kontrolle automatiseerida, kuid need ei suuda kindlaks teha, millised tõrkerežiimid (veatüübid või agendi soovimatu käitumine) on teie toote jaoks olulised.
  • Võite lasta LLM-il kõike hinnata. See on suur eksiarvamus. Inimese juhitud veaanalüüs ja hindajate kalibreerimine on endiselt hädavajalikud, sest LLM-idel puudub ärikontekst, mida on vaja kõigi probleemide avastamiseks.
  • A/B-testimine või lihtsalt agendi kasutamine asendab hindamisi. Vale. A/B-testid võivad näidata, milline versioon toimib valitud mõõdikute järgi paremini, kuid ei suuda iseenesest selgitada nende taga peituvaid probleeme.

AI-agentide hindamise KKK

1. Mis vahe on AI-agendi hindamisel ja LLM-i hindamisel?

LLM-i hindamine mõõdab, kui hästi keelemudel täidab konkreetset ülesannet, näiteks vastab küsimusele, teeb dokumendist kokkuvõtte või eraldab teavet. AI-agendi hindamine hindab süsteemi, mis ülesande lõpuleviimiseks iseseisvalt mitu sammu täidab.

Erinevalt tavapärasest LLM-i hindamisest vaadeldakse agendi hindamisel nii lõpptulemust kui ka selle saavutamiseks tehtud toimingute jada, sealhulgas tööriistakutseid, otsuseid ja eelnevalt määratud reeglite järgimist.

2. AI-agendi hindamise peamised mõõdikud

AI-agendi hindamise mõõdikud jagunevad kahte laia kategooriasse:

  • Tehnilise jõudluse mõõdikud: ülesannete edukuse määr, toimingute korrektsus, vastuste kvaliteet, töökindlus (pass@1 ja pass@k), latentsus, tokenikasutus ja kulu eduka ülesande kohta.
  • Äri- ja kasutajakogemuse mõõdikud: klientide rahulolu (CSAT), probleemide lahendamise määr, eskaleerimise määr, konversioonimäär, ülesande täitmise aeg ja muud agendi rollile omased tulemused.

Näiteks võib klienditoe agenti hinnata probleemide eduka lahendamise ja klientide rahulolu põhjal, samas kui AI-hankeagenti võiks mõõta varude täiendamise taotluste täpsuse, kinnitusmäärade ja hanketsükli kestuse järgi.

Õiged mõõdikud peaksid kajastama nii seda, kui usaldusväärselt agent töötab, kui ka seda, kas tema töö parandab äritulemusi.

3. Millised on parimad tööriistad AI-agentide hindamiseks?

Levinud valikud on järgmised:

  • Testimisraamistikud: Pythoni assert-laused ja pytest sobivad korratavate testjuhtumite käitamiseks ja täpsete tingimuste kontrollimiseks, näiteks selle kontrollimiseks, kas agent valis õige tööriista või tagastas kehtiva detaili ID.
  • AI-agentide hindamisraamistikud: DeepEval ja Google'i agent-eval tööriistakomplekt toetavad keerukamaid hindamisi, sealhulgas täitmisjälgi, LLM-põhiseid hindajaid ja automatiseeritud regressioonitestimist.
  • Hindamis- ja jälgitavusplatvormid: LangSmith, Arize Phoenix ja MLflow aitavad meeskondadel uurida agendi käitumist, hallata hindamisandmestikke, võrrelda agendi versioone ja jälgida jõudlust tootmiskeskkonnas.

4. Kuidas AI-agentide hindamisi automatiseerida?

AI-agentide hindamisi saab automatiseerida, luues korratavaid teste, rakendades automaatseid hindajaid ja integreerides need kontrollid arendus- ja tootmistöövoogudesse:

  1. Looge hindamisandmestik: koguge representatiivseid kasutajaülesandeid, oodatavaid tulemusi, teadaolevaid tõrkeid ja agendi täitmisjälgi. Lisage ka äärmusjuhtumeid, nagu ebaõnnestunud tööriistakutsed, puuduv teave ja volitamata toimingud.
  2. Automatiseerige testide käitamine ja hindamine: kasutage testjuhtumite käitamiseks ning koodipõhiste kontrollide või LLM-hindajate rakendamiseks selliseid raamistikke nagu pytest või DeepEval. Enne LLM-hindajate hinnangutele tuginemist valideerige need inimhinnangute põhjal.
  3. Integreerige hindamised CI/CD-protsessi: käivitage regressioonitestid automaatselt uuesti, kui arendajad uuendavad agendi viipasid, mudeleid, tööriistu või töövoogu. Võrrelge tulemusi baasversiooniga ja kehtestage kvaliteedilävendid, mis takistavad väljalaskeid, kui kriitilised kontrollid ebaõnnestuvad.
  4. Rakendage kalibreeritud hindajaid tootmiskeskkonna täitmisjälgede valimile, jälgige tõrgete määra ja muid jõudlusmõõdikuid ning uurige uusi vigu käsitsi ülevaatuse abil.