CrewAI ili LangGraph: brži početak plaća se manjom kontrolom tijeka

|Autor: Urednički tim QUASA|6 min čitanja| 1
CrewAI ili LangGraph: brži početak plaća se manjom kontrolom tijeka

CrewAI olakšava početak kada se posao može podijeliti među agentima s različitim ulogama. LangGraph traži da razvojni tim ranije odredi stanje i prijelaze, ali mu time daje izravniju kontrolu nad redoslijedom izvršavanja. Ta je razlika najvažnija kada proces mora stati radi odobrenja, nastaviti se nakon prekida ili objasniti zašto je odabrao određenu granu.

Početni CrewAI tim nije cijela produkcijska arhitektura. CrewAI-jeva produkcijska dokumentacija preporučuje započeti s Flowom: on upravlja stanjem, uvjetima i grananjem, a timove agenata poziva za pojedine poslove. Početna jednostavnost rada s ulogama zato se smanjuje čim aplikacija zahtijeva precizno upravljanje tijekom, no CrewAI za taj zahtjev ima vlastiti mehanizam.

Što razvojni tim mora opisati u kodu

U CrewAI-ju je prirodno najprije definirati agente, njihove zadatke i način suradnje. Primjerice, jedan agent može prikupiti podatke, drugi ih obraditi, a treći sastaviti odgovor. Takva podjela brzo izražava tko radi koji posao. Sama po sebi, međutim, ne određuje dovoljno precizno kada treba odbaciti nevaljan rezultat, ponoviti korak ili zaustaviti proces prije vanjske radnje.

Flow tim problemima daje mjesto izvan uputa agentima. Njegovo stanje prenosi podatke između koraka, a uvjeti određuju koji će se korak pokrenuti sljedeći. CrewAI pritom predviđa zaštitna pravila za izlaze zadataka i strukturirane izlaze pri predaji podataka aplikaciji. Dodatni posao razvoja nastaje ondje gdje podjela uloga više ne opisuje pravila procesa.

Službeni opis LangGrapha predstavlja ga kao okvir za dugotrajne agente sa stanjem, trajnim izvršavanjem, ljudskim nadzorom i praćenjem kroz LangSmith. Razvojni tim gradi graf u kojem čvorovi obrađuju stanje, a prijelazi određuju nastavak. To zahtijeva ranije modeliranje tijeka, ali olakšava pregled dopuštenih putova: pravilo grananja nalazi se u strukturi programa, umjesto da ovisi samo o tome kako je agent protumačio uputu.

Prekid, spremljeno stanje i ponovljena radnja

Oporavak nije isto što i ponovno pokretanje cijelog zadatka. Ako je proces već prikupio podatke i pripremio rezultat, nakon prekida mora znati kojem izvršavanju ti podaci pripadaju i odakle smije nastaviti. CrewAI Flow može trajno spremati stanje pomoću dekoratora @persist; pri nastavku se koristi identitet prethodnog izvršavanja. To je važan dio produkcijskog rješenja, a ne svojstvo koje proizlazi iz samog definiranja agentskih uloga.

U LangGraphu točke spremanja stanja čuvaju snimke pojedinog izvršavanja, dok zasebna pohrana služi podacima koji trebaju biti dostupni između izvršavanja. Memorijski spremnik gubi spremljene točke nakon ponovnog pokretanja procesa, pa oporavak u produkciji zahtijeva trajni spremnik. Razlika između spremanja stanja jednog tijeka i dugoročnih podataka aplikacije važna je pri projektiranju memorije agenta.

Ni jedan okvir samim spremanjem stanja ne rješava ponavljanje vanjske radnje. Ako sustav pošalje zahtjev za upis, a prekid nastupi prije nego što primi odgovor, nastavak može ponovno doći do istog koraka. Aplikacija zato treba odrediti kako prepoznaje već obavljenu radnju, kako bilježi njezin ishod i što radi kada ishod nije poznat. To pravilo pripada integraciji s vanjskim sustavom bez obzira na odabrani okvir.

Gdje pripada ljudsko odobrenje

Odobrenje mora zaustaviti tijek prije radnje na koju se odnosi. U uvjetnom primjeru agent priprema poslovnu ponudu, ali je sustav smije poslati tek nakon odluke ovlaštene osobe. Uputa agentu da „pričeka potvrdu” nije dovoljna kontrola ako aplikacija nema zaseban korak koji bilježi čekanje, prihvaća odluku i dopušta ili odbija nastavak.

