Dévoiler Retrieval Augmented Generation (RAG) | Où l’IA rencontre la connaissance humaine
Dévoiler Retrieval Augmented Generation (RAG) | Quand l'IA rencontre l'intelligence humaine
Introduction
Dans notre monde numérique rapide, l’intelligence artificielle ne cesse de nous étonner par ses remarquables capacités. L’une de ses dernières avancées est le Récupération Augmentée Génération, affectueusement appelé RAG. Cette innovation est comme un magicien numérique qui combine les compétences d’un bibliothécaire et d’un écrivain. Elle est destinée à changer la façon dont nous trouvons et interprétons l’information, promettant un avenir où l’accès au savoir sera plus facile et plus perspicace que jamais.
Objectifs d’apprentissage
- Comprendre les concepts fondamentaux de la Récupération Augmentée Génération (RAG).
- Comprendre comment RAG combine des approches d’intelligence artificielle de récupération et de génération.
- Comprendre le fonctionnement interne de RAG, de la requête à la réponse.
- Reconnaître l’importance de RAG en termes d’efficacité et de personnalisation.
- Découvrir les différentes applications de RAG dans différents domaines.
- Envisager les développements futurs et l’impact de la technologie RAG.
- Apprécier comment RAG comble le fossé entre les vastes connaissances numériques et l’interaction humaine.
Cet article a été publié dans le cadre du Blogathon de la science des données.
Qu’est-ce que RAG?
Commençons par les bases. RAG combine deux approches d’intelligence artificielle distinctes :
- Visualisez les plages de données avec Matplotlib
- Les vents du changement Comment l’IA générative révolutionne la cybersécurité
- Une comparaison pratique des versions gratuites de ChatGPT et Bard

