1. Giới thiệu

Lần cập nhật gần đây nhất: Ngày 22 tháng 6 năm 2026
Xây dựng một công ty du lịch đơn giản bằng ADK
Chào mừng bạn đến với hội thảo Python(*) về ADK này. Hội thảo này có đầy đủ mọi thứ bạn cần nhờ Gemini CLI!
Lớp học lập trình này được chia thành hai 🏅 mốc quan trọng:
- Một lộ trình học tập đơn giản và phổ biến: thiết lập + nhận được kết quả ngay lập tức.
- Một lộ trình được cá nhân hoá, trong đó bạn chọn một nhiệm vụ để giải quyết với sự hỗ trợ của Gemini CLI
Phần thứ hai giúp lớp học lập trình này trở nên hoàn hảo cho một sự kiện hackathon (và phần thưởng cho những giải pháp sáng tạo nhất!)
Cột mốc 1: Tác nhân đầu tiên của bạn với ADK và Gemini CLI
Mục tiêu của mốc quan trọng này là từng bước xây dựng một công ty du lịch đơn giản bằng ADK. Để làm việc này, trước tiên, chúng ta cần thiết lập Gemini CLI để công cụ này giúp chúng ta lập trình bằng ADK. Nhờ đó, shell cục bộ của bạn có thể chọn phiên bản Python ADK mới nhất, hiểu rõ mã và tài liệu, đồng thời cung cấp mã mới nhất/tốt nhất để làm việc với ADK nhằm đạt được mục tiêu của bạn.
Đây là phần hướng dẫn từng bước để chúng ta có được một ứng dụng hoạt động đầy đủ thông qua các bước nhỏ và đơn giản. Quá trình này thường mất khoảng một giờ (cộng với thời gian cài đặt).
Cột mốc 2: Mở rộng tác nhân
Sau đó, chúng tôi sẽ cung cấp cho bạn một số lựa chọn (với độ khó khác nhau) để mở rộng ứng dụng theo ý muốn. Nhờ đó, bạn có thể khám phá nhiều khía cạnh (giao diện người dùng, hoạt động, tương tác phức tạp của tác nhân, v.v.)
Sản phẩm bạn sẽ tạo ra
Trong lớp học lập trình này, bạn sẽ xây dựng một ứng dụng công ty du lịch bằng ADK và Gemini CLI. Ứng dụng này sẽ:
- Kết nối với API của Airbnb thông qua MCP của Airbnb.
- Tìm kiếm trên mạng để biết thông tin mới nhất (thời tiết, ngày, ..)
- Thực thi các công cụ tuỳ chỉnh.
- Tạo hình ảnh về căn hộ/phòng bằng NanoBanana.
Gemini CLI sẽ hướng dẫn bạn thực hiện tất cả những việc này: viết/xem lại mã và tìm tài liệu mới nhất trong bản sao cục bộ của kho lưu trữ ADK (bằng Python hoặc ngôn ngữ bạn yêu thích).
Kiến thức bạn sẽ học được
- Cách tạo ứng dụng bằng ADK
- Cách dùng Gemini CLI để lập trình ứng dụng dựa trên tài liệu cục bộ!
- Cách tương tác với máy chủ MCP để kết nối với các nguồn dữ liệu bên ngoài theo thời gian thực, như sau:
Bạn cần có
- Máy tính cho phép bạn cài đặt các gói (ví dụ:
npm install ..) - Có khả năng lập trình cơ bản bằng Python, TypeScript, Go hoặc Java.
- Bạn nên sử dụng một IDE (Antigravity, vscode, IntelliJ, vim).
Tại sao nên dùng ADK + Gemini CLI?
Một số bạn có thể thắc mắc: Tại sao tôi cần sử dụng ADK (SDK trình tạo tác nhân) kết hợp với trình trợ giúp mã tác nhân cục bộ (như Gemini CLI)? Lý do là cả hai công cụ đều cực kỳ mạnh mẽ, nhưng việc tương tác giữa chúng không hề đơn giản; nhiều người đã cố gắng kết hợp cả hai và thất bại (chủ yếu là do vấn đề "vòng lặp trong vòng lặp"). Lớp học lập trình này sẽ chia sẻ một số mẹo về cách giúp hai ngôn ngữ này cùng tồn tại.
2. Thiết lập
Chọn một trong các lựa chọn sau: Tự thiết lập môi trường nếu bạn muốn chạy lớp học lập trình này trên máy của riêng mình hoặc Bắt đầu Cloud Shell nếu bạn muốn chạy lớp học lập trình này hoàn toàn trên đám mây.
Thiết lập môi trường tự học
- Đăng nhập vào Google Cloud Console rồi tạo một dự án mới hoặc sử dụng lại một dự án hiện có. Nếu chưa có tài khoản Gmail hoặc Google Workspace, bạn phải tạo một tài khoản.



