Gần đây, Long-Term Memory cho Agent trở nên rất phổ biến, và ai cũng nói về hệ thống bộ nhớ.
Nhưng khi bạn nhìn vào những lời giải thích đó, hầu hết chúng chỉ ném cho bạn một đống thuật ngữ: vector databases, RAG, context windows, compression, episodic memory...
Đọc xong, bạn vẫn không thể giải thích chính xác nó hoạt động thế nào, phải không?
Không phải lỗi của bạn đâu; hầu hết các bài viết đều cho rằng bạn đã có nền tảng.
Tuy nhiên, hệ thống bộ nhớ Agent hiện đang là chủ đề nóng nhất trong các buổi phỏng vấn. Nếu bạn không hiểu, bạn sẽ gặp bất lợi trong cả công việc lẫn phỏng vấn.
Vì vậy, trong bài viết này, tôi sẽ tiếp cận theo một cách khác, bắt đầu từ những điều cơ bản mà không chất đống thuật ngữ! Tôi sẽ cố gắng hết sức để mọi người đều hiểu được!!
Tôi đảm bảo sau khi đọc xong, bạn sẽ tự trả lời được ba câu hỏi này:
Hệ thống bộ nhớ là gì?
Làm thế nào để hiểu hệ thống bộ nhớ của OpenClaw?
Giải pháp cấp doanh nghiệp trông như thế nào? Tôi đã chọn EverOS (github.com/EverMind-AI/EverOS

Bài viết này khá dài và tôi đã mất vài ngày để viết. Nếu bạn có bạn bè quan tâm đến Agent memory, bạn có thể đánh dấu trang và gửi cho họ sau.
Kiến thức cơ bản Về Hệ Thống Bộ Nhớ Agent
Phần này chủ yếu đề cập đến cách Agent duy trì bộ nhớ trong cùng một phiên và giữa các phiên khác nhau. Nếu bạn đã hiểu điều này, hãy bỏ qua.
Đầu tiên, không có bộ nhớ giữa hai lần gọi API đến một mô hình lớn. Điều đó có nghĩa là gì?
Ví dụ: Nếu bạn nói bạn thích ăn cam trong lần gọi đầu tiên, nhưng bạn không thêm "Tôi thích ăn cam" vào prompt trong lần gọi thứ hai, mô hình sẽ không có ký ức về sở thích của bạn.
Vậy làm thế nào để Agent duy trì bộ nhớ này trong một cuộc trò chuyện?
Đầu tiên, mỗi khi bạn hỏi, hệ thống nền sẽ gửi toàn bộ lịch sử trò chuyện trước đó của bạn. Mô hình sẽ thấy nó, đảm bảo trí nhớ ngắn hạn.
Nhưng khi lịch sử trò chuyện trở nên quá dài, vượt quá cửa sổ ngữ cảnh tối đa của mô hình, nó sẽ nén lịch s nén lịch sử lại. Nó tóm tắt lịch sử trò chuyện hiện tại và nhồi nó trở lại vào prompt, tạo không gian để tiếp tục trò chuyện.
Đây là nguyên lý cách một mô hình duy trì bộ nhớ trong một cuộc trò chuyện dài. Nếu bạn hơi bối rối, hãy xem sơ đồ dưới đây:

Bây giờ bạn đã biết cách duy trì bộ nhớ trong một phiên duy nhất, nhưng làm thế nào để duy trì nó giữa các phiên trò chuyện khác nhau?
Đây là lúc hệ thống bộ nhớ dài hạn phát huy tác dụng!!
Những gì nó làm là lưu trữ thông tin quan trọng vào một không gian lưu trữ khi ngữ cảnh của bạn bị nén hoặc khi bạn yêu cầu ghi nhớ điều gì đó.
Sau đó, khi bạn bắt đầu một cuộc thoại mới, nó trích xuất và thêm thông tin liên quan vào prompt vào thời điểm thích hợp.
Bằng cách "đổi cũ lấy mới", nó tạo ra ảo giác nhớ được nhiều thứ. Điều này tương tự như trí nhớ làm việc và nhớ dài hạn của con người.

Được rồi, với kiến thức cơ bản về bộ nhớ này, chúng ta có thể chuyển sang hiểu hệ thống bộ nhớ là gì.
Dưới đây, tôi sẽ đưa cho bạn một khung khái niệm. Nếu bạn đọc xong, tôi đảm bảo bạn sẽ có hiểu biết cơ bản về bất kỳ giải pháp hệ thống bộ nhớ nào.
Hệ thống.
Hệ Thống Bộ Nhớ
Có ít nhất hàng chục giải pháp tuyên bố bộ nhớ dài hạn cho Agent. Làm thế nào để chúng ta nghiên cứu nhiều như vậy?
Tiếp theo, tôi sẽ phân tích một bài báo để bạn có hiểu biết cơ bản về bộ nhớ dài hạn của Agent, sau đó so sánh sự khác biệt giữa OpenClaw và các khuôn khổ bộ nhớ khác để dễ hiểu hơn.
Google đã xuất bản một bài báo vào tháng 11 năm 2025 năm 2025 có tiêu đề "Context Engineering, Sessions and Memory."
Trong bài báo này, họ tuân theo các phương pháp của khoa học nhận thức từ nửa thế kỷ trước, chia bộ nhớ Agent thành ba loại:
- Episodic Memory: Chuyện gì đã xảy ra hôm qua, lần trước đã thảo luận gì.
- Semantic Memory: Tên bạn là gì, bạn thích gì, danh tính của bạn là gì.
- Procedural Memory: Cách hoàn thành một nhiệm vụ, quy trình là gì.
Ba loại bộ nhớ này cùng nhau tạo nên bộ nhớ của Agent.

Nhưng đó chỉ là một nửa câu chuyện; nửa còn lại là về cách duy trì và sử dụng bộ nhớ.
Giống như con người, Agent không thể nhớ mọi thứ. Do đó, một hệ thống bộ nhớ cần một phương pháp đáng tin cậy để trích xuất thông tin quan trọng từ lịch sử trò chuyện và sau đó lưu nó.
Tôi gọi bước này là Trích xuất.
Ngoài ra, chúng ta cần tổ chức và hợp nhất các ký ức.
Ví dụ:
Ba tháng trước, tôi nói tôi ở Đại Lý, nhưng sau đó tôi chuyển đến Thành Đô. Nếu thông tin này không được hợp nhất, bộ nhớ sẽ chứa các mục mâu thuẫn.
Cách tiếp cận đúng là cập nhật bộ nhớ thành "Người dùng đang ở Thành Đô" sau khi tôi chuyển đi.
Tôi gọi bước này là Cập nhật.
Ngoài ra còn có bước Truy xuất, bao gồm nhiều phương pháp: tìm kiếm từ khóa, tìm kiếm ngữ nghĩa, tìm kiếm kết hợp, hoặc sử dụng mô hình lớn để truy xuất.
Vì vậy, để hiểu một hệ thống bộ nhớ, bạn chỉ cần hiểu hai khía cạnh này:
- Có bao nhiêu loại bộ nhớ và mỗi loại lưu trữ gì?
- Làm thế nào để trích xuất, cập nhật và truy xuất bộ nhớ?

Bây giờ, sử dụng khuôn khổ này, chúng ta hãy tìm hiểu cách bộ nhớ dài hạn của OpenClaw được triển khai như thế nào.
OpenClaw có bao nhiêu loại bộ nhớ và mỗi loại trữ gì?
Bộ nhớ của nó được chia thành ba loại sau:
- memory.md (Memory): Thuộc bộ nhớ ngữ nghĩa; lưu trữ danh tính, sở thích và các sự kiện ổn định của bạn.
- daily logs: Thuộc bộ nhớ sự kiện; ghi lại những gì đã xảy ra mỗi ngày, được sắp xếp theo ngày. Nó chỉ thêm mục mới và không bao giờ xóa.
- session snapshots: Thuộc lớp sự kiện; khi bạn sử dụng lệnh /new hoặc /reset để bắt đầu một phiên mới, nó tóm tắt 15 tin nhắn "có ý nghĩa" cuối cùng từ cuộc trò chuyện cũ và lưu chúng dưới dạng tệp markdown.

Việc trích xuất, cập nhật và truy xuất được thực hiện như thế nào?
Trích xuất xảy ra trong ba tình huống:
- Khi một cuộc trò chuyện sắp bị nén: Thông tin có giá trị được ghi vào daily logs.
- Khi bạn sử dụng /new hoặc /reset để bắt đầu một phiên mới: Thông tin có giá trị được lưu vào session snapshots.
- Khi người dùng yêu cầu ghi nhớ điều gì đó: Hệ thống quyết định loại bộ nhớ nào để lưu trữ nó.
Truy xuất xảy ra trong hai tình huống:
- Khi bắt đầu một cuộc trò chuyện mới: memory.md được tự động tiêm vào prompt, và nó cũng đọc daily logs của hôm nay và hôm qua để có ngữ cảnh gần đây.
- Khi OpenClaw cảm thấy cần kiểm tra bộ nhớ: Nó gọi tìm kiếm bộ nhớ, tìm vị trí bộ nhớ qua tìm kiếm kết hợp (từ khóa + vector), sau đó đọc nội dung tệp qua memory get.
Khi nào cập nhật xảy ra? Theo hiểu biết cá nhân của tôi, nó xảy ra trong quá trình trích xuất, khi quyết định nên nhớ gì.
Nếu bạn vẫn chưa hiểu rõ, hãy xem sơ đồ dưới đây:

Bây giờ bạn đã có hiểu về hệ thống bộ nhớ, nhưng thực sự, hệ thống của OpenClaw có một số vấn đề:
- Nó tiêu tốn nhiều token.
- Nếu Markdown bị mất, bộ nhớ biến mất.
- Nó thường xuyên quên.
Tuy nhiên, các hệ thống bộ nhớ thực sự cấp doanh nghiệp có nhiều tối ưu hóa để đảm bảo tính ổn định. Công nghệ đằng sau chúng rất đáng để bất kỳ ai yêu thích công nghệ tìm hiểu.
Tiếp theo, tôi sẽ phân tích các hệ thống bộ nhớ Agent cấp doanh nghiệp!!
Hệ Thống Bộ Nhớ Agent Cấp Doanh Nghiệp
Trong kỷ nguyên AI, mọi lập trình viên nên hiểu công nghệ đằng sau các hệ thống bộ nhớ Agent cấp doanh nghiệp; nếu không, bạn sẽ mất lợi thế cạnh tranh.
Tại sao?
Bởi vì các mô hình lớn sẽ tiếp tục "ăn" công việc lập trình của chúng ta. Lựa chọn duy nhất là xây dựng các hệ thống hỗ trợ cho chúng.
Để dễ giải thích, tôi sẽ chọn một giải pháp mã nguồn mở tên là EverOS để phân tích.
Nếu bạn đang lên kế hoạch bắt đầu học hệ thống bộ nhớ Agent từ dự án này, hãy cho nó một sao:
Như tôi đã nói trước đó, để hiểu một hệ thống bộ nhớ, bạn chỉ cần trả lời hai câu hỏi.
EverOS trả lời chúng như thế nào?
Câu hỏi 1: Bộ nhớ được phân loại như thế nào?
Khuôn khổ chung có 3 loại, nhưng EverOS chia nhỏ từng loại hơn nữa, như hình dưới đây:

- Semantic Memory Bộ nhớ dài hạn về con người bạn, chia thành hai lớp:
- Stable Traits: Bạn là cú đêm, lập trình viên, sống ở Bắc Kinh—những điều không thay đổi trong thời gian dài.
- Temporary States: Hôm nay bạn thức khuya, tuần này bận rộn, tuần trước bị cảm.
- Episodic Memory Chia thành ba loại:
- Episode: Một bản tóm tắt cô đọng của một cuộc trò chuyện hoặc nhiệm vụ, không phải nhật ký hàng ngày. Ví dụ: Người dùng hỏi cách triển khai mô hình, bị kẹt ở biến môi trường, và mất 30 phút cho việc đó.
- EventLog: Trích xuất các sự kiện chính từ các cuộc trò chuyện, mỗi sự kiện có dấu thời gian. Ví dụ: 2026-05-10 Người dùng mua Mac mini, 2026-05-12 Người dùng liên kết GitHub.
- Foresight: "Các bước tiếp theo" liên quan đến thời gian—những điều bạn nói bạn sẽ làm hoặc nó suy luận bạn sẽ liên quan sau này, với thời gian hết hạn để nhắc nhở. Ví dụ: Gửi đề xuất trước thứ Sáu tuần sau.
- Procedural Memory Chia thành hai loại:
- Agent Case: Sau khi hoàn thành một nhiệm vụ, nó ghi lại "mục đích + các bước hành động + điểm chất lượng." Ví dụ: Gửi email—nó kiểm tra danh bản nháp, yêu cầu xác nhận, sau đó gửi—toàn bộ quy trình này được lưu trữ với điểm chất lượng.
- Agent Skill (Distilled Skill): Sau khi thực hiện các nhiệm vụ tương tự nhiều lần, nó tự động chưng cất một cách tiếp cận chung từ các kho lưu trữ này, với điểm trưởng thành. Càng làm nhiều, nó càng đáng tin cậy. Ví dụ: Sau 5 nhiệm vụ email, nó học cách kiểm tra xem người nhận có phải là người quan trọng hay không trước khi quyết định giọng điệu trang trọng hay thân mật.
Như bạn có thể thấy, EverOS chia 3 loại ban đầu thành 6 loại, cho phép lưu trữ chính xác hơn và bộ nhớ hiệu quả hơn.
Hơn nữa, nó giống với bộ nhớ con người hơn—nó dự đoán tương lai và tóm tắt/tinh chỉnh các kỹ năng.
Câu hỏi 2: Việc trích xuất, cập nhật và truy xuất được thực hiện như thế nào?
Làm thế nào để trích xuất bộ nhớ?
EverOS tự động đánh giá "đoạn này đã kết thúc chưa." Khi kết thúc, nó cắt và đóng gói nó thành một đơn vị bộ nhớ.
Mỗi đơn vị chứa 4 thứ:
- Cốt truyện: Những gì đã được thảo luận và thực hiện—một bản tóm tắt cô đọng, không phải nguyên văn.
- Sự kiện chính: Những sự kiện nào bên trong đáng được ghi chú riêng.
- Dự đoán: Những điều bạn nói bạn sẽ làm hoặc nó suy luận bạn sẽ làm, với thời gian hết hạn để nhắc nhở.
- Thẻ ngữ cảnh: Khi nào, ở đâu, độ tin cậy và cảm xúc tại thời điểm đó.
Bạn chỉ cần trò chuyện; nó xử lý.

Làm thế nào để cập nhật bộ nhớ?
Ví dụ:
Một tháng trước, bạn nói với AI: Tôi đang lên kế hoạch bắt đầu tập thể dục. Hai tuần sau, bạn nói: Tôi bận quá, chưa đi tập được. Hôm nay bạn nói: Thôi bỏ đi, không tập nữa.
Các giải pháp thông thường chất cả ba vào nhật ký. Bất kỳ cái nào mô hình truy xuất được đều được coi là sự thật. Nhưng thực tế, câu trả lời nên là cái mới nhất.
EverOS dựa vào "Hợp nhất ngữ nghĩa," làm ba việc:
- Tự động xác định cái nào là mới nhất (ngừng tập).
- Hợp nhất các mục trùng lặp hoặc đề cập đến cùng một sự kiện.
- Duy trì hồ sơ người dùng, tách biệt sở thích ổn định khỏi trạng thái tạm thời (chính thức gọi là Profile Evolution).
Chi tiết được hiển thị dưới đây:

Làm thế nào để truy xuất bộ nhớ?
EverOS cung cấp cho bạn 4 phương pháp truy xuất để lựa chọn dựa trên kịch bản:
- Từ khóa: Khớp chính xác, phù hợp cho tên hoặc ID cụ thể.
- Tìm kiếm Vector: Khớp ngữ nghĩa—các từ khác nhau có cùng nghĩa giống nhau có thể khớp.
- Kết hợp: Từ khóa + vector cùng nhau, sau đó được lọc bởi mô hình rerank—được khuyến nghị mặc định.
- Agentic: Được sử dụng cho các câu hỏi phức tạp nhiều phần; LLM đánh giá cái gì và cách tìm kiếm, lặp lại cho đến khi tìm thấy (được sử dụng khi kết hợp không đủ).
Nhưng 4 phương pháp không phải là chính; chính là logic truy xuất.
Các giải pháp thông thường là thụ động—bạn đưa ra từ khóa, nó trả về các tài liệu phù hợp, và thế là xong.
EverOS chủ động tái tạo ngữ cảnh:
- Phân tích những gì bạn muốn làm lần này.
- Kích hoạt các kịch bản chủ đề liên quan.
- Lọc thông tin đã hết hạn (ví dụ: sở thích từ một năm trước có thể không còn hiệu lực).
- Tìm kiếm lặp lại cho đến khi thu thập đủ thông tin.
Các giải pháp thông thường giống như một công cụ tìm kiếm chỉ tìm một lần. EverOS tìm kiếm nhiều lần từ các góc độ khác nhau cho đến khi tìm thấy đủ thông tin.

EverOS đạt độ chính xác tổng thể 93.05% trên điểm chuẩn bộ nhớ dài hạn LoCoMo (sử dụng GPT-4o-mini), đánh bại giải pháp so sánh Zep (85.22%) gần 8 điểm phần trăm.
Sau khi đọc phần này, bạn nên có một ý tưởng tốt về các hệ thống bộ nhớ Agent cấp sản xuất. Nhưng làm thế nào chúng được áp dụng trong thực tế kỹ thuật và bạn có thể làm gì với chúng?
Triển Khai Thực Tế Sản Xuất
Tôi sẽ tiếp tục sử dụng dự án mã nguồn mở này để giải thích vì hai lý do: API được mở miễn phí và kho lưu trữ chứa 20 trường hợp thực tế—hoàn hảo để thảo luận về triển khai!!
API Miễn Phí Mở
Cloud API của EverOS được mở miễn phí.

Ba bước để bắt đầu:
- Mở everos.evermind.ai trong trình duyệt để đăng ký; trang sẽ cung cấp cho bạn API Key, hãy lưu nó.
- Cài đặt SDK qua dòng lệnh: pip install everos
- Khởi client trong Python và bắt đầu sử dụng.
EverOS không chỉ dùng thử miễn phí, mà còn hỗ trợ tính năng Skill Self-Evolution phổ biến gần đây!!
Làm thế nào để sử dụng Skill Self-Evolution?
Khi một Agent thực hiện các nhiệm vụ tương tự nhiều lần, EverOS tự động chưng cất kinh nghiệm thành các kỹ năng có thể tái sử dụng. Lần tới khi có nhiệm vụng tự, nó sử dụng kỹ năng trực tiếp thay vì bắt đầu lại từ đầu.
Sử dụng trong code liên quan đến việc xích 3 API:
Hai điểm cần lưu ý:
- Lần đầu tiên bạn cung cấp một trajectory, nó chỉ tạo ra một case (lưu trữ của một nhiệm vụ duy nhất). Kỹ năng chỉ được phân cụm và chưng cất sau khi có nhiều nhiệm vụ tương tự.
- Bạn phải sử dụng endpoint /memories/agent; /memories thông thường sẽ không trích xuất kỹ năng.
Nếu bạn không hiểu tính năng Skill Self-Evolution, hãy xem sơ đồ dưới đây:

Tôi đã đề cập ngắn gọn về cách sử dụng code, nhưng là cơ sở hạ tầng Agent, dự án này có các trường hợp sử dụng thực tế cực kỳ giá trị.
Và các trường hợp này đều là mã nguồn mở và sẵn sàng để học tập!!
20 Trường Hợp Sử Dụng Thực Tế
README của kho lưu trữ liệt kê 20 trường hợp sử dụng, đây là một vài trong số đó:
- MemoCare (Trợ lý Bộ nhớ Alzheimer): Cung cung cấp bộ nhớ bên ngoài không bao giờ quên cho bệnh nhân suy giảm nhận thức—đây là một trong những dự án phúc lợi công cộng ấm lòng nhất.
- Claude Code Plugin: Thêm bộ nhớ dài hạn cho Claude Code, ghi nhớ qua các phiên.
- Game of Thrones: Cung cấp cốt truyện GoT cho AI để đóng các nhân vật nhớ lâu dài họ là ai.
- OpenHer: Bạn gái AI, đồng hành cảm xúc + tiến hóa bộ nhớ.
- Computer-Use with Memory: Cho phép Agent điều khiển máy tính và nhớ kinh nghiệm từ mỗi thao tác.
- Memory Graph Visualization: Trực quan hóa hệ thống bộ nhớ dưới dạng đồ thị.
Danh sách đầy đủ có trong README tại github.com/EverMind-AI/EverOS.
Nhân tiện, đây là một vài plugin chính thức:
API là chưa đủ, vì vậy EverOS đóng gói các khả năng bộ nhớ thành một số plugin sẵn sàng sử dụng:
- Claude Code Plugin Claude Code: Thêm bộ nhớ dài hạn cho Claude Code—tự động lưu sau mỗi câu trả lời và nhắc lại ngữ cảnh cho mỗi câu hỏi, với bảng điều khiển Memory Hub trực quan. Cài đặt bằng một lệnh.
- Plugin OpenClaw: Kết nối EverOS như một "khe cắm bộ nhớ" cho OpenClaw—Agent tự động truy xuất bộ nhớ liên quan (cốt truyện, hồ sơ, trường hợp, kỹ năng) trước khi chạy và lưu cuộc trò chuyện và các cuộc gọi công cụ sau đó.
- Kỹ năng OpenClaw: Kết nối các công cụ bộ nhớ EverOS với OpenClaw / Claude Code dưới dạng "kỹ năng," cho phép Agent gọi bộ nhớ khi cần thay vì gắn vĩnh viễn.
Quay lại ba câu hỏi ở đầu bài:
Hệ thống bộ nhớ là gì? Hệ thống bộ nhớ của OpenClaw như thế nào? Giải pháp cấp doanh nghiệp trông như thế nào?
Bạn nên có câu trả lời.
EverMind là một dự án xuất sắc:
- Toàn bộ dự án là mã nguồn mở Apache 2.0, hiện có hơn 4500 sao.
- EverMind có nền tảng học thuật và thuật toán mạnh mẽ, liên tục xuất bản bài báo; MSA trước đây của họ cũng là một khái niệm rất tiên tiến.
- EverMind là một công ty AI Native thuộc Shanda, với nhiều tài nguyên.
Nếu bạn đang lên kế hoạch bắt đầu học hệ thống bộ nhớ Agent từ dự án này, hãy cho nó một sao:
github.com/EverMind-AI/EverOS
Họ cũng có sản phẩm mới ra mắt vào cuối tháng, rất mong chờ!!
Đây là lần đầu tiên tôi cố gắng giải thích các khái niệm kỹ thuật trong một bài viết. Để làm cho nó dễ hiểu cho hầu hết mọi người, tôi đã bỏ qua nhiều chi tiết.
Công nghệ liên quan rất phức tạp; hãy chỉ ra lỗi trong phần bình luận để sửa.
Nếu bạn thích bài viết của tôi, bạn có thể đánh dấu trang, bình luận, gửi cho bạn bè và theo dõi tôi.





