RAG staat voor Retrieval Augmented Generation. Visueel gezien ziet een basis RAG-pipeline er als volgt uit:
Voordat een retriever zijn werk kan doen, worden documenten opgedeeld in kleine stukken, oftewel “chunks”, die vervolgens klaar worden gemaakt voor opslag in een vectorstore (een specifiek type database). Dit maakt het eenvoudiger om relevante informatie snel te vinden wanneer er een vraag wordt gesteld.
Retrieval in RAG staat voor het ophalen van relevante informatie uit een database op basis van een query. Veelal gebeurt dit middels een voorgetrainde neural retriever (zgn. dense retrieval).
In de generation-stap wordt, op basis van de relevante documenten die zijn opgehaald door de retriever, een antwoord op de query gegenereerd. Het taalmodel combineert de informatie uit de documenten om een onderbouwd antwoord te formuleren.
In de pipeline van LearningLion is er een extra stap toegevoegd om menselijke controle te verhogen. Nadat de retriever relevante informatie heeft opgehaald uit de database, dient de gebruiker te selecteren welke informatie er daadwerkelijk wordt meegegeven aan het taalmodel.