Featured image of post AI Agents & Hệ thống Đa tác nhân: Mô hình tư duy 'Công ty Robot'

AI Agents & Hệ thống Đa tác nhân: Mô hình tư duy 'Công ty Robot'

Sự khác biệt giữa ChatGPT và AI Agent là gì? Hướng dẫn chuyên sâu về tool calling, LangGraph và tại sao multi-agent là kiến trúc của 2026.

ChatGPT trả lời câu hỏi.

AI Agent thực hiện hành động.

Sự khác biệt là khoảng cách giữa “nói cho tôi biết cách đặt vé máy bay” và “thực sự đặt vé máy bay cho bạn.” Đây là sự thay đổi kiến trúc quan trọng nhất trong phần mềm kể từ microservices.

Đây là Hướng dẫn chuyên sâu về AI Agent — từ gọi công cụ đơn lẻ đến điều phối đa tác nhân với LangGraph.


Phần 1: Nền tảng (Mô hình tư duy)

LLM = Cố vấn Thông minh

LLM đơn thuần là người bạn xuất sắc có thể tư vấn mọi thứ. Nhưng họ chỉ có thể nói chuyện. Họ không thể truy cập email, gọi ngân hàng hay cập nhật lịch của bạn. Họ không có công cụ.

AI Agent = Nhân viên Thông minh

Agent là LLM được trao Công cụ (Tools) và khả năng quyết định khi nào và cách sử dụng chúng.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
User: "Đặt cho tôi cuộc họp với Sarah thứ Ba tuần này lúc 3 giờ."
[LLM Suy nghĩ]: "Tôi cần kiểm tra lịch của Sarah trước."
         ▼ (Tool Call)
[Tool: get_calendar("[email protected]", "thứ Ba này")]
         │ Trả về: "Sarah rảnh từ 2-4 giờ chiều."
[LLM Suy nghĩ]: "Tốt, tôi sẽ đặt slot 1 tiếng lúc 3 giờ."
         ▼ (Tool Call)
[Tool: create_event("Họp với Sarah", "Thứ Ba 3pm", attendees=[...])]
         │ Trả về: "Event đã tạo. Thư mời đã gửi."
Agent: "Xong! Cuộc họp đã được đặt vào thứ Ba lúc 3 giờ chiều."

LLM là bộ não. Công cụ là đôi tay.

Multi-Agent = Công ty

Một agent đơn xử lý một chuyên môn. Hệ thống đa tác nhân là một công ty gồm những nhân viên chuyên nghiệp:

  • Orchestrator Agent: Giám đốc. Chia nhỏ task phức tạp và phân công cho chuyên gia.
  • Researcher Agent: Tìm kiếm web, đọc tài liệu.
  • Coder Agent: Viết và thực thi code.
  • Critic Agent: Review kết quả và đánh flag lỗi.

Phần 2: Điều tra (Vòng lặp ReAct)

Mọi agent đều chạy trên một vòng lặp cốt lõi gọi là ReAct (Reason + Act):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
SUY NGHĨ: "Tôi cần làm gì?"
HÀNH ĐỘNG: Gọi một công cụ
QUAN SÁT: Xem kết quả của công cụ
SUY NGHĨ: "Tôi vừa biết gì? Tiếp theo là gì?"
(lặp lại cho đến khi hoàn thành hoặc bỏ cuộc)
CÂU TRẢ LỜI CUỐI CÙNG

Tool Calling (OpenAI API)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
from openai import OpenAI
import json

client = OpenAI()

# Định nghĩa công cụ mà agent có thể dùng
tools = [
    {
        "type": "function",
        "function": {
            "name": "get_weather",
            "description": "Lấy thời tiết hiện tại cho một thành phố",
            "parameters": {
                "type": "object",
                "properties": {
                    "city": {"type": "string", "description": "Tên thành phố"}
                },
                "required": ["city"]
            }
        }
    }
]

def get_weather(city: str) -> str:
    return f"Nắng, 28°C tại {city}"

