Files
poc_system/doc/5.RAG-Chat-Application-Playbook.md

5.4 KiB
Raw Permalink Blame History

5.RAG-Chat-Application-Playbook.md

Tài liệu này mô tả tầng RAG Chat xây dựng trên Search (file 4). Mục tiêu là:

  • Giúp AI trả lời đúng có dẫn chứng không hallucinate
  • Giúp người dùng cuối dễ hiểu, dễ tin, dễ dùng
  • Có thể dùng làm tài liệu tham khảo khi soạn Hướng dẫn sử dụng (User Guide)

File được viết để AI agent đọc là triển khai được, con người đọc là hiểu và sử dụng được.


Mục lục

  1. RAG Chat là gì trong hệ thống này?
  2. Nguyên tắc thiết kế RAG Chat
  3. Kiến trúc tổng thể RAG Chat
  4. Vai trò của Search trong RAG
  5. Luồng xử lý câu hỏi (EndtoEnd)
  6. Prompt Strategy (Quan trọng nhất)
  7. Context Assembly & Citation
  8. Tránh Hallucination & Guardrails
  9. Trải nghiệm người dùng (UX Guidelines)
  10. Các chế độ Chat khuyến nghị
  11. Permission propagation
  12. Logging & Explainability
  13. Checklist triển khai & Checklist hướng dẫn sử dụng

1. RAG Chat là gì trong hệ thống này?

RAG (RetrievalAugmented Generation) = AI KHÔNG tự nghĩ, mà:

  1. Tìm dữ liệu liên quan trong hệ thống Search
  2. Chỉ dùng dữ liệu đó để trả lời
  3. Luôn nói rõ lấy thông tin từ đâu

Trong hệ thống này:

  • Chat không thay thế Search
  • Chat dựa hoàn toàn trên Search

2. Nguyên tắc thiết kế RAG Chat

  1. Searchfirst, LLMsecond
  2. Không có dữ liệu → không trả lời
  3. Trả lời = Nội dung + Dẫn chứng
  4. Ngôn ngữ rõ ràng, không học thuật thừa
  5. Người dùng luôn có thể click mở tài liệu gốc

3. Kiến trúc tổng thể RAG Chat

User Question
     │
     ▼
Query Understanding
     │
     ▼
Search Layer (OpenSearch)
     │
     ├─ Top K chunks (ACLaware)
     ▼
Context Assembly
     │
     ▼
LLM (Answer generation)
     │
     ▼
Answer + Citations

4. Vai trò của Search trong RAG

Search quyết định:

  • AI được phép biết gì
  • AI không được phép bịa gì

Quy tắc:

  • LLM chỉ được dùng context do Search trả về
  • Không cho LLM truy cập internet / training data

5. Luồng xử lý câu hỏi (EndtoEnd)

[User hỏi]
  ↓
[Normalize câu hỏi]
  ↓
[Hybrid Search (keyword + vector)]
  ↓
[Lọc theo permission user]
  ↓
[Chọn top K chunks]
  ↓
[Build context + citation map]
  ↓
[LLM sinh câu trả lời]
  ↓
[Trả lời + link tài liệu]

6. Prompt Strategy (Rất quan trọng)

6.1 System Prompt (bắt buộc)

Bạn là trợ lý tra cứu tài liệu nội bộ.
Bạn CHỈ được trả lời dựa trên thông tin được cung cấp trong CONTEXT.
Nếu CONTEXT không đủ, hãy trả lời: 
"Tôi không tìm thấy thông tin trong các tài liệu hiện có." 
Mỗi câu trả lời phải kèm theo nguồn trích dẫn.

6.2 User Prompt Template

CÂU HỎI:
{{user_question}}

CONTEXT:
{{retrieved_chunks}}

6.3 Output Format (khuyến nghị)

TRẢ LỜI NGẮN GỌN:
...

CHI TIẾT:
...

NGUỒN THAM KHẢO:
- Tài liệu A  trang 5
- Tài liệu B  trang 12

➡️ Format này rất phù hợp để đưa vào User Guide.


7. Context Assembly & Citation

7.1 Context Assembly

  • Giữ đúng thứ tự logic
  • Không quá dài (token budget)
  • Mỗi chunk có ID và nguồn

7.2 Citation Object

{
  "chunk_id": "...",
  "file_name": "...",
  "page": 7,
  "url": "..."
}

8. Tránh Hallucination & Guardrails

BẮT BUỘC:

  • Nếu không có chunk phù hợp → không trả lời
  • Không "suy luận thêm" ngoài context

Câu trả lời chuẩn khi không đủ dữ liệu:

"Hiện tại tôi không tìm thấy thông tin trong các tài liệu nội bộ để trả lời câu hỏi này."


9. Trải nghiệm người dùng (UX Guidelines)

9.1 Người dùng nên cảm nhận gì?

  • AI đáng tin
  • Nói giống đồng nghiệp biết tài liệu, không giống chatbot chung chung

9.2 UX khuyến nghị

  • Mỗi đoạn trả lời có nút "Mở tài liệu"
  • Highlight đoạn liên quan trong PDF

10. Các chế độ Chat khuyến nghị

Mode Mô tả Đối tượng
Tra cứu nhanh Trả lời ngắn + link Nhân viên
Giải thích Có diễn giải Đào tạo
So sánh So nhiều tài liệu Quản lý

11. Permission Propagation

Nguyên tắc:

  • Chat không trả về thứ Search không trả
  • Không lộ tên file tồn tại nếu user không có quyền

12. Logging & Explainability

Lưu lại:

  • Question
  • Retrieved chunks
  • Answer
  • Citation

➡️ Phục vụ audit, cải tiến prompt, training nội bộ


13. Checklist triển khai & Checklist hướng dẫn sử dụng

13.1 Checklist kỹ thuật

Search trước Chat Prompt chặt chẽ Citation bắt buộc Permission endtoend

13.2 Checklist cho User Guide

Giải thích AI làm gì / không làm gì Hướng dẫn đọc citation Cách phản hồi khi AI không tìm thấy dữ liệu


Kết thúc RAG Chat Playbook. Đây là tầng trên cùng của hệ thống.