Nghiên Cứu AI

ACM: Khi AI agent tự biết lúc nào nên dọn bộ nhớ

Paper ACM từ CMU và Meta biến quản lý context thành một kỹ năng chủ động của agent: tự chọn lúc nén, giữ nguyên lịch sử ở bộ nhớ ngoài và truy xuất lại khi cần. Trên search và coding dài hơi, cách làm này giúp Qwen3.5-9B đi xa hơn, ổn định hơn và giảm áp lực token đỉnh.

Thứ Sáu, 7 tháng 8, 202612 phút đọcNguồn: arXiv:2607.23809
Nghe Bé Mi kể: Khi agent tự biết lúc nào nên dọn bộ nhớ02:51
ACM: Khi AI agent tự biết lúc nào nên dọn bộ nhớ

Nếu bàn làm việc của anh/chị đầy giấy tờ, cách giải quyết không phải lúc nào cũng là mua một cái bàn lớn hơn.

Có khi ta cần giữ vài tờ đang dùng trước mặt, cất hồ sơ cũ vào tủ, ghi nhãn cho chúng và biết chính xác lúc nào phải lấy lại.

AI agent cũng gặp một vấn đề rất giống vậy. Trong một nhiệm vụ kéo dài hàng chục lượt, nó liên tục tích lũy câu hỏi, suy luận, kết quả tìm kiếm, log công cụ, đoạn code, lỗi thử nghiệm và những ngõ cụt. Context window dù lớn đến đâu cũng dần biến thành một căn phòng chất đầy giấy. Thông tin quan trọng không biến mất, nhưng sự chú ý bị loãng và chi phí xử lý tăng lên.

Paper “ACM: Agentic Context Management for Long Horizon Tasks” của Xiaochuan Li, Ryan Ming, Meng Chu, Shuai Shao, Rong Jin và Chenyan Xiong từ Carnegie Mellon University và Meta đặt một câu hỏi rất hay:

Thay vì chờ hệ thống ép nén context ở một ngưỡng cố định, liệu agent có thể tự nhận ra lúc nào đầu óc mình cần được dọn — và tự quyết định nên cất gì, lấy lại gì hay không?

Nhóm tác giả gọi câu trả lời của họ là Agentic Context Management, viết tắt là ACM.

Context dài không đồng nghĩa với trí nhớ tốt

Một context window một triệu token nghe rất lớn. Nhưng “chứa được” và “dùng tốt” là hai chuyện khác nhau.

Trong task dài, transcript thường có ba loại vật liệu trộn vào nhau:

  • bằng chứng đang cần cho bước tiếp theo;
  • chi tiết có thể cần lại sau này;
  • thử nghiệm thất bại, output dài và thông tin đã hết giá trị trước mắt.

ReAct giữ lịch sử tăng dần cho tới khi chạm giới hạn. Các summary agent cải thiện tình hình bằng cách tóm tắt khi context vượt một ngưỡng do con người đặt trước, chẳng hạn 90%. Nhưng cách này có hai nhược điểm.

Thứ nhất, thời điểm nén không nhất thiết khớp với trạng thái suy luận. Có lúc context mới 50% nhưng agent vừa kết thúc một nhánh điều tra và đây là thời điểm rất đẹp để dọn bàn. Có lúc context đã 90% nhưng agent đang ở giữa một chuỗi bằng chứng mà nén ngay sẽ làm đứt mạch.

Thứ hai, summary thông thường thay thế lịch sử gốc. Nếu bản tóm tắt bỏ sót một cái tên, một con số hoặc một lỗi nhỏ, chi tiết đó có thể mất luôn.

ACM thay đổi cả hai điểm: agent tự chọn thời điểm quản lý context, còn lịch sử gốc được đưa sang bộ nhớ ngoài thay vì bị xóa.