- Tên dự án là tên hiển thị cho những người tham gia dự án này. Đây là một chuỗi ký tự không được các API của Google sử dụng. Bạn có thể cập nhật thông tin này bất cứ lúc nào.
- Mã dự án là duy nhất trong tất cả các dự án trên Google Cloud và không thể thay đổi (không thể thay đổi sau khi đã đặt). Cloud Console tự động tạo một chuỗi duy nhất; thường thì bạn không cần quan tâm chuỗi đó là gì. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham chiếu Mã dự án (thường được xác định là
PROJECT_ID). Nếu không thích mã được tạo, bạn có thể tạo một mã ngẫu nhiên khác. Ngoài ra, bạn có thể thử tên người dùng của riêng mình và xem tên đó có sẵn hay không. Bạn không thể thay đổi thông tin này sau bước này và thông tin này sẽ được giữ nguyên trong suốt thời gian diễn ra dự án. - Để bạn biết, có một giá trị thứ ba là Số dự án mà một số API sử dụng. Tìm hiểu thêm về cả ba giá trị này trong tài liệu.
- Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên/API của Cloud. Việc chạy qua lớp học lập trình này sẽ không tốn nhiều chi phí, nếu có. Để tắt các tài nguyên nhằm tránh phát sinh phí ngoài hướng dẫn này, bạn có thể xoá các tài nguyên đã tạo hoặc xoá dự án. Người dùng mới của Google Cloud đủ điều kiện tham gia chương trình Dùng thử miễn phí trị giá 300 USD.
Bắt đầu Cloud Shell
Mặc dù có thể vận hành Google Cloud từ xa bằng máy tính xách tay, nhưng trong lớp học lập trình này, bạn sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trên Cloud.
Trong Google Cloud Console, hãy nhấp vào biểu tượng Cloud Shell trên thanh công cụ trên cùng bên phải:

Quá trình cấp phép và kết nối với môi trường chỉ mất vài phút. Khi quá trình này hoàn tất, bạn sẽ thấy kết quả như sau:

Máy ảo này được trang bị tất cả công cụ cho nhà phát triển mà bạn cần. Cloud Shell cung cấp thư mục gốc 5 GB cố định và chạy trên Google Cloud, giúp cải thiện đáng kể hiệu suất mạng và khả năng xác thực. Bạn có thể thực hiện tất cả công việc trong lớp học lập trình này bằng trình duyệt. Bạn không cần cài đặt gì cả.
3. Điều kiện tiên quyết (Cài đặt)
Đối với hướng dẫn này, bạn cần cài đặt:
1. Python và uv
python và uv (trình quản lý gói cho Python). Đây là điều kiện cần thiết cho ADK. Đảm bảo bạn đã cài đặt uv:
$ curl -LsSf https://astral.sh/uv/install.sh | sh
Tại sao nên dùng uv? Mặc dù bạn có thể sử dụng bất kỳ trình quản lý Python nào mình muốn, nhưng việc sử dụng uv sẽ đảm bảo chế độ thiết lập ENV/PATH cho Python sẽ giống nhau cho bạn và cho Gemini CLI, vì vậy, trải nghiệm shell của bạn sẽ gần giống với trải nghiệm của Gemini CLI. Ví dụ: nếu bạn sử dụng virtualenv, Gemini CLI sẽ buộc phải thực hiện những việc như "source .env/venv/bin/activate && my-original-command" để mô phỏng môi trường của bạn.
2. Gemini CLI
Đối với gemini CLI, hãy xem hướng dẫn cài đặt tại đây: https://github.com/google-gemini/gemini-cli .
# Note: This requires having npm or npx installed. npm install -g @google/gemini-cli
- Trên Mac, bạn có thể sử dụng
brewtheo tài liệu chính thức. - Trên Windows, bạn có thể sử dụng
chocolateyhoặc chỉ cần tải tệp thực thi xuống từ https://nodejs.org/en/download
Đối với bước 4 (sau này), bạn cũng cần cài đặt npx. Cả npm và npx đều là những tính năng tự nhiên của Gemini CLI. Nếu không, hãy yêu cầu Gemini CLI trợ giúp bạn tại đây.

