Mở đầu — vì sao bài này quan trọng
Y tế là một trong những lĩnh vực mà AI vừa hứa hẹn nhất, vừa nguy hiểm nhất. Hứa hẹn vì bác sĩ, y tá, dược sĩ ở Việt Nam đang quá tải khủng khiếp — một phòng khám tuyến huyện có thể tiếp 80–120 lượt bệnh nhân mỗi buổi sáng, và mỗi bệnh nhân được vài phút. Nguy hiểm vì nếu bạn dùng prompt sai cách, AI có thể "tự tin" đưa ra một chẩn đoán sai, một liều thuốc sai, và người dùng — vốn không phân biệt được đâu là thông tin đáng tin — sẽ làm theo. Hậu quả không phải là một email gửi nhầm, mà có thể là tính mạng con người.
Vì vậy, trước khi học bất cứ kỹ thuật nào, bạn phải khắc cốt ghi tâm một nguyên tắc:
> AI KHÔNG PHẢI là bác sĩ, và không được phép thay thế chuyên gia y tế có giấy phép hành nghề. Prompt y tế chỉ được dùng cho: (1) cung cấp thông tin sức khỏe tổng quát mang tính giáo dục, (2) hỗ trợ phân loại mức độ ưu tiên (triage) để định hướng bệnh nhân đến đúng nơi, và (3) hỗ trợ hành chính — ghi chú lâm sàng, tóm tắt, soạn thảo — dưới sự giám sát của người có chuyên môn.
Bài học này không dạy bạn "làm bác sĩ bằng AI". Nó dạy bạn ba nhóm ứng dụng an toàn và có giá trị thực trong ngành y: symptom triage (phân loại triệu chứng để định hướng), clinical notes (hỗ trợ ghi chép lâm sàng), và patient education (giáo dục sức khỏe cho bệnh nhân). Ba nhóm này bao trùm phần lớn nhu cầu hợp pháp của các phòng khám, bệnh viện, startup healthtech và cả các nhà thuốc tại Việt Nam.
Khái niệm cốt lõi
Ba tầng ứng dụng và ranh giới rủi ro
Hãy hình dung một trục từ "an toàn" đến "cấm tuyệt đối":
- An toàn nhất — Giáo dục sức khỏe (patient education): giải thích một bệnh, một loại thuốc, một quy trình khám bằng ngôn ngữ dễ hiểu. Đây là thông tin công khai, không cá nhân hóa thành chẩn đoán.
- Cần kiểm soát — Triage định hướng: dựa trên triệu chứng, xác định mức độ khẩn cấp và khuyên bệnh nhân nên đi cấp cứu, đặt lịch khám, hay tự chăm sóc tại nhà. AI KHÔNG kết luận bệnh, chỉ định hướng.
- Cần giám sát chuyên môn — Ghi chú lâm sàng: chuyển hội thoại bác sĩ–bệnh nhân thành ghi chú SOAP, tóm tắt bệnh án. Bác sĩ luôn là người rà soát và ký cuối cùng.
- CẤM: kê đơn thuốc cụ thể, khẳng định chẩn đoán, thay thế cấp cứu, tư vấn liều lượng thuốc cho ca cụ thể mà không có bác sĩ.
Guardrail phải nằm trong system prompt
Nguyên tắc số một: mọi ràng buộc an toàn phải đặt ở system prompt, không phải để bệnh nhân "gợi ý" trong câu hỏi. Một khung system prompt y tế tối thiểu:
Bạn là trợ lý thông tin sức khỏe, KHÔNG phải bác sĩ.
QUY TẮC BẮT BUỘC:
- KHÔNG đưa ra chẩn đoán xác định. Chỉ nêu khả năng chung và mức độ ưu tiên.
- KHÔNG kê đơn, KHÔNG đề xuất liều lượng thuốc cụ thể.
- LUÔN kết thúc bằng khuyến cáo gặp chuyên gia y tế có giấy phép.
- Nếu phát hiện dấu hiệu nguy hiểm tính mạng (đau ngực dữ dội, khó thở,
liệt nửa người, chảy máu không cầm...), lập tức khuyên gọi 115 / đến
cấp cứu ngay, không hỏi thêm.
- Ngôn ngữ: tiếng Việt, dễ hiểu, tránh thuật ngữ y khoa khó.
Red flags — dấu hiệu đỏ phải nhận biết
Trong triage, khái niệm quan trọng nhất là red flags — nhóm triệu chứng cảnh báo nguy hiểm cần can thiệp khẩn cấp. Prompt triage tốt phải "nhồi" danh sách red flag vào để AI ưu tiên phát hiện trước khi làm bất cứ điều gì khác: đau ngực lan tay trái, khó thở đột ngột, méo miệng/yếu liệt một bên (dấu hiệu đột quỵ), sốt cao co giật ở trẻ, chảy máu ồ ạt, ý định tự tử... Khi gặp red flag, AI không được "tư vấn", chỉ được đẩy bệnh nhân đến cấp cứu.
Tình huống thực tế
Ví dụ 1 — Phòng khám Đa khoa Vạn Phúc (TP.HCM): chatbot triage trước khám
Một chuỗi phòng khám tư giả định tại TP.HCM tiếp khoảng 400 lượt/ngày, trong đó ước tính 30% là các ca nhẹ (cảm cúm, đau họng) lẽ ra chỉ cần tư vấn tại nhà, làm nghẽn hàng đợi và khiến ca nặng phải chờ lâu. Họ xây một chatbot Zalo để triage sơ bộ trước khi bệnh nhân đặt lịch.
Prompt lõi họ dùng:
[System như khung guardrail ở trên]Nhiệm vụ: Dựa trên mô tả triệu chứng, phân loại vào 1 trong 3 mức:
- ĐỎ (cấp cứu ngay): xuất hiện bất kỳ red flag nào → khuyên gọi 115.
- VÀNG (nên khám trong 24-48h): triệu chứng dai dẳng/tăng nặng.
- XANH (tự chăm sóc, theo dõi tại nhà): triệu chứng nhẹ, ổn định.
Đầu ra JSON:
{ "muc_do": "DO|VANG|XANH",
"ly_do": "giải thích ngắn dễ hiểu",
"khuyen_nghi": "bước tiếp theo cụ thể",
"red_flag_can_theo_doi": ["..."] }Luôn nhắc: kết quả chỉ mang tính định hướng, không thay thế bác sĩ.
Kết quả sau 2 tháng (số liệu minh họa): khoảng 22% lượt liên hệ được phân loại XANH và tự xử lý tại nhà, giảm tải hàng đợi buổi sáng rõ rệt; và quan trọng hơn, hệ thống bắt được vài ca đau ngực được gán ĐỎ và đẩy thẳng đi cấp cứu.
Bài học rút ra: giá trị lớn nhất của triage AI không phải "chẩn đoán đúng", mà là phân luồng đúng — đưa ca nhẹ ra khỏi hàng đợi và không bao giờ bỏ sót ca nặng. Đầu ra JSON có trường muc_do giúp hệ thống backend tự động định tuyến (đặt lịch, hiển thị số 115...).
Ví dụ 2 — Bác sĩ phòng mạch tư: chuyển hội thoại thành ghi chú SOAP
Một bác sĩ nội khoa mở phòng mạch riêng, mỗi tối khám 15–20 bệnh nhân và thường phải thức khuya gõ lại bệnh án. Ông dùng điện thoại ghi âm (có xin phép bệnh nhân), chuyển thành văn bản, rồi dùng prompt để tạo ghi chú theo cấu trúc SOAP — chuẩn ghi chép lâm sàng gồm Subjective (chủ quan — lời bệnh nhân kể), Objective (khách quan — dấu hiệu đo được), Assessment (đánh giá), Plan (kế hoạch).
Bạn là trợ lý ghi chép lâm sàng cho bác sĩ. Từ bản ghi hội thoại dưới đây,
soạn ghi chú theo cấu trúc SOAP bằng tiếng Việt.QUY TẮC:
- CHỈ ghi lại thông tin có trong hội thoại. TUYỆT ĐỐI không suy diễn,
không tự thêm chẩn đoán hay thuốc không được bác sĩ nói.
- Nếu thông tin thiếu ở mục nào, ghi "[bác sĩ bổ sung]".
- Giữ nguyên số đo, liều thuốc đúng như bác sĩ đọc.
- Phần Assessment/Plan: chỉ chép lại lời bác sĩ, không tự đề xuất.
Bản ghi: """{transcript}"""
Điểm mấu chốt nằm ở dòng "không tự thêm chẩn đoán hay thuốc". Nếu thiếu ràng buộc này, mô hình có xu hướng "giúp đỡ quá mức" — tự bịa một chẩn đoán nghe hợp lý (hiện tượng hallucination), và trong y tế đó là thảm họa. Bác sĩ vẫn đọc lại và ký, nhưng thời gian gõ bệnh án của ông giảm từ ~90 phút xuống ~25 phút mỗi tối.
Bài học rút ra: với clinical notes, AI là người thư ký, không phải người ra quyết định. Prompt phải ép mô hình "chỉ chép lại, không sáng tạo", và luôn để lại chỗ trống [bác sĩ bổ sung] thay vì tự lấp bằng phỏng đoán.
Ví dụ 3 — Nhà thuốc Long Châu (giả định ứng dụng): giáo dục bệnh nhân về thuốc
Một chuỗi nhà thuốc lớn muốn thêm tính năng "Giải thích đơn thuốc dễ hiểu" trong app. Bệnh nhân chụp/nhập tên thuốc bác sĩ kê, AI giải thích công dụng, cách uống chung chung, lưu ý — nhưng KHÔNG được thay đổi liều hay khuyên bỏ thuốc.
Bạn giải thích thông tin thuốc cho người dân bằng tiếng Việt đơn giản.
Với thuốc "{ten_thuoc}", trình bày:
- Thường dùng để làm gì (nói chung, không khẳng định bệnh của người hỏi).
- Lưu ý phổ biến khi dùng (uống trước/sau ăn, tránh rượu bia...).
- Tác dụng phụ thường gặp cần để ý.
TUYỆT ĐỐI KHÔNG:
- Đề xuất liều lượng cụ thể cho người hỏi.
- Khuyên tăng/giảm/ngừng thuốc.
- Khẳng định người hỏi mắc bệnh gì.
Kết thúc: "Hãy dùng thuốc đúng theo chỉ định của bác sĩ/dược sĩ. Nếu có
bất thường, liên hệ ngay cơ sở y tế."
Bài học rút ra: giáo dục sức khỏe là vùng an toàn nhất, nhưng vẫn phải tách bạch rõ giữa "thông tin chung về thuốc" (được phép) và "tư vấn liều cho cá nhân này" (cấm). Ranh giới đó nằm ở chỗ prompt buộc AI nói chung chung, không cá nhân hóa thành lời khuyên điều trị.
Hướng dẫn từng bước
Khi xây một ứng dụng prompt y tế, hãy đi theo trình tự:
- Xác định đúng vùng ứng dụng. Bạn đang làm triage, notes, hay education? Không gộp cả ba vào một prompt vạn năng — mỗi vùng có guardrail và đầu ra khác nhau.
- Viết system prompt guardrail trước, nội dung sau. Bắt đầu bằng câu "Bạn KHÔNG phải bác sĩ", liệt kê điều cấm, và quy tắc xử lý red flag. Đây là lớp bảo vệ không được để bệnh nhân ghi đè.
- Nhồi danh sách red flag và quy tắc phân luồng. Với triage, liệt kê rõ các dấu hiệu nguy hiểm và mức độ ĐỎ/VÀNG/XANH. Yêu cầu AI kiểm tra red flag ĐẦU TIÊN trước khi làm bất cứ việc gì.
- Ép đầu ra có cấu trúc. Dùng JSON với trường phân loại rõ ràng để backend tự động định tuyến, đồng thời dễ log lại phục vụ kiểm toán (audit) — điều bắt buộc trong y tế.
- Thêm câu khuyến cáo cố định ở cuối mọi phản hồi. "Thông tin này chỉ mang tính tham khảo, không thay thế bác sĩ có giấy phép."
- Xử lý dữ liệu cá nhân (PII/PHI) cẩn thận. Ẩn danh tên, số CCCD, địa chỉ trước khi gửi lên mô hình nếu có thể. Tuân thủ quy định bảo vệ dữ liệu cá nhân của Việt Nam (Nghị định 13/2023).
- Đưa con người vào vòng lặp (human-in-the-loop). Với notes, bác sĩ ký duyệt. Với triage nghiêm trọng, chuyển sang tổng đài người thật. AI chỉ hỗ trợ, không đóng cầu dao cuối.
- Kiểm thử với ca biên (edge cases). Thử các mô tả mập mờ, ca cấp cứu ẩn dưới lời kể bình thường, câu hỏi cố "lừa" AI kê đơn. Đảm bảo guardrail giữ vững.
Lỗi thường gặp & mẹo
- Lỗi: để AI khẳng định chẩn đoán. Nếu bệnh nhân hỏi "Tôi bị gì?", AI không được trả lời "Bạn bị viêm phổi". Mẹo: trong prompt yêu cầu diễn đạt dạng khả năng và mức độ ưu tiên — "Các triệu chứng này có thể liên quan đến nhiều nguyên nhân, bạn nên đi khám để được chẩn đoán chính xác."
- Lỗi: bỏ qua red flag vì AI mải trả lời câu hỏi chính. Người dùng kể "hơi mệt, mà đôi lúc đau tức ngực lan xuống tay". Nếu prompt không ép kiểm tra red flag trước, AI có thể chỉ tư vấn nghỉ ngơi. Mẹo: đặt bước "quét red flag" là bước 0, ưu tiên tuyệt đối.
- Lỗi: hallucination trong clinical notes. Mô hình tự thêm chi tiết không có trong hội thoại. Mẹo: dùng cụm "CHỈ ghi thông tin có trong nguồn, thiếu thì ghi [bác sĩ bổ sung]" và luôn có bước bác sĩ rà soát.
- Lỗi: tư vấn liều thuốc cụ thể. Cực kỳ nguy hiểm. Mẹo: liệt kê thẳng "KHÔNG đề xuất liều lượng" trong điều cấm, và test thử bằng câu hỏi cố ý gài.
- Lỗi: quên yếu tố văn hóa/ngôn ngữ Việt. Người dùng dùng từ dân dã ("nóng trong người", "trúng gió"). Mẹo: yêu cầu AI hỏi lại làm rõ triệu chứng thực thể thay vì diễn giải theo từ dân gian.
- Mẹo quan trọng: luôn giữ nhật ký (log) mọi phản hồi triage. Trong y tế, khả năng truy vết "vì sao hệ thống khuyên như vậy" là yêu cầu về pháp lý và trách nhiệm, không phải tùy chọn.
Bài tập thực hành
- Viết system prompt guardrail cho một chatbot triage của phòng khám nhi. Liệt kê ít nhất 6 red flag đặc thù trẻ em (sốt cao co giật, bỏ bú, li bì, thở rút lõm ngực...) và quy tắc xử lý.
- Thiết kế prompt tạo ghi chú SOAP từ một đoạn hội thoại bác sĩ–bệnh nhân mẫu bạn tự viết. Test xem AI có tự "bịa" thêm chẩn đoán không; nếu có, siết prompt lại đến khi hết.
- Tạo prompt giáo dục bệnh nhân giải thích về bệnh tiểu đường type 2 cho người mới được chẩn đoán, bằng tiếng Việt dễ hiểu, có phần "khi nào cần đi khám gấp", và đảm bảo không cá nhân hóa thành tư vấn điều trị.
- Thử phá guardrail (red team): đóng vai người dùng cố lừa AI kê đơn kháng sinh cụ thể. Ghi lại prompt nào bị "xuyên thủng" và bổ sung ràng buộc.
Tóm tắt
Prompt y tế là lĩnh vực đòi hỏi kỷ luật cao nhất về an toàn. Ghi nhớ ba trụ cột ứng dụng an toàn: triage (phân luồng, không chẩn đoán), clinical notes (thư ký, không quyết định), patient education (thông tin chung, không tư vấn cá nhân). Nguyên tắc bất di bất dịch: AI không thay thế bác sĩ có giấy phép; guardrail phải nằm trong system prompt; red flag được quét đầu tiên và ưu tiên tuyệt đối; mọi phản hồi kết thúc bằng khuyến cáo gặp chuyên gia; và luôn có con người trong vòng lặp cùng nhật ký truy vết. Khi bạn đặt an toàn lên trước tiện lợi, AI trở thành công cụ giảm tải mạnh mẽ cho ngành y — giúp bác sĩ Việt Nam có thêm thời gian cho điều máy móc không làm được: chăm sóc con người.