RAG pentru HR: același răspuns nu e corect pentru toți

Un asistent pe politici de personal trebuie să răspundă diferit fiecărui angajat. Profil de eligibilitate, ierarhia CCM și prospețimea normelor.

Andrei Badulescu
Andrei Badulescu25 iulie 2026 · Actualizat 24 august 2026 · 18 min citit
Ilustrație pentru un asistent RAG de HR: aceeași întrebare rutată spre răspunsuri diferite după profilul angajatului

„Câte zile de concediu de odihnă am dreptul pe an?” Întrebarea pare banală. Într-o companie cu o singură entitate, un singur tip de contract și niciun contract colectiv aplicabil, chiar este: scrie în politica de concedii, sistemul o găsește, o citează, gata.

Într-o companie cu trei entități juridice, un CCM la nivel de unitate semnat anul trecut, personal preluat printr-un transfer de întreprindere și un sfert din oameni pe contracte cu timp parțial, aceeași întrebare are patru răspunsuri corecte simultan. Care dintre ele e corect pentru omul care întreabă depinde de contractul lui, nu de formularea întrebării.

Ăsta e primul caz de utilizare din serie în care corectitudinea unui răspuns de RAG nu se decide la retrieval. Se decide înainte: în momentul în care afli cine întreabă. Dacă vrei mecanica de bază a retrievalului, ce este RAG și când îl folosești acoperă fundamentele. Articolul de față tratează ce se schimbă când documentul găsit e corect, dar nu e al tău.

Ce se schimbă când răspunsul depinde de cine întreabă

Într-un asistent de suport, întrebările diferă și răspunsul e unul singur. Aici întrebarea e una singură și răspunsurile diferă. Inversarea asta schimbă arhitectura, nu doar promptul.

Trei întrebări care arată identic și nu sunt

Întrebarea angajatuluiCe pare că întreabăDe ce depinde de fapt răspunsul
Câte zile de concediu am?O cifră din politicăVechime, normă de lucru, CCM aplicabil, entitatea angajatoare
Ce preaviz am la demisie?O regulă din Codul munciiFuncția (execuție sau conducere), clauza din CIM, CCM aplicabil
Am dreptul la o mărire?O politică de compensațiiData încheierii CIM, nivelul salarial actual, grila entității

Niciuna dintre coloanele din dreapta nu se află în corpusul de documente. Toate se află în sistemul de HR și salarizare. Documentul spune regula; datele spun care variantă a regulii ți se aplică ție.

Cheia răspunsului stă în contractul individual, nu în întrebare

Există un detaliu de legislație românească pe care merită să-l cunoști înainte să proiectezi ceva: contractul individual de muncă indică explicit ce contract colectiv reglementează condițiile de muncă ale salariatului. Codul muncii, la articolul 17, enumeră printre elementele obligatorii de informare tocmai „indicarea contractului colectiv de muncă ce reglementează condițiile de muncă ale salariatului”.

Practic, cheia de rezolvare nu trebuie inventată. Ea există deja, într-un câmp dintr-un document pe care compania îl are pentru fiecare angajat. Problema nu e că informația lipsește, ci că nimeni nu a modelat-o vreodată ca pe un atribut de filtrare.

De ce nu e același lucru cu un helpdesk intern

Un asistent de helpdesk rezolvă o problemă de rutare: întrebarea despre stare personală pleacă spre HRIS, întrebarea despre procedură rămâne la retrieval. Fluxul acela e tratat în detaliu în RAG pentru helpdesk intern și nu are rost reluat.

Aici problema e cu un strat mai jos. Chiar și după ce ai decis că întrebarea e „despre reguli, deci retrieval”, nu știi încă în ce corpus să cauți. Regula are variante, iar varianta corectă se alege pe atributele omului. Rutarea e rezolvată; rezolvarea de drept nu e.

Ierarhia de norme: politica de concedii nu e un singur document

Cea mai frecventă greșeală de proiectare e să tratezi corpusul de HR ca pe o bibliotecă plată de politici. Nu e. E un teanc de straturi care se suprapun, cu o regulă de precedență care contează juridic.

Cinci straturi, cu o regulă de neinferioritate

