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

Построение цепочки извлечения

И вот финал главы! Вы создадите цепочку извлечения с использованием Expression Language (LCEL) от LangChain. Она объединит векторное хранилище с эмбеддингами (векторными представлениями) фрагментов документа из статьи по RAG, загруженной ранее, шаблон подсказки и языковую модель — всё это позволит вам «общаться» с вашими документами.

Напомним prompt_template, созданный в предыдущем упражнении и доступный для использования:

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}

vector_store с эмбеддингами фрагментов документа, созданный ранее, также загружен для вас — вместе со всеми необходимыми библиотеками и классами.

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

Retrieval Augmented Generation (RAG) с LangChain

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

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

  • Преобразуйте Chroma vector_store в объект-ретривер для использования в цепочке извлечения LCEL.
  • Создайте цепочку извлечения LCEL, объединив retriever, prompt_template, llm и парсер строкового вывода, чтобы цепочка могла отвечать на входящие вопросы.
  • Запустите цепочку на предложенном вопросе.

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

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

# 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?"))
Редактировать и запускать код