[AI agent, the illustrated guidebook] Từ trang 83 đến 117
Đây là bản dịch tiếng Việt của "AI agent, the illustrated guidebook" (Tác giả: Unknown Author). Bài được dịch tự động bởi Aha! Mind Interpreter — pipeline dịch sách kỹ thuật sử dụng Gemini Flash.
⚠️ Bản dịch tự động — có thể có lỗi. Vui lòng đối chiếu với bản gốc tiếng Anh khi cần độ chính xác cao.
#8) Bộ nhớ giống con người cho các Agent
Nếu một AI Agent không có bộ nhớ được deploy lên production, mọi tương tác với Agent đó sẽ giống như một tờ giấy trắng. Hãy cùng tìm hiểu cách xây dựng một AI Agent có bộ nhớ giống con người để giải quyết vấn đề này.

Tech stack:
-
Zep AI làm memory layer cho AI Agent
-
Microsoft AutoGen để orchestration các Agent
-
Ollama để serve local Qwen3
Workflow:
- Người dùng gửi một query
82
-
Agent lưu cuộc hội thoại và trích xuất các facts vào bộ nhớ
-
Agent truy xuất các facts và tóm tắt lại
-
Sử dụng các facts và lịch sử để đưa ra phản hồi chuẩn xác
Hãy cùng triển khai nhé!
#1) Setup LLM
Chúng ta sẽ sử dụng Qwen 3 được serve local qua Ollama. Hãy xem qua dưới đây:
#2) Khởi tạo Zep Client
Chúng ta đang tận dụng Foundational Memory Layer của zep_ai để trang bị cho Autogen agent khả năng hoàn thành tác vụ thực thụ.
83


#3) Tạo User Session
Tạo một Zep client session cho người dùng, Agent sẽ sử dụng session này để quản lý bộ nhớ. Một người dùng có thể có nhiều session. Dưới đây là cách thực hiện:
#4) Định nghĩa Zep Conversable Agent
Zep Memory Agent của chúng ta được xây dựng dựa trên Conversable Agent của Autogen, tự động lấy live memory context từ Zep Cloud với mỗi query của người dùng.
Nó hoạt động hiệu quả nhờ sử dụng session mà chúng ta vừa thiết lập.
Dưới đây là cách kết hợp chúng lại với nhau:
84

#5) Thiết lập các Agent
Chúng ta khởi tạo Conversable Agent và một Stand-in Human Agent để quản lý các tương tác chat.
Dưới đây là phần thiết lập:
85

#6) Xử lý Agentic Chat
Zep Conversable Agent sẽ tham gia để tạo ra phản hồi mạch lạc và mang tính cá nhân hóa.
Nó tích hợp mượt mà giữa bộ nhớ và cuộc hội thoại. Dưới đây là cách hoạt động:
86


#7) Streamlit UI
Chúng ta đã tạo một Streamlit UI tinh gọn để đảm bảo các tương tác với Agent diễn ra mượt mà và đơn giản.
Giao diện trông sẽ như thế này:
#8) Trực quan hóa Knowledge Graph
Chúng ta có thể lập bản đồ tương tác các cuộc hội thoại của người dùng qua nhiều session bằng UI của Zep Cloud.
Công cụ mạnh mẽ này cho phép chúng ta trực quan hóa cách tri thức tiến hóa thông qua một biểu đồ.
Hãy cùng xem qua:
87

Code có sẵn tại đây:
ild-an-ai-agent-with-human-like-memory/
88


#9) Multi-agent Book Writer
Xây dựng một Agentic workflow viết một cuốn sách dài 20.000 từ chỉ từ một tiêu đề sách khoảng 3-5 từ.
Tech stack:
-
Firecrawl để web scraping.
-
CrewAI để orchestration.
-
Ollama để serve local Qwen 3.
-
LightningAI để phát triển và hosting
Workflow:
89

-
Sử dụng Firecrawl, Outline Crew sẽ scrape dữ liệu liên quan đến tiêu đề sách và quyết định số lượng cũng như tiêu đề các chương.
-
Nhiều Writer Crews hoạt động song song để viết mỗi chương một lúc.
-
Gộp tất cả các chương lại để hoàn thiện cuốn sách.
Hãy cùng triển khai nhé!
#1) Công cụ scraping - SERP API
Viết sách đòi hỏi phải nghiên cứu. Do đó, chúng ta sẽ sử dụng SERP API của Firecrawl để scrape dữ liệu.
Cách dùng công cụ:
-
Outline Crew → để nghiên cứu tiêu đề sách và chuẩn bị outline.
-
Writer Crew → để nghiên cứu tiêu đề chương và viết chương đó.
Xem đoạn code này:
90

