1. Đặt vấn đề
Một bệnh viện có thể có hàng nghìn tài liệu: quy trình, quy định, biểu mẫu, hướng dẫn chuyên môn, kế hoạch, báo cáo, biên bản, tiêu chí chất lượng, văn bản pháp luật, tài liệu đào tạo. Nếu chỉ tìm kiếm bằng từ khóa, người dùng dễ bỏ sót tài liệu quan trọng vì cùng một ý có thể được diễn đạt bằng nhiều cách khác nhau.
Ví dụ, người dùng hỏi “xử lý người bệnh bị ngã”, trong khi tài liệu dùng cụm “sự cố té ngã”. Người dùng hỏi “quy trình phản hồi khi bệnh nhân phàn nàn”, trong khi tài liệu ghi “tiếp nhận và xử lý ý kiến phản ánh của người bệnh”. Tìm kiếm từ khóa có thể không đủ tốt. Đây là lúc embedding model trở nên quan trọng.
Embedding model giúp chuyển văn bản thành vector biểu diễn ý nghĩa. Nhờ đó, hệ thống có thể tìm kiếm theo ngữ nghĩa, tức là tìm nội dung có ý nghĩa liên quan, không chỉ tìm nội dung có từ khóa giống nhau.
2. Embedding là gì?
Embedding là biểu diễn số học của văn bản trong không gian vector. Một đoạn văn, câu hỏi hoặc tài liệu được chuyển thành một dãy số. Dãy số này phản ánh ý nghĩa của văn bản theo cách model học được.
Nếu hai đoạn văn có ý nghĩa gần nhau, vector của chúng sẽ gần nhau. Nếu hai đoạn không liên quan, vector sẽ xa nhau. Nhờ đó, máy tính có thể so sánh mức độ tương đồng ngữ nghĩa giữa câu hỏi và các đoạn tài liệu.
Ví dụ:
- “Quy trình báo cáo sự cố té ngã”
- “Cần làm gì khi người bệnh bị ngã trong khoa?”
Hai câu này dùng từ khác nhau nhưng ý nghĩa gần nhau. Embedding model tốt sẽ tạo vector gần nhau, giúp hệ thống tìm đúng tài liệu.
3. Embedding model khác gì LLM?
LLM tạo câu trả lời. Embedding model tạo vector. Đây là hai vai trò khác nhau.
LLM giống người viết và diễn giải. Embedding model giống người lập chỉ mục ngữ nghĩa. Embedding model không trả lời câu hỏi dài, không viết báo cáo, không phân tích nguyên nhân. Nó giúp tìm đúng tài liệu để LLM sử dụng.
Trong hệ thống RAG, embedding model thường hoạt động trước LLM. Khi người dùng hỏi, câu hỏi được chuyển thành vector. Hệ thống so sánh vector câu hỏi với vector của các đoạn tài liệu trong kho. Các đoạn liên quan nhất được lấy ra và đưa cho LLM.
Nếu embedding model truy xuất sai, LLM có thể trả lời sai dù bản thân LLM tốt. Vì vậy, embedding model là thành phần quyết định chất lượng tra cứu tài liệu.
4. Vai trò của embedding trong bệnh viện
Embedding model có nhiều vai trò trong bệnh viện.
4.1. Tìm kiếm ngữ nghĩa trong kho tài liệu
Đây là vai trò quan trọng nhất. Người dùng có thể hỏi bằng ngôn ngữ tự nhiên, hệ thống tìm tài liệu liên quan theo ý nghĩa.
4.2. Hỗ trợ RAG
Embedding là nền tảng để xây dựng RAG. Không có embedding, hệ thống khó tìm đoạn tài liệu phù hợp trong kho lớn.
4.3. Phân nhóm tài liệu
Embedding có thể giúp phát hiện các tài liệu có nội dung gần nhau, hỗ trợ phân nhóm quy trình, biểu mẫu hoặc báo cáo.
4.4. Phát hiện trùng lặp hoặc gần trùng lặp
Bệnh viện có thể có nhiều phiên bản tài liệu tương tự. Embedding giúp phát hiện nội dung gần giống để rà soát.
4.5. Hỗ trợ phân loại phản ánh
Các phản ánh người bệnh có thể được embedding và phân nhóm theo chủ đề: thái độ giao tiếp, thời gian chờ, chi phí, vệ sinh, hướng dẫn thủ tục, cơ sở vật chất.
4.6. Hỗ trợ tìm minh chứng chất lượng
Khi đánh giá tiêu chí chất lượng, embedding có thể giúp tìm các tài liệu liên quan đến một tiêu chí hoặc nội dung kiểm tra.
5. Chất lượng embedding phụ thuộc vào đâu?
Chất lượng embedding phụ thuộc vào nhiều yếu tố.
Thứ nhất là model embedding. Model phải phù hợp với ngôn ngữ và loại văn bản. Với bệnh viện Việt Nam, model cần xử lý tiếng Việt tốt.
Thứ hai là chất lượng văn bản đầu vào. Nếu tài liệu bị lỗi OCR, thiếu tiêu đề, sai mã hóa, lẫn ký tự rác hoặc chia đoạn không hợp lý, embedding sẽ kém.
Thứ ba là cách chia chunk. Nếu chunk quá ngắn hoặc quá dài, kết quả tìm kiếm có thể kém chính xác.
Thứ tư là loại truy vấn của người dùng. Câu hỏi quá chung chung có thể khiến hệ thống tìm nhiều tài liệu không liên quan. Cần hướng dẫn người dùng hỏi rõ.
Thứ năm là phương pháp tìm kiếm. Có thể dùng tìm kiếm vector đơn thuần, hybrid search kết hợp từ khóa và vector, hoặc bổ sung reranker.
6. Embedding và tiếng Việt
Tiếng Việt có đặc thù dấu, từ ghép, thuật ngữ Hán Việt, thuật ngữ y khoa, cách diễn đạt hành chính và nhiều từ đồng nghĩa. Một embedding model không tốt với tiếng Việt có thể tìm sai tài liệu.
Ví dụ:
- “người bệnh” và “bệnh nhân”
- “phản ánh” và “khiếu nại”
- “té ngã” và “ngã”
- “nhiễm khuẩn bệnh viện” và “nhiễm khuẩn liên quan chăm sóc y tế”
- “quản lý chất lượng” và “cải tiến chất lượng”
Model embedding tốt cần hiểu các quan hệ này ở mức nhất định. Vì vậy, khi chọn embedding model, bệnh viện nên kiểm tra bằng bộ câu hỏi tiếng Việt thực tế, không chỉ dựa vào đánh giá tiếng Anh.
7. Embedding không thay thế kiểm tra nguồn
Embedding giúp tìm tài liệu liên quan, nhưng không đảm bảo tài liệu đó luôn đúng, mới nhất hoặc còn hiệu lực. Nếu kho tài liệu chứa văn bản cũ, hết hiệu lực hoặc trùng lặp, hệ thống có thể truy xuất nhầm.
Vì vậy, bệnh viện cần quản lý metadata tài liệu:
- Tên tài liệu.
- Mã tài liệu.
- Phiên bản.
- Ngày ban hành.
- Ngày hiệu lực.
- Đơn vị ban hành.
- Tình trạng còn hiệu lực hay thay thế.
- Phạm vi áp dụng.
- Đường dẫn nguồn.
Khi trả lời, hệ thống nên hiển thị nguồn để người dùng kiểm tra. Embedding là công cụ tìm kiếm, không phải cơ chế bảo đảm pháp lý.
8. Quy trình tạo embedding cho tài liệu bệnh viện
Một quy trình cơ bản gồm:
- Thu thập tài liệu.
- Làm sạch văn bản.
- Chuẩn hóa tiêu đề, mục, mã tài liệu.
- Chia tài liệu thành chunk.
- Dùng embedding model tạo vector cho từng chunk.
- Lưu vector vào FAISS hoặc vector database.
- Lưu metadata đi kèm.
- Khi người dùng hỏi, tạo embedding cho câu hỏi.
- Tìm các chunk gần nhất.
- Đưa chunk vào prompt cho LLM.
Mỗi bước đều ảnh hưởng đến chất lượng cuối cùng. Nếu chỉ tập trung vào model mà bỏ qua làm sạch tài liệu, hệ thống RAG sẽ khó đạt kết quả tốt.
9. Kết luận
Embedding model là thành phần nền tảng trong hệ thống tra cứu tài liệu bệnh viện. Nó giúp chuyển văn bản thành vector để tìm kiếm theo ngữ nghĩa, hỗ trợ RAG, phân nhóm tài liệu, phát hiện trùng lặp và khai thác kho tri thức nội bộ.
Đối với bệnh viện, embedding model có giá trị đặc biệt vì tài liệu nhiều, phân tán và có nhiều cách diễn đạt khác nhau. Tuy nhiên, embedding chỉ hiệu quả khi đi kèm tài liệu sạch, chunking hợp lý, metadata rõ ràng, vector database phù hợp và cơ chế hiển thị nguồn. Một hệ thống AI local tốt không chỉ cần LLM mạnh, mà cần embedding tốt để tìm đúng tri thức trước khi sinh câu trả lời.
- Đăng nhập để gửi ý kiến