Xác thực
Bạn cần có một dự án trên Google Cloud đã bật Vertex AI hoặc một khoá API của Google AI Studio.
Cách A (Nên dùng cho Hội thảo): Xuất khoá API:
export GOOGLE_API_KEY="your-api-key"
Cách B (Vertex AI): Xác thực bằng gcloud:
export GOOGLE_CLOUD_PROJECT="YOUR_PROJECT_ID" export GOOGLE_CLOUD_LOCATION="YOUR_PROJECT_LOCATION" export GOOGLE_GENAI_USE_VERTEXAI=true gcloud auth application-default login
Thiết lập môi trường làm việc
Bạn sẽ tạo giải pháp của RIÊNG mình trong mysolution/, vì vậy, hãy tạo thư mục và hai tệp mà chúng ta cần.
Đây là lúc bạn có thể mở IDE (Visual Studio Code, IntelliJ, RubyMine, v.v.) và mở thư mục.
# 1. Find an empty directory, and download this repo. git clone https://github.com/palladius/adk-gemini-cli-workshop cd adk-gemini-cli-workshop/ # 2. Create your solution empty skeleton mkdir -p mysolution/ touch mysolution/__init__.py mysolution/agent.py # 3. This installs ADK and MCP via `uv` by reading pyproject.toml uv init uv sync # 4. Call Gemini CLI gemini # This runs Gemini CLI under the adk-gemini-cli-workshop/ folder. # Login with your GMail account.
Bạn không nhất thiết phải đồng bộ hoá uv, nhưng nếu không đồng bộ hoá được, bạn cần phải khắc phục lỗi cài đặt Python hoặc uv. Thao tác này sẽ cài đặt adk và các tập lệnh hữu ích khác vào thư mục ./.venv/bin/.
Để kiểm tra chế độ thiết lập, bạn chỉ cần chạy make test-step1 và kiểm tra để đảm bảo rằng bạn không nhận được 403 PERMISSION DENIED.
Giải pháp hiện có
Tất cả mã đều nằm trong 📂 steps/. Bạn có thể sao chép mã từ đó.
Lớp học lập trình này không hướng dẫn cách viết mã ADK hiệu quả, mà hướng dẫn cách thiết lập môi trường để tự động viết mã HIỆU QUẢ theo hướng dẫn của bạn.
- Cài đặt phần mềm
- định cấu hình/làm cho nó hoạt động và
- bước vào một Vòng hồi tiếp chính đáng
Đây là điều chúng tôi thực sự muốn bạn học được ở đây. Bạn cũng có thể thử nghiệm tất cả các biến thể cùng lúc thông qua $ make web-4steps!
4. Bước 1: Tác nhân cơ bản

