Sparsches Retrieval mit BM25
Zeit, eine sparse Retrieval-Implementierung auszuprobieren! Du erstellst einen BM25-Retriever, um Fragen zu einem wissenschaftlichen Paper über RAG zu stellen, das bereits in Chunks namens chunks aufgeteilt wurde. Ein OpenAI-Chatmodell und ein Prompt wurden ebenfalls als llm bzw. prompt definiert. Du kannst dir den bereitgestellten prompt anzeigen lassen, indem du ihn in der Konsole ausgibst.
Diese Übung ist Teil des Kurses
Retrieval Augmented Generation (RAG) mit LangChain
Anleitung zur Übung
- Erstelle einen sparschen BM25-Retriever aus den in
chunksgespeicherten Dokumenten und konfiguriere ihn so, dass er bei der Suche5Dokumente zurückgibt. - Erstelle eine LCEL-Retrieval-Chain, um den BM25-Retriever mit dem bereitgestellten
llmundpromptzu integrieren.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create a BM25 retriever from chunks
retriever = ____
# Create the LCEL retrieval chain
chain = ({"context": ____, "question": ____}
| ____
| ____
| StrOutputParser()
)
print(chain.invoke("What are knowledge-intensive tasks?"))