De sus în jos: legislația muncii, contractul colectiv la nivel național, cel la nivel de sector de negociere colectivă, cel la nivel de grup de unități, cel la nivel de unitate, apoi contractul individual, regulamentul intern și deciziile interne.

Regula care leagă straturile: contractele colective nu pot conține clauze care stabilesc drepturi sub nivelul contractului colectiv aplicabil încheiat la nivel superior, iar contractele individuale nu pot coborî sub nivelul contractelor colective aplicabile. Cu alte cuvinte, fiecare strat poate doar să adauge, niciodată să scadă.

Consecința pentru un sistem de retrieval: un chunk dintr-o politică internă poate fi perfect relevant semantic și, în același timp, depășit de o clauză dintr-un CCM pe care sistemul nu l-a indexat. Documentul nu e greșit. E doar incomplet ca răspuns.

Cine e acoperit de contractul colectiv de sector

Aici stă partea contraintuitivă. Un contract colectiv la nivel de sector nu se aplică automat tuturor angajatorilor din sector. Se aplică angajatorilor membri ai organizațiilor patronale semnatare și celor care au aderat ulterior.

Legea dialogului social prevede și un mecanism de extindere: dacă numărul de angajați din unitățile membre ale organizațiilor patronale semnatare depășește 35% din totalul angajaților din sectorul de negociere, aplicarea contractului poate fi extinsă la toate unitățile din sector, cu avizul conform al Consiliului Național Tripartit și prin hotărâre de guvern. Fără această extindere, contractul rămâne aplicabil doar semnatarilor și aderenților.

Tradus în cerințe tehnice: apartenența la un CCM de sector e un atribut al angajatorului, nu al documentului. Două entități din același grup, cu același obiect de activitate, pot fi acoperite diferit. Iar un asistent care nu știe asta va cita cu încredere o clauză care nu se aplică jumătate din oamenii care întreabă.

Ierarhia normelor de personal, de la lege până la decizia internă, cu cheile care decid ce se aplică fiecăruia

Ce înseamnă asta pentru corpus

Fiecare document normativ intră în index cu un set de chei de aplicabilitate, nu doar cu un titlu și o dată: entitatea sau entitățile acoperite, categoriile de personal vizate, perioada de valabilitate, nivelul din ierarhie și, acolo unde există, actul pe care îl modifică sau îl înlocuiește.

Fără cheile astea, filtrarea la retrieval e imposibilă și rămâi cu singura soluție proastă: să speri că modelul deduce din text cui i se aplică documentul. Nu deduce. Documentele normative sunt scrise pentru cititori care își cunosc situația, nu pentru sisteme care trebuie să o afle.

Rezolvarea de drept nu e retrieval, e o interogare pe date de personal

Aici e diferența de arhitectură față de orice alt caz din serie. Pasul care decide corectitudinea nu e căutarea semantică. E construirea profilului de eligibilitate al persoanei care întreabă, înainte de căutare.

Profilul de eligibilitate: ce trebuie să știi despre om

Un set minim, în ordinea în care contează:

  • Entitatea angajatoare — care persoană juridică, nu care brand. Grupurile confundă frecvent cele două.
  • Tipul de contract — durată nedeterminată sau determinată, normă întreagă sau timp parțial, contract de muncă temporară.
  • CCM-ul aplicabil — din câmpul care există deja în CIM.
  • Vechimea și data încheierii contractului — determină praguri de drepturi și termene.
  • Funcția și nivelul ierarhic — separă, de exemplu, regimul de preaviz.
  • Locul de muncă și regimul de lucru — telemuncă, muncă la domiciliu, regim mobil, punct de lucru într-un alt județ.

Nimic din lista asta nu e exotic. Toate există în sistemul de HR. Ce lipsește aproape peste tot e expunerea lor ca atribute interogabile în momentul întrebării, cu identitatea angajatului propagată de la autentificare, nu declarată de el în chat.

Trei tipuri de răspuns, nu unul

Merită separate explicit, pentru că cer implementări diferite.

