Hallucination (in LLMs)
Ảo giác của LLM là đầu ra trôi chảy, chắc chắn nhưng sai hoặc không được nguồn hỗ trợ. Tìm hiểu lý do model tạo ra ảo giác và cách truy xuất cùng cơ chế từ chối trả lời giúp hạn chế hiện tượng này.
Ảo giác trong mô hình ngôn ngữ lớn (LLM) là nội dung được tạo có vẻ trôi chảy và đáng tin nhưng sai sự thật, không được nguồn của model hỗ trợ hoặc không nhất quán với đầu vào của chính model. Ảo giác có thể là trích dẫn bịa đặt, ngày tháng sai hoặc bản tóm tắt thêm các khẳng định mà tài liệu nguồn chưa từng nêu; chúng khó bị phát hiện vì câu trả lời sai có giọng điệu giống hệt câu trả lời đúng. Trong vụ Mata kiện Avianca (2023), một tòa án liên bang Hoa Kỳ đã phạt hai luật sư vì nộp bản kiến nghị trích dẫn sáu phán quyết tòa án do ChatGPT bịa ra. Một số nhà nghiên cứu thích dùng từ confabulation như từ đồng nghĩa, vì model lấp đầy khoảng trống kiến thức bằng văn bản có vẻ hợp lý.
Các loại ảo giác#
- Ảo giác nội tại: Đầu ra mâu thuẫn với nguồn được cung cấp, chẳng hạn bản tóm tắt nêu năm phê duyệt khác với tài liệu được tóm tắt. Nghiên cứu tổng quan của Ji và cộng sự dùng thuật ngữ này và thuật ngữ tiếp theo để phân loại lỗi trong tóm tắt, hội thoại và dịch thuật.
- Ảo giác ngoại tại: Đầu ra bổ sung thông tin mà nguồn không thể xác nhận; thông tin đó có thể đúng hoặc không.
- Lỗi sự kiện trong câu trả lời mở: Khi không có nguồn, model nêu thông tin sai, bịa tài liệu tham khảo hoặc gộp chi tiết của nhiều người thành một tiểu sử.
- Ảo giác về package: Trợ lý lập trình nhập các thư viện không tồn tại. Một nghiên cứu về 576,000 mẫu mã được tạo từ 16 model cho thấy ít nhất 5.2% package được model thương mại đề xuất và 21.7% package do model mã nguồn mở đề xuất là ảo giác; các đề xuất này gồm 205,474 tên package giả duy nhất mà kẻ tấn công có thể đăng ký để phát tán mã độc.
- Ảo giác đối tượng: Model thị giác-ngôn ngữ (VLM) mô tả các đối tượng không có trong ảnh.
Vì sao LLM tạo ra ảo giác#
LLM tạo văn bản bằng cách dự đoán token tiếp theo dựa trên các xác suất đã học trong quá trình tiền huấn luyện, mà không có bước kiểm tra tích hợp với cơ sở dữ liệu sự kiện. Kalai và cộng sự (2025) tại OpenAI truy nguyên ảo giác về hai áp lực thống kê. Trong quá trình tiền huấn luyện, các sự kiện chỉ xuất hiện một lần, chẳng hạn ngày sinh của một người ít được biết đến, không thể được học một cách đáng tin cậy: nếu 20% dữ kiện về ngày sinh xuất hiện đúng một lần trong dữ liệu huấn luyện, thì có thể kỳ vọng model nền tạo ảo giác với ít nhất 20% câu hỏi về ngày sinh. Sau huấn luyện, phần lớn benchmark chấm câu trả lời đúng hoặc sai và cho "Tôi không biết" 0 điểm, nên model đoán sẽ đạt điểm cao hơn model từ chối trả lời; quá trình hậu huấn luyện vì vậy biến model thành những hệ thống đoán đầy tự tin.
Các yếu tố khác cũng góp phần gây ra hiện tượng này. Lấy mẫu với temperature cao hoặc lấy mẫu nucleus trên phạm vi rộng có thể chọn những phần tiếp nối xác suất thấp, độ chính xác giảm khi các dữ kiện liên quan bị chôn vùi trong đầu vào dài (suy giảm ngữ cảnh), và model được huấn luyện dựa trên sự chấp thuận của con người thường chấp nhận tiền đề sai trong câu hỏi, một dạng nịnh bợ AI.
Phát hiện và giảm thiểu ảo giác#
- Sinh tăng cường truy xuất (RAG): Hệ thống truy xuất các đoạn văn bản từ một kho đáng tin cậy và yêu cầu model trả lời dựa trên những đoạn đó. Bộ xếp hạng lại cải thiện việc chọn đoạn văn bản đưa vào prompt, dù model vẫn có thể hiểu sai hoặc bỏ qua chúng.
- Grounding bằng trích dẫn: Mỗi khẳng định phải trích dẫn một đoạn văn bản được truy xuất, và một bộ kiểm tra, thường là model thứ hai, xác nhận đoạn văn bản đó có hỗ trợ khẳng định hay không.
- Entropy ngữ nghĩa: Model trả lời cùng một câu hỏi nhiều lần, các câu trả lời được phân nhóm theo ý nghĩa, và entropy cao giữa các nhóm là dấu hiệu cho thấy có thể xảy ra confabulation.
- Chuỗi xác minh (CoVe): Model soạn câu trả lời, viết các câu hỏi xác minh những khẳng định của chính mình, trả lời từng câu độc lập rồi chỉnh sửa bản nháp.
- Khuyến khích từ chối trả lời: Huấn luyện bằng RLHF hoặc phương pháp phản hồi khác để phạt lỗi tự tin nặng hơn câu trả lời "Tôi không biết", đồng thời chấm điểm đánh giá theo cách tương tự, sẽ loại bỏ động cơ đoán mò.
Một hệ thống hỏi đáp có grounding kết hợp một số bước kiểm tra này trong một vòng lặp:
Ảo giác so với các khái niệm liên quan#
- Thiên lệch trong AI: Sự lệch có tính hệ thống trong đầu ra, chẳng hạn ưu ái một nhóm người. Một câu trả lời có thể không thiên lệch nhưng vẫn chứa ảo giác, hoặc đúng sự thật nhưng vẫn thiên lệch.
- Quá khớp: Ghi nhớ các ví dụ huấn luyện làm giảm khả năng khái quát hóa. Ảo giác thường xuất phát từ tình huống ngược lại, khi model bổ sung một dữ kiện mà nó thấy quá ít lần để ghi nhớ.
- Sụp đổ model: Mất kiến thức hiếm gặp khi model được huấn luyện bằng dữ liệu do model tạo ra, điều này có thể khiến các model về sau tạo thêm ảo giác về những dữ kiện ít phổ biến.
Ảo giác đối tượng trong model thị giác-ngôn ngữ#
VLM dựa nhiều vào prior ngôn ngữ, vì vậy model tạo caption có thể nhắc đến chiếc nĩa trên bàn ăn dù trên bàn không có nĩa, do nĩa thường xuất hiện cạnh đĩa trong caption dùng để huấn luyện. Ảo giác đối tượng trong tác vụ tạo caption ảnh được đo bằng metric CHAIR, tức tỷ lệ đối tượng được nhắc đến trong caption nhưng không có trong nhãn ground truth của ảnh. Khi VLM vẽ bounding box thay vì vậy, mỗi đối tượng ảo giác trở thành một false positive; kết quả benchmark VLM báo cáo precision của từng model trên dataset detection thực tế. Một cách giảm thiểu là cung cấp cho mô hình ngôn ngữ danh sách đối tượng mà một bộ phát hiện thực sự tìm thấy. Đoạn code bên dưới chạy YOLO26 trên ảnh rồi chuyển các detection thành một ràng buộc prompt:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Per-class detection counts as text, used as facts the language model must stay within
detections = result.verbose()
prompt = f"Describe this image. Mention only these detected objects: {detections}"
print(prompt)result.verbose() trả về một số lượng cho mỗi lớp được phát hiện, nên mọi đối tượng được nêu trong prompt đều có một bounding box tương ứng; câu trả lời nhắc đến bất kỳ đối tượng nào khác có thể bị gắn cờ trước khi đến người dùng.










