Bài viết

AI Engineering

Tư duy và quy trình xây dựng AI Agent Chatbot thực chiến với LangGraph

Hướng dẫn chi tiết cách xây dựng một AI Agent Chatbot Ecommerce ứng dụng LangChain, LangGraph và RAG từ tư duy hệ thống đến triển khai thực tế.

20/02/2026 · 13 phút đọc · Lê Huy Thái

Điểm chính
  • AI Agent Chatbot là kỹ năng cốt lõi cho Developer trong giai đoạn bùng nổ LLM — một tư duy, nhiều bài toán.
  • Khác với chatbot wrapper đơn giản, AI Agent có khả năng suy luận (Reasoning) và hành động (Action) qua Tools.
  • LangGraph giải quyết vấn đề vòng lặp và đa tác nhân mà LangChain đơn độc khó xử lý.
  • RAG (Retrieval-Augmented Generation) cho phép Agent tra cứu dữ liệu nội bộ theo ngữ nghĩa, không cần viết SQL phức tạp.
  • Quy trình thực chiến gồm 4 giai đoạn: Định hình → Xây nền → Lắp ráp → Tinh chỉnh (tinh chỉnh tốn thời gian nhất).

Đầu tiên mình muốn nói rằng tại sao kiến thức, kỹ năng xây dựng AI Agent Chatbot cho Developer lại quan trọng trong giai đoạn này. Ví dụ có một website ecommerce, muốn tạo Chatbot tư vấn sản phẩm, quản lý đặt hàng, tra cứu vận chuyển. Hoặc có một kho tri thức, nhiều công cụ trong doanh nghiệp, muốn tạo chatbot truy vấn, trả lời thông tin, đặt lịch. Hay có một phần mềm nền tảng nhiều chức năng, muốn có một chatbot mà user chỉ cần chat bằng ngôn ngữ tự nhiên để thao tác tự động.

Tất cả các trường hợp trên bạn đều cần xây dựng AI Agent Chatbot. Cùng một khối kiến thức, tư duy chúng ta có thể đưa ra giải pháp giải quyết được rất nhiều bài toán hiện hữu quanh ta.

Nếu như bạn thắc mắc tại sao phải tự làm AI Agent chatbot mà không dùng trực tiếp Gemini, ChatGPT, Grok,... thì có một vài lý do như sau:

Lý doGiải thích chi tiết
Dữ liệu kínCác AI phổ thông kia không có đầy đủ kiến thức về data/sản phẩm/doanh nghiệp của chúng ta (nếu data không public).
Khả năng hành độngCác AI không có khả năng gọi trực tiếp vào API/service ví dụ API đặt hàng, thì làm sao mà đặt hàng, tìm sản phẩm, đặt lịch... được.
Bảo mật & Tùy biếnDoanh nghiệp cần kiểm soát hoàn toàn dòng dữ liệu và logic xử lý, dễ dàng cải tiến dựa vào business, điều mà các chatbot public khó đáp ứng.

Bài viết này mình sẽ chia sẻ tư duy, quy trình thực tế rút ra trong quá trình học và xây dựng một Ecommerce AI Agent chatbot (sản phẩm thật, đang ở MVP để đi pitch với đối tác). Nếu bạn đang có nhu cầu xây dựng một chatbot AI để giải quyết bài toán khác thì cũng đừng lo, bởi vì tư duy và quy trình sẽ không khác nhau nhiều và có thể dễ dàng áp dụng sang hệ thống khác.

Dự án thực tế

1. Về dự án thực tế của mình

Tại sao có phần này? Mình muốn chia sẻ những việc chatbot làm được cùng với thiết kế hệ thống. Có thể bạn sẽ không hiểu ngay cách thiết kế chi tiết, nhưng phần này đưa ra để các bạn tham khảo cái hệ thống của mình, từ đó dễ dàng ánh xạ giải pháp cho các bài toán tương tự của riêng bạn. Cuối bài sẽ là cách thi triển.

Chatbot này làm được gì?

Chatbot có thể giúp user tìm kiếm, tư vấn, so sánh sản phẩm, đặt hàng, thu thập thông tin giao hàng, tương tác với giỏ hàng. Đại loại là user chỉ cần chat với bot là có thể mua được hàng.

Cấu trúc chính của chatbot Multi-Agent

Hãy tưởng tượng Agent là một "nhân viên" có thể hiểu yêu cầu, trả lời hoặc sử dụng công cụ (ví dụ gọi API đặt hàng). Ở các hệ thống AI Agent phức tạp sẽ có nhiều Agent làm việc cùng nhau (gọi là Sub Agent).

