Bắt đầu ngayBắt đầu miễn phí

Tạo một RAG chain

Giờ là lúc ghép tất cả các thành phần trong quy trình RAG của bạn! Bạn đã chuẩn bị tài liệu và nạp chúng vào cơ sở dữ liệu Chroma để truy xuất. Bạn đã tạo một prompt template để đưa các đoạn văn bản đã truy xuất từ bài báo học thuật vào và trả lời câu hỏi.

Prompt template bạn đã tạo ở bài trước có sẵn dưới tên prompt_template, một mô hình OpenAI đã được khởi tạo là llm, và mã để tạo lại retriever đã được đưa vào trong script.

Bài tập này là một phần của khóa học

Phát triển ứng dụng LLM với LangChain

Xem khóa học

Hướng dẫn bài tập

  • Tạo một LCEL chain bằng toán tử pipe (|) để nối tuần tự retriever, prompt_template, và llm.
  • Chain cần ánh xạ retriever vào "context" và đầu vào của người dùng vào "question".
  • Gọi chain bằng phương thức .invoke() với câu hỏi đã cung cấp.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

vectorstore = Chroma.from_documents(
    docs,
    embedding=OpenAIEmbeddings(api_key='', model='text-embedding-3-small'),
    persist_directory=os.getcwd()
)

retriever = vectorstore.as_retriever(
    search_type="similarity",
    search_kwargs={"k": 3}
)

# Create a chain to link retriever, prompt_template, and llm
rag_chain = ({"context": ____, "question": ____}
            | prompt_template
            | llm)

# Invoke the chain
response = rag_chain.____("Which popular LLMs were considered in the paper?")
print(response.content)
Chỉnh sửa và Chạy Mã