Des termes tels que Retrieval Augmented Generation (RAG) et Large Language Models (LLMs) ont récemment attiré l'attention - et ce n'est pas surprenant. L'évolution qui consiste à faire communiquer les hommes avec les machines semble être devenue tout à fait normale. Mais le seul fait de "parler" avec des modèles de langage tels que
- GPT-3
- GPT-4
- GPT-4o
- Llama 2
- Mistral-7B
- et bien d'autres
n'est pas ce qu'il y a d'extraordinaire dans cette situation. Ce qui est extraordinaire, c'est que ces machines - ici des LLM - vous comprennent. Ou pas ?
Essayez-le :
Demandez à un modèle linguistique de votre choix d'expliquer le résultat des derniers sondages électoraux dans la tendance électorale pour les élections fédérales, en tenant compte dans votre réponse des effets positifs et négatifs.
Ça a marché ?
Dans ce billet de blog, nous allons vous montrer des moyens d'obtenir une réponse fiable à des questions comme celles-ci.
Vous avez lu une version traduite automatiquement du post original en allemand.
Limites des LLM pour répondre aux questions
Comprendre le contexte d'une demande d'utilisateur humain n'est pas une simple astuce, mais une approche techniquement très complexe basée sur la combinaison de systèmes de récupération externes (= système de récupération d'informations spécifiques à partir de données stockées) et de grands modèles linguistiques (LLM).
Quelle dimension de l'information les LLM peuvent-ils comprendre et traiter, et laquelle ne le peut pas ?
Dans ce blog post, nous allons examiner de plus près à partir de quel point les LLM échouent à répondre aux questions. Nous vous montrerons également comment des informations en temps réel peuvent être ajoutées aux Large Language Models.
Vous cherchez des informations supplémentaires sur l'utilisation des LLM pour le développement de DocumentGPT de Konfuzio ? Lisez le blog post informatif DocumentGPT - Libérez le pouvoir des LLM pour en savoir plus.
Limites concrètes des LLM
Les modèles linguistiques offrent des gains de productivité et nous aident dans diverses tâches. Mais comme nous l'avons déjà mentionné, il faut savoir que même les LLM basés sur l'IA ont leurs limites. Celles-ci sont particulièrement évidentes lorsque
- des informations en temps réel ou actualisées,
- Informations en temps réel,
- informations privées,
- des connaissances spécifiques au domaine,
- des connaissances sous-représentées dans le corpus de formation,
- les aspects juridiques et
- aspects linguistiques
peuvent être demandés. Demandez par exemple à ChatGPT quel est le taux d'inflation actuel en Allemagne. Vous obtiendrez - comme dans le test ci-dessus - une réponse comme celle-ci :
"Je m'excuse pour la confusion, mais en tant que modèle linguistique d'IA, je ne dispose pas de données en temps réel ni de fonctions de navigation. Mes réponses sont basées sur des informations disponibles jusqu'en septembre 2021. Je ne peux donc pas vous donner le taux d'inflation actuel en Allemagne".
Cette limitation constitue un problème majeur. ChatGPT, comme beaucoup d'autres LLM, n'est pas en mesure de fournir des informations opportunes et contextuelles qui pourraient être essentielles pour prendre des décisions éclairées.
Cette cause se cache derrière les LLM Limits
La raison pour laquelle les LLM sont "coincés" dans le temps et incapables de suivre le rythme du monde qui évolue rapidement est la suivante
Les données de formation et d'information de ChatGPT ont ce que l'on appelle un "point de coupure". Ainsi, si vous interrogez ChatGPT sur des événements ou des développements qui se sont produits après cette date, vous obtiendrez soit
- des informations qui semblent convaincantes mais qui sont complètement fausses, ce qui est connu sous le nom d'"hallucination", ou
- des réponses non objectives avec des recommandations implicites, comme par exemple
"Mes données ne vont que jusqu'à XXXX et je n'ai pas accès aux informations sur les événements qui ont eu lieu après cette date. Si vous avez besoin d'informations sur des événements survenus après septembre 2021, je vous recommande d'accéder à des sources d'information récentes ou à des moteurs de recherche pour suivre les derniers développements".
RAG comme solution pour les propres données de l'entreprise
C'est précisément là qu'intervient la Retrieval Augmented Generation (RAG). Cette approche comble le manque de connaissances des LLM et leur permet de fournir des informations contextuelles et actuelles grâce à l'intégration de mécanismes d'extraction externes.
Dans les sections suivantes, nous expliquons plus en détail le concept de RAG et examinons comment RAG repousse les limites des LLM.
Définition RAG : qu'est-ce que la génération augmentée de récupération ?