Regula aplicabilă. „Care e termenul de preaviz în cazul meu?” Se rezolvă prin filtrare pe profil, apoi retrieval în subsetul rămas. Răspunsul e text, cu citare.

Valoarea individuală. „Câte zile mai am de consumat?” Nu se rezolvă din documente. Vine dintr-un system of record, prin apel. E același tipar descris în RAG pentru finanțe și raportare, unde regula e text și cifra stă în sistemul contabil. Aici sistemul de adevăr e HRIS-ul și aplicația de salarizare.

Combinația. „Câte zile mai am și până când trebuie să le consum?” Cere un pas de interogare și unul de retrieval, sintetizate într-un singur răspuns — teritoriul din agentic RAG și multi-hop.

Tentația e să tratezi totul ca pe primul tip, pentru că e cel mai ieftin de construit. Rezultatul e un asistent care răspunde cu media, într-un domeniu unde media nu se aplică nimănui.

Fluxul de rezolvare: identitate, profil de eligibilitate, filtrare a corpusului și răspuns individualizat

Ce faci când profilul e incomplet

Se va întâmpla des la început: integrarea cu HRIS-ul nu e gata, un câmp lipsește pentru o parte din angajați, entitatea nu e mapată corect după o fuziune.

Comportamentul corect nu e răspunsul generic. E răspunsul condiționat, explicit: sistemul spune ce regulă se aplică în fiecare variantă, spune de ce atribut depinde alegerea și indică unde se verifică. „Dacă ești pe normă întreagă, se aplică X; dacă ești pe timp parțial, se aplică Y; nivelul tău e în contractul individual, secțiunea Z.” Un răspuns care își arată dependențele e utilizabil. Unul care alege singur o variantă și nu spune că a ales e periculos. Anatomia unui răspuns care refuză bine e detaliată în ce înseamnă un răspuns bun de RAG, iar pragul de la care problema nu mai e de retrieval e discutat în când NU folosești RAG.

Datele personale sunt chiar în documentele normative

În alte cazuri de utilizare, datele cu caracter personal apar accidental: un nume într-un tichet, un e-mail într-un contract. În HR, ele sunt structural în interiorul documentelor pe care vrei să le indexezi.

Anexe, grile, liste nominale

O decizie de acordare a unui spor conține numele beneficiarilor. O anexă la un CCM conține grila de încadrare. Un act adițional colectiv poate lista persoanele vizate. Documentul e normativ prin natura lui și conține date personale prin construcție.

Consecința e că segmentarea nu se mai face doar pe rol, cum e cazul în controlul accesului în RAG. Se face și pe subiectul datelor: un chunk care conține date despre o persoană anume trebuie să fie vizibil pentru acea persoană și pentru rolurile de HR îndreptățite, nu pentru orice angajat cu același rol funcțional.

În practică asta înseamnă două lucruri. Documentele mixte se separă la ingestie: partea normativă intră în corpusul general, anexa nominală intră cu restricție pe subiect sau nu intră deloc. Iar filtrarea se aplică la retrieval, ca predicat pe interogare, nu ca instrucțiune în prompt — un document ajuns în context a fost deja citit.

O scurtătură frecventă în proiectele interne: „cerem acordul angajaților și rezolvăm partea de conformitate”. Nu funcționează așa. Grupul de lucru al autorităților europene de protecția datelor a stabilit, în opinia sa privind prelucrarea datelor la locul de muncă, că din cauza dezechilibrului de putere din relația de muncă, consimțământul angajatului nu poate fi, în majoritatea situațiilor, un temei valabil; se folosesc alte temeiuri, precum executarea contractului sau obligațiile legale ale angajatorului.

Ce înseamnă practic: temeiul se stabilește pe finalitate, nu pe un formular semnat la angajare. Detaliile de implementare — minimizare, retenție, drepturile persoanei vizate — sunt tratate în RAG și GDPR.

Ce nu intră în corpus, indiferent de permisiuni

Există documente pentru care beneficiul de a fi căutabile e mic, iar riscul e disproporționat: dosarele disciplinare deschise, evaluările individuale, sesizările, documentele medicale, rapoartele de investigație internă. Un asistent care nu le are indexate rămâne util în peste nouăzeci la sută din întrebări și scoate din ecuație clasa de incidente cea mai greu de explicat.

