Sari la conținut

RAG sau fine-tuning: arhitectura AI în producție

Cum alegi între RAG, fine-tuning și o arhitectură combinată: actualitatea datelor, drepturi de acces, calitatea căutării și evaluarea erorilor.

Pornește de la problema pe care trebuie să o rezolvi

Un asistent oferă un răspuns bazat pe o politică învechită, generează JSON într-un format inconsecvent și expune un document din contul altui client. Sunt trei defecte diferite. Adăugarea unei baze vectoriale sau antrenarea unui adaptor nu le rezolvă pe toate.

RAG schimbă materialele de referință furnizate la inferență. Fine-tuning modifică comportamentul modelului prin actualizarea parametrilor sau antrenarea unor adaptoare. Autorizarea stabilește ce date și acțiuni poate accesa solicitantul. O arhitectură pentru producție trebuie să trateze separat toate cele trei aspecte.

Cadrul de decizie de mai jos este o propunere de inginerie, ilustrată printr-un asistent ipotetic de suport pentru clienți. Nu prezintă rezultate obținute pentru clienți și nu promite o creștere universală a preciziei.

Stabilește explicit sursa de adevăr

O întrebare despre clauzele contractuale în vigoare trebuie verificată în versiunea aprobată a documentului. O cerere privind starea actuală a livrării trebuie să interogheze sistemul operațional. Clasificarea mesajelor conform taxonomiei unei organizații poate justifica adaptarea modelului pe exemple etichetate, reprezentative.

Ghidul Microsoft despre RAG distinge ancorarea răspunsurilor în date private sau schimbătoare de adaptarea comportamentului prin fine-tuning. În exemplul de suport, colecția de contracte poate alimenta căutarea, iar serviciul de comenzi rămâne sursa de adevăr pentru starea curentă a acestora. Intervalul de actualizare a indexului face parte din cerințele de actualitate: un document nu devine căutabil instantaneu doar pentru că fișierul a fost modificat.

Definește aceste cerințe înainte de a alege infrastructura: ce sistem deține fiecare informație, cât de vechi pot fi datele din răspuns și ce se întâmplă când sursa nu este disponibilă. Astfel eviți construirea unui flux sofisticat care răspunde folosind versiunea greșită a informației.

Construiește căutarea în jurul informațiilor complete

Cercetarea originală despre RAG combină generarea parametrică cu informația recuperată. Într-o aplicație, datele necesare pot fi distribuite între titlul unei secțiuni, un tabel, o excepție și data intrării în vigoare a documentului. Împărțirea exclusiv după un număr arbitrar de tokenuri poate separa regula de condițiile ei.

La pregătirea fragmentelor, păstrează identificatorul documentului, calea secțiunii, versiunea și poziția în sursă. Pentru asistentul ipotetic care lucrează cu contracte, o înregistrare ar putea arăta astfel:

{
  "document_id": "contract-482",
  "version": "approved-7",
  "section": "Cancellation / Exceptions",
  "effective_from": "2026-09-01",
  "tenant_id": "customer-17",
  "text": "...",
  "source_location": "page 8, section 4.2"
}

Numele câmpurilor sunt ilustrative. Rolul lor este să permită verificarea eligibilității, provenienței și actualității în afara modelului. Un link generat către sursă trebuie să deschidă versiunea folosită pentru susținerea afirmației, cu respectarea drepturilor cititorului.

Combină semnalele de căutare și măsoară contribuția lor

Identificatorii exacți, codurile de produs și mesajele de eroare pot necesita potrivire lexicală. Căutarea semantică ajută când utilizatorul exprimă același concept prin alte cuvinte. Un set hibrid de candidați urmat de reranking merită evaluat, dar nu garantează o îmbunătățire.

Cercetarea Anthropic despre Contextual Retrieval explorează adăugarea contextului specific fiecărui fragment și combinarea căutării cu reranking. Rezultatele se referă la configurația studiată. Reproduce comparațiile pe propriul corpus înainte de a adopta aceeași soluție.

Pentru asistentul de suport, compară căutarea exclusiv lexicală, exclusiv vectorială și hibridă pe același set de întrebări, cu aceleași drepturi de acces. Înregistrează dacă rezultatele păstrate conțin informațiile necesare unui răspuns complet. Verifică apoi dacă reranker-ul plasează excepțiile relevante înaintea rezumatelor atrăgătoare, dar incomplete. Mai mulți candidați înseamnă și latență și cost operațional suplimentar.

Contextul lung are în continuare nevoie de selecție și versionare

O fereastră de intrare mare permite modelului să accepte mai mult material, dar nu dovedește că fiecare detaliu va fi folosit corect. Lost in the Middle a arătat că performanța recuperării informației depindea de poziție în modelele și sarcinile evaluate. Este un motiv să testezi amplasarea informației, nu un clasament permanent al modelelor actuale.

Un test ilustrativ de regresie poate plasa aceeași excepție la începutul, mijlocul și sfârșitul unui set de documente. Adaugă o versiune învechită ca element de distragere. Evaluează dacă asistentul aplică regula în vigoare și identifică pasajul justificativ. La schimbarea modelului, repetă testul, fără să preiei automat rezultatul versiunii anterioare.

Aplică drepturile de acces înainte ca datele să ajungă la model

Instrucțiunea „nu dezvălui documentele altui client” nu este un control de acces suficient. Serviciul de căutare trebuie să limiteze documentele eligibile conform drepturilor utilizatorului autentificat, înainte ca textul lor să intre în contextul modelului. Aplicația trebuie să verifice drepturile și la deschiderea surselor citate și la apelarea instrumentelor operaționale.

