Website được thiết kế tối ưu cho thành viên chính thức. Hãy Đăng nhập hoặc Đăng ký để truy cập đầy đủ nội dung và chức năng. Nội dung bạn cần không thấy trên website, có thể do bạn chưa đăng nhập. Nếu là thành viên của website, bạn cũng có thể yêu cầu trong nhóm Zalo "HI.AI Members" các nội dung bạn quan tâm.

Bài 10. Đưa tài liệu vào prompt cho Ollama

1. Đặt vấn đề

Sau khi truy xuất được tài liệu liên quan, hệ thống cần đưa các đoạn tài liệu đó vào prompt cho Ollama. Đây là bước kết nối retrieval và generation. Nếu prompt được thiết kế tốt, model sẽ trả lời bám nguồn, có cấu trúc và biết nói “chưa đủ căn cứ” khi tài liệu không đủ. Nếu prompt thiết kế kém, model có thể bỏ qua nguồn, trộn kiến thức ngoài, trả lời lan man hoặc bịa thêm.

Trong RAG, prompt không chỉ là câu hỏi người dùng. Prompt là “hồ sơ yêu cầu trả lời” gồm vai trò, câu hỏi, nguồn tài liệu, quy tắc trả lời và định dạng đầu ra.

2. Thành phần của prompt RAG

Một prompt RAG nên gồm:

  1. Vai trò của AI.
  2. Quy tắc trả lời.
  3. Câu hỏi người dùng.
  4. Các đoạn tài liệu liên quan.
  5. Yêu cầu về nguồn.
  6. Yêu cầu khi thiếu thông tin.
  7. Định dạng câu trả lời.

Ví dụ:

 
Bạn là trợ lý AI nội bộ bệnh viện.
Chỉ trả lời dựa trên tài liệu được cung cấp.
Nếu tài liệu không đủ thông tin, hãy nói chưa đủ căn cứ.
Không tự bịa quy trình, số liệu, căn cứ pháp lý.

Câu hỏi:
...

Tài liệu tham khảo:
[1] ...
[2] ...

Hãy trả lời có cấu trúc và nêu nguồn [1], [2] khi sử dụng.
 

3. Không đưa quá nhiều tài liệu

Một sai lầm là đưa quá nhiều chunk vào prompt. Điều này làm prompt dài, chậm, nhiễu và có thể khiến model trả lời lẫn lộn. Chỉ nên đưa các chunk liên quan nhất.

Thông thường, có thể bắt đầu với 3–5 chunk tốt nhất. Nếu câu hỏi phức tạp, có thể tăng nhưng cần theo dõi chất lượng.

4. Sắp xếp tài liệu trong prompt

Nên sắp xếp theo mức độ liên quan hoặc theo thứ tự logic. Với quy trình, nếu nhiều chunk thuộc cùng tài liệu, nên giữ thứ tự bước. Với pháp luật, giữ điều/khoản đúng thứ tự.

Nếu đưa chunk lộn xộn, model có thể trả lời thiếu mạch.

5. Gắn mã nguồn cho từng chunk

Mỗi chunk nên có mã:

 
[1] Quy trình báo cáo sự cố y khoa, phiên bản 2, mục 4.1:
...
[2] Biểu mẫu BM.QLCL.03:
...
 

Khi model trả lời, yêu cầu nêu nguồn [1], [2].

Điều này giúp hiển thị nguồn dễ hơn.

6. Đưa metadata quan trọng

Nên đưa metadata:

  • Tên tài liệu.
  • Phiên bản.
  • Ngày ban hành.
  • Mục.
  • Trạng thái hiệu lực nếu cần.
  • Đơn vị ban hành.

Không cần đưa toàn bộ metadata kỹ thuật như ID nội bộ nếu không hữu ích cho người dùng.

7. Quy tắc khi thiếu căn cứ

Prompt phải có câu rõ:

“Nếu tài liệu tham khảo không chứa thông tin cần thiết để trả lời, hãy nói rõ chưa đủ căn cứ, không tự suy đoán.”

Đây là câu rất quan trọng để giảm hallucination.

8. Quy tắc không dùng kiến thức ngoài

Với câu hỏi quy trình nội bộ, pháp luật, phác đồ, cần yêu cầu:

“Không sử dụng kiến thức ngoài tài liệu để khẳng định nội dung nội bộ.”

Tuy nhiên, với một số tác vụ như giải thích thuật ngữ, có thể cho phép dùng kiến thức chung nhưng phải phân biệt với nguồn nội bộ.

9. Prompt cho các loại câu hỏi khác nhau

Quy trình

Yêu cầu trả lời theo bước, nêu biểu mẫu, trách nhiệm, nguồn.

Biểu mẫu

Yêu cầu nêu tên biểu mẫu, mã, khi sử dụng, link nếu có.

Pháp luật

Yêu cầu phân biệt trích dẫn và diễn giải, không bịa điều khoản.

Phác đồ/hướng dẫn

Yêu cầu cảnh báo không thay thế quyết định chuyên môn.

Quản lý chất lượng

Yêu cầu chuyển thành bảng kiểm, kế hoạch hoặc phân tích có chỉ số nếu phù hợp.

10. Kết luận

Đưa tài liệu vào prompt là bước rất quan trọng trong RAG. Prompt phải đủ nguồn nhưng không quá nhiễu, có mã trích dẫn, có metadata, có quy tắc bám nguồn và có hướng dẫn khi thiếu căn cứ. Trong bệnh viện, prompt RAG tốt giúp Ollama trả lời có căn cứ, giảm bịa và tạo câu trả lời dễ kiểm tra.