Tự Tạo Chatbot AI Để Tương Tác Với Tài Liệu Của Bạn
Khi cần tìm kiếm thông tin trong một tài liệu, việc đọc và hiểu từng phần có thể tốn nhiều thời gian và công sức. Thật tuyệt vời nếu bạn có một chatbot AI có thể hỗ trợ bạn trong việc này. Bạn chỉ cần cung cấp tài liệu cho chatbot, và có thể đặt bất kỳ câu hỏi nào liên quan đến nội dung tài liệu đó. Đặc biệt, bạn không cần lo lắng về vấn đề bảo mật dữ liệu, vì chatbot này hoàn toàn chạy trên máy tính của bạn, không cần kết nối với các dịch vụ bên ngoài. Hơn nữa, quá trình này còn không yêu cầu bạn viết bất kỳ đoạn mã nào.
Cài Đặt Ollama
Để bắt đầu, bạn cần cài đặt Ollama. Đây là một công cụ AI mạnh mẽ, được thiết kế để chạy các mô hình LLM (Large Language Models) trên máy tính cá nhân. Ollama hỗ trợ trên nhiều nền tảng bao gồm MacOS, Windows và Linux, cho phép bạn tận dụng sức mạnh của AI mà không phải phụ thuộc vào các nhà cung cấp dịch vụ như OpenAI hay Google.
Ollama cung cấp các APIs để bạn dễ dàng tương tác với các mô hình LLM. Bạn có thể tải và cài đặt Ollama thông qua trang web chính thức của nó. Ollama cũng cung cấp nhiều mô hình miễn phí cho bạn lựa chọn, phù hợp với nhiều nhu cầu khác nhau. Trong quá trình trải nghiệm, các mô hình như mistral
và llama2
thường cho kết quả tốt hơn. Để khởi động mô hình, bạn có thể sử dụng đoạn lệnh sau:
ollama run mistral
Lần chạy đầu tiên sẽ yêu cầu tải mô hình về máy, có thể mất một chút thời gian. Sau khi hoàn tất, bạn sẽ được đưa đến cửa sổ dòng lệnh và có thể tiến hành trò chuyện với mô hình.
Kết Nối với AnythingLLM
Tuy nhiên, để nhằm mục tiêu lần đầu tiên là trò chuyện với các tài liệu, bạn sẽ cần thêm một ứng dụng khác để kết nối tới APIs của Ollama, đồng thời cung cấp chức năng lưu trữ và xử lý tài liệu. Có nhiều lựa chọn cho bạn, nhưng một trong những ứng dụng phổ biến và linh hoạt hơn là AnythingLLM.
AnythingLLM Là Gì?
AnythingLLM là một ứng dụng mã nguồn mở cho phép bạn trò chuyện với bất kỳ tài liệu nào. Nó có thể kết nối với các mô hình của các nhà cung cấp bên ngoài hoặc kết hợp với Ollama. AnythingLLM sử dụng LangChain để xử lý tài liệu, chuyển đổi văn bản chính của tài liệu thành các vector và lưu trữ trong Vectorstore. Sau đó, bạn có thể trò chuyện với nội dung tài liệu thông qua Retrieval.
Hướng Dẫn Cài Đặt AnythingLLM
Để bắt đầu sử dụng AnythingLLM, hãy làm theo các bước sau:
- Clone AnythingLLM về máy:
git clone https://github.com/Mintplex-Labs/anything-llm anything-llm
- Setup ứng dụng:
cd anything-llm
yarn setup
Đảm bảo bạn đã cài đặt yarn
trên máy tính của mình.
- Khởi chạy server back-end:
yarn dev:server
- Khởi chạy server front-end:
yarn dev:frontend
- Khởi chạy collector:
yarn dev:collector
Sau khi hoàn tất các bước trên, hãy mở trình duyệt và truy cập vào http://localhost:3000
. Nếu giao diện của AnythingLLM hiển thị, bạn đã cài đặt thành công.
Tương Tác Với Tài Liệu
Khi đã cài đặt thành công Ollama và AnythingLLM, giờ là lúc kết hợp chúng lại với nhau. Trước tiên, mình sẽ tạo một file my-profile.txt
với nội dung như sau:
Hi, my name is Lam.
I am a web developer with 6 years of experience.
I am proficient in Ruby, PHP, and Javascript.
I started my programming career in late 2017.
Prior to that, I worked as a civil engineer for 2 years.
Sau đó, hãy cung cấp file này cho chatbot và đặt câu hỏi về nội dung bên trên.
Thiết Lập Mô Hình
Trên giao diện chính của AnythingLLM, bạn nhấp vào biểu tượng cài đặt ở góc dưới bên trái của màn hình. Chuyển đến tab LLM Preference, chọn Ollama và nhập rồi lưu thông tin như sau:
Chat Model Selection sẽ hiển thị những mô hình mà Ollama đã tải về, trong ví dụ này sẽ là mô hình mistral
.
Thiết Lập Embedding
Tiếp tục chuyển đến tab Embedding Preference và lưu lại thông tin cần thiết.
Tạo Mới Workspace
Quay trở lại màn hình chính, nhấn New Workspace và nhập tên cho workspace là About Me. Một cửa sổ chat sẽ hiện ra, nhấn vào liên kết upload a document để truy cập màn hình upload file.
AnythingLLM hỗ trợ nhiều định dạng file khác nhau; bạn cũng có thể sử dụng liên kết trực tiếp từ các trang web. Sau khi upload file, hãy nhấn Save and Embed. Bây giờ, bạn có thể xem kết quả và trò chuyện với chatbot - thật tuyệt vời khi chatbot có thể trả lời chính xác các câu hỏi dựa trên thông tin mà bạn đã cung cấp.
Kết Luận
Như vậy, qua bài viết này, chúng ta đã cùng nhau tạo một chatbot AI hỗ trợ tương tác với bất kỳ tài liệu nào mà không cần thiết phải phụ thuộc vào các nhà cung cấp bên ngoài. Bạn có thể áp dụng kiến thức này để xây dựng những trợ lý ảo cho riêng mình, giúp giải đáp mọi thắc mắc dựa trên các thông tin có sẵn và nhiều lợi ích khác mà bạn có thể từ từ khám phá và khai thác.
Blog: https://dongoclam.github.io
source: viblo