Récupération
Imaginez une bibliothèque numérique qui contient toutes les connaissances humaines. L’intelligence artificielle de récupération a la capacité étonnante de trouver rapidement les informations les plus pertinentes en réponse à une requête. C’est comme avoir un bibliothécaire personnel qui peut trouver le livre parfait pour votre question.
Intelligence de sélection, qui fait partie du processus de récupération, consiste à choisir les informations les plus pertinentes parmi un ensemble de documents récupérés. Voici un extrait de code illustrant ce concept:
from sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.metrics.pairwise import cosine_similaritydocuments = [ "L'apprentissage automatique est une sous-catégorie de l'intelligence artificielle.", "Le deep learning est un type d'apprentissage automatique.", "Le traitement du langage naturel est utilisé dans les applications d'IA.",]# Requête de l'utilisateurquery = "Parlez-moi de l'apprentissage automatique."tfidf_vectorizer = TfidfVectorizer()tfidf_matrix = tfidf_vectorizer.fit_transform([query] + documents)# Calcul de la similarité cosinus entre la requête et les documentscosine_similarities = cosine_similarity(tfidf_matrix[0:1], tfidf_matrix[1:]).flatten()# Trie des documents selon le score de similaritémost_similar_document = documents[cosine_similarities.argmax()]# Affichage du document le plus pertinentprint("Document le plus pertinent :", most_similar_document)
Cet extrait de code montre comment l’intelligence de sélection fonctionne dans le processus de récupération. Il utilise des vecteurs TF-IDF et la similarité cosinus pour sélectionner le document le plus pertinent d’un ensemble en fonction d’une requête de l’utilisateur.
Génération
À l’inverse, l’intelligence générative peut rédiger du texte de manière étrangement similaire à celle d’un être humain. Elle peut rédiger des essais, construire des dialogues conversationnels ou même générer des vers poétiques. Pensez-y comme à un écrivain habile, prêt à composer du texte sur n’importe quel sujet.
import torchfrom transformers import GPT2LMHeadModel, GPT2Tokenizer# Chargement du modèle pré-entraîné et du tokenizermodel_name = "gpt2"model = GPT2LMHeadModel.from_pretrained(model_name)tokenizer = GPT2Tokenizer.from_pretrained(model_name)# Saisie de l'utilisateurprompt = "Il était une fois"# Encodage de la saisie en tenseurinput_ids = tokenizer.encode(prompt, return_tensors="pt")# Génération de texteoutput = model.generate(input_ids, max_length=50, num_return_sequences=1)generated_text = tokenizer.decode(output[0], skip_special_tokens=True)print("Texte généré :", generated_text)
Cet extrait de code illustre l’intelligence de génération, où un modèle pré-entraîné GPT-2 génère du texte en fonction de la saisie de l’utilisateur. Il simule la façon dont RAG crée des réponses similaires à celles d’un être humain. Ces extraits illustrent les aspects de sélection et de génération de RAG, qui contribuent ensemble à la création de réponses intelligentes et contextuelles.
IA de Sélection : Composant critique des systèmes tels que RAG
L’IA de Sélection est un composant critique des systèmes comme RAG (Retrieval Augmented Generation). Elle aide à choisir les informations les plus pertinentes parmi un ensemble de documents récupérés. Explorons un exemple en temps réel de l’IA de Sélection en utilisant un extrait de code simplifié.
Scénario : Imaginez que vous construisiez un système de question-réponse qui récupère des réponses à partir d’une collection de documents. Lorsqu’un utilisateur pose une question, votre IA de Sélection doit trouver la réponse la plus adaptée parmi les documents.
Voici un extrait de code Python de base illustrant l’IA de Sélection en action :
from sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.metrics.pairwise import cosine_similarity# Exemples de documents (base de connaissances)documents = [ "L'apprentissage automatique est une sous-catégorie de l'intelligence artificielle.", "Le deep learning est un type d'apprentissage automatique.", "Le traitement du langage naturel est utilisé dans les applications d'IA.",]# Requête utilisateuruser_query = "Qu'est-ce que le deep learning ?"# Créer des vecteurs TF-IDF pour les documents et la requêtetfidf_vectorizer = TfidfVectorizer()tfidf_matrix = tfidf_vectorizer.fit_transform([user_query] + documents)# Calculer la similarité cosinus entre la requête utilisateur et les documentscosine_similarities = cosine_similarity(tfidf_matrix[0:1], tfidf_matrix[1:]).flatten()# Trier les documents par score de similaritémost_similar_document_index = cosine_similarities.argmax()most_similar_document = documents[most_similar_document_index]# Afficher le document le plus pertinent en tant que réponseprint("Requête utilisateur :", user_query)print("Document le plus pertinent :", most_similar_document)
Dans cet exemple, nous utilisons l’IA de Sélection pour répondre à la question d’un utilisateur sur le deep learning. Nous établissons une base de connaissances, générons des vecteurs TF-IDF pour évaluer l’importance des mots, et calculons la similarité cosinus pour identifier le document le plus pertinent. Le système fournit ensuite le document le plus adapté en tant que réponse, démontrant ainsi la praticité de l’IA de Sélection dans la recherche d’informations.
Cet extrait de code représente un exemple simplifié de l’IA de Sélection. En pratique, des techniques plus sophistiquées et des collections de documents plus vastes sont utilisées, mais le concept fondamental reste le même : choisir les meilleures informations en fonction de leur pertinence par rapport à la requête de l’utilisateur.
Relation entre les Grands Modèles de Langage (LLM) et RAG
LLM, ou Grands Modèles de Langage, est une catégorie plus large de technologies d’IA qui comprend des modèles tels que GPT-3 (Generative Pre-trained Transformer 3). Bien que les LLMs partagent certaines similitudes avec RAG (Retrieval Augmented Generation) en termes de traitement du langage naturel et de génération de texte, ils servent à des fins différentes. RAG se concentre spécifiquement sur la combinaison des techniques d’IA de récupération et de génération pour fournir des réponses contextuelles. Il excelle dans les tâches où il faut récupérer des informations à partir d’une vaste base de données, puis générer des réponses cohérentes basées sur ces données récupérées.
En revanche, les LLMs, comme GPT-3, sont principalement des modèles génératifs. Ils peuvent générer du texte semblable à celui d’un être humain pour diverses applications, telles que la génération de contenu, la traduction de langues et le complètement de texte. Les LLMs et RAG sont liés car ils impliquent la compréhension et la génération de langage. Cependant, RAG se spécialise dans la combinaison de ces capacités pour des tâches spécifiques, tandis que les LLMs sont des modèles de langage plus généraux.
Fonctionnement interne de RAG
RAG combine ingénieusement ces deux superpuissances de l’IA. Voici une vision simplifiée :
- Requête : Vous posez une question ou fournissez un sujet. Cela sert de requête.
# Exemple de code Python pour créer une requête dans RAGquery = "Quels sont les impacts environnementaux des sources d'énergie renouvelable ?"result = rag.process_query(query)print(result)
Cet extrait de code montre comment formuler une requête et l’envoyer à RAG pour la recherche d’informations.
- Récupération : Le module de récupération de RAG entre en action. Il recherche dans une vaste base de connaissances des documents, des articles ou des pages web pertinents.
# Exemple de code Python pour récupérer des informations dans RAGdocument = rag.retrieve_document(query)print(document)
L’extrait illustre la manière dont RAG récupère des informations à partir de vastes sources de connaissances, telles que des bases de données ou des documents.
- Sélection : RAG sélectionne les informations les plus pertinentes parmi les documents récupérés. C’est comme si le bibliothécaire trouvait le livre le plus utile sur l’étagère.
# Exemple de code Python pour sélectionner des informations pertinentes avec RAG
selected_info = rag.select_information(document)
print(selected_info)
L’extrait ci-dessous montre comment RAG sélectionne les informations les plus pertinentes dans les documents récupérés.
- Génération : La génération arrive ensuite. RAG prend les informations sélectionnées et les tisse pour en faire une réponse cohérente et semblable à celle d’un humain. Il crée une réponse qui a du sens pour vous.
# Exemple de code Python pour générer des réponses avec RAG
response = rag.generate_response(selected_info)
print(response)
Cet extrait de code démontre comment RAG génère des réponses semblables à celles d’un humain en fonction des informations sélectionnées.
Ces extraits de code fournissent un aperçu des principales étapes du fonctionnement interne de RAG, de la formulation de la requête à la génération de la réponse. Ils aident les lecteurs à comprendre comment RAG traite les informations et produit des réponses cohérentes lors des interactions.
Exemples
- Question : Vous commencez par poser une question ou fournir un sujet. C’est votre requête, comme demander : “Quel temps fait-il aujourd’hui ?”
- Requête récupérée : RAG prend votre question et recherche des informations pertinentes. C’est comme aller dans une bibliothèque et demander au bibliothécaire un livre sur le sujet.
- Textes récupérés : RAG parcourt sa vaste base de connaissances, comme un bibliothécaire recherchant des livres sur des étagères. Il trouve des textes ou des documents liés à votre question.
- Promp complet : RAG combine votre question et les informations récupérées. C’est comme si le bibliothécaire vous remettait le livre en disant : “Celui-ci contient la réponse dont vous avez besoin.”
- Transformation en GPT : RAG utilise un puissant générateur de texte, comme GPT, pour rédiger une réponse. C’est comme si un écrivain talentueux transformait les informations du livre en une réponse claire et compréhensible.
- Réponse : RAG génère une réponse qui a du sens pour vous. C’est comme si l’écrivain vous fournissait une réponse bien écrite et informative.
- Utilisateur : Enfin, vous, l’utilisateur, recevez la réponse et obtenez la réponse à votre question, tout comme si vous parliez à un bibliothécaire compétent.
Pourquoi RAG est-il important ?
RAG est une force transformative pour plusieurs raisons convaincantes :
- Efficacité : Il peut fournir des réponses précises avec une vitesse impressionnante, améliorant ainsi la productivité.
- Personnalisation : RAG adapte ses réponses aux différents styles d’écriture, ce qui en fait un outil incroyablement polyvalent.
- Accès aux connaissances : C’est votre porte d’entrée vers de vastes bases de connaissances, un atout pour des domaines tels que l’éducation, la recherche et le support client.
- Conversations naturelles : RAG élève les interactions en IA du stade robotique à celui qui ressemble à des conversations entre humains, rendant les dialogues plus attrayants.
- Création de contenu : Les écrivains et chercheurs peuvent exploiter l’aide de RAG pour la génération d’idées et la recherche. Il peut suggérer des sujets, résumer des articles et fournir des citations pertinentes, ce qui permet d’économiser du temps et des efforts dans le processus de création de contenu.
- Applications de RAG Exemples du monde réel / Études de cas
Applications du monde réel
RAG s’est imposé dans diverses applications du monde réel, témoignant de son potentiel transformateur. Voici quelques exemples remarquables :
- Amélioration des moteurs de recherche : Les principaux moteurs de recherche ont intégré la technologie RAG pour améliorer les résultats de recherche. Lorsque vous saisissez une requête, RAG vous aide à affiner votre recherche en fournissant des résultats contextuellement plus pertinents. Cela signifie que vous avez plus de chances de trouver ce que vous recherchez, même si votre requête initiale était vague.
- Assistant virtuel : Les assistants virtuels, tels que les chatbots et les appareils activés par la voix, sont devenus plus intelligents et plus conversationnels grâce à RAG. Ces assistants peuvent fournir des réponses détaillées à un large éventail de questions, ce qui les rend extrêmement utiles pour le support client et la recherche d’informations générales.
- Soutien éducatif : RAG s’est introduit dans le secteur de l’éducation, bénéficiant aux étudiants et aux enseignants. Il peut répondre aux questions des étudiants sur divers sujets, aider à expliquer des sujets complexes et même générer des questions de quiz et des explications pour les enseignants, ce qui simplifie le processus d’apprentissage.
- Création de contenu : Les écrivains et créateurs de contenu ont découvert la valeur de RAG pour la génération d’idées et l’aide à la recherche. Il peut fournir des suggestions de sujets, résumer des articles et proposer des citations pertinentes, ce qui permet d’économiser du temps et des efforts dans le processus de création de contenu.
- Recherche médicale : Dans le domaine de la recherche médicale, RAG s’est révélé précieux. Les chercheurs peuvent utiliser RAG pour rechercher et résumer les dernières études et découvertes, les aidant ainsi à rester à jour avec la littérature médicale en constante évolution.
Exemple d’étude de cas : Support client amélioré par RAG
Un géant mondial du commerce électronique a intégré RAG à ses chatbots de support client. Les clients pouvaient poser des questions sur les produits, l’expédition et les retours en langage naturel. Les chatbots alimentés par RAG fournissaient des réponses rapides et proposaient des recommandations de produits basées sur les préférences et les achats passés des clients. La satisfaction des clients a augmenté, ce qui a entraîné une augmentation des ventes et des taux de fidélisation.
Ces exemples concrets illustrent comment RAG a un impact tangible dans différents domaines, des moteurs de recherche aux soins de santé et au support client. Sa capacité à récupérer et générer des informations efficacement transforme la manière dont nous accédons aux connaissances et interagissons avec la technologie.
Conclusion
En conclusion, Retrieval Augmented Generation (RAG) représente une fusion remarquable de l’intelligence artificielle et des connaissances humaines. RAG agit comme un maestro de l’information, récupérant rapidement des données pertinentes dans de vastes archives. Il sélectionne les joyaux les plus choisis de ce trésor numérique et construit des réponses qui semblent étonnamment humaines.
Les capacités de RAG sont sur le point de transformer notre manière d’interagir avec la technologie. Ses applications potentielles sont infinies, de l’amélioration des moteurs de recherche à la révolution des assistants virtuels. Alors que nous progressons plus profondément dans l’ère numérique, RAG témoigne de l’incroyable synergie entre l’IA et la sagesse humaine.
Adopter RAG signifie embrasser un avenir où l’information circule sans effort et où les réponses à nos questions ne sont qu’à une conversation de distance. Ce n’est pas seulement un outil ; c’est un pont entre nous et le vaste domaine de la connaissance humaine, simplifiant la quête de compréhension dans un monde de plus en plus complexe.

