Bộ nhớ AI Agent: Claude, ChatGPT, RAG và AGENTS.md

6 tháng 10, 2026 12 phút đọc
Bộ nhớ AI Agent: Claude, ChatGPT, RAG và AGENTS.md

Bộ nhớ AI Agent là gì?

Bộ nhớ AI Agent là cơ chế giúp agent giữ, truy xuất và dùng lại thông tin qua một lượt làm việc hoặc nhiều phiên làm việc. Nó không phải một nút bật/tắt duy nhất. Một agent có thể đồng thời dùng context của phiên hiện tại, nhật ký nhiệm vụ cũ, dữ liệu dự án, hướng dẫn vận hành và kiến thức đã học trong mô hình.

Hiểu đúng từng lớp memory giúp bạn thiết kế agent ít quên việc hơn, tốn ít token hơn và an toàn hơn. Điều quan trọng nhất: không phải thông tin nào cũng nên đưa hết vào context hoặc tự động lưu mãi.

5 lớp bộ nhớ của AI Agent

Khung Cognitive Architectures for Language Agents (CoALA) mô tả agent như một hệ thống có nhiều thành phần memory và action. Khi áp dụng thực tế, bạn có thể dùng bản đồ sau:

LoạiNó giữ gì?Ví dụ triển khai
Working / in-context memoryCuộc hội thoại, file và kết quả tool đang nằm trong context.Prompt hiện tại, tài liệu vừa đọc, output của API.
Episodic memorySự kiện, quyết định và nhiệm vụ đã xảy ra.Nhật ký session, database công việc, issue history.
Semantic memoryFacts tương đối bền về người dùng, dự án hoặc domain.Knowledge base, hồ sơ khách hàng, vector store.
Procedural memoryQuy tắc và cách agent phải làm việc.System prompt, checklist, CLAUDE.md, AGENTS.md.
Parametric memoryKiến thức được học trong trọng số của model.Khả năng ngôn ngữ, lập trình và suy luận có sẵn của model.

Hãy hình dung working memory là RAM; episodic memory là nhật ký; semantic memory là kho tri thức; procedural memory là sổ tay vận hành; còn parametric memory là nền tảng kiến thức đã học. Mỗi lớp có tốc độ, độ tin cậy và chi phí khác nhau.

Working memory: nhanh nhưng không bền

Mọi thứ agent đang nhìn thấy trong cửa sổ ngữ cảnh đều là working memory. Nó tiện vì không cần tìm kiếm, nhưng chỉ sống trong phạm vi context và có thể làm chi phí, độ trễ tăng lên khi quá dài. Đừng coi context như một cơ sở dữ liệu lâu dài.

Episodic và semantic memory: nhớ việc cũ, nhớ facts

Episodic memory trả lời câu hỏi “lần trước agent đã làm gì, đã quyết định gì?”. Semantic memory trả lời “dự án này dùng stack gì, khách hàng thích cách giao tiếp nào?”. Hai loại này thường được lưu ngoài model rồi truy xuất đúng lúc.

Procedural và parametric memory: biết cách làm, biết nền tảng

Procedural memory giữ những ràng buộc cần tuân thủ nhất quán: lệnh kiểm thử, quy tắc bảo mật, giọng điệu nội dung hay thứ tự xuất bản. Parametric memory hữu ích cho kiến thức nền, nhưng không nên được dùng như nguồn duy nhất cho thông tin thay đổi liên tục.

Khi nào dùng loại memory nào?

Tình huốngLựa chọn phù hợpLý do
Đọc file hoặc kết quả tool của task hiện tạiIn-contextCần ngay trong lượt làm việc.
Tìm một quyết định từ tuần trướcEpisodicCó mốc thời gian và bối cảnh rõ.
Biết quy ước dự án hoặc sở thích ổn địnhSemanticCần dùng lại xuyên nhiều phiên.
Ép agent tuân thủ workflow, test, quyền truy cậpProceduralHành vi phải nhất quán, có thể kiểm tra.
Tìm tin mới hoặc tài liệu mới nhấtWeb/API/RAGKhông phụ thuộc hoàn toàn vào kiến thức sẵn có của model.

Pattern nên dùng: Just-in-Time retrieval

Thay vì nạp toàn bộ lịch sử, hãy để agent xác định thông tin cần cho task, lấy đúng phần liên quan, đưa vào context, thực hiện việc rồi chắt lọc kết quả cần lưu. Cách này giảm token, giảm nhiễu và giúp các phiên sau dễ kiểm soát hơn.

CLAUDE.md và AGENTS.md: procedural memory trong dự án

Các tệp hướng dẫn cấp dự án là cách đơn giản nhất để biến kinh nghiệm vận hành thành procedural memory. Chúng nên mô tả những điều agent cần biết trước khi chỉnh sửa hay xuất bản: cấu trúc hệ thống, lệnh kiểm tra, quy tắc không được vi phạm, cách dùng credentials và nơi cần ghi kết quả.

CLAUDE.md thường dùng cho workflow Claude Code. AGENTS.md phù hợp làm tài liệu hướng dẫn dùng chung ở cấp project cho những công cụ hỗ trợ quy ước này. Khi dùng nhiều công cụ, hãy đặt các quy tắc chung vào AGENTS.md và giữ chỉ dẫn đặc thù ở tệp riêng.