Documentația Azure AI Search despre accesul la nivel de document include filtre de securitate furnizate de aplicație. Unele integrări native sunt funcționalități preview; verifică stadiul actual al suportului înainte de folosirea în producție. Principiul arhitectural nu depinde de un anumit serviciu de căutare.

Pentru asistentul ipotetic, testele de acces trebuie să includă doi clienți cu contracte similare, drepturi revocate, apartenență moștenită la grupuri și metadate de index învechite. Include identitatea clientului și domeniul drepturilor în cheile de cache ori de câte ori conținutul sau răspunsurile memorate depind de acestea.

Folosește fine-tuning pentru o problemă de comportament măsurată

Ia în calcul fine-tuning dacă modelul aplică repetat greșit o schemă stabilă de clasificare, eșuează la o transformare specifică domeniului sau nu obține prin prompting comportamentul consecvent cerut. Exemplele de antrenare trebuie să reprezinte sarcina vizată, iar exemplele de evaluare trebuie excluse din antrenare.

LoRA este o metodă de adaptare eficientă în privința numărului de parametri: ponderile de bază rămân fixe, iar antrenarea ajustează actualizări de rang redus. Costul mai mic al adaptării nu elimină cerințele de calitate a datelor, versionare și teste de regresie. Nici adaptorul, nici fine-tuning-ul complet nu furnizează implicit drepturi actualizate sau acces la o bază operațională în timp real.

O arhitectură combinată poate recupera pasaje din contractele aprobate și folosi un model adaptat pentru formatul de răspuns necesar. Compară această combinație cu varianta de bază care folosește căutare și un model neadaptat. Dacă problema este în căutare, măsoar-o direct înainte de a o atribui generatorului.

Evaluează separat etapele fluxului

Construiește un set de evaluare care înregistrează întrebarea, domeniul de acces autorizat, versiunea aplicabilă a documentului, informațiile necesare și comportamentul așteptat. Include întrebări la care sursele disponibile nu permit un răspuns. Clarifică și etichetează cazurile ambigue înainte de a compara sistemele.

  • Căutare: materialele păstrate conțin răspunsul complet și aplicabil?
  • Generare: afirmațiile sunt susținute de surse, iar pasajele citate le justifică?
  • Comportament: rezultatul respectă sarcina și schema, inclusiv refuzul justificat sau cererea de clarificări?
  • Acces: a ajuns conținut neautorizat în rezultate, context, cache sau răspuns?
  • Operare: care sunt latența p95, întârzierea indexării și costul per răspuns acceptat?

Separarea permite rapoarte de eroare pe baza cărora poți interveni. „Răspuns greșit” devine „căutarea a returnat excepția învechită” sau „generatorul a ignorat pasajul corect”. Următoarea modificare are astfel un obiectiv precis.

Pentru costurile de calcul și context, citește cum funcționează inferența LLM. Dacă asistentul va executa acțiuni, continuă cu execuția și evaluarea agenților.

Knowledge Base · 10 întrebări tehnice

Analiză tehnică

Analizează deciziile de arhitectură și cazurile de eroare, apoi compară argumentele cu explicația.

01 Ce problemă rezolvă în principal RAG în această arhitectură?

Răspuns

Furnizarea la inferență a unor materiale relevante, autorizate și suficient de actuale. Etapele de căutare și generare trebuie evaluate în continuare.

02 Când este justificat un experiment de fine-tuning?

Răspuns

Când persistă o problemă de comportament stabilă și măsurabilă, precum clasificarea într-un domeniu sau calitatea unei transformări, și există date reprezentative de antrenare și evaluare separată.

03 De ce starea curentă a unei comenzi trebuie preluată, de regulă, printr-un instrument operațional?

Răspuns

Starea de referință se schimbă în sistemul operațional. Un index de documente actualizat periodic poate să nu respecte cerințele de actualitate.

04 De ce păstrăm calea secțiunii și versiunea documentului împreună cu fragmentele?

Răspuns

Ajută la păstrarea domeniului de aplicare al regulii, la separarea informațiilor valabile de cele învechite și la deschiderea sursei în versiunea efectiv utilizată.

05 Ce trebuie verificat înainte ca textul recuperat să intre în contextul modelului?

Răspuns

Aplicația sau serviciul de căutare trebuie să aplice drepturile utilizatorului autentificat asupra documentelor. Promptul de sistem nu este o barieră de autorizare.

06 O citare demonstrează că răspunsul este corect?

Răspuns

Nu. Sursa poate fi învechită, incompletă sau fără legătură cu afirmația. Verifică dacă pasajul citat susține efectiv enunțul.

07 Cum validăm o arhitectură de căutare hibridă?

Răspuns

O comparăm cu variantele lexicală și vectorială pe aceleași întrebări etichetate și aceleași drepturi de acces, măsurând acoperirea informațiilor, ordonarea rezultatelor, latența și costul.

08 Ce merită testat astăzi pornind de la rezultatul Lost in the Middle?

Răspuns

Dacă modelul și sarcina alese rămân fiabile când informația relevantă își schimbă poziția într-un context lung. Rezultatul nu demonstrează un comportament identic pentru toate modelele actuale.

09 Ce modifică LoRA în timpul adaptării?

Răspuns

Antrenează actualizări de rang redus, păstrând fixe ponderile modelului de bază. Nu conectează automat modelul la datele actuale ale companiei sau la drepturile de acces.

10 De ce evaluăm separat căutarea și generarea răspunsului?

Răspuns

Un pasaj lipsă sau învechit necesită alt remediu decât un generator care folosește greșit informația corectă. Măsurătorile separate identifică etapa responsabilă.

Surse și lecturi suplimentare

Toate articolele