messages = [{"role": "user", "content": "Thời tiết Hà Nội như thế nào?"}]

# Lần gọi đầu: LLM quyết định dùng tool
response = client.chat.completions.create(
    model="gpt-4o",
    messages=messages,
    tools=tools
)

# Thực thi tool
tool_call = response.choices[0].message.tool_calls[0]
result = get_weather(**json.loads(tool_call.function.arguments))

# Đưa kết quả về LLM cho câu trả lời cuối
messages.append(response.choices[0].message)
messages.append({"role": "tool", "tool_call_id": tool_call.id, "content": result})

final = client.chat.completions.create(model="gpt-4o", messages=messages)
print(final.choices[0].message.content)
# "Thời tiết tại Hà Nội hiện đang nắng, 28°C."

Phần 3: Chẩn đoán (Agent thất bại như thế nào?)

Vấn đềTriệu chứngCách sửa
Vòng lặp vô tậnAgent cứ gọi tool mà không kết thúcĐặt max_iterations=10. Phát hiện tool call lặp lại.
Tool HallucinationAgent gọi tool với tham số bịaDùng JSON schema validation nghiêm ngặt cho input.
Tràn Context WindowTask dài lấp đầy cửa sổ contextImplement tầng “memory”. Tóm tắt các bước cũ.
Lỗi CascadingMột agent lỗi; cả pipeline chếtXử lý lỗi per agent. Retry với backoff.
Output không nhất quánAgent cho format khác nhau mỗi lầnDùng structured output (response_format={"type": "json_object"}).

Phần 4: Giải pháp (LangGraph cho Multi-Agent)

LangGraph là framework sẵn sàng production nhất để xây dựng workflow đa tác nhân có trạng thái.

Khái niệm chính: định nghĩa agent là các node trong một đồ thị. Kiểm soát luồng bằng cạnh (edge).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
from langgraph.graph import START, END, StateGraph
from typing import TypedDict, Annotated
import operator

# Định nghĩa state chung giữa các agent
class AgentState(TypedDict):
    messages: Annotated[list, operator.add]
    task: str
    result: str

def research_agent(state: AgentState) -> AgentState:
    """Tìm kiếm web và trả về kết quả nghiên cứu."""
    return {"messages": [ket_qua_nghien_cuu]}

def writer_agent(state: AgentState) -> AgentState:
    """Lấy kết quả nghiên cứu và viết báo cáo."""
    return {"messages": [bao_cao], "result": bao_cao}

def should_continue(state: AgentState) -> str:
    if not state.get("result"):
        return "writer"
    return END

# Xây dựng đồ thị
workflow = StateGraph(AgentState)
workflow.add_node("researcher", research_agent)
workflow.add_node("writer", writer_agent)

workflow.add_edge(START, "researcher")
workflow.add_conditional_edges("researcher", should_continue)
workflow.add_edge("writer", END)

app = workflow.compile()
result = app.invoke({"task": "Viết báo cáo về xu hướng AI năm 2026"})

Mô hình tư duy chốt hạ

1
2
3
4
5
6
7
LLM         -> Bộ não Thông minh. Biết lý luận, nhưng không thể hành động.
Tool        -> Đôi tay. API, truy vấn DB, thực thi code, tìm kiếm web.
Agent       -> Não + Tay. Có thể suy nghĩ và hành động trong vòng lặp.
Multi-Agent -> Công ty. Những bộ não chuyên biệt làm việc song song.

Vòng lặp ReAct -> Suy nghĩ → Hành động → Quan sát → Lặp lại.
LangGraph      -> Phần mềm sơ đồ tổ chức cho công ty AI của bạn.

Sự chuyển dịch của 2026: Từ “chatbot trả lời” sang “agent thực hiện.” Nếu sản phẩm AI của bạn chỉ tạo ra văn bản, bạn đã tụt hậu. Tương lai là AI thực thi.

Được tạo với sự lười biếng tình yêu 🦥

Subscribe to My Newsletter