開始使用免費開始

使用 BM25 的稀疏檢索

來實作一次稀疏檢索吧!你將建立一個 BM25 retriever,來針對一篇關於 RAG 的學術論文發問。該論文已經被切成多個小段,存放在 chunks。OpenAI 的聊天模型與提示也分別定義為 llmprompt。你可以在主控台列印 prompt 來查看內容。

本練習屬於課程

使用 LangChain 的 Retrieval Augmented Generation(RAG)

檢視課程

練習說明

  • chunks 中的文件建立一個 BM25 稀疏 retriever,並設定在檢索時回傳 5 份文件。
  • 建立一個 LCEL 檢索鏈,將 BM25 retriever 與提供的 llmprompt 整合。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Create a BM25 retriever from chunks
retriever = ____

# Create the LCEL retrieval chain
chain = ({"context": ____, "question": ____}
         | ____
         | ____
         | StrOutputParser()
)

print(chain.invoke("What are knowledge-intensive tasks?"))
編輯並執行程式碼