Từ làm RAG đến xây hệ thống Tri thức cho AI

Nếu hỏi tôi cách xây hệ thống tri thức cho AI cách đây không lâu, câu trả lời từng rất gọn: chia tài liệu thành chunk, tạo embedding, lưu vào vector database rồi đưa cho LLM.
Cách đó không sai và vẫn là điểm bắt đầu tốt. Nhưng có một cái tủ hồ sơ chưa đồng nghĩa với việc đã có thư viện.
Khi AI phải xử lý dữ liệu thay đổi, nguồn mâu thuẫn và câu hỏi nhiều bước, vấn đề không còn là “tối ưu retrieval thế nào?”. Tôi cần hai lớp tri thức: evidence giữ nguyên nội dung nguồn; procedure hướng dẫn agent tìm, suy luận và kiểm chứng câu trả lời.
RAG chưa phải toàn bộ hệ thống tri thức
Nghiên cứu RAG ban đầu kết hợp bộ nhớ của mô hình với chỉ mục bên ngoài. Cách triển khai quen thuộc là:
tài liệu → chunk → embedding → vector search → prompt → câu trả lời
Pipeline này hợp khi đáp án nằm trong vài đoạn gần nghĩa. Tối ưu retrieval có thể giúp tìm đúng đoạn hơn, nhưng chưa cho agent biết vòng tiếp theo cần tìm gì, kết hợp dữ kiện ra sao và khi nào nên dừng.
Hai lớp: evidence và procedure
Dense Passage Retrieval gọi đơn vị truy xuất là passage; ART và FEVER dùng evidence theo ngữ cảnh của câu hỏi hoặc nhận định. Còn trong bài này, evidence là một quy ước kiến trúc, không mặc nhiên có nghĩa “đúng”.
Evidence: bản ghi nguyên văn từ nguồn
Evidence không đồng nghĩa với sự thật đã được xác minh:
evidence = chunk nguyên văn + nguồn gốc dữ liệu (provenance) + metadata quản trị
Chunking chỉ xác định ranh giới; nội dung không được viết lại hay tóm tắt. Ngữ cảnh bổ sung, kết quả OCR và embedding là dữ liệu dẫn xuất, không được ghi đè evidence gốc.
Mỗi evidence cần nguồn, phiên bản, vị trí, thời gian có hiệu lực, quyền truy cập và checksum. Nó chỉ chứng minh “nguồn này đã nói như vậy”; nội dung vẫn có thể cũ, sai hoặc mâu thuẫn. Nguồn thay đổi thì tạo evidence mới, không sửa bản cũ.
Procedure: cách agent tìm câu trả lời
Procedure mô tả cách tìm và kiểm chứng câu trả lời. Nó không chứa sẵn đáp án, mà hướng dẫn quá trình suy luận của agent trong từng vòng lặp:
- mục tiêu, phạm vi, dữ liệu đầu vào và điều kiện áp dụng;
- bước truy xuất, nguồn hoặc công cụ cần dùng và thứ tự thực hiện;
- quy tắc suy luận, trạng thái trung gian và nhánh lựa chọn;
- cách kiểm tra, xử lý khi thiếu evidence và điều kiện dừng.
ProPara và OpenPI biểu diễn thay đổi trạng thái; proScript biểu diễn thứ tự; BPMN 2.0 bổ sung nhánh và điều kiện. Các thành phần này có thể mô tả đường suy luận cho agent.
Tương quan giữa các chunk chỉ là tín hiệu khám phá, chưa phải procedure. Mỗi bước và nhánh phải trỏ về evidence hoặc quy tắc rõ ràng; phần agent tự suy ra phải được đánh dấu là suy luận.
Procedure dẫn agent qua vòng lặp suy luận
Cách lưu trữ evidence và procedure không phải luận điểm chính. Quan trọng hơn, agent phải dùng procedure để quyết định bước tiếp theo trong mỗi vòng lặp.
câu hỏi → agent dùng procedure chọn bước → truy xuất evidence
↑ ↓
└── chưa đủ ← kiểm chứng ← suy luận
↓ đủ
câu trả lời
Trong mỗi vòng, agent lấy thêm evidence, cập nhật trạng thái suy luận rồi kiểm tra điều kiện dừng. Nếu căn cứ chưa đủ hoặc mâu thuẫn, procedure chỉ ra bước tiếp theo; nếu đã đủ, agent mới trả lời. Cơ chế này không bảo đảm agent luôn đúng, nhưng giúp đường suy luận nhất quán và có thể kiểm tra lại.
Nâng cấp dần, không cần đập đi xây lại
Tôi sẽ đi theo ba bước:
- Xây lớp evidence: lưu chunk nguyên văn cùng nguồn, phiên bản, quyền và checksum.
- Xây procedure cho câu hỏi quan trọng: mô hình hóa bước truy xuất, quy tắc suy luận, nhánh xử lý, cách kiểm tra và điều kiện dừng; liên kết về evidence rồi kiểm tra bằng con người.
- Bổ sung và cải tiến trong vận hành: liên tục bổ sung evidence từ nguồn và phiên bản mới, hoàn thiện metadata, đồng thời điều chỉnh procedure theo câu hỏi, phản hồi và lỗi thực tế; evidence gốc không bị ghi đè.
So với cách nhìn “RAG không chỉ là vector” trước đây, đây là bước tiếp theo: RAG đưa đúng tri thức vào ngữ cảnh; evidence cung cấp dữ kiện; procedure dẫn đường cho vòng lặp suy luận để agent tìm và kiểm chứng câu trả lời.
Tài liệu tham khảo
- Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks — Lewis và cộng sự, 2020; paper giới thiệu RAG bằng cách kết hợp tri thức trong mô hình với nguồn ngoài có thể truy xuất.
- Dense Passage Retrieval, ART và FEVER.
- PROV-O: The PROV Ontology — W3C.
- ProPara, OpenPI và proScript.
- Business Process Model and Notation 2.0 — Object Management Group.
Nguồn nghiên cứu được kiểm tra ngày 23/8/2026.