RAG (retrieval-augmented generation)

Představte si Retrieval-Augmented Generation (RAG) jako chytrého asistenta, který si před odpovědí na vaši otázku nejprve bleskově prolistuje relevantní encyklopedii nebo databázi. Místo toho, aby se spoléhal jen na svou naučenou paměť, aktivně vyhledá aktuální a konkrétní informace a teprve na jejich základě zformuluje odpověď. Tímto způsobem jsou jeho odpovědi přesnější, fakticky podložené a méně náchylné k vymýšlení si informací.


Retrieval-Augmented Generation (RAG) je hybridní architektura v oblasti zpracování přirozeného jazyka, která kombinuje schopnosti předtrénovaných jazykových modelů (LM) s externím vyhledávacím mechanismem. Model negeneruje odpověď pouze na základě svých interních, parametricky uložených znalostí, ale nejprve prohledá rozsáhlý korpus dokumentů (například databázi nebo sadu webových stránek) a vyhledá relevantní pasáže textu. Tyto získané informace následně použije jako kontext, ze kterého generuje finální odpověď.

Tento proces se skládá ze dvou hlavních fází: vyhledávání (retrieval) a generování (generation). Ve fázi vyhledávání se uživatelský dotaz převede na numerickou reprezentaci (vektor) a porovná se s předem zaindexovanými dokumenty, aby se našly ty nejpodobnější. Ve fáze generování pak jazykový model, například typu transformer, obdrží původní dotaz spolu s obsahem nalezených dokumentů a na tomto základě zformuluje koherentní a kontextuálně relevantní text. RAG efektivně snižuje riziko halucinací a umožňuje snadnou aktualizaci znalostí modelu prostou obměnou externího datového zdroje.