Hệ thống của mình chia làm 3 bộ phận lớn:

  • Supervisor Agent (Bộ não trung tâm): Nó không bán hàng hay tạo đơn. Nhiệm vụ duy nhất của nó là Điều hướng (Routing) tới những Agent khác. Khách hỏi về sản phẩm? → Đá sang Sales Agent. Khách muốn đặt? → Đá sang Order Agent. Khách chat linh tinh? → Đá sang General Agent.
  • Sales Subgraph: Đảm nhiệm tìm kiếm, tư vấn, so sánh sản phẩm, giúp user tìm được sản phẩm mà họ ưng ý nhất.
  • Order Subgraph: Giúp khách đặt hàng, thu thập thông tin giao hàng, check giỏ hàng, gọi API tạo đơn hàng,...
Tư duy nền tảng

2. Phân biệt: Chatbot "gọi API" vs AI Agent

Nếu bạn nghĩ xây dựng Hệ thống AI Agent chỉ là nhận request gửi lên OpenAI rồi trả text về, thì đây là suy nghĩ sai bản chất.

Ưu điểm

AI Agent — Reasoning + Action

  • Tự suy luận bước cần làm tiếp theo
  • Gọi đúng Tool theo ngữ cảnh
  • Tổng hợp kết quả, phản hồi thông minh
  • Xử lý được hội thoại đa lượt phức tạp
Nhược điểm

Chatbot Wrapper — Hỏi-Đáp đơn thuần

  • Gửi câu hỏi thẳng vào API AI
  • Trả về text từ tập data huấn luyện
  • Không biết gọi API nội bộ
  • Không có "bộ nhớ" hành động
Ví dụ thực tế
Agent tư duy như thế nào?

Khi user hỏi: "Kiểm tra giúp tôi đơn hàng #123 đi đâu rồi?"

Agent sẽ tự tư duy theo trình tự:

  1. "User đang hỏi về vận chuyển"
  2. "Mình cần dùng công cụ tra cứu đơn hàng"
  3. "Gọi API tra cứu với ID 123"
  4. "Có kết quả rồi, giờ mình tổng hợp lại trả lời user"

Đây chính là sự khác biệt giữa suy luận (Reasoning) và hành động (Action) — bản chất của một AI Agent thực sự.

Framework & Công cụ

3. LangChain & LangGraph: Vũ khí tối thượng

Tuy bạn có thể tự code mọi module, nhưng khi làm dự án thực chiến chúng ta cần sử dụng các Framework/bộ công cụ đã được đóng gói chuẩn, giúp tăng tốc phát triển, code gọn gàng, và hạn chế lỗi.

Hãy tưởng tượng LLM (GPT-4 hay Gemini) là bộ não cực thông minh nhưng rỗng tuếch và nhốt trong phòng kín. Nó không biết dữ liệu hệ thống của bạn, không biết duyệt web.

LangChain làm "cầu nối". Nó cung cấp:

  • Prompt Templates: Xây dựng cấu trúc lời điều này và ngữ cảnh chuyên nghiệp.
  • Retrieval (RAG): Giúp AI đọc database/file của bạn để trả lời.
  • Tools/Plugins: Cho phép AI tự dùng Search, tính toán, gọi API.
  • Chains (Xâu chuỗi): Nhận câu hỏi → Tìm tài liệu → Gửi cho AI cùng bộ công cụ → Tổng hợp trình bày kết quả.
Thiết kế hệ thống

4. Tư duy thiết kế Graph

Đây là bước quan trọng nhất. Đừng mở IDE ra và code vội. Mở Excalidraw hoặc giấy bút để thiết kế sơ đồ trước.

  • Single Agent: Phù hợp tác vụ cực kì đơn giản như hỏi đáp về chính sách dựa trên tài liệu.
  • Multi-Agent / Sub-graph: Phù hợp cho app doanh nghiệp. Có tổ trưởng (Supervisor), nhân viên chốt sale (Sales Agent), nhân viên đơn từ (Order Agent).
RAG & Tools

5. RAG: Cách AI Agent liên kết database