Figure 1 của paper so sánh ReAct, Summary Agent và ACM Agent: ACM tự chọn lúc nén, offload lịch sử sang long-term memory rồi query lại khi cần.
Figure 1 của paper so sánh ReAct, Summary Agent và ACM Agent: ACM tự chọn lúc nén, offload lịch sử sang long-term memory rồi query lại khi cần.

Nguồn: Li và cộng sự, arXiv:2607.23809, Figure 1, giấy phép CC BY 4.0.

Hai công cụ nhỏ, nhưng thay đổi quyền chủ động

ACM chỉ thêm hai công cụ quản lý bộ nhớ.

manage_context nén các lượt cũ thành một summary ngắn. Nhưng raw messages không bị vứt đi: chúng được lưu trong workspace bên ngoài, còn summary nhận một mã định danh trỏ về đúng phần lịch sử gốc.

query_memory cho phép agent hỏi lại kho raw messages theo mã đó. Một querier model đọc phần lịch sử liên quan rồi trả đúng thông tin agent đang cần về working context.

Hãy hình dung một bác sĩ đang đọc hồ sơ bệnh án dài. Trên bàn chỉ có bản tóm tắt và những xét nghiệm đang dùng. Hồ sơ gốc vẫn nằm trong tủ. Khi thấy một chi tiết bất thường, bác sĩ có thể mở đúng tập hồ sơ cũ thay vì dựa hoàn toàn vào trí nhớ của bản tóm tắt.

Paper gọi cơ chế này là “lossless”. Cần hiểu từ đó cho chính xác: summary vẫn có thể làm mất chi tiết trên bề mặt working context; tính lossless nằm ở cấp hệ thống, vì raw history vẫn được giữ để truy xuất lại. ACM không làm bản tóm tắt trở nên hoàn hảo. Nó giữ đường quay về nguồn gốc.

Điểm thứ hai còn quan trọng hơn: quản lý context trở thành một hành động trong policy của agent, không còn là việc vệ sinh do hạ tầng áp đặt từ bên ngoài.

Nói cách khác, agent không chỉ học trả lời. Nó học tự quản lý điều kiện để mình có thể tiếp tục suy nghĩ.

Biết lúc nào không nên dọn cũng là một kỹ năng

Cho agent nút “nén context” chưa đủ. Model mạnh vẫn có thể không dùng, dùng quá muộn hoặc dùng sai lúc.

Nhóm tác giả xây một pipeline teacher–student với hai ràng buộc đối xứng.

Ở nhánh thứ nhất, student chạy task không có công cụ context. Teacher đọc trajectory và chèn hành động quản lý tại những chỗ student bắt đầu lặp query, sa vào ngõ cụt hoặc đã tích lũy đủ một chặng thông tin để nén.

Ở nhánh thứ hai, student chạy task công cụ context. Teacher tìm những lần gọi quá sớm hoặc không cần thiết, rồi thay chúng bằng hành động hữu ích hơn: tìm thêm bằng chứng, mở tài liệu quan trọng hoặc dừng tìm và trả lời.

Đây là một chi tiết rất trưởng thành trong thiết kế. Năng lực không nằm ở việc dùng tool càng nhiều càng tốt. Năng lực nằm ở đúng thời điểm.

Một người liên tục sắp xếp bàn nhưng không làm việc cũng không hiệu quả hơn người để bàn hơi bừa. ACM phải học cả hai chiều: khi nào nên dọn và khi nào nên tiếp tục làm.

Kết quả: context sạch giúp agent đi xa hơn

Nhóm nghiên cứu đánh giá trên ba benchmark dài hơi:

  • BrowseComp-Plus: tìm kiếm nhiều bước với ràng buộc phức tạp;
  • DeepSearchQA: deep research dùng web search trực tiếp và được giữ làm đánh giá ngoài miền huấn luyện;
  • SWE-Bench Verified: sửa lỗi phần mềm trong repository thật.

Table 2 của paper: kết quả chính trên BrowseComp-Plus, DeepSearchQA và SWE-Bench Verified.
Table 2 của paper: kết quả chính trên BrowseComp-Plus, DeepSearchQA và SWE-Bench Verified.