Points clés à retenir
- La génération augmentée par récupération (RAG) combine l’IA de récupération et de génération, fonctionnant comme un bibliothécaire et un rédacteur qualifié.
- Les mécanismes internes de RAG comprennent la formulation de requêtes, la récupération d’informations, la sélection et la génération de réponses.
- RAG offre efficacité, personnalisation et conversations naturelles, ce qui le rend polyvalent pour différentes applications.
- Ses applications couvrent les moteurs de recherche, les assistants virtuels, l’éducation, la création de contenu et la recherche médicale.
- RAG est un pont entre l’IA et les connaissances humaines, simplifiant l’accès à d’importantes ressources d’information.
Questions fréquemment posées
Les médias présentés dans cet article n’appartiennent pas à Analytics Vidhya et sont utilisés à la discrétion de l’auteur.
We will continue to update IPGirl; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- Intelligence artificielle générationnelle un nouvel outil dans la boîte à outils du développeur
- Les meilleurs articles importants en vision par ordinateur de la semaine du 18/9 au 24/9
- Créez et déployez des applications d’inférence ML à partir de zéro avec Amazon SageMaker.
- Nos 10 plus grands moments d’IA jusqu’à présent
- Blatte cyborg peut naviguer dans un labyrinthe.
- L’Europe en tête de l’essor de l’impression 3D au cours de la dernière décennie.
- Ce bulletin d’information sur l’IA est tout ce dont vous avez besoin #66