Làm sao Agent tìm đúng sản phẩm khi khách gõ "Bên shop có ngô ngọt không?" — Thay vì bóc tách text sang query SQL khó trúng, ta dùng RAG (Retrieval-Augmented Generation) để search/query theo ngữ nghĩa của văn bản.

  1. 01
    Chuyển ngữ nghĩa database sang ngôn ngữ tự nhiên

    Thay vì nhét JSON: { sku: "123", name: "Ngô ngọt", price: 10k }, chuyển sang:

    "Sản phẩm sku 123, tên là Ngô ngọt, có giá 10 ngàn đồng"

    Dữ liệu ngôn ngữ tự nhiên cho phép model hiểu ngữ cảnh thay vì chỉ matching chuỗi ký tự.

  2. 02
    Chunking — Chia nhỏ khối văn bản

    Document dài cần được chia nhỏ. Ví dụ: "tôi muốn mua ngô" sẽ rất match với đoạn "ngô ngọt 10k" hơn là một text dài loằng ngoằng cả nghìn chữ. Để 1 chunk chứa text đầy đủ thì bao gồm tên, mô tả cơ bản và giá.

  3. 03
    Embeddings — Vector hóa

    Đưa các đoạn chunk vào Model Embedding để biến thành array số thập phân (vector) và ghim vào Vector DB (ví dụ pgvector).

  4. 04
    Semantic Search khi query

    Khi khách cần tìm kiếm: nhập câu → Vector hóa câu của khách → Query các sản phẩm có vector gần nhất → Dịch data lấy được lên context cho Agent đưa ra phản hồi.

6. Tools: "Chân tay" cho nhân viên AI

Để AI không chỉ dừng lại tại ngôn ngữ, ta cung cấp Tools. Tools thực chất là 1 hàm Javascript/Typescript do bạn viết sẵn kèm tài liệu mô tả để Agent đưa ra quyết định khi nào nên chạy hàm này.

Ví dụ: Bạn viết hàm queryProductInfo(name) kèm mô tả "Dùng để tìm sản phẩm bằng tên", hay createOrder(items, address) — "Dùng khi user xác nhận chốt đơn". Test riêng hàm trước cho chạy chuẩn sau đó mới đưa vào cho AI dùng.

Prompt & Debug

7. Prompt Engineering & Tracing

Mỗi tương tác từ Agent là một mảnh Prompt để hướng dẫn model: "Hãy đóng vai nhân viên kiểm kho...". Bước này tốn cực kỳ nhiều thời gian. Không có 1 prompt nào hoạt động hoàn hảo 100% trong lần đầu nên phải lặp lại vòng lặp:

Sửa đổi → Test → Sửa đổi → Test → ...

Không có đường tắt cho bước này. Kiên nhẫn và quan sát trace là chìa khóa.

Quy trình xây dựng

8. Quy trình xây dựng theo thời gian

Đây là 4 giai đoạn cốt lõi theo kinh nghiệm cá nhân:

  1. 01
    Định hình
    • Xác định Agent làm gì (Sales, Order,...).
    • Liệt kê tools cần thiết (search_product, create_order,...).
    • Vẽ luồng thao tác trên Excalidraw hoặc giấy bút.
  2. 02
    Xây nền móng
    • Setup project (NestJS, Postgres, LangChain, LangGraph,...).
    • Viết test hàm tools.
    • Xây dựng RAG và Vector DB.
  3. 03
    Lắp ráp Agent
    • Viết code luồng theo Graph thiết kế ở bước Định hình, móc nối LangGraph Node.
    • Thêm prompts.
    • Run cơ bản để xác nhận luồng hoạt động.
  4. 04
    Tinh chỉnh (lâu nhất)
    • Test thủ công kết hợp Trace bằng Langfuse/Langsmith.
    • Viết lại Prompt, fix State rò rỉ hoặc thiếu Context.
    • Optimize quy trình cho đến khi ổn định.

Kết luận

AI phát triển thay đổi sâu sắc diện mạo lập trình viên. Ngoài những ảnh hưởng khó khăn, AI sinh ra nhu cầu về người có khả năng xây dựng các hệ sinh thái LLM cho doanh nghiệp.

Trước đây, lập trình viên tạo ra công cụ (Tools). Bây giờ chúng ta bước sang giai đoạn tạo ra "nhân viên ảo" (Agents) và dạy cho chúng biết cách sử dụng các công cụ đó. Tận dụng tư duy logic nền tảng, học thêm mindset Prompt/Graph, và bạn hoàn toàn có thể bắt lấy "cơn cuồng phong" mạnh mẽ này!

Bạn đang xây AI Agent cho bài toán của mình?

Dù là Ecommerce, kho tri thức doanh nghiệp, hay phần mềm nhiều chức năng — tư duy và quy trình trong bài viết này đều có thể áp dụng. Nếu bạn cần đồng hành từ thiết kế Graph đến triển khai thực chiến, hãy kết nối với chúng mình.