Docker Desktop 4.43: Đưa AI Agent lên mây với Docker Compose và Docker Offload!
Lê Lân
1
Docker Compose và Docker Offload: Cách Mạng Hóa Việc Triển Khai AI Agent và Mô Hình Trí Tuệ Nhân Tạo
Mở Đầu
Việc phát triển và triển khai các mô hình AI, các agent và công cụ MCP giờ đây trở nên đơn giản và hiệu quả hơn bao giờ hết nhờ vào Docker Desktop 4.43 và Docker Offload.
Với phiên bản Docker Desktop 4.43 ra mắt ngày July 3, 2025, người dùng có thể khai báo các mô hình AI, các agent và công cụ MCP trong cùng một tệp compose.yaml, và khởi chạy chúng chỉ với một lệnh duy nhất: docker compose up. Hơn nữa, bản beta của Docker Offload cho phép chuyển dự án Compose trực tiếp lên đám mây sử dụng GPU NVIDIA L4, mở ra cơ hội chạy các mô hình quy mô lớn ngay cả trên những laptop có cấu hình vừa phải.
Bài viết này sẽ hướng dẫn chi tiết cách sử dụng mẫu hệ thống A2A Multi-Agent Fact Checker chính thức từ docker/compose-for-agents hoàn toàn bằng Docker Compose, đồng thời minh họa cách chuyển tải workload lên đám mây thông qua Docker Offload.
Tổng Quan Mẫu A2A Multi-Agent Fact Checker
Giới Thiệu Hệ Thống
A2A Multi-Agent Fact Checker là một hệ thống đa agent được xây dựng trên Google’s Agent Development Kit (ADK) và giao thức A2A. Hệ thống bao gồm ba agent với vai trò riêng biệt phối hợp giúp kiểm tra tính xác thực của các tuyên bố người dùng nhập.
Các Agent và Vai Trò
Auditor (Người giám sát): Phân tích yêu cầu của người dùng thành các nhiệm vụ nhỏ, phân phối cho Critic và Reviser, tổng hợp và trả kết quả cuối cùng qua giao diện.
Critic (Người phê bình): Thực hiện tìm kiếm trên web, sử dụng DuckDuckGo MCP tool để thu thập bằng chứng hỗ trợ.
Reviser (Người chỉnh sửa): Hoàn thiện và xác minh kết quả dựa trên thông tin do Critic cung cấp và bản thảo sơ bộ từ Auditor.
Kiến Trúc Giao Tiếp
Critic giao tiếp với thế giới bên ngoài thông qua MCP Gateway.
Mô hình suy luận (được sử dụng là Gemma 3 4B-Q4) được quản lý và phục vụ qua Docker Model Runner.
Cấu Hình compose.yaml: Điểm Nổi Bật
Định Nghĩa Các Service
services:
auditor-agent-a2a:
build:
target:auditor-agent
ports:
-"8080:8080"
environment:
-CRITIC_AGENT_URL=http://critic-agent-a2a:8001
-REVISER_AGENT_URL=http://reviser-agent-a2a:8001
depends_on:
-critic-agent-a2a
-reviser-agent-a2a
models:
agents:
endpoint_var:MODEL_RUNNER_URL
model_var:MODEL_RUNNER_MODEL
critic-agent-a2a:
build:
target:critic-agent
environment:
-MCPGATEWAY_ENDPOINT=http://mcp-gateway:8811/sse
depends_on:
-mcp-gateway
models:
gemma3:
endpoint_var:MODEL_RUNNER_URL
model_var:MODEL_RUNNER_MODEL
reviser-agent-a2a:
build:
target:reviser-agent
environment:
-MCPGATEWAY_ENDPOINT=http://mcp-gateway:8811/sse
depends_on:
-mcp-gateway
models:
gemma3:
endpoint_var:MODEL_RUNNER_URL
model_var:MODEL_RUNNER_MODEL
mcp-gateway:
image:docker/mcp-gateway:latest
use_api_socket:true
command:
---transport=sse
---servers=duckduckgo
---interceptor
-after:exec:echoRESPONSE=$(cat)>&2
models:
gemma3:
model:ai/gemma3:4B-Q4_0
context_size:10000
Giải Thích Các Thành Phần Quan Trọng
depends_on: Đảm bảo thứ tự khởi động các service, tránh phải xử lý retry phức tạp.
models: Khai báo mô hình LLM dưới dạng OCI Artifact, Docker Model Runner tự động kéo về và trình diễn API.
Biến môi trường (MODEL_RUNNER_URL, MODEL_RUNNER_MODEL) giúp service truy cập mô hình mà không cần hardcode thông tin.
Việc khai báo các model ở cấp độ hàng đầu và kết hợp môi trường biến giúp tăng khả năng tái sử dụng và quản lý dự án, đồng thời đơn giản hóa việc cấu hình các service khác nhau trong hệ thống.
Triển Khai và Sử Dụng
Chạy Ứng Dụng Cục Bộ
Sau khi chuẩn bị compose.yaml, bạn có thể build và khởi chạy toàn bộ hệ thống với lệnh:
docker compose up --build
Mô hình Gemma 3 4B-Q4 đã được lượng tử hóa, giúp nó có thể chạy hiệu quả trên các máy như MacBook Air M2.
Reviser sẽ chỉnh sửa câu trả lời dựa trên bằng chứng.
Auditor trả kết quả cuối cùng cho người dùng.
Sử Dụng Docker Offload Để Chạy Mô Hình Lớn Trên Đám Mây
Tại Sao Cần Docker Offload?
Với các mô hình quy mô lớn như Gemma 27B Q4, việc chạy trên GPU cục bộ có thể không khả thi với phần cứng phổ thông. Docker Offload cho phép bạn chạy toàn bộ dự án Compose trên đám mây với GPU mạnh mẽ, sử dụng GPU NVIDIA L4.
Kích hoạt Docker Offload và hỗ trợ GPU trong Settings > Beta Features.
Chuyển sang chế độ Offload bằng cách nhấn biểu tượng đám mây hoặc chạy lệnh:
docker offload start
Cấu Hình File compose.offload.yaml
Kế thừa compose.yaml, file override cấu hình mô hình cho Offload:
models:
gemma3:
model:ai/gemma3-qat:27B-Q4_K_M
context_size:10000
Chạy Ứng Dụng Với Offload
Sử dụng kết hợp hai file để chạy trên đám mây:
docker compose -f compose.yaml -f compose.offload.yaml up --build
Docker Offload cung cấp 300 GPU credits miễn phí, sau đó tính phí $0.015 cho mỗi giây sử dụng GPU. Đừng quên tắt dịch vụ khi không cần thiết bằng lệnh:
docker offload stop
Kết Luận
Docker Desktop 4.43 cùng Docker Offload mang đến một bước tiến mới trong việc đơn giản hóa và mở rộng triển khai các hệ thống AI agent và mô hình trí tuệ nhân tạo. Việc tích hợp khai báo agent, công cụ MCP và mô hình trong một tệp compose.yaml giúp người phát triển dễ dàng quản lý và vận hành dự án. Đồng thời, khả năng "offload" lên đám mây với GPU mạnh giúp mở rộng quy mô mô hình một cách linh hoạt và tiết kiệm.
Nếu bạn đang khám phá các luồng công việc (workflow) với agent hoặc đang muốn chạy các mô hình AI quy mô lớn mà không cần phần cứng cao cấp, Docker Offload là một công cụ đáng thử nghiệm. Hãy tận dụng 300 GPU credits miễn phí để trải nghiệm và khám phá tiềm năng của nó ngay hôm nay!