Hãy bắt đầu bằng cách tạo một tác nhân cơ bản có thể trò chuyện.
Chỉnh sửa tệp có tên mysolution/__init__.py bằng cách thêm nội dung sau:
from .agent import root_agent
Chỉ đơn giản vậy thôi! Điều này cho phép ADK biết mã của bạn nằm ở đâu: trong agent.py.
Chỉnh sửa tệp có tên mysolution/agent.py bằng cách thêm nội dung sau:
from google.adk.agents import Agent
root_agent = Agent(
name="travel_basic",
model="gemini-2.5-flash",
instruction="You are a helpful travel assistant." +
"You can help with general travel advice based on your knowledge.",
)
Kiểm thử tác nhân
Điều này đúng với tất cả các bước. ADK cho phép bạn kiểm thử nhân viên hỗ trợ theo hai cách: CLI và Web.
- CLI phù hợp nhất cho các quy trình kiểm thử nhanh và tự động
- Web là nền tảng phù hợp nhất để xem trực quan những gì đang diễn ra, sử dụng micrô (!) và khắc phục sự cố.
Mẹo: để thực hiện bài tập này, bạn cần sử dụng Web để hoàn thành mọi việc (ngoại trừ kiểm thử đơn vị). Thật tuyệt vời! Chỉ sử dụng CLI cho kiểm thử tự động.
Một câu lệnh tốt để kiểm tra đúng các bước 1-2-3-4 có thể là (câu lệnh "giấy quỳ" thông minh):
Chào bạn, tôi muốn đặt một phòng khách sạn cho một người ở trung tâm thành phố Paris vào tối mai, trong một đêm. Lý tưởng nhất là gần Gare de Lyon. Ngân sách: dưới 200 EUR/đêm.
- Cho tôi biết ngày mai là ngày nào (theo định dạng YYYYMMDD) và thứ mấy.
- Cho tôi biết bạn thấy khách sạn nào cho ngày mai (ít nhất 3 khách sạn). Tôi muốn xem: > giá, địa chỉ, một số điểm xếp hạng (ở dạng XX/YY, ví dụ: "4,7/5" – từ (mục) Khách sạn trên Google, Booking hoặc Airbnb), số lượng bài đánh giá. Hãy trình bày dưới dạng BẢNG. Tốt nhất là tên khách sạn nên được liên kết với một URL nào đó của khách sạn (đừng bận tâm đến việc thêm cột URL). Đảm bảo đường liên kết là hợp lệ (đường liên kết hoạt động và trang dẫn đến thông tin về khách sạn!)
Đây là một câu lệnh thông minh vì câu lệnh này kiểm tra thời gian và khách sạn, đồng thời sẽ không thành công theo cách khác nhau ở các bước 1, 2, 3 và chỉ thành công hoàn toàn ở bước 4. Tất nhiên, bạn có thể sử dụng bất kỳ câu lệnh nào bạn muốn!
Chạy từ bash (CLI):
# 1. If ADK was installed: adk run mysolution/ # ... but if you get: -bash: adk: command not found" # 2. Call ADK cli script through UV to avoid python install nightmares. uv run adk run mysolution/
Hãy thử dùng "câu lệnh thử nghiệm" ở trên.
Trợ lý có thể không biết ngày cụ thể. Chúng ta cần dạy cho nó biết ngày!
Đối với web, bạn có thể làm như sau:
uv run adk web .: Thao tác này sẽ chạy tất cả tác nhân trong thư mục này. Bạn muốn trỏ tệp này đến thư mục con "mysolution/"- chọn
mysolution/ở trên cùng bên phải (Xem hình ảnh bên cạnh) - Đặt câu hỏi bằng văn bản hoặc qua micrô, tương tự như "câu lệnh thử nghiệm".

Lưu ý rằng bạn cần gọi adk web từ thư mục phía trên, tương ứng với phiên bản CLI.

Sau đây là một giải pháp khả thi, trong đó có một ngày tháng bị ảo tưởng một phần. Lưu ý: 3 trong số 5 đường liên kết đặt phòng đang hoạt động! Không tệ.
5. Bước 2: Thêm công cụ now()

