TL;DR

  • Model cho agent não (thoughts). Runtime cho nó thân thể: mắt, tay, bộ nhớ, phanh, tự kiểm tra.

  • Khi một "cơ quan" trong runtime hỏng, dù model mạnh đến đâu agent vẫn hành xử như bệnh nhân.

  • 3 bệnh đầu tiên: Source Amnesia (nhớ fact, mất nguồn), Phantom Limb State (hành động dựa trên trạng thái cũ), Locked-in Syndrome (não tỉnh táo, tay bị cắt đứt).

  • Model mạnh hơn không chữa được những bệnh này. Chỉ có runtime hoàn chỉnh hơn mới cứu được.

Góc nhìn của bác sĩ thần kinh học

Trước đây, mỗi khi AI agent gặp lỗi - sửa nhầm file, lặp lại quyết định cũ, hoặc khẳng định đã hoàn thành task mà không có bằng chứng - phản xạ đầu tiên thường là đổi model. Nếu GPT-4o không ổn thì thử Claude, nếu Claude không ổn thì thử Gemini.

Nhưng nếu nhìn kỹ hơn, hầu hết các lỗi đó trông giống bệnh thần kinh hơn là lỗi model: amnesia, phantom limb, locked-in, confabulation, disinhibition, anosognosia. Mỗi tên đều là thuật ngữ y khoa thực sự. Mỗi bệnh đều có thể tìm thấy trong agent của bạn.

Sự phân biệt quan trọng nhất: model cho agent não (thoughts), còn runtime cho nó thân thể - mắt, tay, bộ nhớ, dây thần kinh, phanh, cơ chế tự kiểm tra. Nếu bất kỳ cơ quan nào thất bại, kể cả model mạnh nhất cũng hành xử như bệnh nhân.

Cách tiếp cận tốt hơn: nhìn agent như một nhà thần kinh học nhìn bệnh nhân. Không hỏi nó thông minh đến đâu. Hỏi cơ quan nào đang hỏng.

Source Amnesia, Phantom Limb và Locked-in Syndrome - ba bệnh thần kinh đầu tiên của AI agent

Ba bệnh đầu tiên: Source Amnesia, Phantom Limb và Locked-in Syndrome

Bệnh 1: Source Amnesia

Triệu chứng: Agent nhớ một fact nhưng không biết fact đó đến từ đâu.

Ví dụ thực tế: bạn hỏi agent "deadline của project là khi nào?" Nó tự tin trả lời "Thứ Sáu." Bạn hỏi tại sao nó biết. Nó không trả lời được. Fact đó có thể đến từ cuộc chat hôm qua, ghi chú tuần trước, một tài liệu đã lỗi thời, hoặc thậm chí là suy luận từ một project tương tự. Nó nhớ kết luận. Nhãn nguồn đã mất.

Trong tâm lý học nhận thức, đây gọi là source-monitoring error: bộ nhớ còn nguyên, nhưng nhãn nguồn bị mất.

Điều này nguy hiểm hơn việc quên. Khi agent quên, nó dừng lại để kiểm tra. Khi nguồn bị mất, nó tiếp tục đi tới với sự tự tin hoàn toàn.

Cách điều trị: Đừng coi bộ nhớ của agent như một kho hàng. Hãy coi nó như các thẻ có phân quyền. Mỗi memory cần ba thứ: source, scope, expiry. Một memory không có nguồn là một gợi ý, không phải kết luận.

Khi debug, hỏi: memory này đến từ đâu? Nó có thể ảnh hưởng đến gì? Nếu một chỉ thị mới đến hôm nay, memory cũ này còn bao nhiêu quyền ra quyết định?

Memory không có source = clue, không phải verdict.

Bệnh 2: Phantom Limb State

Trong y học, hội chứng chi ma (phantom limb) là khi cơ thể vẫn cảm nhận một bộ phận không còn tồn tại. Phantom Limb State là phép ẩn dụ áp dụng cho agent - không phải thuật ngữ y khoa chính thức.

Triệu chứng: File đã thay đổi, môi trường đã thay đổi, task đã được viết lại bởi người khác - nhưng agent vẫn hành động dựa trên trạng thái cũ.

Trường hợp phổ biến nhất: coding agent trong một session dài. Nó nhớ cấu trúc file đã đọc từ đầu và patch trực tiếp vào đó. Nhưng file đó đã bị sửa bởi một chương trình khác, một agent khác, hoặc một con người. Agent không hỏng ở kỹ năng viết code. Nó đang với tay tới một bàn tay không còn tồn tại.

Bug này đặc biệt nguy hiểm vì hành vi của agent trông hợp lý. Path trông đúng, diff trông đúng, giải thích trông đúng. Nó chỉ đang nhắm vào một thế giới cũ.

Cách điều trị: Re-perceive trước khi hành động. Đọc lại file trước khi edit. Mở lại nguồn trước khi trích dẫn. Kiểm tra last known good state trước mọi thao tác nguy hiểm.

Khi debug, hỏi: agent đang nhìn vào trạng thái hiện tại của disk, browser, hay API - hay đang nhìn vào bóng ma trong session của nó?

Bệnh 3: Locked-in Syndrome

Trong y học, hội chứng khóa trong (locked-in syndrome) là khi tâm trí tỉnh táo nhưng cơ thể không thể di chuyển.

Triệu chứng: Model biết tool nào cần gọi, plan đúng, nhưng kênh tool bị cắt đứt. MCP server chết, lệnh cần thiết không có trong PATH, browser session bị drop, file permissions sai, hoặc API key không có trong environment hiện tại.

Não đang hoạt động. Tay bị cắt đứt.

Bảo nó "thử lại" thường không giúp ích gì. Vấn đề không phải thiếu khả năng suy luận. Vấn đề là thiếu actuators.

Cách điều trị: Tách debug thành hai layer độc lập:

  1. Layer 1 - Reasoning: Reasoning có hoàn thành không? Model có thực sự biết bước tiếp theo không?

  2. Layer 2 - Tool channel: Tool server còn chạy không? Env var có trong process này không? Lần gọi thành công cuối cùng là khi nào? Model chọn sai, hay tay bị cắt?

Khi debug: tool server có đang chạy không? API key có trong process hiện tại không? Khi nào là lần call thành công cuối cùng?

Pattern chung của ba bệnh đầu

Nhìn lại ba bệnh, một điều rõ ràng: chúng đều không liên quan đến độ thông minh của model.

Source Amnesia xảy ra vì runtime không gắn metadata nguồn vào memory. Phantom Limb xảy ra vì agent không re-read trước khi act. Locked-in xảy ra vì tool channel bị đứt mà không có cơ chế phát hiện.

Model Claude Opus hay GPT-4o hay Gemini Ultra không thể tự sửa những điều này. Chỉ có infrastructure xung quanh chúng mới sửa được.

Ba bệnh tiếp theo trong phần 2 còn phức tạp hơn: Confabulation (bịa nguồn trông như thật), Disinhibition (phanh control plane hỏng), và Anosognosia (sai mà không biết mình sai). Bài sau sẽ đi sâu vào ba bệnh này cùng với cách chữa trị cụ thể.

Đọc Phần 2: Confabulation, Disinhibition và Anosognosia →