Le RAG (Retrieval Augmented Generation) est une notion importante à comprendre car elle influence les résultats de recherche à nos questions cliniques et permet de distinguer le type de réponse que l'on peut attendre d'un outil d'IA.
Une IA qui serait un LLM pur ne va fonctionner qu'avec les données de son entrainement.
Pour dépasser les limites des données de leur entrainement et pour augmenter l'explicabilité en donnant des références, les LLM modernes combinent maintenant des approches mixtes où ils vont recherche des informations directement sur le web.
Le RAG peut se faire sur l'Internet général (ex. Perplexity configuré web ou même un LLM configuré pour recherche web), sur une base d'articles scientifiques définie (Comme Consensus ou Elicit), sur une base de connaissance (comme OpenEvidence) ou même sur une base de connaissances privée que vous avez créée (comme Notebook LM de Google).
Ci-dessous, une illustration qui illustre les concepts du LLM pur et du RAG, sachant que plusieurs outils modernes combinent les deux.
Pour rechercher les bases de données, les outils modernes utilisent une recherche vectorielle et vont se servir des réponses de leur recherche pour "augmenter" leur requête et générer des réponses plus adéquates liées à des références. C'est ce que l'on appelle la Récupération Augmentée par Génération (RAG).
Voici un schéma ci-dessous qui explique la différence entre la recherche traditionnelle par mots-clés et la recherche vectorielle. Les 2 types de recherche peuvent être combinées dans l'outil.
Un système avec RAG va prendre une requête, transformer cette question en vecteurs (embedding), puis comparer ces vecteurs à une base de vecteurs existante pour trouver les documents les plus pertinents. Ensuite ces documents seront ajoutés comme contexte à la requête du LLM pour générer une meilleure réponse qui pourra être référencée.
Pour des lectures complémentaires, vous pouvez visiter le site de NVIDIA qui explique le RAG. Ce blogue traite aussi du RAG dans la recherche documentaire.