Retrieval Augmented Generation - en abrégé RAG - est une méthode utilisée en l'intelligence artificielle (KI) et la traitement naturel du langage, qui vise à améliorer les performances des LLM en intégrant des systèmes d'extraction externes. Cette technique permet d'extraire des données de sources externes, telles que des corpus organisationnels ou des bases de données documentaires, et sert à enrichir les données utilisées pour conditionner le modèle linguistique (LLM). Prompts.
Comment fonctionne Retrieval Augmented Generation ?
RAG utilise la puissance de transformateurs tels que GPT-3 ou GPT-4 en combinaison avec des mécanismes de récupération ou de recherche externes. Au lieu de s'appuyer uniquement sur les connaissances internes du modèle, RAG demande à un ensemble de données externes typiquement un corpus de documents, afin d'obtenir des informations pertinentes. Ces données récupérées sont ensuite utilisées pour générer une réponse contextuelle.
RAG vs. Finetuning
RAG permet aux modèles d'extraire des informations de sources externes afin de mieux comprendre le contexte des demandes des utilisateurs et de générer des réponses plus précises. Il étend les capacités des LLM en les connectant à des bases de connaissances ou à d'autres sources d'information.
Mise au point est un processus par lequel un modèle de base pré-entraîné, tel qu'un Large Language Model, est adapté à des tâches ou des domaines spécifiques. Cela se fait en entraînant le modèle sur une quantité limitée de données d'entraînement spécifiques à la tâche. Au cours du processus de réglage fin, le modèle apprend comment se concentrer au mieux sur une tâche ou un domaine particulier et optimise ses capacités pour cette application spécifique.
La principale différence entre RAG et Finetuning réside dans leur fonctionnement et leur objectif
Le RAG se concentre sur l'amélioration du traitement du langage naturel par l'intégration d'informations externes, ce qui permet au modèle de mieux comprendre le contexte des requêtes et de générer des réponses plus précises. Le finetuning, quant à lui, vise à adapter spécifiquement un modèle de base pré-entraîné à une tâche ou un domaine particulier, en s'appuyant sur une quantité limitée de données d'entraînement.
Les deux méthodes sont utiles, mais elles ont des domaines d'application et des objectifs différents. RAG étend les capacités des LLM en intégrant des informations externes, tandis que le réglage fin vise à les adapter à des tâches ou des domaines spécifiques.
Comparaison RAG - avantages, inconvénients et alternatives
RAG offre une alternative économique et efficace aux méthodes traditionnelles telles que le pré-apprentissage ou la mise au point de modèles de base. RAG permet essentiellement aux grands modèles de langage d'accéder directement à des données spécifiques lorsqu'ils répondent à certaines requêtes. Pour illustrer les différences entre RAG et les alternatives, considérez l'illustration suivante.
Le diagramme radar compare concrètement trois méthodes différentes :
- Pretrained LLM,
- Pretrained + finetuned LLM et
- Prétraité + RAG LLM.

