1. Đặt vấn đề
Khi người dùng hỏi một model AI: “Quy trình xử lý phản ánh người bệnh tại bệnh viện gồm những bước nào?”, model có thể trả lời rất tự tin. Nhưng câu trả lời đó có thể không đúng với quy trình thực tế của bệnh viện. Model có thể dựa vào kiến thức chung, suy luận theo mẫu thông thường hoặc tự tạo ra một quy trình nghe hợp lý. Đây là vấn đề lớn trong môi trường bệnh viện, nơi câu trả lời cần căn cứ cụ thể.
RAG được sinh ra để giải quyết vấn đề này. Thay vì yêu cầu model tự nhớ hoặc tự đoán, hệ thống sẽ tìm tài liệu liên quan trước, sau đó yêu cầu model trả lời dựa trên tài liệu đó. Như vậy, câu trả lời không chỉ là “AI nghĩ gì”, mà là “AI tổng hợp từ nguồn nào”.
2. Khái niệm RAG
RAG là viết tắt của Retrieval-Augmented Generation. Có thể dịch là sinh câu trả lời có tăng cường truy xuất.
RAG gồm hai thành phần chính:
- Retrieval: truy xuất tài liệu liên quan đến câu hỏi.
- Generation: dùng model ngôn ngữ để sinh câu trả lời dựa trên tài liệu vừa truy xuất.
Trong bối cảnh bệnh viện, retrieval là quá trình tìm các đoạn quy trình, quy định, biểu mẫu, hướng dẫn, phác đồ hoặc văn bản liên quan. Generation là quá trình dùng Ollama chạy model AI để tạo câu trả lời dễ hiểu, có cấu trúc, dựa trên các đoạn tài liệu đó.
3. RAG khác gì hỏi model trực tiếp?
Nếu hỏi model trực tiếp, luồng xử lý là:
Người dùng hỏi → Model trả lời.
Model trả lời dựa trên tri thức đã học và khả năng suy luận. Nó không biết tài liệu nội bộ của bệnh viện nếu tài liệu đó không nằm trong prompt hoặc dữ liệu huấn luyện.
Với RAG, luồng xử lý là:
Người dùng hỏi → Hệ thống tìm tài liệu liên quan → Đưa tài liệu vào prompt → Model trả lời dựa trên tài liệu.
Điểm khác biệt cốt lõi là model không bị yêu cầu “tự biết”, mà được cung cấp tài liệu trước khi trả lời.
4. Ví dụ đơn giản
Người dùng hỏi:
“Người bệnh té ngã tại khoa thì cần báo cáo thế nào?”
Nếu không có RAG, model có thể trả lời chung:
“Khoa cần ghi nhận sự cố, báo cáo phòng Quản lý chất lượng, phân tích nguyên nhân và thực hiện biện pháp khắc phục.”
Câu này nghe hợp lý nhưng chưa chắc đúng với quy trình bệnh viện.
Nếu có RAG, hệ thống tìm được quy trình “Báo cáo và xử lý sự cố té ngã người bệnh”, trong đó có các bước cụ thể: sơ cứu, báo bác sĩ, ghi nhận hồ sơ, lập phiếu báo cáo, thông báo điều dưỡng trưởng, gửi phòng Quản lý chất lượng trong thời hạn nhất định. Model sẽ trả lời dựa trên nội dung đó và hiển thị nguồn.
5. RAG gồm những thành phần nào?
Một hệ thống RAG thường có:
- Kho tài liệu nguồn.
- Bộ xử lý tài liệu.
- Công cụ chia nhỏ văn bản thành chunk.
- Embedding model.
- Vector database hoặc FAISS.
- Metadata tài liệu.
- Bộ truy xuất.
- Reranker nếu cần.
- Prompt builder.
- LLM chạy qua Ollama.
- API trung gian.
- Giao diện người dùng.
- Log và hệ thống đánh giá.
RAG không phải chỉ là “FAISS + Ollama”. FAISS là một thành phần quan trọng, nhưng toàn bộ hệ thống còn cần dữ liệu, phân quyền, prompt, nguồn và kiểm soát chất lượng.
6. Vì sao RAG giảm hallucination?
Hallucination là hiện tượng model tạo thông tin sai nhưng trình bày như đúng. RAG giảm hallucination bằng cách cung cấp tài liệu cụ thể cho model. Khi model được yêu cầu trả lời dựa trên nguồn, nó ít phải tự suy đoán.
Tuy nhiên, RAG không loại bỏ hoàn toàn hallucination. Nếu hệ thống truy xuất sai tài liệu, đưa tài liệu không liên quan hoặc prompt không yêu cầu bám nguồn, model vẫn có thể trả lời sai. Vì vậy, RAG cần được thiết kế và đánh giá nghiêm túc.
7. RAG khác gì fine-tuning?
Fine-tuning là huấn luyện bổ sung model trên dữ liệu mới, làm thay đổi trọng số model. RAG không huấn luyện lại model. RAG chỉ tìm tài liệu liên quan và đưa vào prompt tại thời điểm trả lời.
Với bệnh viện, RAG thường phù hợp hơn fine-tuning trong giai đoạn đầu vì:
- Dễ cập nhật tài liệu.
- Không cần huấn luyện lại model khi quy trình thay đổi.
- Có thể hiển thị nguồn.
- Dễ kiểm soát tài liệu nào được dùng.
- Ít tốn tài nguyên hơn fine-tuning.
- Phù hợp với dữ liệu nội bộ thay đổi thường xuyên.
Fine-tuning có thể hữu ích cho một số tác vụ chuyên biệt, nhưng không thay thế RAG khi cần trả lời theo tài liệu mới nhất.
8. RAG khác gì tìm kiếm từ khóa?
Tìm kiếm từ khóa dựa trên từ xuất hiện trong tài liệu. Nếu người dùng dùng từ khác với tài liệu, có thể không tìm được. Ví dụ người dùng hỏi “ngã bệnh nhân” nhưng tài liệu ghi “sự cố té ngã người bệnh”.
RAG thường dùng embedding để tìm kiếm theo nghĩa. Nhờ đó, hệ thống có thể tìm tài liệu liên quan dù từ ngữ không hoàn toàn giống nhau.
Tuy nhiên, tìm kiếm từ khóa vẫn rất quan trọng trong bệnh viện, nhất là với mã biểu mẫu, số văn bản, tên quy trình, mã tiêu chí. Vì vậy, hệ thống tốt nên kết hợp tìm kiếm ngữ nghĩa và tìm kiếm từ khóa.
9. RAG có phải lúc nào cũng cần không?
Không phải. Nếu người dùng chỉ yêu cầu “viết bản nháp kế hoạch đào tạo 5S”, có thể dùng model không RAG. Nhưng nếu hỏi “theo quy định của bệnh viện, quy trình đánh giá 5S gồm những bước nào?”, thì cần RAG.
Có thể phân biệt:
- Tác vụ sáng tạo/soạn thảo chung: có thể không cần RAG.
- Tác vụ tra cứu nội bộ: cần RAG.
- Tác vụ pháp luật: rất cần RAG.
- Tác vụ chuyên môn theo phác đồ/hướng dẫn: cần RAG và kiểm duyệt.
- Tác vụ dựa trên báo cáo/số liệu: cần nguồn dữ liệu cụ thể.
10. Kết luận
RAG là phương pháp kết hợp truy xuất tài liệu và sinh câu trả lời bằng model AI. Trong bệnh viện, RAG giúp AI local trả lời dựa trên quy trình, quy định, biểu mẫu, hướng dẫn và tài liệu nội bộ thay vì tự suy đoán. RAG không phải chỉ là một kỹ thuật tìm kiếm, mà là nền tảng để xây dựng trợ lý tri thức bệnh viện có căn cứ, có nguồn và có khả năng cập nhật theo tài liệu mới.
- Đăng nhập để gửi ý kiến