[Hướng dẫn] Sử dụng Langchain kết hợp Pinecone để truy vấn nội dung sách

[Hướng dẫn] Sử dụng Langchain kết hợp Pinecone để truy vấn nội dung sách

Các mô hình xử lý ngôn ngữ tự nhiên và làn sóng AI đã đưa ra những thách thức mới trong việc xử lý dữ liệu. Bài viết dưới đây sẽ hướng dẫn cách sử dụng Pinecone kết hợp với Langchain để truy vấn nội dung sách và tạo ra câu trả lời dựa trên nội dung truy vấn thông qua OpenAI.

I. Thông tin chung

Độ khó: 8/10

Yêu cầu chung:

  • Máy tính cá nhân
  • Hiểu biết cơ bản về Python, Pinecone, Langchain

II. Chuẩn bị kiến thức

1. Thư viện Langchain

LangChain là một framework được xây dựng xung quanh các mô hình ngôn ngữ lớn. Nó có thể được sử dụng để xây dựng chatbots, Generative Question-Answering(GQA), tóm tắt văn bản… Ý tưởng cốt lõi của thư viện là nối các thành phần khác nhau để tạo nên nhiều use cases nâng cao hơn từ LLMs.

2.Tổng quan về Pinecone database

Pinecone là một cơ sở dữ liệu vector, cho phép khởi tạo và sử dụng nhiều vector search trên các ứng dụng một cách dễ dàng. Pinecone kết hợp các thư viện vector search tiên tiến và được xây dựng với cơ sở hạ tầng phân tán nên có thể xử lý với hiệu năng cao và đáng tin cậy ở bất cứ quy mô nào.


Đặc điểm nổi bật của Pinecone:

  • Fast: Có độ trễ cực thấp với bất kỳ quy mô nào, kể cả với hàng tỉ dữ liệu.
  • Fresh: Cập nhật index trực tiếp ngay khi thêm, chỉnh sửa hoặc xóa dữ liệu.
  • Filtered: Kết hợp vector search với metadata filters để cho kết quả chính xác và nhanh chóng hơn.
  • Fully managed: Dễ dàng bắt đầu, sử dụng và nâng cấp một cách dễ dàng trong khi giữ cho mọi thứ hoạt động trơn tru và ổn định.


Dưới đây là luồng xử lý của Pinecone:

Vector database workflow
Vector database’s pipeline

III. Các công cụ sử dụng

  • VsCode  
  • Python>=3.8, khuyên dùng python 3.10.10  
  • Link git chứa source code: Link Github.

IV. Cài đặt chương trình

  1. Cài đặt môi trường  
  • Truy cập vào Link và cài đặt phiên bản VsCode phù hợp với máy tính của bạn  
  • Cài đặt python 3.10.10, tích chọn vào "Add Python to PATH" trong quá trình cài đặt  
  • Cài đặt git git.

2. Tải về mã nguồn

  • Mở tab command/git bash tại thư mục muốn tải về và nhập câu lệnh: git clone https://github.com/dungtd98/Ask_a_book_tutorial.git
  • Mở thư mục lưu chứa file vừa tải về bằng Vscode.
  • Chạy mã lệnh pip install -r requirements.txt để cài đặt các thư viện.

3. Chỉnh sửa file .env

  • Truy cập link để lấy OpenAI api key.
  • Truy cập link để tạo tài khoản Pinecone, chọn Continue with Google hoặc Continue with Github để đăng nhập.
  • Sau khi vào dashboard của Pinecone, chọn tab Index và tạo 1 index.
  • Trong cửa sổ Create Index, nhập tên Index, tham số Dimensions và chọn phép đo Metric. Tham số Dimentions ở bài viết này sẽ chọn là 1536, để chọn tham số này chính xác hãy tham khảo hướng dẫn. Sau đó chọn Create Index để tạo Index. Quá trình này có thể sẽ phải đợi do hàng chờ.
  • Sau khi khởi tạo Index hãy chọn vào tab API Keys để lấy Pinecone Apikey và Environment ở 2 cột là Value Environment.
  • Thay thế các giá trị trong file .env theo các giá trị ở trên lần lượt là OpenAI api key, Pinecone api key, Pinecone Environment, tên của Index vừa khởi tạo và đường dẫn đến file sách pdf.

4. Tiến hành truy vấn dữ liệu

  • Mở Ask a book question.ipynb bằng VSCode, thay thế giá trị biến query bằng câu hỏi bạn muốn truy vấn nội dung sách.
  • Sau đó trên thanh công cụ, chọn nút Run All, chương trình sẽ tự tìm kiếm câu trả lời và thông qua OpenAI để trả lời câu hỏi.
  • Lưu ý là chỉ cần chọn Run All 1 lần, sau đó chỉ cần thay thế câu query và chạy đoạn code phía sau.

V. Tài liệu nên đọc

  • [Hướng dẫn] Tạo bot ChatGPT giúp tư vấn order thực đơn cho các cửa hàng F&B: Link
  • [Hướng dẫn] Tạo GPT Salebot có phong cách trả lời hài hước: Link
  • [Hướng dẫn] Tạo bot ChatGPT quảng bá du lịch địa phương trên Website: Link
  • [Hướng dẫn] Tạo video giới thiệu sản phẩm bằng AI chỉ trong 10p: Link

VI. Thông tin liên hệ

GPT SaleBot là giải pháp tạo các chatbot tư vấn, bán hàng, chăm sóc khách hàng...thông minh dựa trên công nghệ ChatGPT được phát triển bởi AIV Group.

GPT SaleBot triển khai dưới dạng nền tảng tự phục vụ (SaaS). Khách hàng chỉ cần trả trước phí để mua số lượng câu hỏi-đáp của Chatbot và thao tác trên nền tảng là tích hợp được vào Website và các kênh bán hàng khác của mình.

Tài liệu chi tiết về GPT SaleBot:

👉 Demo Chatbot: https://aivgroup.vn

👉 GPT SaleBot Platform: https://gptsalebot.com

👉 Giới thiệu GPT SaleBot: https://drive.google.com/.../1Osnp5SyIpb7jM3OVMr5v4jDf6Wo...

👉 Nhóm Zalo Hỗ trợ người dùng https://zalo.me/g/nyiqud804

👉 Hướng dẫn tạo chatbot quảng bá du lịch sử dụng GPT SaleBot: https://aivgroupworking.sg.larksuite.com/.../IYbYdmDb6oTe...