CommencezCommencez gratuitement

Créer une chaîne RAG

Il est maintenant temps de rassembler tous les éléments de votre flux de travail RAG ! Vous avez préparé les documents et les avez ingérés dans une base de données Chroma pour l'extraction. Vous avez créé un gabarit d'invite qui inclut les segments récupérés de l'article scientifique et permet de répondre aux questions.

Le gabarit d'invite créé à l'exercice précédent est disponible sous prompt_template, un modèle OpenAI a été initialisé sous llm, et le code pour recréer votre retriever a été inclus dans le script.

Cette activité fait partie du cours

Développer des applications LLM avec LangChain

Voir le cours

Instructions de l’exercice

  • Créez une chaîne LCEL en utilisant l'opérateur de tuyautage (|) pour relier, dans l'ordre, retriever, prompt_template et llm.
  • La chaîne doit associer le récupérateur à « context » et l'entrée de l'utilisateur à « question ».
  • Lancez la chaîne avec la méthode .invoke() sur la question fournie.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

vectorstore = Chroma.from_documents(
    docs,
    embedding=OpenAIEmbeddings(api_key='', model='text-embedding-3-small'),
    persist_directory=os.getcwd()
)

retriever = vectorstore.as_retriever(
    search_type="similarity",
    search_kwargs={"k": 3}
)

# Create a chain to link retriever, prompt_template, and llm
rag_chain = ({"context": ____, "question": ____}
            | prompt_template
            | llm)

# Invoke the chain
response = rag_chain.____("Which popular LLMs were considered in the paper?")
print(response.content)
Modifier et exécuter le code