De retrieval chain bouwen
Tijd voor de finale van dit hoofdstuk! Je gaat een retrieval chain maken met LangChain's Expression Language (LCEL). Hiermee combineer je de vector store met je ingebedde documentfragmenten uit de RAG-paper die je eerder hebt geladen, een prompttemplate en een LLM, zodat je met je documenten kunt gaan praten.
Hier is een herinnering aan de prompt_template die je in de vorige oefening hebt gemaakt en die je hier kunt gebruiken:
Use the only the context provided to answer the following question. If you don't know the answer, reply that you are unsure.
Context: {context}
Question: {question}
De vector_store met ingebedde documentfragmenten die je eerder hebt gemaakt, is ook voor je geladen, samen met alle vereiste libraries en classes.
Deze oefening maakt deel uit van de cursus
Retrieval Augmented Generation (RAG) met LangChain
Oefeninstructies
- Zet de Chroma-
vector_storeom in een retrieverobject voor gebruik in de LCEL-retrieval chain. - Maak de LCEL-retrieval chain die de
retriever, deprompt_template, dellmen een string output parser combineert, zodat invoervragen beantwoord kunnen worden. - Voer de chain uit op de gegeven vraag.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Convert the vector store into a retriever
retriever = vector_store.____(search_type="similarity", search_kwargs=____)
# Create the LCEL retrieval chain
chain = (
{"____": ____, "question": ____}
| ____
| ____
)
# Invoke the chain
print(chain.____("Who are the authors?"))