La génération de récupération augmentée (RAG) est le concept consistant à fournir de grands modèles de langage (LLM) avec des informations supplémentaires provenant d’une source de connaissances externe. Cela leur permet de générer des réponses plus précises et contextuelles tout en réduisant les hallucinations. Dans cet article, nous fournirons un guide étape par étape pour créer une application RAG complète à l’aide du dernier LLM open source de Google. Gemme 7B et
Table des matières:
Mise en route et configuration de l’environnement de travail
Téléchargez et divisez l’ensemble de données Cosmopedia
Génération d’intégration avec le modèle de transformateurs de phrases
Stockez les intégrations dans la base de données vectorielles Upstash
Présenter et utiliser Gemma 7B LLM
Interrogation de l’application RAG
Vous pouvez essayer Upstash Vector Database gratuitement à partir d’ici :
La première étape de la création d’une application RAG consiste à préparer l’environnement de travail. Nous commencerons par télécharger les packages que nous utiliserons pour créer l’application :
Ensuite, nous importerons les packages et bibliothèques qui seront utilisés :
import torch from upstash_vector import Vector from datasets import load_dataset from tqdm import tqdm, trange from langchain_community.document_loaders.csv_loader import CSVLoader from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.embeddings import HuggingFaceEmbeddings from transformers import AutoTokenizer, AutoModelForCausalLM from transformers import AutoTokenizer, pipeline from langchain import HuggingFacePipeline from langchain.chains import RetrievalQA
Pour offrir les meilleures expériences, nous utilisons des technologies telles que les cookies pour stocker et/ou accéder aux informations des appareils. Le fait de consentir à ces technologies nous permettra de traiter des données telles que le comportement de navigation ou les ID uniques sur ce site. Le fait de ne pas consentir ou de retirer son consentement peut avoir un effet négatif sur certaines caractéristiques et fonctions.
Fonctionnel
Toujours activé
Le stockage ou l’accès technique est strictement nécessaire dans la finalité d’intérêt légitime de permettre l’utilisation d’un service spécifique explicitement demandé par l’abonné ou l’utilisateur, ou dans le seul but d’effectuer la transmission d’une communication sur un réseau de communications électroniques.
Préférences
Le stockage ou l’accès technique est nécessaire dans la finalité d’intérêt légitime de stocker des préférences qui ne sont pas demandées par l’abonné ou l’utilisateur.
Statistiques
Le stockage ou l’accès technique qui est utilisé exclusivement à des fins statistiques.Le stockage ou l’accès technique qui est utilisé exclusivement dans des finalités statistiques anonymes. En l’absence d’une assignation à comparaître, d’une conformité volontaire de la part de votre fournisseur d’accès à internet ou d’enregistrements supplémentaires provenant d’une tierce partie, les informations stockées ou extraites à cette seule fin ne peuvent généralement pas être utilisées pour vous identifier.
Marketing
Le stockage ou l’accès technique est nécessaire pour créer des profils d’utilisateurs afin d’envoyer des publicités, ou pour suivre l’utilisateur sur un site web ou sur plusieurs sites web ayant des finalités marketing similaires.