
AI agent progutao je budžet? Trošak se mjeri po uspješnom zadatku

Trošak AI agenta pratite po zadatku, od pokretanja do provjerenog ishoda. Svakom pozivu modela i alata pridružite identifikator zadatka, zabilježite ponovne pokušaje i naplaćene stavke te ukupni trošak dovršenih zadataka podijelite brojem uspješnih u istoj skupini. Tako u cijenu uspjeha ulazi i novac potrošen na neuspjele pokušaje.
Mjesečni zbroj tokena ne pokazuje je li agent posao obavio ili je zapinjao u ponavljanju. U istraživanju agentskih programerskih zadataka izvršavanja istog zadatka razlikovala su se u potrošnji tokena do 30 puta, a veća potrošnja nije pouzdano značila veću točnost. Nalaz se odnosi na promatrane programerske zadatke; za vlastiti sustav treba povezati potrošnju s njegovim stvarnim ishodima.
Odredite gdje zadatak počinje i što znači uspjeh
Zadatak je jedan zahtjev za poslovni rezultat, primjerice razvrstavanje prijave prema zadanim pravilima. Dodijelite mu task_id pri ulasku u sustav. Pozivi modela, dohvat podataka i pozivi alata ostaju pod tim identifikatorom sve do konačnog ishoda, čak i kada agent ponovi korak ili promijeni model. Novom pokušaju dovršavanja dodijelite zaseban attempt_id, povezan s istim zadatkom.
Pravilo uspjeha definirajte prije obračuna. Odgovor modela bez tehničke pogreške može i dalje pasti na provjeri formata, poslovnom pravilu ili potvrdi korisnika. Završni status zato neka razlikuje uspjeh, neuspjeh, prekid zbog ograničenja i ishod koji čeka provjeru. Posljednji ne ulazi ni među uspjehe ni među završene zadatke dok provjera ne završi.
Granica zadatka i pravilo uspjeha moraju ostati jednaki pri usporedbi verzija agenta. Ako jedna verzija svako ponavljanje broji kao novi zadatak, njezin prosječni trošak izgledat će niži samo zbog drukčijeg nazivnika. Zabilježite vrijeme početka, završetka i verziju pravila provjere kako biste trošak povezali s istom skupinom pokrenutih poslova.
Povežite naplaćene događaje u jedan trag
Minimalna prijenosiva shema ima tri razine: zadatak, pokušaj i događaj. Svaki događaj nosi task_id, attempt_id, vlastiti identifikator, vrijeme, vrstu radnje i ishod. Za poziv modela dodajte pružatelja, stvarni model, ulazne i izlazne tokene, kategorije cachea, primijenjenu cijenu i naplaćeni iznos ako je dostupan. Za poziv alata zabilježite naziv, trajanje, pogrešku i izravnu naknadu. Završni događaj zadatka pohranjuje provjereni status.
OpenTelemetryjeve konvencije za GenAI opisuju tragove poziva modela i izvršavanja alata te predviđaju da jedan trag logičke operacije može obuhvatiti automatske ponovne pokušaje. Za obračun zato zasebno označite svaki zahtjev koji se mogao naplatiti, iako ga biblioteka prikazuje kao jedan logički poziv. Poslovni identifikator zadatka i pravilo uspjeha dodajte u vlastitoj aplikaciji.
Brojila, identifikatori i statusi dovoljni su za računanje troška. Tekst upita, odgovori i argumenti alata mogu sadržavati osjetljive podatke, pa ih ne treba spremati samo radi financijskog izvještaja. Ako alat zasebno naplaćuje poziv, njegov iznos pripada događaju tog poziva; pretplatu bez cijene po pozivu prikažite odvojeno ili unaprijed odredite dosljedno pravilo raspodjele.
Cache razdvojite od običnog ulaza
Za svaki poziv vodite ukupan ulaz, tokene pročitane iz cachea, tokene zapisane u cache i izlaz. Grafanina dokumentacija o trošku agenata upozorava da ukupan ulaz može već uključivati tokene iz cachea: ponovno pribrajanje tih tokena tada dvaput broji istu potrošnju. Dokumentacija također razlikuje čitanje i zapisivanje cachea te upozorava da množenje stare potrošnje trenutačnom cijenom može odstupiti od zabilježenog troška.
Prije izračuna utvrdite jesu li pružateljeva brojila uključiva. Ako ukupan ulaz uključuje čitanje i zapisivanje cachea, broj običnih ulaznih tokena dobivate oduzimanjem tih podskupova od ukupnog ulaza. Kada se sve kategorije naplaćuju zasebno, trošak poziva jest zbroj: obični ulaz × pripadajuća cijena, čitanje cachea × njegova cijena, zapisivanje × njegova cijena i izlaz × njegova cijena. Cijene pritom moraju biti izražene po istoj jedinici tokena.
Zabilježite cjenik primijenjen u trenutku poziva, uključujući eventualne ugovorene cijene. Udio pogodaka u cacheu sam po sebi nije mjera uštede po zadatku: jeftinije čitanje može pratiti veći broj poziva, više zapisivanja ili neuspjeli ishod. Povežite kategorije tokena s pokušajem i završnim statusom prije usporedbe agenata.
Izračunajte trošak pokušaja i cijenu uspjeha
Trošak pokušaja zbroj je naplaćenih poziva modela, izravnih naknada za alate i ostalih izmjerenih troškova izvršavanja u tom pokušaju. Trošak zadatka zbroj je svih njegovih pokušaja, uključujući one završene pogreškom. Pazite da račun pružatelja i vlastitu procjenu iz tokena ne pribrojite jedno drugome ako predstavljaju istu stavku; procjena može služiti za usporedbu s računom.
Trošak po uspješnom zadatku jest ukupni trošak svih završenih zadataka podijeljen brojem uspješnih zadataka u toj istoj skupini. U brojniku ostaju i neuspjeli poslovi jer su potrošili sredstva. Primjer je uvjetan: ako dovršeni poslovi zajedno stoje 12 eura, a tri su uspješna, trošak po uspjehu iznosi četiri eura. Ako uspjeha nema, omjer nije definiran; prikažite potrošnju i broj završenih zadataka bez upisivanja nule kao cijene uspjeha.
Uz taj omjer prikažite stopu uspjeha, trošak po završenom zadatku, broj pokušaja i trajanje. Jeftin pojedinačni poziv može biti dio skupog tijeka ako se posao često ponavlja. Uspoređujte iste vrste zadataka i ista pravila provjere: promjena sastava poslova može pomaknuti prosjek i kada agent radi jednako.
Zaustavite petlju tijekom izvršavanja
Ograničenja provodite prije sljedećeg poziva, a ne tek pri mjesečnom obračunu. Po vrsti zadatka odredite najveći dopušteni trošak, broj poziva modela, broj ponavljanja istog alata i trajanje. Proračun potrošen do tog trenutka usporedite s preostalim iznosom prije pokretanja novog koraka; prag postavite prema vrijednosti posla i raspodjeli ranijih izvršavanja.
Ponavljanje istog poziva alata s istim ulazom nakon iste pogreške osobito je jasan znak petlje ako se stanje između poziva nije promijenilo. Zabilježite razlog prekida, zaustavite automatski nastavak i označite zadatak kao prekinut ili ga proslijedite na predviđenu obradu. Trošak nastao prije prekida ostaje u obračunu, a prekid ostaje vidljiv u stopi uspjeha. Tako ograničenje potrošnje ne prikriva posao koji agent nije dovršio.
Pročitajte i:
Povezani članci


GPT-6.1 Sol košta 2 i 10 dolara — dugi kontekst može udvostručiti račun

Make ili Zapier: prazan polling može potrošiti 43.200 kredita

Prompt injection kroz dokument: AI agent ne smije sam odobriti alat

RSA Agent ID zaustavlja rizičan poziv — stiže 16. studenoga

Samo 24% vodstava zna tko odgovara za pogrešku AI agenta
Pretplatite se na naš newsletter
Primajte najnovije vijesti o Web3-u, AI-ju i kriptovalutama izravno u svoj sandučić.