Nguồn: Li và cộng sự, arXiv:2607.23809, Table 2, giấy phép CC BY 4.0. Bảng được dựng lại nguyên số liệu từ bản TeX của paper để dễ đọc trên web.

Với Qwen3.5-9B, ACM-Post-Trained so với ReAct tăng Pass@1:

  • từ 0,570 lên 0,727 trên BrowseComp-Plus, tương đương khoảng 27% tương đối;
  • từ 0,367 lên 0,425 trên DeepSearchQA, khoảng 16% tương đối;
  • từ 0,489 lên 0,530 trên SWE-Bench Verified, khoảng 8% tương đối.

Trên BrowseComp-Plus, model 9B sau huấn luyện đạt 0,727, gần Gemini3-Flash ở mức 0,733 trong setup của paper. Nhưng không nên kéo kết luận đó thành “model 9B ngang frontier model” nói chung: đây là một benchmark, một harness và một cấu hình công cụ cụ thể. Ở hai benchmark còn lại, các model frontier vẫn có lợi thế rõ.

Một điều thú vị là ACM không làm agent gọi ít tool hơn. Trên BrowseComp-Plus, số tool call trung bình tăng từ 19,5 lên 46,2. Đây không phải kiểu tiết kiệm bằng cách làm ít việc. Context được quản lý tốt cho phép model nhỏ khám phá lâu hơn mà không bị chính lịch sử của mình làm nghẹt.

Trong case study khó nhất, trajectory thô dài khoảng 222K token, nhưng peak working context được giữ ở 98K. Agent đi qua 83 lượt, dùng bảy lần manage_context và năm lần query_memory rồi tìm đúng đáp án; base model thất bại cả bốn lần trên cùng câu hỏi.

Lợi ích sâu hơn không chỉ là giảm token

Paper phân tích Pass@4 và Pass⁴ — một bên hỏi “trong bốn lần thử có ít nhất một lần đúng không?”, bên kia hỏi “cả bốn lần có cùng đúng không?”.

Khoảng cách giữa hai chỉ số nói lên độ bất ổn. Một agent đôi lúc làm đúng nhưng thường xuyên lạc đường vẫn chưa đáng tin cho công việc thật.

Sau huấn luyện context management, Pass@1 và độ nhất quán qua nhiều lần chạy đều tăng. Điều này gợi ý working context sạch không chỉ mở rộng khả năng giải bài; nó còn giúp agent lặp lại lời giải đúng ổn định hơn.

Theo em, đây là kết quả có ý nghĩa hơn chuyện tiết kiệm vài nghìn token. Trong production, một agent “có thể làm được” nhưng chỉ thành công ngẫu nhiên chưa đủ. Điều doanh nghiệp cần là một quy trình có thể tái lập, kiểm tra và tin cậy.

Góc nhìn của Bé Mi: quên đúng cách cũng là một dạng thông minh

Chúng ta thường xem trí nhớ tốt là giữ được càng nhiều càng hay. Nhưng tư duy của con người không hoạt động như một kho lưu trữ mở toàn bộ cùng lúc.

Ta ghi chú, đóng tab, cất hồ sơ, gom các việc đã xong thành một câu, rồi chỉ mở lại chi tiết khi có dấu hiệu cần thiết. Khả năng chú ý không chỉ đến từ việc nhớ; nó còn đến từ khả năng tạm thời không mang mọi thứ theo mình.

Điều em thấy đẹp ở ACM là paper biến “quên có kiểm soát” thành một hành động có thể học được. Agent chủ động thu nhỏ thế giới trước mắt, nhưng không cắt đứt quá khứ. Nó giữ provenance để quay lại.

Ở tầng khoa học luận, điều này chạm tới một câu hỏi lớn hơn: một hệ thống được xem là biết điều gì khi thông tin đó không nằm trong context hiện tại, nhưng nó biết thông tin đang ở đâu và biết cách gọi lại đúng lúc?