#2) Setup Qwen 3 locally
Chúng ta sẽ serve Qwen 3 local thông qua Ollama. Để làm điều này:
-
Đầu tiên, chúng ta tải nó về local.
-
Tiếp theo, chúng ta định nghĩa nó bằng LLM class của CrewAI.
91
#3) Outline Crew
Crew này có hai Agent:
- Research Agent → Sử dụng công cụ scraping Firecrawl để scrape dữ liệu liên quan

đến tiêu đề sách và chuẩn bị các insights.
- Outline Agent → Sử dụng các insights để xuất ra tổng số chương và tiêu đề dưới dạng Pydantic output.
92
#4) Writer Crew
Crew này có hai Agent:
-
Research Agent → Sử dụng công cụ scraping Firecrawl để scrape dữ liệu liên quan đến tiêu đề của một chương và chuẩn bị các insights.
-
Write Agent → Sử dụng các insights để viết chương đó.
Hãy xem đoạn code này:
93

#5) Tạo một Flow
Chúng ta sử dụng CrewAI Flows để orchestration workflow.
Đầu tiên, method outline sẽ gọi Outline Crew, để:
-
nghiên cứu chủ đề bằng công cụ scraping.
-
trả về tổng số chương và các tiêu đề tương ứng.
Phần này được triển khai dưới đây:
94

#6) Lưu sách
Sau khi tất cả Writer Crews hoàn thành việc thực thi, chúng ta sẽ lưu cuốn sách dưới dạng một Markdown file.
Hãy xem đoạn code này:
95

#7) Kickoff Flow
Cuối cùng, chúng ta chạy Flow.
-
Đầu tiên, Outline Crew được gọi. Nó sử dụng công cụ scraping Firecrawl để chuẩn bị outline.
-
Tiếp theo, nhiều Writer Crews được gọi song song để viết mỗi chương một lúc.
96

Workflow này chạy trong khoảng 2 phút, và chúng ta sẽ có một cuốn sách được viết rất chỉn chu về chủ đề được chỉ định—"Astronomy in 2025." Dưới đây là cuốn sách mà Agentic workflow của chúng ta đã viết:

Code có sẵn tại đây:
ulti-agent-book-writer/
97

#10) Multi-agent Content Creation System
Xây dựng một Agentic workflow giúp chuyển đổi bất kỳ URL nào thành các bài đăng trên mạng xã hội và tự động lên lịch cho ch úng qua Typefully.
Tech stack:
-
Motia làm backend framework hợp nhất
-
Firecrawl để scrape nội dung web
-
Ollama để serve local Deepseek-R1 LLM
98

Workflow:
-
Người dùng gửi URL cần scrape
-
Firecrawl scrape nội dung và chuyển đổi nó sang markdown
-
Các agent Twitter và LinkedIn chạy song song để tạo nội dung
-
Nội dung được tạo sẽ được lên lịch qua Typefully
Hãy cùng triển khai nhé:
Các Step là những khối xây dựng cơ bản của Motia.
Chúng gồm hai thành phần chính:
-
Config object: Hướng dẫn Motia cách tương tác với một step.
-
handler function: Định nghĩa logic chính của một step.
Hãy xem qua dưới đây:
99
Với những hiểu biết đó, hãy bắt đầu xây dựng workflow tạo nội dung của chúng ta.
#1) Entry point (API)
Chúng ta bắt đầu workflow tạo nội dung bằng cách định nghĩa một API step nhận vào một URL từ người dùng thông qua một POST request.
Hãy xem qua dưới đây:
100

#2) Web scraping
Step này scrape nội dung bài viết bằng Firecrawl và kích hoạt step tiếp theo trong workflow.
Các step có thể được kết nối với nhau theo một chuỗi tuần tự, trong đó output của step này sẽ trở thành input cho step khác.
Hãy xem qua dưới đây:
101

#3) Tạo nội dung
Nội dung đã scrape được đưa vào các agent X và LinkedIn chạy song song để tạo ra các bài đăng được chọn lọc.
Chúng định nghĩa toàn bộ prompting và AI logic trong handler tự động chạy khi một step được kích hoạt.
Hãy xem qua dưới đây:
102

#4) Lên lịch
Sau khi nội dung được tạo, chúng ta sẽ lưu nháp nó trong Typefully để có thể dễ dàng xem lại các bài đăng mạng xã hội của mình.
Motia cũng cho phép chúng ta kết hợp nhiều ngôn ngữ khác nhau trong cùng một workflow, mang lại sự linh hoạt tuyệt vời.
Hãy xem đoạn typescript code này:
103

