Menu ☰
rag · · 3 min citire

RAG juridic RO: pipeline PDF-la-citare pentru enterprise

Un consilier juridic din energie a întrebat săptămâna trecută de ce chatbot-ul intern îi returnează articole din Codul fiscal care nu mai există.

CAI Technology · Ultima revizuire: 31.08.2026

Trimite mai departe

Clean editorial portrait of a professional woman in a bright office with soft blue/purple light; no text, no logos, anatomy is correct. Fits an enterprise legal/RAG article co

RAG juridic RO: pipeline PDF-la-citare pentru enterprise

Un consilier juridic din energie a întrebat săptămâna trecută de ce chatbot-ul intern îi returnează articole din Codul fiscal care nu mai există. Răspunsul e mereu același: pipeline-ul nu are evidență de citare la nivel de paragraf, iar retrieval-ul se face pe un dump de PDF-uri fără versionare. Un RAG juridic care nu poate arăta paragraful exact din care a scos afirmația nu e un asistent — e un generator de risc.

Ingest: de la PDF scanat la chunk-uri cu metadate legale

Corpul juridic RO e brutal cu pipeline-urile naive. Legile publicate în Monitorul Oficial apar ca PDF-uri scanate, cu diacritice pierdute și tabele care traversează pagini. OCR-ul cu Tesseract pe fișiere sub 300 DPI ratează sistematic „ă” și „â”. Soluția pe care o rulăm la clienți: preprocesare cu OCRmyPDF la 400 DPI, apoi extracție structurată cu un parser care recunoaște ierarhia Titlu → Capitol → Secțiune → Articol → Alineat → Litera.

Fiecare chunk primește metadate: mo_numar, data_publicare, data_intrare_in_vigoare, articol, alineat, plus versiune_consolidata — pentru că Legea 227/2015 privind Codul fiscal are zeci de modificări cumulate. Fără versionare, modelul citează un alineat abrogat în 2023 ca fiind în vigoare.

chunk_id: L227-2015_art296^1_alin4_v2025-01-01
source_uri: https://legislatie.just.ro/Public/DetaliiDocument/171282
articol: "296^1"
alineat: 4
in_vigoare_de_la: 2025-01-01
in_vigoare_pana_la: null
tokens: 187
embedding_model: bge-m3

Retrieval + generare cu evidență la nivel de propoziție

Un pipeline RAG pentru domeniul juridic nu poate livra un răspuns sintetic fără span-uri de citare. Arhitectura pe care o folosim separă retrieval-ul (hybrid: BM25 + dense pe bge-m3) de o etapă de reranking cu un cross-encoder antrenat pe perechi întrebare-articol RO. Generatorul primește top-k chunk-uri și e forțat printr-un prompt constrângător să emită afirmații însoțite de [chunk_id] — care în UI devin linkuri click-abile către paragraful original.

flowchart TD A[PDF Monitor Oficial] --> B[OCR 400 DPI + parser ierarhic] B --> C[Chunk cu metadate: articol, alineat, versiune] C --> D[Index hybrid: BM25 + bge-m3] E[Întrebare utilizator] --> F[Retrieval top-50 + rerank cross-encoder] D --> F F --> G[Generare cu citare obligatorie per propoziție] G --> H{Chunk citat ∈ context retrieved?} classDef safe fill:#dcfce7,stroke:#10b981 classDef risk fill:#fee2e2,stroke:#ef4444 class C,H safe class G risk

Verificatorul final distinge un demo de producție. Orice propoziție care citează un chunk care NU se află în contextul retrieved e blocată — nu returnată cu disclaimer. Este principiul pe care Lexnomia îl aplică pentru conformitate cu GDPR Art. 5(1)(a) și cu obligațiile de trasabilitate din Directiva (UE) 2022/2555 NIS2, unde răspunderea rămâne la operator conform ghidului ANSPDCP.

Poziția noastră

RAG juridic fără citare la nivel de propoziție e teatru. La CAI construim pipeline-uri unde fiecare afirmație e ancorată în chunk-ul original cu articol, alineat și versiune consolidată — dacă avocatul nu poate face click pe sursă în sub o secundă, sistemul nu pleacă la producție. Dacă vrei să vezi arhitectura completă pe un caz concret, treci pe pagina Lexnomia.

Lectură suplimentară

Începem cu o conversație de 30 de minute.

Audit AI-readiness gratuit pentru companii peste 50 angajați. Răspundem în 24 de ore.