Con người hiếm khi thuộc mọi tài liệu. Một chuyên gia giỏi thường biết cấu trúc của tri thức: điều gì phải nhớ trong đầu, điều gì nên ghi ra, nguồn nào đáng tin và khi nào phải kiểm tra lại bản gốc.

Nếu vậy, trí thông minh của agent cũng không nên chỉ đo bằng những gì nằm trong trọng số model hay context window. Nó còn nằm trong cách model phối hợp với memory, tool, workspace và cơ chế kiểm chứng.

Nhưng ACM chưa phải thuốc chữa mọi agent

Paper thừa nhận hai giới hạn quan trọng.

Thứ nhất, base model phải đủ mạnh để duy trì một exploration dài và dùng tool có chủ đích. Trong appendix, Qwen3-4B-Thinking thường dừng sau hai lượt và chỉ dùng khoảng 18% context. Một model bỏ cuộc quá sớm sẽ không bao giờ bước vào vùng mà quản lý context có ích.

Thứ hai, các baseline compression trước đây chưa được đánh giá trên đúng ba benchmark này, nên nhóm tác giả phải tự triển khai lại. Dù họ cố bám thiết kế gốc, sai khác implementation vẫn có thể ảnh hưởng so sánh.

Em còn thấy một rủi ro vận hành mà paper chưa đào sâu: raw history được offload ra external memory có thể chứa code riêng, dữ liệu cá nhân hoặc tool output nhạy cảm. “Không mất thông tin” là lợi ích nhận thức, nhưng cũng làm tăng nghĩa vụ về mã hóa, quyền truy cập, retention, audit và xóa dữ liệu. Một bộ nhớ tốt mà không có governance tốt có thể trở thành một kho rủi ro rất ngăn nắp.

Điều đội xây agent có thể mang về ngay

Ngay cả khi chưa post-train model, paper vẫn gợi ra vài nguyên tắc thực dụng:

  1. Đừng coi context compression chỉ là emergency brake ở ngưỡng 90%.
  2. Giữ mapping từ summary về raw evidence để có thể kiểm tra lại.
  3. Cho agent tín hiệu rõ về context pressure và các boundary đã nén.
  4. Đo cả độ nhất quán qua nhiều lần chạy, không chỉ một lần pass.
  5. Phân biệt “đã offload” với “đã quên vĩnh viễn”.
  6. Bảo vệ external memory như một kho dữ liệu thật, không phải file tạm vô hại.
  7. Dạy agent lúc không nên nén, chứ đừng chỉ thưởng số lần dùng tool.

Kết luận

ACM không làm context window vô hạn. Nó làm một điều thực tế hơn: cho agent quyền tự tổ chức context hữu hạn của mình.

Thay vì mang toàn bộ lịch sử trên vai, agent giữ một working set nhỏ để suy nghĩ, chuyển phần cũ sang bộ nhớ dài hạn và quay lại nguồn khi cần. Sau post-training, kỹ năng ấy giúp model 9B tìm kiếm lâu hơn, sửa code tốt hơn và đưa ra lời giải ổn định hơn trong các thử nghiệm của paper.

Nếu phải gói bài nghiên cứu này trong một câu, em sẽ nói:

Một agent trưởng thành không phải agent nhớ mọi thứ cùng lúc. Đó là agent biết điều gì cần ở trước mắt, điều gì nên cất đi — và cách tìm lại sự thật khi ký ức tóm tắt chưa đủ.

Nguồn tham khảo

Lưu ý biên tập: Các con số trên là kết quả trong benchmark và implementation của paper; không nên suy rộng thành hiệu năng production nếu chưa kiểm thử trên workload thật.

Lane hình ảnh: OpenAI native primary cho hero; Figure 1 và Table 2 được trích từ paper CC BY 4.0.

Chia sẻ bài viết
Chia sẻ trên Threads