Unelte și bucla agentului
Un model lingvistic nu are nevoie să fie un calculator uman sau o enciclopedie exhaustivă. Mult mai valoros este să recunoască ce anume nu știe și să apeleze la uneltele potrivite — exact ca un om care lucrează cu un carnețel și un calculator de buzunar. Din această distincție firească între înțelegerea unei intenții și execuția efectivă se naște tot ceea ce numim astăzi un agent autonom.
Termeni: apel de unealtă buclă agent greșelile se adună
Ce iese prost dintr-o singură trecere
Calculele matematice exacte cu mai multe cifre contrazic natura fundamentală a unui model lingvistic. O rețea neuronală nu deține registre interne de siliciu și nu poate ține minte „restul purtat în gând”; ea prezice următorul jeton de text pe baza unor asocieri statistice învățate. Dacă îi cerem să rezolve 47 × 83, ea este silită să nimerească direct toate cele patru cifre ale rezultatului dintr-o singură trecere.
Experimentul de mai jos compară același model de mici dimensiuni, antrenat în două feluri diferite. În primul caz, modelul încearcă să calculeze singur și să emită direct cifrele răspunsului. În al doilea caz, nu îi mai cerem să facă aritmetică, ci doar să identifice ce anume se cere: operația matematică și cele două numere implicate. Calculul efectiv este preluat instantaneu de un mic program clasic de calculator din pagină.
Contrastul este grăitor: dacă adunările simple pot fi memorate prin asocieri frecvente, înmulțirea eșuează fără o unealtă exterioară. Priviți coloana din dreapta: modelul ghicește adesea ordinul de mărime sau câteva cifre, însă aproape niciodată pe toate patru simultan. Iar în matematică, un rezultat cu o singură cifră greșită este complet greșit.
Al doilea tip de antrenament nu face rețeaua mai deșteaptă la calcul, ci îi oferă o sarcină pe măsura naturii ei: o problemă de limbaj. Modelul citește fraza, înțelege intenția omului și emite o comandă structurată. Aceasta este esența oricărei arhitecturi cu unelte: mutăm povara de pe ceea ce rețeaua face nesigur către ceea ce stăpânește remarcabil de bine — înțelegerea și dialogul.
Cum arată cererea
Dar cum comunică, în practică, modelul cu o unealtă exterioară? Cererea nu este o conversație liberă, ci un text formatat riguros într-o convenție prestabilită. Când rețeaua recunoaște că are nevoie de un calcul, ea generează acest format specific, pe care programul din jur îl interceptează, îl decodează și îl trimite uneltei. Această solicitare poartă numele de apel de unealtă (tool call).
Rezultatul calculat de unealtă revine tot ca text și este adăugat la sfârșitul șirului de conversație. Din perspectiva modelului, această nouă informație devine o bucată obișnuită de context — o notiță proaspătă pe carnețelul său de lucru, de la care își poate relua firul gândirii.
Programul care coordonează acest du-te-vino continuu — modelul scrie o intenție, programul exterior o execută, rezultatul revine pe foaie, iar modelul citește și continuă — se numește buclă, iar întregul sistem articulat poartă numele de agent. Cuvântul poate suna spectaculos, însă mecanismul este curat și pragmatic: o bandă de text care se extinde pas cu pas.
Cererile de pe banda interactivă sunt emise de modelul antrenat anterior, iar calculele sunt executate în timp real de browser. Diferența față de un agent complet autonom este că aici succesiunea pașilor este sugerată de structura întrebării; într-un sistem avansat, modelul decide de la sine ce unealtă să invoce la fiecare pas, însă dinamica buclei rămâne neschimbată.
Ce costă învârtirea
Fiecare iterație a buclei adaugă text nou: comanda scrisă de model, răspunsul generat de unealtă și noile deducții. Carnețelul de lucru se îngroașă continuu, iar modelul trebuie să păstreze în atenție întregul istoric la fiecare pas.
Aici redescoperim importanța memoriei de chei-valori (KV cache), studiată la generarea textului. Fără această memorie rapidă, la fiecare rotire a buclei calculatorul ar trebui să recitească de la capăt toate paginile acumulate anterior, iar efortul de calcul ar crește proporțional cu pătratul numărului de pași. Datorită acestei optimizări, fiecare pas plătește doar procesarea noutăților și atenția distribuită asupra a ceea ce s-a strâns deja.
Unde se rupe
Este esențial să reținem că bucla agentului nu conferă o inteligență magică rețelei; ea îi oferă doar acces la lumea din afară.
Modelul nu are un simț infailibil pentru a ști dacă datele primite de la o unealtă sunt corecte; el le citește ca pe oricare alt text și construiește mai departe pe baza lor. Dacă cererea inițială a fost vagă sau greșită, rezultatul întors va fi la fel de defectuos — dar va purta haina unui răspuns oficial. Iar din acel moment, întregul eșafodaj logic ulterior se sprijină pe o fisură.
O vulnerabilitate majoră a oricărui sistem autonom este că greșelile se adună. Chiar dacă fiecare pas individual are o rată excelentă de succes de 90%, după un lanț de zece pași consecutivi probabilitatea ca întreaga misiune să iasă perfect scade sub 35% (0,9 înmulțit cu el însuși de zece ori coboară rapid). De aceea, agenții care execută planuri complexe au nevoie de verificări, confirmări și autocorecții la fiecare cotitură, nu doar la final.
În practică, cea mai utilizată unealtă nu este un calculator de buzunar, ci un sistem capabil să caute informații în biblioteci uriașe de date și să le așeze pe masa de lucru a modelului înainte ca acesta să formuleze un răspuns. În lecția următoare, vom explora tocmai această tehnică — generarea augmentată prin regăsire (RAG) — un veritabil examen cu cărțile deschise.