# Long-Term Agentic Memory with LangGraph: khoá ngắn về ba loại trí nhớ, dùng được để chẩn đoán agent

> Harrison Chase dạy dựng ba loại trí nhớ cho một trợ lý email; đem cách chia ấy đến khách hàng, bạn sẽ có câu hỏi đúng khi họ phải sửa agent lần thứ ba.

Bản gốc: https://fdetimes.net/vi/sach-khoa-hoc/khoa-long-term-agentic-memory-langgraph-harrison-chase-deeplearning-ai/

Trong 1 giờ 24 phút, Harrison Chase, đồng sáng lập kiêm CEO của LangChain, dẫn người học qua một bài tập rất đời thường: dựng trợ lý email, rồi gắn cho nó ba loại trí nhớ, từng loại một. Với FDE, giá trị lớn nhất không nằm ở thư viện mà ở chính cách chia ba ấy: khi agent lặp lỗi, nó giúp bạn biết nên sửa ở đâu.

[Long-Term Agentic Memory with LangGraph](https://www.deeplearning.ai/courses/long-term-agentic-memory-with-langgraph) là khoá ngắn trình độ trung cấp trên DeepLearning.AI, làm cùng LangChain.

Thử hình dung tuần thứ ba của một deployment: khách hàng sửa agent đúng một lỗi lần thứ ba và hỏi vì sao nó không nhớ. Khoá học giúp bạn gọi đúng tên vấn đề và có sẵn một mẫu triển khai để trả lời, thay vì vá thêm một dòng vào prompt.

## Một trợ lý email, ba lần nâng cấp

Dự án xuyên suốt là một trợ lý email. Các bài học đi theo chuỗi: bản nền, thêm semantic, thêm episodic, rồi thêm procedural.

Vì mỗi bài xây tiếp trên bài trước, bạn thấy từng loại trí nhớ được gắn vào đâu trong cùng một agent, thay vì học ba khái niệm rời. Điều kiện đầu vào cũng nhẹ, chỉ cần quen Python và hiểu căn bản về prompting cùng phát triển ứng dụng LLM.

## Lỗi lặp lại: agent đang thiếu loại trí nhớ nào?

Khoá học không dạy chẩn đoán lỗi, nhưng cách chia ba của nó dùng rất tốt vào việc này. [Tài liệu khái niệm của LangMem](https://langchain-ai.github.io/langmem/concepts/conceptual_guide/) có những định nghĩa đủ dùng để bắt đầu.

Semantic lưu các sự thật làm căn cứ cho câu trả lời; ví dụ của khoá học là những ngày sinh quan trọng với một agent lịch. Episodic giữ lại những lần xử lý thành công để làm ví dụ cho các lần sau. Procedural quy định cách agent nên hành xử và phản hồi.

Ba định nghĩa này đủ để tách một lời phàn nàn mơ hồ thành ba việc sửa khác nhau. Lấy ví dụ giả định là hộp thư hỗ trợ của một công ty logistics:

| Loại | Khách hàng phàn nàn | Thứ cần lưu |
|---|---|---|
| Semantic | "Nó vẫn báo sai cam kết thời gian xử lý của khách này" | Cam kết trong hợp đồng của từng khách |
| Episodic | "Thư kiểu này lần trước xử lý đúng, sao lần này lại xếp sai?" | Bức thư đó cùng cách phân loại đúng |
| Procedural | "Đã dặn hoàn tiền phải chuyển cho người duyệt rồi" | Quy tắc chuyển người duyệt trong chỉ dẫn của agent |

**Điểm mấu chốt:** Agent lặp lại lỗi cũ? Trước khi sửa, hãy hỏi nó đang thiếu loại trí nhớ nào.

Vì thế, việc đầu tiên ở khách hàng không phải là chọn công cụ lưu trữ. Hãy gom các lần người dùng sửa agent, gắn nhãn từng lần theo bảng trên, rồi làm trước loại xuất hiện nhiều nhất.

## Few-shot và system prompt cũng là bộ nhớ

Trong khoá học, episodic memory là các ví dụ few-shot ở bước triage, còn procedural memory là system prompt được tinh chỉnh bằng phản hồi. Về kỹ thuật, bạn gần như đã biết cả hai; điểm khác là chúng được nuôi dần từ những gì agent trải qua.

Trong [bài blog về trí nhớ của agent](https://www.langchain.com/blog/memory-for-agents), Chase cũng viết rằng episodic memory trong thực tế được cài đặt bằng few-shot, và có những agent tự cập nhật system prompt của mình.

Nhưng khi hành vi của agent thay đổi theo phản hồi, bạn cần một phép đo cố định. Giả sử trên 100 email đã gán nhãn, bản nền phân loại sai 15 thư. Sau khi tinh chỉnh prompt, 6 thư sai được sửa đúng nhưng 4 thư vốn đúng lại hỏng.

Tính cả hai chiều, số thư sai còn 13, tức chỉ giảm 2 thư, trong khi khách hàng dễ chỉ nhìn thấy 6 ca vừa được sửa. Bốn ca hỏng kia sẽ quay lại thành phàn nàn mới nếu không ai đo.

Trước khi bật cơ chế tối ưu ở khách hàng, hãy có sẵn tập kiểm thử này và lưu lại từng phiên bản prompt để có thể quay về.

## Ai nên học, học theo thứ tự nào

Khoá này phù hợp nhất với engineer đã dựng một agent chạy được, hoặc sắp mang agent đến khách hàng. Nếu chưa từng viết ứng dụng LLM, hãy học phần căn bản trước, vì khoá học coi đó là kiến thức nên có sẵn.

Thứ tự hợp lý là đi đúng trình tự bài học, không nhảy thẳng đến phần procedural. Sau đó đọc tài liệu khái niệm của LangMem để đối chiếu định nghĩa từng loại trí nhớ, rồi làm lại bài tập với dữ liệu khác email. Trang khoá học ghi cập nhật ngày 17/7/2026, nên khi làm hãy đối chiếu với tài liệu hiện hành của thư viện.

## Bộ nhớ của một người có nên lan sang cả đội?

Hãy nhớ giới hạn của bài tập: nó chỉ xoay quanh một trợ lý email. Ở doanh nghiệp, bạn còn phải trả lời xem bộ nhớ thuộc về ai, sở thích của một nhân viên có nên lan sang đồng nghiệp không, ai được xem và xoá.

[Tài liệu LangGraph](https://docs.langchain.com/oss/python/concepts/memory.md) mô tả cách tổ chức có thể dùng để bàn chuyện này: mỗi memory nằm trong một namespace tuỳ chỉnh, giống thư mục, và có key riêng, giống tên file.

Trước khi go live, hãy cùng khách hàng vẽ namespace theo từng nhân viên và từng đội, vì khi vẽ, cả hai bên buộc phải trả lời những câu hỏi trên.

## Trong CV, hãy ghi số ca sai thay vì tên khoá

Khi đưa dự án này vào CV, đừng chỉ ghi tên khoá học. Hãy ghi rõ bạn đã thêm loại bộ nhớ nào, đo trên bao nhiêu mẫu và số ca sai thay đổi ra sao.

Khi đọc mô tả công việc có nhắc đến agent, hãy hỏi người phỏng vấn họ đang xử lý trí nhớ dài hạn thế nào; câu trả lời thường cho bạn biết sản phẩm của họ đã chạy lâu dài ở khách hàng hay mới dừng ở bản demo.

Khách hàng sẽ không hỏi agent của bạn dùng thư viện bộ nhớ nào. Họ chỉ để ý một điều: lỗi đã sửa tuần trước có quay lại hay không.

**Thử ngay tuần này:**

- Lấy 10 lần người dùng sửa agent gần nhất của bạn, gắn mỗi lần một nhãn semantic, episodic hoặc procedural rồi xem loại nào chiếm nhiều nhất.
- Tạo một tập 100 đầu vào đã gán nhãn và ghi lại số ca sai của phiên bản agent hiện tại, trước khi thêm bất kỳ bộ nhớ nào.
- Học xong khoá, thay dữ liệu email bằng một luồng ticket công khai hoặc tự tạo, rồi viết một trang ghi lại số ca sai trước và sau khi thêm từng loại bộ nhớ.

## Nguồn

- [Introduction - Long-Term Agentic Memory with LangGraph (DeepLearning.AI)](https://learn.deeplearning.ai/courses/long-term-agentic-memory-with-langgraph/lesson/ovv0p/introduction)

- [Long-Term Agentic Memory with LangGraph - DeepLearning.AI short course](https://www.deeplearning.ai/short-courses/long-term-agentic-memory-with-langgraph/)

- [Long-Term Agentic Memory With LangGraph - DeepLearning.AI](https://www.deeplearning.ai/courses/long-term-agentic-memory-with-langgraph)

- [LangMem Conceptual Guide](https://langchain-ai.github.io/langmem/concepts/conceptual_guide/)

- [Memory for agents (Harrison Chase, LangChain blog)](https://www.langchain.com/blog/memory-for-agents)

- [Memory overview (LangChain docs)](https://docs.langchain.com/oss/python/concepts/memory.md)