Regula simplă de decizie: dacă un document ar trebui văzut de o singură persoană din companie, nu are ce căuta într-un index partajat, oricât de bun ar fi filtrul.

Dosarul de competență al aceluiași om — atestări, autorizări, domenii și termene de valabilitate — e un corpus separat, cu întrebări și cu reguli proprii: RAG pe competențe și autorizări.

RAG pe documentația SSM acoperă un al treilea corpus despre același angajat, cu o proprietate pe care celelalte două nu o au: lipsa unei fișe semnate nu e un gol de date, ci chiar fapta sancționabilă.

Legea se mișcă sub corpus

Al patrulea front e cel mai neglijat. Într-un corpus de HR românesc, o parte din documente descriu corect starea de ieri a unei norme care s-a schimbat între timp — sau care e contestată chiar acum în instanță. Trei exemple din 2026, verificate la data publicării.

Registrul de evidență a salariaților

De la 1 ianuarie 2026, evidența salariaților se face exclusiv în REGES-Online, care a înlocuit complet vechiul Revisal. Orice procedură internă care mai spune „se transmite în Revisal” e literalmente greșită.

Dar povestea nu se oprește acolo, și aici devine interesantă. Curtea de Apel Constanța a pronunțat Hotărârea nr. 83/2026, prin care a anulat integral hotărârea de guvern care reglementează REGES-Online. Decizia nu e definitivă, urmează recursul, iar cererea de suspendare a fost respinsă — ceea ce înseamnă că obligațiile rămân aplicabile. Avocații care au analizat situația formulează concluzia fără ambiguitate: până la rămânerea definitivă a hotărârii de anulare și în lipsa unei suspendări, actul trebuie considerat în continuare aplicabil.

Un sistem care indexează doar textul procedurilor nu are cum să reproducă nuanța asta. Un sistem care indexează și starea fiecărei norme poate.

Transparența salarială

Termenul de transpunere a directivei europene privind transparența salarială a fost 7 iunie 2026. România nu îl respectase la acea dată: proiectul de lege a fost publicat de Ministerul Muncii în martie 2026 și a ajuns la Senat, iar analizele de la începutul lui iulie estimau adoptarea abia în toamnă.

Consecința pentru corpus: politica internă care spune că salariul este confidențial, invocând articolul 163 din Codul muncii, e corectă azi. Va deveni parțial greșită în ziua în care legea de transpunere intră în vigoare — iar documentul din index nu va anunța pe nimeni.

Salariul minim

Prin hotărârea de guvern nr. 146/2026, salariul de bază minim brut garantat în plată a crescut de la 4.050 lei la 4.325 lei începând cu 1 iulie 2026. Orice document intern care conține cifra veche a devenit greșit peste noapte, la o dată cunoscută dinainte.

Aici apare și un exemplu excelent de răspuns care trebuie individualizat: salariul minim poate fi acordat unui salariat pentru cel mult 24 de luni de la încheierea contractului individual, după care i se cuvine un salariu de bază superior. Întrebarea „am dreptul la o mărire?” are, deci, un răspuns care depinde de o dată din contractul persoanei — nu de o politică.

Starea unei norme în timp: în vigoare, modificată la o dată știută, contestată în instanță sau cu termen expirat

Data de valabilitate ca metadată de prim rang

Din cele trei exemple ies patru cerințe concrete pentru corpus.

Fiecare document normativ primește o perioadă de valabilitate cu început și, unde se cunoaște, sfârșit. O modificare programată se indexează înainte de a produce efecte, marcată ca viitoare, ca sistemul să poată răspunde corect la „de la 1 iulie cum e?”. Documentele înlocuite nu se șterg — se marchează ca istorice și rămân căutabile pentru întrebări despre trecut. Iar normele aflate în litigiu primesc un marcaj de incertitudine care obligă sistemul să escaladeze, nu să răspundă categoric.

Mecanica de versionare, ștergeri și reindexare e tratată separat în prospețime, ștergeri și reindexare. Ce e specific aici e cine deține procesul: fără un om din HR sau juridic care semnalează schimbările, metadatele de valabilitate rămân la valoarea din ziua ingestiei.

