НачатьНачать бесплатно

Разреженный поиск с BM25

Попробуем реализовать разреженный поиск на практике! Вы создадите ретривер BM25, чтобы задавать вопросы по научной статье о RAG. Статья уже разбита на фрагменты и сохранена в переменной chunks. Языковая модель OpenAI и шаблон промпта определены как llm и prompt соответственно. Вы можете просмотреть содержимое prompt, выведя его в консоль.

Это упражнение является частью курса

Retrieval Augmented Generation (RAG) с LangChain

Посмотреть курс

Инструкции к упражнению

  • Создайте разреженный ретривер BM25 на основе документов из chunks; настройте его на возврат 5 документов при поиске.
  • Создайте цепочку LCEL для интеграции ретривера BM25 с предоставленными llm и prompt.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Create a BM25 retriever from chunks
retriever = ____

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

print(chain.invoke("What are knowledge-intensive tasks?"))
Редактировать и запускать код