# AGENTS.md
## Trước khi thay đổi
- Đọc cấu trúc dự án và kiểm tra trạng thái hiện có.
- Ưu tiên API hoặc MCP trước automation trình duyệt.

## Kiểm tra
- Chạy test/lint phù hợp trước khi bàn giao.
- Không đưa khóa, token hoặc dữ liệu nhạy cảm vào log.

## Quy tắc vận hành
- Chỉ xuất bản qua Publisher sau khi nội dung đã duyệt.
- Xác minh kết quả bằng API sau khi publish.

Đừng nhồi mọi thứ vào một tệp. Chỉ giữ các hướng dẫn ổn định, có thể hành động. Thông tin thay đổi liên tục như trạng thái một task nên ở nhật ký hoặc hệ thống quản lý công việc.

RAG khác memory ở đâu?

RAG là cơ chế tìm tài liệu liên quan rồi đưa các đoạn được chọn vào context để trả lời hoặc hành động. Memory là cơ chế giữ trạng thái, lịch sử và facts thu được qua tương tác. Hai thứ bổ sung cho nhau chứ không thay thế nhau.

  • Dùng RAG cho tài liệu sản phẩm, FAQ, chính sách và kiến thức domain.
  • Dùng memory cho quyết định đã chốt, trạng thái công việc và ưu tiên người dùng.
  • Dùng metadata, quyền truy cập và thời hạn lưu trữ để kiểm soát cả hai.

Một agent tốt không “nhớ tất cả”. Nó truy xuất tài liệu đáng tin khi cần và chỉ ghi lại điều thực sự có giá trị cho phiên sau.

“Lost in the Middle”: context dài không có nghĩa là dùng tốt mọi thông tin

Nghiên cứu Lost in the Middle cho thấy hiệu quả của nhiều language model có thể giảm khi thông tin liên quan nằm ở giữa một context dài; thông tin ở đầu hoặc cuối thường được khai thác tốt hơn. Đây là lời nhắc rằng “cửa sổ context lớn” không thay thế cho retrieval và biên tập context.

  • Đặt ràng buộc quan trọng ở đầu prompt hoặc ngay trước yêu cầu cuối.
  • Chia tài liệu thành đoạn nhỏ, truy xuất rồi rerank theo độ liên quan.
  • Tóm tắt định kỳ các task dài, thay vì nối mãi lịch sử thô.
  • Yêu cầu agent nêu lại các ràng buộc quan trọng trước khi thực hiện hành động rủi ro.

Bảo mật: memory cũng là một bề mặt tấn công

Nếu agent tự động ghi nội dung từ email, web hay repository lạ vào memory, nó có thể bị memory poisoning hoặc indirect prompt injection. Một chỉ dẫn độc hại được lưu lại có thể ảnh hưởng nhiều phiên sau, nên rủi ro này nghiêm trọng hơn một prompt đơn lẻ.

  • Không tự động ghi external content vào memory bền vững nếu chưa có bước đánh giá.
  • Tách namespace theo người dùng, project và quyền truy cập.
  • Lưu audit log cho mọi thao tác đọc/ghi memory quan trọng.
  • Review CLAUDE.md, AGENTS.md và hướng dẫn trong repository không tin cậy trước khi cho agent thực thi.
  • Cho phép người dùng sửa, xóa hoặc đặt thời hạn lưu trữ với dữ liệu của họ.

Chi phí token và độ trễ

Context dài, truy xuất RAG và database đều có chi phí khác nhau. Cách tối ưu thực tế là giữ hướng dẫn cốt lõi ngắn gọn, ổn định; truy xuất thông tin theo nhu cầu; nén lịch sử bằng tóm tắt; và theo dõi chất lượng retrieval thay vì chỉ tăng số lượng tài liệu nạp vào prompt. Chính sách caching, giới hạn context và giá API thay đổi theo nhà cung cấp, vì vậy hãy luôn đối chiếu tài liệu hiện hành trước khi lập ngân sách.

Checklist thiết kế memory cho AI Agent

  1. Liệt kê rõ thông tin nào thuộc working, episodic, semantic và procedural memory.
  2. Chỉ định nguồn đáng tin cho từng loại: database, file dự án, knowledge base hay API.
  3. Dùng retrieval đúng lúc thay vì preload toàn bộ lịch sử.
  4. Viết AGENTS.md hoặc tệp hướng dẫn tương đương cho quy tắc dự án bền vững.
  5. Thiết lập quyền, audit log, thời hạn lưu trữ và cơ chế xóa memory.
  6. Đánh giá retrieval, chi phí và hành vi agent bằng các tình huống thực tế trước khi mở rộng.

Một câu để nhớ: context giúp agent làm việc ngay lúc này; memory giúp nó tiếp nối công việc; RAG giúp nó có đúng tài liệu; còn hướng dẫn dự án quyết định nó phải làm việc như thế nào.

Nguồn đọc thêm

Lưu ý: tên tính năng, giới hạn context và cơ chế memory của từng sản phẩm có thể thay đổi. Hãy kiểm tra tài liệu chính thức trước khi dùng chúng làm ràng buộc vận hành.

Khóa học AI Agent thực chiến dành cho người đi làm Khóa học AI Agent thực chiến dành cho người đi làm