Thêm hàm này vào agent.py ngay trước định nghĩa root_agent:
from datetime import datetime
def now() -> dict:
"""Returns the current date and time."""
my_datetime = ... # Ask Gemini CLI to help you!
return {
"status": "success",
"current_time": my_datetime
}
Cập nhật định nghĩa tác nhân để thêm công cụ:
# file XXX.py
root_agent = Agent(
name="..",
model="..",
instruction="..",
tools=[now] # <== This is the only line you want to add.
)
Chạy lại và đặt cùng một câu hỏi. Bây giờ, mô hình sẽ biết ngày (tốt) và mơ hồ về khách sạn (không tốt)!
Bạn cũng có thể kiểm thử bằng một câu lệnh như sau:
# Let's pretend we're in Milan. This should call the tool # and respond correctly (possibly with some TZ math issues) echo "What time is it in Milan?" | uv run adk run mysolution/
6. Bước 3: Hãy chuyển hướng tập trung: google_search
google_search. Điều này cho phép tác nhân của chúng tôi truy cập vào thông tin theo thời gian thực trên web.

Nhiệm vụ của bạn là sửa đổi tác nhân ở Bước 2. Thay vì sử dụng công cụ now, bạn sẽ nhập và sử dụng công cụ google_search từ thư viện ADK.
# Full Code: `steps/step03_search/agent.py`
# Remember to REMOVE the now() tool here. See above why.
from google.adk.agents import Agent
from google.adk.tools import google_search
root_agent = Agent(
name="travel_agent",
model="gemini-2.5-flash",
tools=[google_search],
instruction="""You are a travel agent.
Your job is to help the user plan a trip.
You have access to a search engine.
If you don't know the answer, you can use the search engine.
When you are done, reply with "DONE".""",
)
Cách chạy
Tương tự như bước 1.
Chỉ dành cho chuyên gia. Để tích hợp nâng cao hơn (sử dụng kết hợp google_search và now), hãy kiểm tra mã trong steps/step03b_search_and_tool/agent.py và chạy mã bằng make run-step3b. Bạn không bắt buộc phải làm việc này.
7. Bước 4: Một công cụ tinh vi hơn: MCP

