AI hiện đại bắt đầu với các Mô hình Ngôn ngữ Lớn (LLM), tiếp theo là gọi hàm để xuất đầu ra có cấu trúc, rồi đến sự phát triển của tác tử và công cụ, dẫn tới việc ra đời các máy chủ MCP. Hiện nay, trọng tâm là các hệ thống nhiều tác tử. Các công ty đang tìm kiếm giải pháp để xây dựng hệ thống tự động thông minh bằng nhiều công cụ, trong đó AutoGen là nền tảng phổ biến nhất.
Trong hướng dẫn này, chúng ta sẽ khám phá AutoGen, hệ sinh thái của nó, các trường hợp sử dụng và cách dùng từng thành phần trong hệ sinh thái đó. Cần lưu ý rằng AutoGen không chỉ là công cụ điều phối mô hình ngôn ngữ như LangChain; nó còn làm được nhiều hơn thế.
Nếu bạn mới bắt đầu với AI, vui lòng học lộ trình kỹ năng Kiến thức nền tảng về AI trước khi tiếp tục với hướng dẫn này. Bạn cũng có thể tìm hiểu về Agentic AI trong một bài viết riêng.
AutoGen là gì?
AutoGen là một framework mã nguồn mở được thiết kế để tạo các ứng dụng AI nhiều tác tử có thể vận hành bán tự động và hoàn toàn tự động. Nó cung cấp cho nhà phát triển các công cụ để xây dựng hệ thống trong đó nhiều tác tử AI có thể giao tiếp, hợp tác và cùng thực hiện nhiệm vụ.
AutoGen hỗ trợ nhiều trường hợp sử dụng, bao gồm quy trình làm việc tự động, cộng tác nhiều tác tử và giải quyết nhiệm vụ động. Nó cho phép tạo hệ thống mà các tác tử có thể tương tác qua ngôn ngữ tự nhiên, thực thi mã, truy xuất thông tin và thích ứng với quy trình phức tạp.
Hệ sinh thái AutoGen được chia thành bốn thành phần chính:
AutoGen Studio: Giao diện đồ họa không cần mã để xây dựng và kiểm thử quy trình nhiều tác tử.
AutoGent AgentChat: API đơn giản để xây dựng ứng dụng hội thoại một và nhiều tác tử.
AutoGen Core: API nền tảng để xây dựng hệ thống AI nhiều tác tử có khả năng mở rộng.
AutoGen Extension: Thư viện các tiện ích mở rộng từ bên thứ nhất và bên thứ ba để mở rộng khả năng của framework.
Trong phần này, chúng ta sẽ khám phá bốn thành phần chính của hệ sinh thái AutoGen bằng cách cài đặt và chạy chúng cục bộ.
1. AutoGen Studio
AutoGen Studio là giao diện low-code giúp bạn nhanh chóng tạo mẫu tác tử AI. Nó cung cấp giao diện kéo-thả thân thiện để tạo hệ thống nhiều tác tử và kiểm thử theo thời gian thực.
Sau khi chạy lệnh, bạn sẽ thấy đầu ra sau trong terminal:
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
2025-05-09 15:15:22.825 | INFO | AutoGenstudio.web.app:lifespan:39 - Application startup complete. Navigate to http://127.0.0.1:8080Được hỗ trợ bởi
3. Truy cập http://127.0.0.1:8080 trên trình duyệt để vào bảng điều khiển AutoGen Studio.
Khi ứng dụng chạy, bạn sẽ được chào đón bằng giao diện sạch và trực quan.
AutoGen Studio cung cấp một số tính năng chính giúp bạn xây dựng và quản lý quy trình nhiều tác tử:
Team Builder: Giao diện kéo-thả để tạo đội tác tử.
Playground: Môi trường tương tác để kiểm thử và chạy quy trình tác tử.
Gallery: Trung tâm để khám phá và nhập các thành phần do cộng đồng tạo.
Labs: Tính năng thử nghiệm trong AutoGen Studio cho phép khám phá quy trình nâng cao và tạo mẫu ý tưởng tiên tiến.
Deploy: Xuất và chạy quy trình tác tử dưới dạng mã Python.
AutoGen Studio là ứng dụng low-code, nghĩa là cho phép bạn xây dựng quy trình với rất ít mã. Tuy vậy, nó cũng linh hoạt để tùy biến tác tử và quy trình bằng mã Python.
2. AutoGen AgentChat
AgentChat là framework cấp cao để tạo quy trình hội thoại nhiều tác tử. Nó đơn giản hóa việc xây dựng ứng dụng trong đó nhiều tác tử (AI, công cụ hoặc con người) hợp tác giải quyết nhiệm vụ.
Trước tiên, cài đặt các gói cần thiết:
pip install-U"AutoGen-agentchat""AutoGen-ext[openai]"Được hỗ trợ bởi
Tiếp theo, chúng ta sẽ thiết lập ba tác tử—một người dùng, một coder và một trình thực thi mã—cùng cộng tác trong nhóm trò chuyện luân phiên để tạo, thực thi và tường thuật mã Python. Hệ thống được thiết kế để hỗ trợ tạo và chạy mã động, đồng thời cho phép tương tác của con người và điều kiện kết thúc.
Trong ví dụ này, chúng ta dùng mô hình gpt-4.1-mini để sinh mã, CodeExecutorAgent để thực thi mã dòng lệnh, và UserProxyAgent để giữ con người trong vòng lặp.
import asyncio
from pathlib import Path
from AutoGen_agentchat.agents import AssistantAgent, CodeExecutorAgent, UserProxyAgent
from AutoGen_agentchat.conditions import TextMentionTermination
from AutoGen_agentchat.teams import RoundRobinGroupChat
from AutoGen_agentchat.ui import Console
from AutoGen_ext.code_executors.local import LocalCommandLineCodeExecutor
from AutoGen_ext.models.openai import OpenAIChatCompletionClient
asyncdefmain()->None:
model_client = OpenAIChatCompletionClient(model="gpt-4.1-mini")
coder = AssistantAgent("coder",
model_client=model_client,
system_message=("You are a senior engineer. Think step-by-step, then output ONLY runnable ""Python inside ```pythonthon``` blocks—no commentary."),)
executor = CodeExecutorAgent("executor",
model_client=model_client,# lets it narrate results
code_executor=LocalCommandLineCodeExecutor(work_dir=Path.cwd()/"runs"),)
user = UserProxyAgent("user")# human in the loop
termination = TextMentionTermination("exit", sources=["user"])
team = RoundRobinGroupChat([user, coder, executor], termination_condition=termination
)try:await Console(
team.run_stream())finally:await model_client.close()if __name__ =="__main__":
asyncio.run(main())Được hỗ trợ bởi
Lưu đoạn mã trên vào tệp chat_app.py và chạy bằng:
Chúng ta đã yêu cầu ứng dụng Tác tử tạo mã để in các ngôi sao theo hình tam giác, rồi thực thi mã.
Hệ thống đã tạo mã và thực thi thành công, đồng thời đưa ra các tùy chọn bổ sung. Người dùng có thể nhập “exit” để thoát hoặc đặt câu hỏi tiếp theo để tiếp tục hội thoại.
Đầu ra:
Enter your response: Write a Python script that prints stars and run it.
---------- TextMessage (user) ----------
Write a Python script that prints stars and run it.
Được hỗ trợ bởi
---------- TextMessage (coder)----------# Print a simple star patternfor i inrange(1,6):print('*'* i)Được hỗ trợ bởi
---------- CodeGenerationEvent (executor)----------# Print a simple star patternfor i inrange(1,6):print('*'* i)Được hỗ trợ bởi
---------- CodeExecutionEvent (executor) ----------
*
**
***
****
*****
---------- TextMessage (executor) ----------
The star pattern has been printed successfully. If you'd like a different pattern or further modifications, just let me know!
Enter your response:Được hỗ trợ bởi
3. AutoGen Core
AutoGen Core là framework cấp thấp cung cấp cách mạnh mẽ để tạo và quản lý hệ thống nhiều tác tử.
Trong ví dụ này, chúng ta sẽ tạo hai tác tử: Echo Agent đảo ngược nội dung thông điệp và Printer Agent in nội dung thông điệp ra console.
Khởi tạo tác tử: Tạo một tác tử MultimodalWebSurfer sử dụng mô hình gpt-4.1-mini của OpenAI để ra quyết định và một trình duyệt (qua Playwright) để tương tác web.
Thiết lập nhóm: Thêm tác tử vào nhóm RoundRobinGroupChat để quản lý quy trình và giới hạn nhiệm vụ trong 3 lượt.
Thực thi nhiệm vụ: Nhóm được hướng dẫn thực hiện nhiệm vụ: "Đi tới Google và tìm kiếm về Abid Ali Awan." Tác tử mở trình duyệt, truy cập Google, thực hiện tìm kiếm và trích xuất thông tin liên quan.
Luồng kết quả thời gian thực: Các hành động của tác tử (ví dụ: điều hướng trang, nhấp liên kết, trích xuất siêu dữ liệu) được phát trực tiếp lên console.
Dọn dẹp: Sau khi hoàn thành nhiệm vụ, trình duyệt được đóng để giải phóng tài nguyên.
import asyncio
from AutoGen_agentchat.ui import Console
from AutoGen_agentchat.teams import RoundRobinGroupChat
from AutoGen_ext.models.openai import OpenAIChatCompletionClient
from AutoGen_ext.agents.web_surfer import MultimodalWebSurfer
asyncdefmain()->None:# Define an agent
web_surfer_agent = MultimodalWebSurfer(
name="MultimodalWebSurfer",
model_client=OpenAIChatCompletionClient(model="gpt-4.1-mini"),)# Define a team
agent_team = RoundRobinGroupChat([web_surfer_agent], max_turns=3)# Run the team and stream messages to the console
stream = agent_team.run_stream(task="Navigate to Google and search about Abid Ali Awan.")await Console(stream)# Close the browser controlled by the agentawait web_surfer_agent.close()
asyncio.run(main())Được hỗ trợ bởi
---------- TextMessage (user) ----------
Navigate to Google and search about Abid Ali Awan.
---------- MultiModalMessage (MultimodalWebSurfer) ----------
I typed 'https://www.google.com' into the browser address bar.
The web browser is open to the page [Google](https://www.google.com/).
The viewport shows 100% of the webpage, and is positioned at the top of the page
The following text is visible in the viewport:
Gmail
Images
Sign in
Google offered in:
اردو
پښتو
سنڌيPakistan
About
Advertising
Business
How Search works
Privacy
Terms
Settings
Google recommends using Chrome
Try a fast, secure browser with updates built in
Don't switch
Yes
The following metadata was extracted from the webpage:
{
"microdata": [
{
"itemType": "http://schema.org/WebPage",
"image": "/images/branding/googleg/1x/googleg_standard_color_128dp.png"
}
],
"meta_tags": {
"referrer": "origin"
}
}
Here is a screenshot of the page.
<image>
---------- MultiModalMessage (MultimodalWebSurfer) ----------
I clicked 'Sign in'.
The web browser is open to the page [Sign in - Google Accounts](https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&ec=futura_exp_og_so_72776762_e&hl=en&ifkv=ASKV5MhAzFZnwDH-Aw10tuqQN1ppsY8OZ2-OJ3YavFHXMDlX9iTddg1d_k78ZZ0SogFUivcY7Td0Hg&passive=true&flowName=GlifWebSignIn&flowEntry=ServiceLogin&dsh=S1980923188%3A1746809726624486).
The viewport shows 100% of the webpage, and is positioned at the top of the page
The following text is visible in the viewport:
Sign inUse your Google AccountEmail or phone
Forgot email?
Not your computer? Use a private browsing window to sign in.
Learn more about using Guest modeNext
Create account
English (United States)
Help
Privacy
Terms
Sign in Use your Google Account
The following metadata was extracted from the webpage:
{"meta_tags":{"referrer":"origin",
"chrome":"nointentdetection",
"viewport":"width=device-width, initial-scale=1",
"description":""}}
Here is a screenshot of the page.
<image>
---------- TextMessage (MultimodalWebSurfer) ----------
Please provide the email or phone number you want to use to sign in, or let me know if you want to create a new account or need help with something else on this page.Được hỗ trợ bởi
AutoGen mở ra vô số khả năng để tạo hệ thống thông minh nhiều tác tử. Dưới đây là một số trường hợp sử dụng nổi bật của hệ sinh thái AutoGen:
Sinh mã, thực thi và gỡ lỗi: Tự động hóa tác vụ lập trình, giảm lỗi và nâng cao hiệu quả.
Cộng tác nhiều tác tử: Cho phép các tác tử làm việc nhóm để giải quyết nhiệm vụ phức tạp.
Chuỗi trò chuyện đa tác tử tuần tự: Quản lý trình tự nhiệm vụ có cấu trúc để hoàn thành hiệu quả.
Trò chuyện lồng nhau: Xử lý nhiệm vụ tinh vi qua các cuộc hội thoại phân lớp chi tiết.
Sử dụng công cụ: Mở rộng chức năng tác tử bằng cách tích hợp công cụ như tìm kiếm web và truy vấn SQL.
Sự tham gia của con người: Kết hợp phản hồi của con người để cải thiện quy trình.
Dạy và học của tác tử: Nâng cao kỹ năng và tri thức của tác tử.
Trò chuyện nhiều tác tử với OpenAI Assistants: Kết hợp khả năng của OpenAI với AutoGen cho các nhiệm vụ nâng cao.
Tác tử đa phương thức: Xử lý văn bản, hình ảnh và phương tiện khác để tương tác phong phú hơn.
Xử lý ngữ cảnh dài: Duy trì mạch lạc trong các cuộc hội thoại kéo dài.
Kết luận
Không phải ngẫu nhiên AutoGen thu hút nhiều sự chú ý và ghi dấu là một trong những framework Agentic được gắn sao nhiều nhất trên GitHub.
Đây là framework toàn diện phục vụ mọi đối tượng, từ nhà phát triển chuyên nghiệp đến lập trình viên thông thường, thậm chí cả những người chưa từng viết mã.
Với AutoGen, bạn có thể nhanh chóng tạo mẫu quy trình bằng AutoGen Studio, xây dựng ứng dụng vững chắc với Core và Extensions, rồi triển khai liền mạch lên đám mây. Đó thực sự là giải pháp tất cả-trong-một để tạo và quản lý hệ thống thông minh nhiều tác tử.
Hãy tham gia khóa Xây dựng Tác tử LangChain động và học cách xây dựng ứng dụng tác tử AI đầu tiên của bạn bằng framework LLM phổ biến.
Là một nhà khoa học dữ liệu được chứng nhận, tôi đam mê tận dụng công nghệ tiên tiến để tạo ra các ứng dụng học máy đổi mới. Với nền tảng vững chắc về nhận dạng giọng nói, phân tích và báo cáo dữ liệu, MLOps, AI hội thoại và NLP, tôi đã rèn giũa kỹ năng phát triển các hệ thống thông minh có thể tạo ra tác động thực sự. Bên cạnh chuyên môn kỹ thuật, tôi cũng là một người truyền đạt tốt, có khả năng chắt lọc các khái niệm phức tạp thành ngôn ngữ rõ ràng, súc tích. Nhờ đó, tôi trở thành một blogger được nhiều người quan tâm trong lĩnh vực khoa học dữ liệu, chia sẻ góc nhìn và kinh nghiệm với cộng đồng các chuyên gia dữ liệu ngày càng lớn. Hiện tại, tôi tập trung vào sáng tạo và biên tập nội dung, làm việc với các mô hình ngôn ngữ lớn để phát triển nội dung mạnh mẽ và hấp dẫn, giúp doanh nghiệp và cá nhân tận dụng tối đa dữ liệu của mình.
AI hiện đại bắt đầu với các Mô hình Ngôn ngữ Lớn (LLM), tiếp theo là gọi hàm để xuất đầu ra có cấu trúc, rồi đến sự phát triển của tác tử và công cụ, dẫn tới việc ra đời các máy chủ MCP. Hiện nay, trọng tâm là các hệ thống nhiều tác tử. Các công ty đang tìm kiếm giải pháp để xây dựng hệ thống tự động thông minh bằng nhiều công cụ, trong đó AutoGen là nền tảng phổ biến nhất.
Trong hướng dẫn này, chúng ta sẽ khám phá AutoGen, hệ sinh thái của nó, các trường hợp sử dụng và cách dùng từng thành phần trong hệ sinh thái đó. Cần lưu ý rằng AutoGen không chỉ là công cụ điều phối mô hình ngôn ngữ như LangChain; nó còn làm được nhiều hơn thế.
Nếu bạn mới bắt đầu với AI, vui lòng học lộ trình kỹ năng Kiến thức nền tảng về AI trước khi tiếp tục với hướng dẫn này. Bạn cũng có thể tìm hiểu về Agentic AI trong một bài viết riêng.
AutoGen là gì?
AutoGen là một framework mã nguồn mở được thiết kế để tạo các ứng dụng AI nhiều tác tử có thể vận hành bán tự động và hoàn toàn tự động. Nó cung cấp cho nhà phát triển các công cụ để xây dựng hệ thống trong đó nhiều tác tử AI có thể giao tiếp, hợp tác và cùng thực hiện nhiệm vụ.
AutoGen hỗ trợ nhiều trường hợp sử dụng, bao gồm quy trình làm việc tự động, cộng tác nhiều tác tử và giải quyết nhiệm vụ động. Nó cho phép tạo hệ thống mà các tác tử có thể tương tác qua ngôn ngữ tự nhiên, thực thi mã, truy xuất thông tin và thích ứng với quy trình phức tạp.
Hệ sinh thái AutoGen được chia thành bốn thành phần chính:
Nguồn: microsoft/AutoGen
Điểm khác biệt của AutoGen là khả năng:
Tính mở rộng và mô-đun giúp nó trở thành công cụ mạnh mẽ cho nhà phát triển ở nhiều ngành, từ tài chính, y tế đến giáo dục và robot.
Đọc Tìm hiểu Tác tử AI: Tương lai của hệ thống tự trị để biết cách tận dụng tác tử AI cho đổi mới và hiệu quả trong dự án của bạn.
Bắt đầu với hệ sinh thái AutoGen
Trong phần này, chúng ta sẽ khám phá bốn thành phần chính của hệ sinh thái AutoGen bằng cách cài đặt và chạy chúng cục bộ.
1. AutoGen Studio
AutoGen Studio là giao diện low-code giúp bạn nhanh chóng tạo mẫu tác tử AI. Nó cung cấp giao diện kéo-thả thân thiện để tạo hệ thống nhiều tác tử và kiểm thử theo thời gian thực.
1. Để cài đặt Studio, dùng lệnh pip.
2. Sau khi cài, bạn có thể khởi chạy giao diện AutoGen Studio bằng cách chỉ định cổng và thư mục ứng dụng nơi lưu toàn bộ tác tử và mẫu.
Sau khi chạy lệnh, bạn sẽ thấy đầu ra sau trong terminal:
3. Truy cập http://127.0.0.1:8080 trên trình duyệt để vào bảng điều khiển AutoGen Studio.
Khi ứng dụng chạy, bạn sẽ được chào đón bằng giao diện sạch và trực quan.
AutoGen Studio cung cấp một số tính năng chính giúp bạn xây dựng và quản lý quy trình nhiều tác tử:
AutoGen Studio là ứng dụng low-code, nghĩa là cho phép bạn xây dựng quy trình với rất ít mã. Tuy vậy, nó cũng linh hoạt để tùy biến tác tử và quy trình bằng mã Python.
2. AutoGen AgentChat
AgentChat là framework cấp cao để tạo quy trình hội thoại nhiều tác tử. Nó đơn giản hóa việc xây dựng ứng dụng trong đó nhiều tác tử (AI, công cụ hoặc con người) hợp tác giải quyết nhiệm vụ.
Trước tiên, cài đặt các gói cần thiết:
Tiếp theo, chúng ta sẽ thiết lập ba tác tử—một người dùng, một coder và một trình thực thi mã—cùng cộng tác trong nhóm trò chuyện luân phiên để tạo, thực thi và tường thuật mã Python. Hệ thống được thiết kế để hỗ trợ tạo và chạy mã động, đồng thời cho phép tương tác của con người và điều kiện kết thúc.
Trong ví dụ này, chúng ta dùng mô hình
gpt-4.1-miniđể sinh mã,CodeExecutorAgentđể thực thi mã dòng lệnh, vàUserProxyAgentđể giữ con người trong vòng lặp.Lưu đoạn mã trên vào tệp
chat_app.pyvà chạy bằng:Chúng ta đã yêu cầu ứng dụng Tác tử tạo mã để in các ngôi sao theo hình tam giác, rồi thực thi mã.
Hệ thống đã tạo mã và thực thi thành công, đồng thời đưa ra các tùy chọn bổ sung. Người dùng có thể nhập “exit” để thoát hoặc đặt câu hỏi tiếp theo để tiếp tục hội thoại.
Đầu ra:
3. AutoGen Core
AutoGen Core là framework cấp thấp cung cấp cách mạnh mẽ để tạo và quản lý hệ thống nhiều tác tử.
Trong ví dụ này, chúng ta sẽ tạo hai tác tử: Echo Agent đảo ngược nội dung thông điệp và Printer Agent in nội dung thông điệp ra console.
Các thành phần dùng trong ứng dụng này:
Textlà cấu trúc dữ liệu đơn giản lưu nội dung thông điệp.Echođảo ngược nội dung mọi thông điệp nhận được và phát thông điệp đã đảo ngược lên chủ đề mặc định bằngpublish_message.Printerlắng nghe thông điệp và in nội dung của chúng ra console.SingleThreadedAgentRuntimeđược dùng để quản lý vòng đời tác tử và định tuyến thông điệp.Lưu mã vào tệp
core_app.pyvà chạy bằng:Luồng thông điệp:
Đầu ra:
4. AutoGen Extensions
Framework AutoGen Extensions cung cấp các tiện ích mở rộng từ bên thứ nhất và bên thứ ba để mở rộng khả năng của framework.
Trong ví dụ này, chúng ta sẽ minh họa cách dùng tác tử
MultimodalWebSurfercó thể tương tác với trang web, thực hiện tìm kiếm và trích xuất thông tin.Trước khi chạy ví dụ, hãy đảm bảo bạn đã cài đặt
Playwright:Cách thức hoạt động của mã:
MultimodalWebSurfersử dụng mô hìnhgpt-4.1-minicủa OpenAI để ra quyết định và một trình duyệt (qua Playwright) để tương tác web.RoundRobinGroupChatđể quản lý quy trình và giới hạn nhiệm vụ trong 3 lượt.Lưu mã vào tệp
web_ext_app.pyvà chạy bằng:Khi bạn chạy ứng dụng, tương tác sau sẽ diễn ra:
Tương tự AutoGen, CrewAI cũng là một framework được yêu thích để xây dựng quy trình tác tử. Hãy theo dõi hướng dẫn CrewAI: Hướng dẫn với ví dụ về hệ thống đa tác tử AI để tìm hiểu thêm.
Trường hợp sử dụng AutoGen
AutoGen mở ra vô số khả năng để tạo hệ thống thông minh nhiều tác tử. Dưới đây là một số trường hợp sử dụng nổi bật của hệ sinh thái AutoGen:
Kết luận
Không phải ngẫu nhiên AutoGen thu hút nhiều sự chú ý và ghi dấu là một trong những framework Agentic được gắn sao nhiều nhất trên GitHub.
Đây là framework toàn diện phục vụ mọi đối tượng, từ nhà phát triển chuyên nghiệp đến lập trình viên thông thường, thậm chí cả những người chưa từng viết mã.
Với AutoGen, bạn có thể nhanh chóng tạo mẫu quy trình bằng AutoGen Studio, xây dựng ứng dụng vững chắc với Core và Extensions, rồi triển khai liền mạch lên đám mây. Đó thực sự là giải pháp tất cả-trong-một để tạo và quản lý hệ thống thông minh nhiều tác tử.
Hãy tham gia khóa Xây dựng Tác tử LangChain động và học cách xây dựng ứng dụng tác tử AI đầu tiên của bạn bằng framework LLM phổ biến.