Čo je RAG?

Definícia

RAG (Retrieval-Augmented Generation) je technika používaná pri veľkých jazykových modeloch, pri ktorej model pred generovaním odpovede najprv vyhľadá relevantné informácie vo vonkajšej databáze alebo dokumentoch a až následne na základe tohto kontextu sformuluje výsledný text.

Popis

Bežný LLM generuje odpovede výlučne na základe toho, čo sa naučil počas trénovania – nemá prístup k aktuálnym alebo interným informáciám, ktoré vznikli až po jeho trénovacích dátach. RAG tento problém rieši tak, že pred generáciou odpovede zapojí vyhľadávací krok: dopyt používateľa sa premení na vektorovú reprezentáciu (embedding), tá sa porovná s databázou dokumentov a model dostane na vstup len tie najrelevantnejšie úryvky.

Vďaka tomuto prístupu môže model odpovedať na otázky o firemných dokumentoch, aktuálnych udalostiach alebo špecifických dátach, s ktorými sa počas trénovania nikdy nestretol. RAG sa preto využíva najmä pri firemných chatbotoch nad internou dokumentáciou, zákazníckej podpore, vyhľadávacích nástrojoch a AI asistentoch, ktoré musia pracovať s presnými a overiteľnými faktami.

Hlavnou výhodou RAG oproti dodatočnému trénovaniu modelu (fine-tuningu) je, že zdrojové dáta stačí uložiť do databázy a pri ich zmene ich netreba znova trénovať do modelu – stačí aktualizovať obsah databázy. Zároveň RAG znižuje riziko takzvaných halucinácií, teda situácií, keď si model fakty vymýšľa, pretože odpoveď stavia na konkrétnych, dohľadateľných zdrojoch.

Kde sa RAG využíva

V praxi sa RAG uplatňuje napríklad pri firemných znalostných databázach (interné wiki, manuály, zmluvy), zákazníckej podpore, ktorá odpovedá na základe aktuálnej dokumentácie k produktu, alebo pri vyhľadávačoch novej generácie, ktoré namiesto zoznamu odkazov ponúkajú priamo promptom vyžiadanú odpoveď doplnenú o citované zdroje.