Ce diagramme radar est une représentation graphique de données multidimensionnelles dans laquelle chaque méthode est évaluée en fonction de plusieurs critères, représentés sous forme d'axes dans le diagramme. Les critères comprennent
- Coûts,
- Complexité,
- Connaissances spécifiques au domaine,
- Actualité,
- Explicabilité et
- Éviter les hallucinations.
Chaque méthode est représentée sous forme de polygone dans le diagramme, les sommets du polygone correspondant aux valeurs de ces critères pour la méthode en question.
Par exemple
La méthode "Pretrained LLM" a des valeurs relativement faibles pour le "coût", la "complexité", les "connaissances spécifiques au domaine" et la "prévention des hallucinations", mais une valeur plus élevée pour l'"actualité" et l'"explicabilité".
En revanche, la méthode "Pretrained + finetuned LLM" présente des valeurs plus élevées pour "Cost", "Complexity", "Domain Specific Knowledge" et "Hallucination Avoidance", mais des valeurs plus faibles pour "Actuality" et "Explicability". Enfin, la méthode "Pretrained + RAG LLM" a un modèle unique avec des valeurs élevées pour "Up-to-date", "Explainability" et "Domain specific knowledge".
La méthode "Pretrained + RAG LLM" se caractérise par des connaissances spécifiques au domaine, des informations actualisées, une explicabilité et la prévention des hallucinations. Cela est probablement dû au fait que l'approche RAG permet au modèle d'expliquer les informations à l'aide de structures de graphes, ce qui peut améliorer sa compréhension, éviter les hallucinations et fournir des réponses plus transparentes et plus précises dans certains domaines.
Génération de réponses contextuelles et actuelles avec RAG "how to".
Le processus de Retrieval Augmented Generation (RAG) se compose des 3 étapes suivantes :
- Création d'une base de données vectorielles à partir de données spécifiques à un domaine :
La première étape de la mise en œuvre de RAG consiste à créer une Base de données de vecteurs à partir de vos données propriétaires spécifiques au domaine. Cette base de données sert de source de connaissances dans laquelle RAG puise pour fournir des réponses contextuelles pertinentes. Pour créer cette base de données vectorielle, suivez les étapes suivantes : - Conversion en vecteurs (encastrements) :
Pour rendre vos données spécifiques à un domaine utilisables par RAG, vous devez les convertir en vecteurs mathématiques. Ce processus de conversion est réalisé en faisant passer vos données par un modèle d'intégration, qui est un type particulier de modèle de langage large (LLM). Ces modèles d'intégration sont capables de convertir différents types de données, y compris du texte, des images, de la vidéo ou de l'audio, en tableaux ou en groupes de valeurs numériques. L'important est que ces valeurs numériques reflètent la signification du texte d'entrée, de la même manière qu'une autre personne comprend l'essence du texte lorsqu'elle le prononce à haute voix. - Création de bases de données vectorielles :
Une fois que vous avez obtenu les vecteurs qui représentent vos données spécifiques à un domaine, vous créez une base de données de vecteurs. Cette base de données sert de référentiel pour les informations sémantiquement riches, encodées sous forme de vecteurs. Dans cette base de données, RAG recherche des éléments sémantiquement similaires sur la base des représentations numériques des données stockées.
Le diagramme suivant illustre comment créer une base de données vectorielle à partir de vos données propriétaires spécifiques à un domaine. Pour créer votre base de données vectorielles, vous convertissez vos données en vecteurs en les faisant passer par un modèle d'intégration. Dans l'exemple suivant, nous convertissons des documents Konfuzio (Konfuzio Documents) qui contiennent les dernières informations sur Konfuzio. Les données peuvent être du texte, des images, des vidéos ou de l'audio :