Un răspuns greșit despre un drept nu e doar dezinformare

În suportul tehnic, un răspuns greșit produce o încercare eșuată și un tichet. În HR, produce o așteptare. Angajatul care a citit că are dreptul la cinci zile suplimentare își face planuri, iar corectarea ulterioară nu se mai negociază tehnic, ci relațional.

Formularea condiționată nu e slăbiciune

Un răspuns bun de HR arată altfel decât unul de suport. Spune regula, spune de ce depinde, spune ce sursă a folosit și ce dată are sursa, apoi spune explicit cine confirmă. „Conform politicii X, valabilă de la data Y, pentru contractele pe normă întreagă din entitatea Z se acordă N zile. Confirmarea pentru situația ta se face de HR Operations.” Formularea asta pare defensivă. În realitate e singura care rămâne corectă și când profilul e incomplet, și când norma s-a schimbat între timp.

Escaladarea ca parte din răspuns, nu ca eșec

Un asistent de HR care escaladează douăzeci la sută din întrebări nu e un asistent slab. E unul calibrat. Restul de optzeci la sută sunt întrebări la care oricum nimeni nu avea timp să răspundă de trei ori pe zi.

Ce contează e forma escaladării: nu „nu știu”, ci contextul deja adunat — întrebarea, profilul relevant, documentele candidate — trimis către persoana potrivită. Aceeași logică de trasabilitate a răspunsului e detaliată în RAG pentru conformitate și audit intern.

Cum evaluezi un RAG de HR care răspunde diferit fiecăruia

Setul clasic de evaluare, cu perechi de întrebare și răspuns corect, nu funcționează aici. Aceeași întrebare are mai multe răspunsuri corecte, iar un set care conține doar unul dintre ele penalizează sistemul exact când se comportă bine.

Setul de evaluare se construiește pe persoane

Unitatea de test nu e întrebarea, ci perechea dintre persoană și întrebare. Construiești zece-cincisprezece profiluri sintetice care acoperă combinațiile reale din companie — entitate, tip de contract, vechime, CCM aplicabil, regim de lucru — și rulezi același set de întrebări pentru fiecare.

Efectul secundar e util imediat: matricea rezultată arată unde politica internă chiar nu spune nimic pentru o categorie de personal. De obicei descoperi câteva goluri reale înainte să pui sistemul în producție.

Trei metrici care contează

Pe lângă instrumentarul standard din metricile de evaluare RAG, trei măsurători sunt specifice acestui caz.

Acuratețea de aplicabilitate. Din răspunsurile date, câte au citat norma corectă pentru profilul respectiv. E metrica principală și nu are echivalent în alte cazuri de utilizare.

Rata de scurgere între segmente. Câte răspunsuri au inclus conținut dintr-un document care nu era vizibil pentru profilul respectiv. Ținta e zero, iar orice abatere e un incident, nu o eroare de calitate.

Rata de refuz corect. Din întrebările pentru care sistemul nu avea profil suficient sau norma era incertă, câte au primit un răspuns condiționat sau o escaladare, în loc de o afirmație categorică.

Ce urmărești după lansare

Două semnale merită monitorizate săptămânal. Întrebările care primesc răspuns pentru un profil și escaladare pentru altul — de obicei indică un document fără chei de aplicabilitate complete. Și distribuția întrebărilor pe categorii de personal: dacă o categorie nu apare deloc, fie nu are acces, fie nu are încredere. Ambele sunt probleme, dar se rezolvă complet diferit.

Întrebări frecvente

Pot porni fără integrare cu sistemul de HR?

Da, dar cu așteptări corect setate. Fără profil, sistemul răspunde condiționat: enumeră variantele, arată de ce atribut depinde alegerea și trimite la sursa unde angajatul își verifică situația. E util pentru întrebările despre reguli generale și inutil pentru cele despre drepturi individuale. Integrarea nu e opțională pe termen mediu, e doar amânabilă la început.

Cum tratez perioada de tranziție dintre două contracte colective?

