Sparsere terughaalmethode met BM25
Tijd om een sparse retrieval-implementatie uit te proberen! Je maakt een BM25-retriever om vragen te stellen over een academisch paper over RAG, dat al is opgesplitst in stukken met de naam chunks. Een OpenAI-chatmodel en prompt zijn ook gedefinieerd als respectievelijk llm en prompt. Je kunt de prompt bekijken door deze in de console te printen.
Deze oefening maakt deel uit van de cursus
Retrieval Augmented Generation (RAG) met LangChain
Oefeninstructies
- Maak een BM25 sparse retriever van de documenten in
chunks; configureer hem zo dat hij5documenten retourneert bij retrieval. - Maak een LCEL-retrievalchain om de BM25-retriever te integreren met de gegeven
llmenprompt.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create a BM25 retriever from chunks
retriever = ____
# Create the LCEL retrieval chain
chain = ({"context": ____, "question": ____}
| ____
| ____
| StrOutputParser()
)
print(chain.invoke("What are knowledge-intensive tasks?"))