Intégration de connaissances spécialisées rappelées (contexte) dans les LLM
Maintenant que vous avez construit une base de données vectorielles avec des connaissances spécifiques au domaine, l'étape suivante consiste à intégrer ces connaissances dans les LLM. Cette intégration se fait par le biais de ce que l'on appelle une "fenêtre contextuelle".
Imaginez la fenêtre contextuelle comme le champ de vision du LLM à un moment donné :
RAG élargit un LLM grâce à des connaissances spécifiques au domaine, issues de bases de données et des dernières informations disponibles sur Internet.
Cette fenêtre contextuelle permet au LLM d'accéder aux données importantes et de les intégrer. Cela permet de s'assurer que ses réponses sont non seulement cohérentes, mais également correctes d'un point de vue contextuel.
En intégrant des connaissances spécifiques au domaine dans la fenêtre contextuelle du LLM, RAG améliore la qualité des réponses générées. RAG permet au LLM d'accéder aux nombreuses données stockées dans la base de données vectorielles. Ses réponses sont ainsi mieux informées et plus pertinentes par rapport aux demandes de l'utilisateur.
Dans le diagramme ci-dessous, nous représentons le fonctionnement de RAG à l'exemple de "Konfuzio Documents" :

Grâce à notre flux de travail RAG, nous pouvons faire en sorte que notre Large Language Model (générateur) s'en tienne au contenu fiable et déjà vérifié de vos référentiels de connaissances. Ainsi, les demandes des utilisateurs reçoivent des informations pertinentes provenant de sources valides.
Et voilà, le résultat : Génération augmentée de la recherche ! ✅
Mise à jour - Bon à savoir
En plus de l'OCR habituelle, la structure des documents peut être Markdown ne sont pas représentés. Ainsi, même ceux qui ne sont pas LLMs multimodauxLes utilisateurs qui travaillent exclusivement sur du texte comprennent encore mieux les contenus présentés sous forme de titres, de listes, de tableaux et de textes courants. Cela signifie que Konfuzio vous permet d'utiliser Markdown pour présenter vos documents de manière plus compréhensible pour le LLM.
Markdown peut améliorer la précision et la performance de votre pipeline RAG !
La raison en est la propriété Présentation Markdown fournit plus d'informations et de contexte sur les documents qu'auparavant - et ce sous forme de tableaux, d'illustrations, de cases à cocher, etc.
Conclusion
L'intégration croissante des Large Language Models (LLMs) dans notre quotidien a sans aucun doute apporté de nombreux avantages, mais elle se heurte également à des limites. Le défi réside dans le fait que les LLM, tels que GPT-3, GPT-4, Llama 2 et Mistral-7B, ont des difficultés à fournir des informations contextuelles en temps réel, ainsi que des connaissances spécifiques au domaine. Cela constitue un obstacle important, en particulier lorsque des réponses précises et pertinentes sont requises.
Retrieval Augmented Generation (RAG) s'avère être une solution prometteuse à cet égard. RAG permet d'intégrer des systèmes d'extraction externes dans les Large Language Models, ce qui permet à ces modèles d'accéder à de vastes bases de connaissances et à des informations actualisées. Ils peuvent ainsi mieux comprendre les requêtes définies par l'utilisateur et fournir des réponses plus précises et contextuelles.
Alors pourquoi utiliser RAG et ne pas miser sur des approches alternatives ?
- RAG permet de fournir des informations en temps réel et des connaissances actualisées, ce qui est particulièrement important dans les domaines qui évoluent rapidement et pour prendre des décisions éclairées.
- RAG permet d'intégrer des connaissances spécifiques au domaine dans la génération de réponses. Cela est essentiel lorsque des connaissances spécialisées sont requises.
- Contrairement à certaines approches alternatives, RAG offre une méthode plus transparente et compréhensible pour répondre aux questions, car elle se base sur des données et des faits existants.
- RAG minimise la probabilité d'informations fausses ou inventées en ayant recours à des sources externes fiables.
En résumé, Retrieval Augmented Generation comble les lacunes dans les capacités des LLM et permet d'obtenir des réponses fiables à des questions complexes. Cela en fait une méthode prometteuse pour l'avenir de la communication avec les intelligences artificielles et le soutien dans un large éventail d'applications.
Avez-vous des questions ou êtes-vous intéressé par une démonstration de la Konfuzio Infrastructure ?
N'hésitez pas à nous envoyer un message. Notre équipe d'experts se fera un plaisir de vous conseiller.