Ca pe un interval, nu ca pe o comutare. Indexează ambele documente cu perioadele lor de valabilitate și lasă sistemul să aleagă în funcție de data la care se referă întrebarea, nu de data curentă. O întrebare despre o zi de concediu neconsumată din anul trecut se rezolvă cu norma de anul trecut.

E același proiect cu asistentul de onboarding?

Se suprapun ca surse, nu ca mecanică. Un asistent de onboarding construiește un parcurs și explică cum funcționează compania — subiect tratat în RAG pentru onboarding și training. Un asistent de politici de personal rezolvă un drept individual, cu profil, filtrare și trasabilitate. Al doilea poate să-l alimenteze pe primul; invers, nu.

Ce fac cu documentele care există doar în format scanat?

Contractele colective semnate și actele adiționale vechi sunt frecvent PDF-uri scanate. Tratează-le ca pe orice document juridic cu structură: extragere cu recunoaștere de text, apoi verificare umană pe secțiunile care conțin cifre și termene. Constrângerile sunt aceleași descrise în RAG pe contracte și documente juridice — o cifră citită greșit dintr-o grilă e mai rea decât absența documentului.

Cine ar trebui să dețină corpusul?

HR-ul deține conținutul, juridicul validează normele externe și starea lor, iar echipa tehnică deține metadatele și pipeline-ul. Fără primele două roluri numite explicit, cu nume de om și un ritm de revizuire, sistemul se degradează în șase luni la nivelul unui folder partajat cu politici vechi.

Cum împiedic sistemul să dea sfaturi juridice?

Prin proiectarea răspunsului, nu prin instrucțiuni în prompt. Sistemul citează documente interne și norme, cu dată și sursă, și nu interpretează situații particulare. Orice întrebare care conține o situație individuală atipică — un litigiu în curs, o suspendare, o solicitare de compensare — merge direct pe escaladare, indiferent ce documente ar găsi retrievalul.


Un asistent pe politici de personal se construiește în ordinea asta: întâi profilul de eligibilitate, apoi cheile de aplicabilitate ale documentelor, apoi segmentarea pe subiect de date, apoi prospețimea normelor. Retrievalul e ultimul, și e partea deja rezolvată.

Restul cazurilor enterprise documentate stau în cazuri de utilizare enterprise, stratul de permisiuni are propriul index în control acces RAG, iar imaginea completă a unui sistem livrat end-to-end e în hub-ul de soluții AI și RAG. Dacă pornești mâine, începe cu o singură întrebare: care sunt atributele care schimbă răspunsul în compania ta. Restul decurge de acolo.

Surse

  1. HG nr. 295/2025 privind REGES, anulată în primă instanță: ce trebuie să știe acum angajatoriiJURIDICE.ro, 2026
  2. Transparența salarială capătă reguli noi. Proiectul de lege extinde obligațiile și riscurile pentru angajatoriCapital.ro, 2026
  3. Salariul de bază minim brut pe țară garantat în plată se majorează la 4.325 lei lunar, începând cu 1 iulie 2026Ministerul Muncii, Familiei, Tineretului și Solidarității Sociale, 2026
  4. Art. 110 — Încheierea contractelor colective de muncă, Legea nr. 367/2022 privind dialogul socialLege5, 2026
  5. Prevederile Legii nr. 367/2022 privind dialogul social (partea a III-a)Inspectoratul Teritorial de Muncă Bihor, 2025
  6. Codul muncii, art. 17 — Informarea cu privire la clauzele contractului de muncăRubinian, 2026
  7. Article 29 Working Party publishes opinion regarding data processing at work (Opinion 2/2017)Bird & Bird, 2017
Distribuie
Andrei Badulescu
Despre autor

Andrei Badulescu

Fondator & Software Architect

Construiește sisteme B2B la BaseTech — ERP la comandă, platforme SaaS, agenți AI și arhitecturi programmatic SEO. Scrie despre deciziile tehnice din spatele lor: stack, trade-off-uri și ce ține la scară.

Vezi profilul autorului →
Continuă
Newsletter

Insights pentru companii
care construiesc

Articole noi despre ERP, AI, agenți și pSEO, direct pe email. Fără spam.