Sau khi định nghĩa các step, chúng ta cài đặt các dependencies cần thiết bằng lệnh npm install và chạy Motia workbench bằng lệnh npm run dev.
Hãy xem qua dưới đây:
104

Motia workbench cung cấp một UI tương tác giúp xây dựng, giám sát và debug các flow của chúng ta.
Chỉ với một cú click chuột, bạn cũng có thể deploy nó lên cloud!
Code có sẵn tại đây:
-agent-content-creation/
105


#11) Documentation Writer Flow
Xây dựng một Agentic workflow tạo tài liệu dự án đầy đủ chỉ từ một GitHub repo URL.
Tech stack:
-
CrewAI để orchestration các Multi-Agent
-
Ollama để serve local DeepSeek-R1 LLM
Workflow:
-
Người dùng chỉ định GitHub repo
-
Planning crew tạo kế hoạch viết tài liệu
-
Documentation crew viết tài liệu theo kế hoạch
-
Tài liệu được tạo sẽ được lưu vào local directory
Hãy cùng triển khai nhé!
106

#1) Setup LLM
Chúng ta sẽ sử dụng Deepseek-R1 làm LLM, được serve local bằng Ollama.
#2) Định nghĩa Pydantic schema
Chúng ta định nghĩa các pydantic schemas sau đ ể có được các structured outputs mạnh mẽ.
Điều này đảm bảo data validation và integrity trước khi generate các file documentation. Hãy xem đoạn code này:
107


#3) Planning Crew
Crew này giám sát chiến lược cho outline thông qua:
-
Code explorer agent -> Phân tích codebase để tìm các key components, patterns và các mối quan hệ.
-
Doc planner agent -> Tạo outline dựa trên kết quả phân tích codebase dưới dạng pydantic output.
Hãy xem phần này:
#4) Documentation Crew
Crew này viết và review documentation thông qua:
- Doc writer agent -> Generate một bản draft high-level dựa trên outline đã được lên kế hoạch.
108

- Doc reviewer agent -> Review bản draft để đảm bảo tính consistency, accuracy và completeness.
Hãy xem phần này:
#5) Tạo Documentation Flow
Sau khi setup các crew, chúng ta tạo workflow chính để:
-
Clone GitHub repo
-
Lên kế hoạch và lưu outline
-
Generate documentation dựa trên outline
-
Lưu các file doc cuối cùng vào local directory
Hãy xem đoạn code này:
109

#6) Kickoff flow
Cuối cùng, khi mọi thứ đã sẵn sàng, chúng ta kickoff documentation flow với GitHub repo URL.
Hãy xem phần này:
110

Code đã có sẵn tại đây:
https://github.com/patchy631/ai-engineering hub/tree/main/documentation-writer-fow
111


#12) News Generator
Ứng dụng này nhận một user query, tìm kiếm trên web, và chuyển nó thành một bài báo tin tức được biên soạn kỹ lưỡng kèm theo các trích dẫn (citations).
Tech stack:
-
Cohere ultra-fast Command R 7B đóng vai trò LLM
-
CrewAI để orchestration Multi-Agent
Workflow:
Chúng ta sẽ có hai agent trong ứng dụng Multi-Agent này:
Research analyst agent:
112

-
Nhận một user query.
-
Sử dụng tool tìm kiếm web Serper để fetch kết quả từ internet.
-
Hợp nhất (consolidate) các kết quả.
Content writer agent:
- Sử dụng các kết quả đã được chọn lọc để chuẩn bị một bài viết trau chuốt, sẵn sàng xuất bản.
Hãy cùng triển khai nhé:
#1) Setup
Tạo một file .env cho các API key tương ứng:
-
Cohere API key
-
Serper API key
Tiếp theo, setup LLM và web search tool như sau:
#2) Senior Research Analyst Agent
113

Web-search agent nhận một user query và sau đó sử dụng tool tìm kiếm web Serper để fetch kết quả từ internet và consolidate chúng. Hãy xem phần này:
Đây là research task mà chúng ta gán cho senior research analyst agent, đi kèm với description và expected output.
#3) Content writer agent
114


Vai trò của content writer là sử dụng các kết quả đã được chọn lọc và chuyển chúng thành một bài báo tin tức trau chuốt, sẵn sàng xuất bản.
Đây là cách chúng ta mô tả writing task với đầy đủ chi tiết và expected output:
#4) Setup Crew
115

Và chúng ta đã hoàn thành!
Chỉ cần build một crew và kickoff nó!
Code đã có sẵn tại đây:

ilding-a-multi-agent-news-generator/
116

Made by Anh Tu - Share to be share