Giờ chúng ta đã tìm hiểu cả công cụ tuỳ chỉnh và công cụ tích hợp sẵn, hãy chuyển sang một công cụ mạnh mẽ hơn: mẫu Mô hình dưới dạng công cụ sử dụng Giao thức ngữ cảnh mô hình (MCP).
Để bước này tập trung vào các tính năng mạnh mẽ của MCP, chúng ta sẽ một lần nữa thay thế công cụ trước đó (google_search). Chúng ta sẽ giới thiệu lại công cụ now đơn giản để chạy cùng với công cụ airbnb_mcp. Ví dụ này minh hoạ cách một tác nhân có thể sử dụng nhiều công cụ tương thích (trong trường hợp này là FunctionTool và MCPToolset) để thực hiện các nhiệm vụ phức tạp.
# Full Code: steps/step04_mcp/agent.py
# ... Imports as before
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from mcp import StdioServerParameters
def now() -> dict:
# ... as before
# Configure the Airbnb MCP Toolset
airbnb_mcp = MCPToolset(
connection_params=StdioConnectionParams(
server_params=StdioServerParameters(
command='npx',
args=["-y", "@openbnb/mcp-server-airbnb", "--ignore-robots-txt"],
),
)
)
root_agent = Agent(
name="travel_mcp",
model="gemini-2.5-flash",
instruction="You are a helpful travel assistant. You can find accommodation using Airbnb, and have access to the current time.",
tools=[now, airbnb_mcp],
)
Cách chạy
Bước này yêu cầu bạn phải cài đặt npx trên hệ thống. Đối với phần còn lại, cách này giống như trên.
Lưu ý/Lỗi
- Nếu gặp lỗi hạn chế
robots.txt, bạn có thể vá MCP bằng lệnh bỏ qua robots. Đọc tài liệu để biết thêm thông tin: https://github.com/openbnb-org/mcp-server-airbnb - Nếu bạn gặp lỗi
timeout(5 giây là quá ít để Airbnb nhận được phản hồi), hãy xem tài liệu về ADK để biết cách tăng thời gian chờ lên, chẳng hạn như 30 giây. Hoặc.. dùng Gemini CLI để làm việc đó! Lưu ý rằng vào ngày 3 tháng 12 năm 2025, Cloud Shell đã báo lỗi hết thời gian chờ. Tôi đã khắc phục lỗi hết thời gian chờ nhưng vẫn gặp lỗi cho đến khi buộc Cloud Shell sử dụng phiên bản trước:args=["-y", "@openbnb/mcp-server-airbnb@0.1.2", "--ignore-robots-txt"].
8. 🏅 Đã hoàn thành cột mốc 1!
Xin chúc mừng! 🏅 Giờ đây, bạn đã là một chuyên gia về ADK! Bạn đã hoàn thành phần đầu tiên của hội thảo và đã xây dựng cũng như thử nghiệm thành công các tác nhân AI bằng công cụ tuỳ chỉnh, công cụ tích hợp sẵn và công cụ MCP nâng cao. Giờ đây, bạn đã sẵn sàng xây dựng các tác nhân tuyệt vời của riêng mình bằng Bộ công cụ phát triển tác nhân của Google!
Giờ đây, bạn đã có một công ty du lịch có thể hoạt động, biết thời gian và có thể tìm kiếm trên web. Giờ đây, bạn có thể thoả sức sáng tạo!
Bây giờ, đã đến lúc thêm một chức năng bổ sung bằng "Gemini CLI".
9. 🏅 Cột mốc 2: lập trình theo cảm hứng bằng ADK thông qua Gemini CLI
Giờ chúng ta sẽ bước vào phần thú vị của buổi hội thảo.
- đảm bảo bạn đã
git commitmã ở nơi an toàn. Bạn có thể phân nhánh mã gốc hoặc tạo một nhánh: đừng lo, Gemini CLI rất giỏi trong việc giúp bạn thực hiện việc này! - Tìm một 💡 ý tưởng để triển khai. Bạn có thể xem các ý tưởng bên dưới, tự tìm một ý tưởng hoặc yêu cầu Gemini xem tài liệu trong rag/ và đề xuất một vài ý tưởng thông minh.
- Hãy làm theo các điều kiện tiên quyết để đảm bảo Gemini có thể đọc tài liệu về ADK, sau đó bạn có thể bắt đầu!
💡 Ý tưởng
- 🟢 [easy] Are you a language polyglot? Bạn muốn tặng
go,javahayTypeScript? Việc tái cấu trúc mã hiện có rất đơn giản! Bạn chỉ cần tải ADK phù hợp xuống rồi yêu cầu Gemini CLI dịch! - 🟢 [dễ] Thêm biểu tượng cảm xúc hoặc chỉ định một số định dạng đầu ra mà bạn thích (ví dụ: bảng có biểu tượng cảm xúc khách sạn, theo sau là giá, theo sau là biểu tượng cảm xúc 1-5 sao dựa trên 🌕🌕🌕🌗🌑 để làm nửa sao!).
- 🟢 [dễ] Thay đổi câu lệnh để hướng dẫn mô hình về những điều bạn đặc biệt tìm kiếm hoặc không muốn (cho phép thú cưng, không ở tầng trệt, yên tĩnh, gần phương tiện công cộng, v.v.) rồi thử nghiệm. Có thể thêm điểm xếp hạng cá nhân như "điểm xếp hạng của YOUR_NAME từ 1 đến 10" dựa trên thông tin ở trên và sắp xếp theo điểm xếp hạng đó.
- 🟢 [easy] Any Operator in the room? Triển khai lên Cloud Run! Hoặc Vertex AI Agent Engine! Bạn có biết rằng bạn có thể tích hợp tác nhân này và gọi trực tiếp từ Gemini Enterprise mới không?
- 🟢 [dễ] Tích hợp
adk runvới 🍌 NanoBanana MCP. Cần có khoá Gemini API. Tại đây, bạn có thể tạo hình ảnh nhưng không thể trực quan hoá hình ảnh. Hãy xem phần bên dưới để biết một biến thể khó hơn. - 🟡 [trung bình] Tạo một tác nhân phụ thực hiện
HotelSearchvà tạo mộtBudgetAgenthoặcLocationAgentcó thể tăng gấp đôi và lặp lại trên các khách sạn đáp ứng nhu cầu về vị trí của bạn, ví dụ: "không quá X km từ VỊ TRÍ". Nếu API không cho phép điều này, thì có thể bạn sẽ phải thực hiện một số thao tác qua lại với sự trợ giúp của Google Tìm kiếm. Lưu ý: Gemini CLI có thể giúp bạn. - 🟡 [trung bình] Triển khai một
AirbnbReviewAgentđể xem xét các bài đánh giá và tóm tắt các điểm tích cực và tiêu cực bằng một vài dấu đầu dòng được mã hoá màu, cho 1 hoặc N khách sạn từ kết quả tìm kiếm. Bạn đã có 2 thành phần (GoogleSearch và MCP Airbnb), sau đó bạn cần kết nối thành phần này với Tác nhân chính và có thể phát minh ra một số loại giao thức để chúng giao tiếp. - 🟡 [trung bình] Tích hợp với A2A. Hãy biến nó thành một tác nhân A2A! Một lần nữa, hãy hỏi Gemini CLI trợ giúp!
- 🔴 [phức tạp] Bạn có thể tích hợp với Chuyến bay hoặc chức năng MCP khác để tạo một công ty du lịch đa chức năng, đa diện.
- 🔴 [phức tạp] Tích hợp web ADK với 🍌 NanoBanana MCP. Bài tập này khó hơn bài tập ở trên và bạn có thể tìm thấy một số mẹo tại https://github.com/palladius/ai-friendly-agents/issues/11 . Tác giả đã mất 3 giờ trao đổi qua lại với Gemini CLI, Gemini3 và cả hai chúng tôi đều đọc tài liệu/mã từ
rag/!
Bạn muốn tìm thêm nguồn cảm hứng?
- Hãy xem hướng dẫn chính thức về ADK để biết một số ý tưởng.
- Yêu cầu Gemini CLI tìm ý tưởng bằng cách xem tài liệu trong
rag/: một câu lệnh có thể là:Is there a feature in here which seems very succulent to you? Give me 3 proposals and let's implement together the one I choose.
Điều kiện tiên quyết để sử dụng "RAG" của ADK
Để lập trình theo cảm hứng cho một chức năng, bạn nên tải toàn bộ ADK Python xuống (lưu ý: bạn có thể dễ dàng điều chỉnh ADK này cho phù hợp với ngôn ngữ mà bạn yêu thích, chẳng hạn như Java hoặc Go!)
Mã nằm trong ./rag và có thể tải xuống bằng ./download-adk.sh.
Vì thư mục rag được liệt kê trong tệp .gitignore, hãy đảm bảo .gemini/settings.json của bạn chứa nội dung sau:
{
"context": {
"includeDirectories": ["rag"]
}
}
Tại sao? Chúng tôi muốn Gemini có thể đọc các tệp đó, trong khi các tệp đó được bỏ qua một cách an toàn. Về mặt kỹ thuật, bạn cũng có thể hiện tất cả tệp .gitignore bằng cách đặt context.fileFiltering.respectGitIgnore thành false, nhưng việc này sẽ mở ra rất nhiều tệp rác node_modules/ và __pycache__/. Do đó, bạn nên chọn cách thêm thư mục cụ thể.
10. Các bước tiếp theo
Sự tò mò: Hội thảo này được xây dựng với sự trợ giúp của Gemini CLI. Nếu tò mò, bạn có thể tìm hiểu cách tôi thực hiện bằng cách xem GEMINI.md và WORKSHOP_PLAN.md trong thư mục này.
Bài học rút ra
Chúng ta đã tìm hiểu cách kết hợp ADK với Gemini CLI
Tài liệu đọc thêm
- Hãy xem hai lớp học lập trình chính thức sau đây về Antigravity:
- Hãy xem hướng dẫn chính thức về ADK để biết một số ý tưởng.
