Hầu hết hệ thống AI agent memory production đều hoạt động theo cùng một cách: nhồi context vào prompt, hy vọng những phần liên quan nằm gần đầu, và để model tự xử lý. Khi cách đó thất bại — điều xảy ra đều đặn khi task trở nên dài hơn hoặc phức tạp hơn — fix thường là “nhiều context hơn.” Paper của Stanford, SambaNova, và UC Berkeley về Agentic Context Engineering (ACE) lập luận rằng “nhiều context hơn” hoàn toàn là đòn bẩy sai. Vấn đề không phải là số lượng context. Đó là kiến trúc context.
Framework ACE tách công việc memory ra thành ba vai trò riêng biệt — Generator, Reflector, và Curator — và mang lại cải thiện +10.6% trên agent task và +8.6% trên finance task so với các baseline mạnh, không có một gradient update nào. Không fine-tuning. Không cải tổ retrieval system. Chỉ cần kiến trúc tốt hơn về cách context được tạo ra, chưng cất, và duy trì.
Phân Tách Ba Vai Trò
Generator
Generator là vai trò thực thi agent chính. Nó tạo ra reasoning trajectory — chain-of-thought, tool call, quyết định trung gian — khi làm việc qua một task. Trong hầu hết hệ thống hiện tại, reasoning này chỉ biến mất sau khi lượt kết thúc. Generator tạo ra nó; không có gì bảo tồn các phần hữu ích.
ACE capture output của Generator không phải là transcript mà là structured reasoning data: cách tiếp cận nào được thử, cái gì hoạt động, cái gì thất bại, và điều kiện nào áp dụng. Generator không làm gì khác trong core task — nó chỉ tạo ra reasoning của mình ở định dạng mà Reflector có thể làm việc với.
Reflector
Reflector chạy sau mỗi lượt Generator. Công việc của nó là chưng cất các bài học cụ thể, có thể tái sử dụng từ những gì Generator đã làm. Không phải “agent đã thử X” — mà là “trong context có thuộc tính Y, cách tiếp cận X vượt trội hơn cách Z bằng cách giảm retry count.”
Đây là phần mà hầu hết hệ thống memory hiện tại bỏ qua. Chúng lưu những gì đã xảy ra (episodic memory) nhưng không chưng cất ý nghĩa của nó cho các tình huống tương tự trong tương lai (semantic lesson). Reflector tạo ra structured lesson entry trừu tượng hóa khỏi instance cụ thể và capture nguyên tắc có thể tổng quát hóa.
Những gì Reflector thực sự ghi vào context playbook trông như thế này:
{
"trigger": "nested schema validation với circular reference",
"observation": "recursive validation gây stack overflow trên schema > 4 level",
"recommended_approach": "flatten schema xuống tối đa 3 level trước khi validate; dùng iterative DFS",
"confidence": 0.87,
"examples_seen": 3
}
Đây là composable knowledge — lần tiếp theo agent gặp task validation schema tương tự, Curator có thể surface bài học này mà không cần Generator phải khám phá lại.
Curator
Curator duy trì context playbook — kho bài học có cấu trúc, liên tục tiến hóa. Nhưng nó không chỉ append mọi thứ Reflector tạo ra. Curator quyết định:
- Bài học nào vẫn còn liên quan với task context hiện tại?
- Bài học nào đã bị thay thế bởi quan sát mới hơn?
- Budget information density cho lượt này là bao nhiêu, và bài học nào xếp hạng cao nhất theo relevance và confidence?
Curator là yếu tố ngăn context playbook trở thành bãi rác đầy noise. Nó áp dụng relevance scoring, deduplication, và staleness detection để duy trì context tinh gọn, high-signal liên tục cải thiện output của Generator.
Trong kiến trúc ACE, Curator populate đầu context window của Generator với top-N bài học liên quan nhất đến task hiện tại. Generator không biết những bài học này đến từ hệ thống có cấu trúc — nó chỉ thấy các prior chất lượng cao khiến nó giỏi hơn task đang thực hiện.
Benchmark Thực Sự Cho Thấy Gì
Paper đánh giá ACE so với 4 baseline trên benchmark LoCoMo:
- Full context — toàn bộ lịch sử conversation, không có chưng cất
- RAG — retrieval-augmented với standard vector similarity search
- OpenAI Memory — hệ thống memory tích hợp của GPT-4o
- Zep — framework memory chuyên dụng
ACE vượt trội tất cả 4 loại trên cả agent task performance và finance domain task. Margin có ý nghĩa: +10.6% trên agent task có nghĩa là 1 trong 10 task trước đây thất bại bây giờ thành công. Với multi-step agentic workflow chain 10-15 tool call, đó là giảm failure rate đáng kể.
Insight chính: full context liên tục underperform các cách tiếp cận chưng cất, ngay cả khi full context về mặt kỹ thuật chứa tất cả thông tin liên quan. Nhiều context hơn không tốt hơn nếu retrieval signal — attention mechanism của model — không thể tìm kim trong đống cỏ một cách đáng tin cậy. Các bài học có cấu trúc, được tuyển chọn dễ attend hơn raw transcript.
Tại Sao “Nhiều Context Hơn” Là Fix Sai
Consensus nghiên cứu từ paper của Mem0 năm 2025 và công trình ACE hội tụ về cùng một quan sát: information density quan trọng hơn information completeness.
Khi bạn dump 20 lượt conversation trước vào prompt hy vọng model lấy được ràng buộc liên quan từ lượt 6, bạn đang dựa vào attention của model để làm công việc mà structured retrieval đáng lẽ phải làm. Đôi khi hoạt động. Thường thì không, và failure vô hình — model chỉ tiếp tục mà không có ràng buộc đó, và bạn không biết cho đến khi output sai.
Lập luận của ACE: hãy coi context window như cache, không phải storage. Storage giữ mọi thứ. Cache giữ những thứ được dùng gần đây nhất và thường xuyên nhất, được quản lý tích cực để tối đa hóa hit rate. Curator là cache eviction policy.
Điều này có một production implication quan trọng: context budget allocation. Với model 200K context, team thường nhồi vào mọi thứ có thể liên quan. ACE gợi ý thay vào đó: phân bổ budget rõ ràng cho lesson set của Curator (có thể 10-20K token), điền vào với structured lesson high-signal nhất, và để lại phần còn lại cho task-specific content. Discipline phân bổ budget buộc công việc curation phải xảy ra thay vì hoãn cho “model sẽ tự xử lý.”
Implement ACE Nhẹ Trong Thực Tế
Bạn không cần áp dụng toàn bộ implementation của paper ACE để có được lợi ích. Phiên bản thực dụng:
Bước 1: Structured Generator output. Sau mỗi lượt agent, extract các quyết định và quan sát chính vào định dạng chuẩn. Có thể làm bằng lightweight extraction prompt chạy trên turn output — “Cách tiếp cận nào được dùng? Kết quả là gì? Điều kiện nào áp dụng?”
Bước 2: Lesson distillation. Chạy Reflector prompt trên extracted observation: “Bài học có thể tổng quát hóa từ kết quả này là gì? Điều kiện nào để áp dụng?” Lưu kết quả trong structured lessons file.
Bước 3: Relevance-filtered injection. Trước mỗi lượt Generator, nhúng bước Curator đọc lessons file, score bài học theo relevance với task hiện tại (embedding similarity đơn giản là đủ), và inject top 5-10 bài học vào context prefix của Generator.
Paper ACE đầy đủ dùng cách tiếp cận tinh vi hơn cho cả 3 bước. Nhưng cấu trúc 3 bước này một mình đã tạo ra hầu hết lợi ích — điều quan trọng là chuyển từ “lưu mọi thứ” sang “chưng cất và tuyển chọn.”
Ý Nghĩa Với Multi-Agent Orchestration
Framework ACE trở nên mạnh mẽ hơn trong multi-agent setting, nơi nhiều specialized agent làm việc trên các task liên quan. Vai trò Curator, trong kiến trúc multi-agent, có thể duy trì shared lesson set có thể truy cập bởi tất cả agent trong hệ thống. Agent khám phá cách tiếp cận hiệu quả cho một class vấn đề cụ thể gửi nó vào shared playbook; các agent khác gặp vấn đề tương tự được hưởng lợi mà không phải khám phá lại bài học tương tự.
Đây là sự thay đổi kiến trúc chuyển multi-agent system từ “parallel execution” sang “learning system.” Các agent cá nhân không học giữa các run — nhưng shared lesson store thì có. Hệ thống tích lũy operational knowledge theo thời gian mà không fine-tuning bất kỳ model nào.
Cái bẫy: shared lesson store giới thiệu coordination problem mới. Reflector của agent nào có ưu tiên khi hai agent đi đến kết luận khác nhau về cùng một tình huống? ACE dùng confidence scoring và example count để giải quyết điều này — confidence cao hơn và nhiều example hơn sẽ thắng. Nhưng về mặt vận hành, bạn cần suy nghĩ về Curator contention khi nhiều agent ghi vào cùng store đồng thời.
ACE Nằm Ở Đâu Trong Memory Stack
ACE chiếm một layer cụ thể trong agent memory stack: procedural memory — memory về cách làm mọi thứ, không phải sự thật nào là đúng. Nó bổ sung thay vì thay thế:
- Episodic memory (những gì đã xảy ra trong session trước) — phục vụ tốt hơn bởi conversation log và retrieval
- Semantic memory (domain knowledge thực tế) — phục vụ tốt hơn bởi RAG trên knowledge base
- Working memory (task context hiện tại) — in-context window
Team xây dựng production agent system thường cần cả 3. ACE cụ thể cải thiện cách agent tích lũy và áp dụng procedural know-how — layer “cách tiếp cận class vấn đề này” mà RAG trên factual content không capture được và raw conversation history chôn vùi.
Điểm bắt đầu thực tế: nếu agent của bạn liên tục mắc cùng class lỗi trên các task tương tự dù có instruction đúng, bạn đang nhìn vào procedural memory gap. ACE là kiến trúc giải quyết điều đó.
Thuận Lương là Tech Lead với 15+ năm kinh nghiệm về .NET, cloud architecture, và AI systems. Anh viết về những bài học từ việc xây dựng các hệ thống production thực tế.