Blueprint pentru agenți conversaționali care separă intenția probabilistică de execuția acțiunilor reale prin filtrare, rutare semantică, validare, permisiuni, fallback determinist și audit.
·Arhitectură & Concept: Dragoș Mănescu
Ideea centrală
Punctul central nu este promisiunea că modelul nu halucinează, ci controlul execuției. Modelul poate interpreta limbajul, dar arhitectura limitează execuția directă a operațiunilor reale înainte de validare.
Execuția verificată separă intenția probabilistică de execuția acțiunilor reale. Orice acțiune cu efect operațional trebuie să treacă prin contracte de date, permisiuni, surse autorizate, fallback determinist și audit.
Perimetrul blueprint-ului
Modelul este reutilizabil pentru agenți conversaționali care transformă limbaj natural în intenții controlate și acțiuni verificabile. Exemplele din zona clinicilor sunt doar scenarii de aplicare, nu limitează modelul la domeniul medical.
IN
Include
Agenți conversaționali care primesc input liber și trebuie să producă acțiuni controlate.
Clasificarea intențiilor înainte de execuție.
Cereri verificabile, validare server-side și surse autorizate.
Politici de acces, fallback determinist, transfer către operator uman și audit.
OUT
Nu include
Promisiunea că un LLM devine infailibil.
Benchmark-uri, ROI sau rezultate operaționale nedocumentate.
Automatizare completă fără validare, permisiuni sau control uman.
O implementare dependentă de un singur domeniu sau de o singură clinică.
Problema: intenția probabilistică ajunge direct la execuție
Un agent conversațional poate interpreta corect o cerere și totuși poate declanșa o acțiune greșită dacă intenția extrasă ajunge direct în backend, fără verificare. Riscul nu apare doar în răspunsul generat de model, ci în momentul în care textul liber începe să producă efecte reale: programări, comenzi, modificări de status, notificări sau escaladări operaționale.
Într-o arhitectură fragilă, modelul este tratat ca decident final. Primește limbaj natural, estimează intenția și poate influența sistemul real înainte ca intenția, permisiunile, contextul și sursele autorizate să fie validate. Aici apar erorile greu de observat: acțiuni premature, rutare greșită, expunere de date, costuri inutile sau transfer întârziat către operator.
Blueprint-ul pornește de la o separare simplă: modelul poate ajuta la interpretare, dar execuția aparține arhitecturii. Orice acțiune cu efect real trebuie să treacă prin filtre, contracte, politici, surse autorizate și audit.
Execuție prematură
O intenție probabilă este tratată ca instrucțiune sigură.
Rutare greșită
Cereri ambigue sau out-of-scope intră în fluxuri operaționale.
Control aplicat prea târziu
Permisiunile, datele și auditul sunt verificate după efectul operațional, nu înainte.
Modelul de conversie: din limbaj natural în cerere verificabilă
Un agent cu execuție verificată nu trimite textul liber direct către backend. Înainte ca o cerere să producă efecte reale, conversația este transformată într-o structură verificabilă: intenție clasificată, date minime necesare, context permis și reguli de continuare.
Această conversie este diferența dintre un chatbot care doar răspunde și un agent care poate participa controlat la operațiuni. Modelul poate interpreta limbajul și poate propune o intenție, dar sistemul decide dacă acea intenție poate deveni acțiune.
Cererea verificabilă nu este o comandă executată automat. Este o etapă intermediară, în care arhitectura verifică dacă există suficiente date, dacă utilizatorul sau contextul are permisiunea necesară și dacă acțiunea trebuie confirmată, blocată, redirecționată sau trimisă către un operator uman.
01
Limbaj natural
Text liber, posibil ambiguu, venit din conversație.
02
Intenție clasificată
Cererea este încadrată într-o categorie permisă sau respinsă ca out-of-scope.
03
Date minime
Sistemul păstrează doar informațiile necesare pentru următorul pas.
04
Validare
Permisiunile, contextul și sursele autorizate sunt verificate înainte de execuție.
05
Execuție sau fallback
Acțiunea continuă doar dacă este validă; altfel intră în fallback sau transfer către operator uman.
Criteriile unei cereri verificabile
După clasificarea intenției, sistemul nu execută direct acțiunea. Cererea intră într-un gate de verificare: un strat care decide dacă poate continua, dacă trebuie clarificată, dacă intră în fallback sau dacă trebuie transferată către un operator uman.
Ce trebuie verificat
O cerere verificabilă nu este validă pentru că modelul a produs un răspuns convingător. Ea poate avansa doar dacă arhitectura poate confirma intenția, datele necesare, contextul permis și traseul de audit.
Intenție permisă: cererea este încadrată într-o categorie pe care sistemul are voie să o proceseze.
Date suficiente: sistemul are informațiile necesare pentru următorul pas, fără să colecteze date inutile.
Context autorizat: rolul utilizatorului, sursa de date și perimetrul operațional permit continuarea.
Confirmare explicită: acțiunile sensibile nu sunt executate doar pe baza unei predicții sau a unui mesaj ambiguu.
Traseu auditabil: decizia, datele folosite și rezultatul pot fi urmărite ulterior fără a depinde de memoria conversației.
Cum decide sistemul
Continuă spre execuție
Toate criteriile sunt îndeplinite. Cererea poate avansa către o acțiune controlată sau poate fi pregătită pentru confirmare finală.
Cere clarificare
Intenția pare permisă, dar lipsesc date sau există ambiguitate. Sistemul cere o completare punctuală, fără să declanșeze încă acțiunea.
Aplică fallback
Cererea nu are traseu sigur, este out-of-scope sau nu poate fi mapată într-o intenție permisă. Sistemul răspunde controlat, fără acces la backend.
Transferă către operator uman
Cererea este sensibilă, critică, neautorizată sau necesită judecată umană. Contextul este păstrat, dar execuția nu rămâne la model.
De ce contează
Această regulă mută responsabilitatea execuției din zona predicției lingvistice în zona controlului arhitectural. Modelul contribuie la interpretare, dar decizia de a produce efecte reale aparține unui strat verificabil: reguli, permisiuni, surse autorizate, fallback și audit.
Schimbarea de paradigmă: de la mesaj la execuție controlată
După ce cererea trece prin criteriile de verificare, rolul interfeței se schimbă. Ea nu mai este doar un canal prin care utilizatorul trimite text, ci primul strat al unei arhitecturi care decide ce poate continua, ce trebuie clarificat și ce trebuie oprit.
În modelul pasiv, conversația produce context pentru un operator uman. În modelul cu execuție verificată, conversația produce o cerere structurată, iar arhitectura decide dacă acea cerere are voie să atingă sisteme reale.
Interfață pasivă
Colectează text liber și îl lasă în zona de interpretare umană.
Nu separă clar mesajul, intenția și acțiunea posibilă.
Nu are un gate explicit între conversație și sistemele operaționale.
Ambiguitatea este rezolvată târziu, de obicei după ce mesajul ajunge la un operator.
Agent cu execuție verificată
Transformă mesajul într-o cerere structurată și verificabilă.
Clasifică intenția înainte de orice acțiune cu efect real.
Aplică permisiuni, validare server-side și surse autorizate.
Folosește clarificare, fallback sau transfer către operator uman când contextul nu este suficient.
Linia de demarcație
În această paradigmă, modelul nu este eliminat din flux, dar nu mai este lăsat să fie punctul care decide efectul operațional. El poate ajuta la interpretarea limbajului, la clasificarea intenției și la formularea unui răspuns, însă acțiunea reală trece printr-un strat separat de control.
Linia de demarcație este simplă: modelul interpretează, arhitectura decide, iar sistemul execută doar după validare. Această separare reduce riscul ca un răspuns plauzibil, dar neverificat, să devină programare, comandă, modificare de status sau escaladare operațională.
Ce se schimbă în arhitectură
Schimbarea nu este că modelul devine infailibil. Schimbarea este că modelul nu mai este lăsat să fie punctul final de decizie. El contribuie la interpretare, dar execuția este mutată într-un strat separat, unde regulile, permisiunile, sursele de date și auditul pot fi controlate explicit.
Interpretarea limbajului rămâne asistată de model.
Decizia de execuție trece prin reguli, permisiuni și surse autorizate.
Excepțiile sunt tratate prin clarificare, fallback, refuz controlat sau operator uman.
Flux conversațional controlat: tranziții înainte de execuție
După ce cererea este verificată, conversația nu trebuie lăsată să evolueze liber până la execuție. Un agent cu acțiuni reale are nevoie de un flux conversațional controlat: un traseu explicit care stabilește unde se află cererea, ce date lipsesc, ce tranziții sunt permise și când sistemul trebuie să oprească fluxul.
Tehnic, acest control funcționează ca o mașină de stări. Rolul lui nu este să facă modelul infailibil, ci să reducă spațiul de acțiune. Modelul poate interpreta răspunsuri și poate propune următorul pas, dar nu poate sări peste stări critice precum validarea intenției, autorizarea contextului, confirmarea explicită sau transferul către operator uman.
Fiecare stare are o condiție de intrare, o condiție de ieșire și o listă limitată de tranziții permise. Dacă aceste condiții nu sunt îndeplinite, conversația nu continuă spre execuție.
Traseul controlat al conversației
Într-un flux controlat, conversația nu este reevaluată de la zero la fiecare mesaj. Sistemul păstrează o stare curentă și permite doar trecerea către următoarea stare validă. Fiecare etapă are condiții de intrare, condiții de ieșire și tranziții permise. Astfel, o cerere nu poate ajunge direct la execuție fără să treacă prin pașii de control.
Anonim: utilizatorul a trimis un mesaj, dar sistemul nu are încă intenție validată sau context suficient.
Intenție clasificată: cererea este încadrată într-o categorie permisă sau direcționată către fallback dacă este out-of-scope.
Date minime colectate: sistemul verifică dacă are informațiile necesare pentru următorul pas, fără colectare excesivă.
Context autorizat: rolul, sursa de date și perimetrul operațional permit continuarea.
Confirmare sau execuție: acțiunea poate fi pregătită pentru confirmare finală sau executată controlat, în funcție de sensibilitate.
Închis / auditat: rezultatul este înregistrat într-un traseu auditabil, independent de memoria conversației.
Același flux include și ramura de protecție: atunci când intenția este ambiguă, datele lipsesc, contextul nu este autorizat sau cererea este sensibilă, conversația nu avansează automat. Sistemul cere clarificare, aplică fallback, refuză controlat sau transferă cazul către un operator uman.
Acest flux face diferența dintre o conversație generativă și un agent operațional. Într-un agent operațional, fiecare tranziție trebuie să poată fi explicată, reprodusă și auditată.
Stratul middleware de control: protecție înainte de backend
Fluxul conversațional stabilește traseul permis al cererii. Middleware-ul este stratul care aplică efectiv regulile înainte ca orice intenție extrasă din limbaj natural să ajungă la backend, baze de date, CRM, sistem de programări sau altă infrastructură operațională.
Într-un agent cu execuție verificată, middleware-ul nu este doar un proxy tehnic. El funcționează ca un filtru de control: normalizează inputul, limitează abuzul, validează intenția, reduce expunerea datelor și decide când cererea trebuie oprită, clarificată, trimisă în fallback sau transferată către un operator uman.
Ce controlează middleware-ul
Abuz și trafic non-uman: limitează flood-ul, pattern-urile automate și cererile care consumă resurse fără intenție legitimă.
Normalizarea inputului: reduce zgomotul, curăță formatul, limitează lungimea și pregătește textul pentru clasificare.
Validarea semantică: verifică dacă intenția se află în perimetrul permis înainte de orice acces la sisteme reale.
Igiena promptului: izolează instrucțiunile suspecte, linkurile riscante și tentativele de prompt injection înainte ca ele să influențeze fluxul.
Minimizarea datelor: colectează și transmite doar informațiile necesare pentru următorul pas, nu întregul istoric conversațional.
Rutarea excepțiilor: trimite cererile ambigue, sensibile sau neautorizate către clarificare, fallback ori operator uman.
Ce iese din middleware
La ieșirea din middleware, cererea nu este încă o acțiune executată. Ea primește un verdict de continuare: poate fi trimisă către ruterul semantic, poate cere clarificare, poate intra în fallback sau poate fi transferată către un operator uman.
Cerere permisă: inputul este normalizat, intenția se află în perimetru, iar fluxul poate continua spre rutare.
Cerere incompletă: lipsesc date sau există ambiguitate, deci sistemul cere clarificare înainte de execuție.
Cerere respinsă: inputul este abuziv, riscant, out-of-scope sau incompatibil cu politicile sistemului.
Cerere transferată: contextul este sensibil sau necesită judecată umană, deci execuția nu rămâne la model.
Scopul stratului middleware nu este să facă modelul perfect, ci să reducă suprafața în care o interpretare greșită poate produce efecte reale. Modelul poate propune; middleware-ul verifică dacă propunerea are voie să continue.
Acesta este rolul modelului defense-in-depth: fiecare strat prinde o clasă diferită de risc, astfel încât execuția să nu depindă de o singură decizie generativă.
Artefactul de ieșire: cererea verificabilă
După filtrare, normalizare și validare, sistemul nu trimite text liber către backend. Rezultatul este o cerere verificabilă: o structură intermediară care descrie ce a înțeles sistemul, ce date are, ce lipsește, ce riscuri există și ce traseu este permis mai departe.
Cererea verificabilă nu este o comandă executată automat. Ea este forma controlată în care conversația poate fi predată către ruterul semantic, către o clarificare, către fallback sau către un operator uman. În acest punct, modelul nu mai decide singur următorul efect operațional.
Anatomia cererii verificabile
Intenție
Ce încearcă utilizatorul să obțină: programare, comandă, modificare, întrebare, escaladare sau cerere out-of-scope.
Stare
Unde se află cererea în flux: permisă, incompletă, ambiguă, respinsă sau transferată.
Date disponibile
Informațiile deja extrase din conversație, fără a păstra mai mult context decât este necesar.
Date lipsă
Elementele fără de care sistemul nu poate continua în siguranță.
Context operațional
Canalul, rolul, sursa și perimetrul în care cererea poate fi procesată.
Verdict de control
Decizia middleware-ului: continuare, clarificare, fallback, refuz controlat sau transfer către operator uman.
Indicatori de risc
Semnale despre ambiguitate, input suspect, date sensibile sau intenție în afara perimetrului.
Audit
Motivul deciziei și traseul prin care cererea poate fi urmărită ulterior.
Exemplu schematic
O cerere de programare poate ajunge în sistem cu serviciul și intervalul preferat deja extrase, dar fără datele de contact necesare pentru continuare. În această stare, intenția este permisă, dar cererea rămâne incompletă.
Verdictul de control nu este execuția, ci clarificarea. Sistemul solicită datele lipsă, păstrează backend-ul neatins și nu permite acțiunii să avanseze până când cererea nu devine suficient de completă și verificabilă.
Important este că această cerere nu acordă modelului dreptul de a executa. Ea descrie starea fluxului într-o formă pe care sistemul o poate valida, jurnaliza și direcționa. Dacă lipsesc date, dacă verdictul este neclar sau dacă politica nu permite continuarea, cererea nu ajunge la backend ca acțiune.
De aici, ruterul semantic poate decide traseul: flux permis, clarificare, fallback sau transfer către operator uman.
Ruterul semantic AI: decizia traseului înainte de execuție
După ce cererea a trecut prin filtrare, normalizare și criteriile de verificare, ea nu trebuie trimisă direct către un model general sau către backend. Ruterul semantic este stratul care decide traseul: ce poate continua, ce trebuie clarificat, ce trebuie oprit și ce trebuie transferat către un canal sigur.
Rolul ruterului nu este să producă singur răspunsul final. Rolul lui este să transforme o cerere verificabilă într-o decizie de rutare: flux permis, clarificare, fallback, refuz controlat sau transfer către operator uman.
Ce decide ruterul
Dacă intenția se află în perimetrul permis al sistemului.
Dacă datele disponibile sunt suficiente pentru următorul pas.
Dacă sursa de date sau sistemul operațional poate fi accesat în siguranță.
Dacă cererea trebuie clarificată înainte de execuție.
Dacă fluxul trebuie oprit, refuzat controlat sau transferat către operator uman.
Dacă ieșirea controlată poate folosi date autorizate sau trebuie limitată la clarificare, fallback ori refuz controlat.
Schema de rutare
FILTRATRELEVANTINCOMPLETRESTRICȚIONAT
Input utilizator
Text liber din conversație.
Blocat
Boți, abuz, input suspect sau cereri care nu pot intra în flux.
Filtru de securitate
Anti-abuz, normalizare, minimizare și igienă de prompt.
Ruter semantic
Clasifică intenția, contextul și verdictul de control.
Traseu relevant
Cererea poate ajunge la surse autorizate sau sisteme operaționale.
Traseu incomplet
Sistemul cere clarificare înainte de execuție.
Traseu restricționat
Fluxul merge către politici de siguranță, fallback sau transfer către operator uman.
Ieșire controlată
Clarificare, refuz controlat, fallback sau acțiune pregătită pentru confirmare.
Ce nu face ruterul
Nu acordă modelului dreptul de a executa direct acțiuni.
Nu inventează date când sursele autorizate nu confirmă contextul.
Nu ocolește politicile de acces, fallback sau audit.
Nu tratează toate cererile ca fiind automatizabile.
Ruterul semantic este punctul în care conversația devine traseu arhitectural. De aici, cererea poate continua doar pe una dintre rutele permise: execuție verificată, clarificare, fallback, refuz controlat sau transfer către operator uman.
Controlul accesului și izolarea datelor
După ce ruterul semantic stabilește traseul cererii, controlul accesului devine al doilea strat de control. Un traseu relevant nu înseamnă automat acces la date, drept de modificare a datelor sau permisiune de a pregăti o acțiune pentru confirmare.
Acest strat traduce decizia de rutare într-o decizie de permisiune. Verifică rolul actorului, contextul, perimetrul operațional, sensibilitatea datelor și tipul acțiunii înainte ca sistemul să citească, să modifice sau să expună informații.
Modelul poate formula intenția, iar ruterul poate alege traseul. Accesul efectiv aparține infrastructurii: politici server-side, reguli declarative, atribute / claims de sesiune, verificări API, mascare, limitare și audit.
Ce verifică și ce decide
Rol și context: cine inițiază cererea, prin ce canal și în ce sesiune.
Perimetru operațional: tenant, proiect, cont, unitate sau domeniu permis.
Tipul acțiunii: citire, modificare, confirmare, escaladare, export sau ștergere.
Sensibilitatea datelor: informații publice, operaționale, mascate sau care cer autorizare suplimentară.
Decizie de acces: permite, limitează, refuză controlat sau transferă către operator uman.
Motiv auditabil: de ce accesul a fost permis, limitat, mascat, refuzat sau transferat.
Decizia stratului de acces poate permite cererea, o poate limita la date mascate sau acțiune pregătită pentru confirmare, o poate refuza controlat ori o poate transfera către un operator uman. Această decizie separă intenția validă de accesul efectiv: faptul că sistemul a înțeles cererea nu înseamnă că are voie să expună sau să modifice date.
Principiul de bază este least privilege: agentul primește doar minimul necesar pentru următorul pas. Dacă o cerere poate fi rezolvată cu date mascate, câmpuri reduse sau confirmare explicită, sistemul nu trebuie să expună mai mult context decât este necesar.
Controlul accesului face ca ruterul semantic să nu devină o poartă prea largă către date. Ruterul stabilește traseul, dar stratul de acces decide ce poate fi văzut, modificat, mascat, refuzat sau transferat.
Interfața de acțiune: operațiuni controlate
După rutare și controlul accesului, cererea nu devine automat comandă executabilă. Interfața de acțiune este stratul care transformă o cerere verificabilă într-o operațiune controlată: pregătire, confirmare, execuție limitată, fallback sau transfer către operator uman.
Canalul de intrare poate fi conversațional, vocal, formular sau API. Diferența arhitecturală nu stă în canal, ci în faptul că niciun input natural nu controlează direct backend-ul. Toate cererile trec prin aceeași logică: intenție clasificată, date minime, permisiuni, context autorizat și decizie auditabilă.
Ce face interfața de acțiune
Primește doar cereri care au trecut prin filtrare, rutare și control de acces.
Transformă intenția într-o operațiune pregătită, nu într-o execuție automată necondiționată.
Verifică dacă acțiunea are nevoie de confirmare explicită înainte de continuare.
Aplică limitele stabilite de permisiuni, date disponibile și sensibilitatea contextului.
Direcționează cazurile incomplete, ambigue sau sensibile către clarificare, fallback ori operator uman.
Canale diferite, aceeași regulă
Vocea, chatul sau formularul sunt doar moduri diferite de a exprima intenția. Arhitectura nu trebuie să acorde mai multă autoritate unui canal doar pentru că pare mai natural sau mai rapid. O comandă vocală, o solicitare scrisă sau un click asistat de AI trebuie să ajungă în același strat de validare înainte să producă efecte reale.
Chat: mesajul este interpretat, dar acțiunea rămâne condiționată de validare.
Voce: transcrierea devine input, nu comandă directă către backend.
Formular: datele structurate sunt verificate prin politici și permisiuni.
API / integrare: cererea automată respectă același perimetru operațional.
În acest model, interfața de acțiune nu extinde autonomia modelului, ci o încadrează în pași verificabili. Acțiunea reală apare doar când cererea, accesul, contextul și confirmarea sunt aliniate.
Trasabilitate și transfer controlat pentru cereri sensibile
O cerere sensibilă nu trebuie rezolvată prin improvizație generativă. Dacă sistemul detectează ambiguitate, risc operațional, lipsă de date sau context care necesită judecată umană, execuția se oprește înainte să atingă backend-ul.
În acest punct, scopul arhitecturii nu este să forțeze un răspuns, ci să păstreze traseul deciziei: ce intenție a fost detectată, ce regulă a fost activată, de ce fluxul nu a continuat și către ce canal sigur trebuie transferat cazul.
Cum arată traseul deciziei
Intenția este clasificată: sistemul identifică faptul că cererea nu poate continua ca flux automat obișnuit.
Perimetrul este verificat: middleware-ul stabilește dacă cererea este permisă, incompletă, ambiguă, sensibilă sau out-of-scope.
Execuția este oprită: backend-ul nu primește o acțiune directă cât timp verdictul nu permite continuarea.
Contextul este păstrat: sistemul reține doar informațiile necesare pentru clarificare, fallback sau transfer controlat.
Cazul este direcționat: fluxul merge către clarificare, refuz controlat, fallback determinist sau operator uman.
Decizia este auditată: motivul opririi și traseul ales pot fi urmărite ulterior.
Exemplu de transfer controlat
Un utilizator formulează o cerere care pare urgentă, ambiguă sau sensibilă. Modelul poate recunoaște intenția generală, dar nu primește dreptul de a decide singur efectul operațional. Middleware-ul oprește execuția automată, păstrează contextul minim necesar și direcționează cazul către un operator uman sau către un protocol intern de clarificare.
Rezultatul nu este un răspuns inventat și nici o acțiune directă în backend. Rezultatul este o decizie controlată: fluxul este oprit, motivul este jurnalizat, iar următorul pas este tratat printr-un canal sigur.
Această trasabilitate face ca agentul să fie operabil în contexte reale: nu pentru că modelul devine infailibil, ci pentru că fiecare oprire, transfer sau continuare poate fi explicată și auditată.
Degradare controlată și mecanisme de siguranță
Un agent operațional trebuie proiectat și pentru situațiile în care fluxul nu poate continua în forma ideală. Modelul poate răspunde incomplet, serviciile externe pot fi indisponibile, inputul poate fi ambiguu, iar contextul poate deveni sensibil. Arhitectura nu trebuie să presupună perfecțiunea modelului sau a infrastructurii.
Degradarea controlată înseamnă că sistemul are trasee sigure pentru aceste situații: clarificare, fallback determinist, refuz controlat, mod read-only sau transfer către operator uman. Scopul nu este să ascundă eroarea, ci să limiteze efectul operațional al unei decizii nesigure.
Situații în care fluxul se degradează controlat
Model indisponibil sau răspuns insuficient: sistemul nu continuă spre execuție pe baza unui răspuns incomplet, ci folosește fallback determinist sau solicită clarificare.
Input suspect: tentativele de prompt injection, linkurile riscante sau instrucțiunile care încearcă să schimbe regulile fluxului sunt izolate înainte să influențeze decizia.
Cerere ambiguă: dacă intenția nu este suficient de clară, sistemul cere o completare punctuală în loc să presupună următorul pas.
Context sensibil: cererile care pot avea impact operațional ridicat sunt direcționate către confirmare explicită sau transfer controlat.
Backend indisponibil: dacă sistemul operațional nu poate confirma starea reală, agentul nu inventează un rezultat și nu simulează execuția.
Cum răspunde arhitectura
Mecanismele de siguranță nu sunt doar reguli de refuz. Ele sunt mecanisme de rutare care decid cum se păstrează controlul atunci când fluxul normal nu este sigur.
Clarificare: sistemul cere informația lipsă fără să execute acțiunea.
Fallback determinist: răspunsul este limitat la opțiuni sigure și predefinite.
Refuz controlat: cererea este oprită fără acces la backend atunci când este în afara perimetrului.
Mod read-only: sistemul poate informa, dar nu modifică date sau stări operaționale.
Transfer controlat: cazul este trimis către operator uman împreună cu contextul minim necesar.
Prin degradare controlată, agentul rămâne util și atunci când nu poate executa. Valoarea arhitecturală nu stă în promisiunea că fluxul nu eșuează niciodată, ci în faptul că eșecul este limitat, explicabil și auditabil.
Observabilitate operațională: decizii, nu volum
Un agent cu execuție verificată nu trebuie monitorizat doar prin numărul de conversații sau prin volumul de mesaje. Observabilitatea relevantă este despre decizii: de ce o cerere a continuat, de ce a fost oprită, ce regulă a fost activată, ce date au lipsit și unde a fost transferat cazul.
Fără observabilitate, fallback-ul, refuzul controlat și transferul uman devin imposibil de evaluat. Sistemul poate părea funcțional la nivel de interfață, dar echipa nu poate înțelege unde apar ambiguități, unde se pierd cereri valide sau unde regulile sunt prea permisive.
Ce se urmărește
Distribuția verdictelor: câte cereri continuă, câte cer clarificare, câte intră în fallback, câte sunt respinse și câte sunt transferate către operator uman.
Motivele opririi: date lipsă, intenție ambiguă, input suspect, context sensibil, lipsă de permisiuni sau sistem operațional indisponibil.
Calitatea clasificării: unde intențiile sunt încadrate corect, unde apar confuzii și unde este nevoie de reguli sau exemple mai bune.
Punctele de fricțiune: pașii în care utilizatorul abandonează, repetă cererea sau nu oferă datele necesare.
Trasabilitatea deciziilor: fiecare continuare, fallback, refuz sau transfer trebuie să poată fi explicat ulterior.
Semnalele de risc: pattern-uri de abuz, prompt injection, cereri out-of-scope sau încercări de acces la informații nepermise.
Ce nu măsurăm ca obiectiv principal
Volumul de chat nu este un indicator suficient pentru un agent operațional. O conversație lungă poate indica fricțiune, nu valoare. O rată mare de automatizare poate fi riscantă dacă acțiunile avansează fără validare. Observabilitatea trebuie să arate calitatea deciziei, nu doar cantitatea interacțiunilor.
Nu optimizăm pentru cât de mult vorbește agentul.
Nu optimizăm pentru automatizare completă fără control.
Nu tratăm fallback-ul ca eșec automat; uneori fallback-ul este comportamentul corect.
Nu introducem praguri sau SLO-uri înainte să existe date reale măsurate.
În acest model, observabilitatea închide bucla arhitecturală: ceea ce sistemul decide trebuie să poată fi verificat, ajustat și auditat. Agentul devine mai controlabil nu prin promisiuni, ci prin capacitatea de a explica fiecare decizie operațională.
Bucla de feedback operațional
După ce agentul începe să proceseze cereri reale, arhitectura trebuie să poată învăța din propriile decizii fără ca modelul să se auto-ajusteze liber. Bucla de feedback operațional folosește evenimentele observate pentru a rafina reguli, clarificări, fallback-uri, permisiuni și trasee de transfer.
Scopul nu este să măsurăm volumul de conversații, ci să înțelegem unde fluxul este prea permisiv, prea restrictiv sau prea ambiguu. Fiecare continuare, clarificare, fallback, refuz sau transfer poate arăta dacă arhitectura are nevoie de reguli mai clare sau de limite mai bune.
Ce alimentează bucla de feedback
Cereri recurente: indică intenții importante care trebuie tratate mai clar în ruter.
Clarificări frecvente: arată unde lipsesc întrebări mai bune sau date minime mai bine definite.
Fallback-uri recurente: indică zone în care perimetrul trebuie explicat mai clar sau extins controlat.
Refuzuri controlate: arată dacă politicile sunt corecte, prea restrictive sau insuficient explicate.
Transferuri către operator: semnalează cazuri sensibile, ambigue sau prea complexe pentru execuție automată.
Decizii de acces limitat: arată unde mascarea, permisiunile sau izolarea trebuie ajustate.
Cum se folosește feedback-ul
Feedback-ul nu trebuie folosit pentru a crește autonomia agentului fără control. El trebuie să ducă la ajustări explicite în arhitectură: reguli mai bune, intenții mai clare, formulări de fallback mai utile, politici de acces mai precise și scenarii de transfer mai bine definite.
Rafinarea intențiilor permise.
Îmbunătățirea întrebărilor de clarificare.
Ajustarea politicilor de fallback și refuz controlat.
Corectarea traseelor care trimit prea repede cereri către operator uman.
Reducerea expunerii inutile de date prin mascare și minimizare.
Documentarea cazurilor care cer reguli noi.
Bucla de feedback închide blueprint-ul operațional: agentul devine mai controlabil nu pentru că primește mai multă libertate, ci pentru că arhitectura înțelege mai bine unde trebuie să permită, să limiteze, să clarifice sau să oprească.
Limitări și anti-patterns
Un agent AI cu execuție verificată reduce riscul ca o intenție probabilistică să producă efecte operaționale necontrolate, dar nu înlătură ambiguitatea, erorile de clasificare sau nevoia de supraveghere umană. Arhitectura trebuie tratată ca un sistem de control, nu ca o promisiune că modelul devine infailibil.
Limitările sunt importante tocmai pentru că agentul operează aproape de date, permisiuni și acțiuni reale. Fiecare componentă - filtrare, rutare, acces, fallback, transfer și audit - trebuie verificată continuu în funcție de contextul operațional.
Limitări
Modelul poate interpreta greșit intenția, mai ales în cereri ambigue, incomplete sau formulate neobișnuit.
Ruterul semantic depinde de un perimetru de intenții bine definit; intențiile noi trebuie adăugate explicit, nu presupuse.
Fallback-ul nu înlocuiește rezolvarea completă a cererii; el limitează riscul atunci când fluxul nu poate continua sigur.
Transferul către operator uman rămâne necesar pentru cereri sensibile, critice sau care cer judecată contextuală.
Controlul accesului depinde de politici corecte, actualizate și aplicate server-side.
Observabilitatea nu îmbunătățește automat agentul; deciziile observate trebuie analizate și transformate în reguli clare.
Anti-patterns
Trimiterea inputului liber direct către backend, fără filtrare, rutare și validare.
Tratarea modelului ca decident final pentru acțiuni cu efect real.
Acces larg la date pentru agent, fără minimizare, mascare sau izolare pe roluri.
Automatizarea completă a cererilor sensibile fără confirmare explicită sau transfer către operator uman.
Fallback generic care ascunde lipsa de date, în loc să explice de ce fluxul nu poate continua.
Lipsa auditului pentru decizii de continuare, refuz, fallback sau transfer.
Promisiuni de tip „agentul nu greșește” sau „automatizare completă”, fără perimetru și verificări reale.
Un blueprint sigur nu încearcă să mute toate incertitudinile în model, ci să limiteze locurile în care incertitudinea poate produce efecte reale. Anti-pattern-ul central este autonomia fără control: un agent care poate interpreta, accesa și executa fără separarea clară dintre intenție, permisiune și acțiune.
Referințe tehnice
Referințele de mai jos sunt folosite ca repere tehnice pentru securitate, control operațional, managementul riscului, observabilitate și politici de acces. Ele nu sunt promisiuni de automatizare completă, ci surse care susțin disciplina arhitecturală a unui agent AI cu execuție verificată.
OWASP
OWASP Top 10 for LLM Applications
Reper pentru riscuri specifice aplicațiilor LLM: prompt injection, output handling nesigur, model denial of service și expunere prin fluxuri generative.
Legăturile interne de mai jos poziționează blueprint-ul în ecosistemul tehnic al site-ului: topologia autorității clarifică rolul entităților, arhitectura HTML-first susține extracția predictibilă, studiile de caz arată aplicarea infrastructurii, iar resursele conexe stabilizează contextul semantic.