LangGraph povezuje ljudski nadzor sa stanjem izvršavanja: proces se može zaustaviti i nastaviti nakon unosa odluke. U CrewAI-ju je za takvo pravilo prikladan Flow koji upravlja stanjem i poziva agente za pripremu sadržaja. U oba slučaja razvojni tim mora definirati što se događa nakon odbijanja, isteka čekanja ili izmjene pripremljenog rezultata. Tu se vidi stvarni trošak početne jednostavnosti: složena pravila odobravanja ipak treba izričito projektirati.

Promatranje izvršenja odgovara na drukčije pitanje: koji su se koraci dogodili i kojim putem je proces prošao? CrewAI uz Flow predviđa praćenje izvršenja, a LangGraph upućuje na LangSmith za detaljniji uvid u tijek. Trag izvršavanja pomaže pri otkrivanju pogreške; poslovna odluka dodatno zahtijeva da aplikacija sačuva relevantan ulaz, ishod provjere i odobrenje kada ih proces mora moći naknadno objasniti.

Što zapravo govore objavljeni benchmarkovi

Benchmark zadataka podatkovnog inženjerstva navodi model Groq Llama 3.3 70B, jednake upite i vremenska ograničenja te prijavljuje približno 2.700 tokena i 12,7 sekundi za LangGraph, prema 5.005 tokena i 20,0 sekundi za CrewAI. Repozitorij istodobno spominje 24 jedinstvena zadatka i 107 zadataka raspoređenih po kategorijama, bez jasnog objašnjenja odnosa tih uzoraka; uz rezultate ne navodi ni verzije okvira. Brojke opisuju objavljene implementacije, a ne stalno svojstvo jedne biblioteke.

U drukčijem benchmarku istraživanja tvrtki uspoređene su implementacije CrewAI-ja 1.9.x i LangGrapha 1.0.x; plan obuhvaća 45 izvođenja kroz tri tvrtke, pet okvira i tri ponavljanja, a tablica navodi za CrewAI 246 sekundi i 27.684 tokena te za LangGraph 506 sekundi i 8.823 tokena. Dakle, CrewAI je u toj tablici brži, a LangGraph troši manje tokena. Projekt navodi zadanu konfiguraciju s modelom qwen3:14b, ali uz samu tablicu nedvosmisleno ne označava model kojim su prikazani rezultati dobiveni.

Ti testovi rješavaju različite zadatke i koriste različite implementacije, uzorke i načine procjene. U istraživanju tvrtki koristi se unaprijed pripremljen sadržaj za pretraživanje, a kvalitetu ocjenjuje drugi model; test podatkovnog inženjerstva mjeri drukčije vrste izlaza. Zato niža latencija u jednom testu ne pobija višu latenciju u drugom. Potrošnja tokena ovisi i o broju poziva modelu, predanom kontekstu te tome koliko je posla razdijeljeno među agentima.

Stablo odluke za izbor okvira

  • Ako je glavni problem podjela otvorenog posla među ulogama, CrewAI daje jednostavan početni model. Kada rezultat postane dio produkcijskog procesa, Flow treba preuzeti stanje i pravila grananja.
  • Ako redoslijed koraka, uvjetni putovi i točke odobrenja već određuju posao, LangGraph daje izravniji prikaz tih pravila. Početni napor tada odlazi na modeliranje grafa i stanja.
  • Ako je nastavak nakon prekida obvezan, u oba izbora treba odrediti trajnu pohranu, identitet izvršavanja i ponašanje vanjskih radnji pri ponavljanju. Sam naziv okvira ne jamči oporavak.
  • Ako odluku određuju trošak i latencija, mjerilo treba biti dovršen vlastiti posao s istim modelom i istim kriterijem uspjeha, uključujući ponovne pokušaje i čekanje odobrenja. Objavljeni mali testovi ne daju univerzalnog pobjednika.

Izbor se tako svodi na oblik procesa koji tim već može opisati. Kada su uloge jasne, a put do rezultata još otvoren, CrewAI skraćuje put do prve izvedbe. Kada su dopušteni prijelazi i nastavak izvršavanja središnji zahtjevi, LangGraph traži više odluka na početku, ali ih drži vidljivima u strukturi tijeka.

Pročitajte i:

Podijeli:

Pretplatite se na naš newsletter

Primajte najnovije vijesti o Web3-u, AI-ju i kriptovalutama izravno u svoj sandučić.

0