1. สิ่งที่คุณจะได้เรียนรู้
ยินดีต้อนรับสู่ ADK Master Class - เส้นทางสู่ระบบหลายเอเจนต์
คุณกำลังจะก้าวเข้าสู่โลกที่น่าตื่นเต้นของเอเจนต์ AI ลืมแชทบ็อตแบบง่ายๆ ที่ตอบคำถามเท่านั้นไปได้เลย เรากำลังเจาะลึกAgent Development Kit (ADK)เพื่อสร้างระบบอัตโนมัติที่ซับซ้อนซึ่งสามารถให้เหตุผล วางแผน และใช้เครื่องมือเพื่อทำงานที่ซับซ้อนให้สำเร็จ

เมื่อจบบทแนะนำนี้ คุณจะทำสิ่งต่อไปนี้ได้
- สร้าง AI Agent ตัวแรก: สร้าง Agent ที่ทำงานได้อย่างเต็มรูปแบบตั้งแต่ต้นจนจบ ซึ่งสามารถทำความเข้าใจความต้องการของผู้ใช้ ใช้เครื่องมือต่างๆ เช่น Google Search และสร้างคำตอบที่เป็นประโยชน์และมีรายละเอียด
- สร้างระบบ Multi-Agent: เรียนรู้รูปแบบ "Agent-as-a-Tool" ซึ่งเป็นแนวคิดที่ปฏิวัติวงการที่ Agent มอบหมายงานให้ Agent อื่นๆ ที่มีความเชี่ยวชาญเฉพาะทาง ทำให้เกิดทีมผู้เชี่ยวชาญด้าน AI ที่ทำงานร่วมกัน
- จัดระเบียบเวิร์กโฟลว์ที่ซับซ้อน: ก้าวข้ามการมอบหมายงานแบบง่ายๆ และเชี่ยวชาญรูปแบบขั้นสูง เช่น เราเตอร์, เชนแบบลำดับ, ลูป และการดำเนินการแบบขนาน เพื่อสร้างแอปพลิเคชันที่แข็งแกร่ง มีประสิทธิภาพ และชาญฉลาด ซึ่งสามารถจัดการคำขอได้เกือบทุกคำขอ
- ให้ Agent มีความจำ: ทำความเข้าใจบทบาทที่สำคัญของหน่วยความจำในการสนทนา ซึ่งช่วยให้ Agent จัดการคำถามติดตามผล เรียนรู้จากความคิดเห็น และจัดการงานแบบหลายขั้นตอนได้อย่างราบรื่น
- เชื่อมต่อกับ MCP: เชื่อมต่อกับกล่องเครื่องมือ MCP
มาเริ่มกันเลย 🚀
2. การตั้งค่า: รับคีย์ API
การตั้งค่าคีย์ API ของ Google AI Studio
สิ่งที่คุณต้องมี
- Python 3.9 ขึ้นไป (
python3 --versionเพื่อตรวจสอบ) - บัญชี Google (เพื่อสร้างคีย์ AI Studio)
- เทอร์มินัล - เครื่องภายในหรือ Cloud Shell ก็ได้
- ประมาณ 10 นาที
เราต้องใช้คีย์ Gemini API จาก Google AI Studio เพื่อขับเคลื่อน AI Agent วิธีนี้เป็นวิธีที่เร็วที่สุดในการเริ่มต้นใช้งาน
ขั้นตอนที่ 1 — รับคีย์ Gemini API จาก AI Studio (1 นาที)
- เปิด https://aistudio.google.com/app/apikey ในแท็บเบราว์เซอร์ใหม่
- ลงชื่อเข้าใช้ด้วยบัญชี Google
- คลิก "สร้างคีย์ API" (ด้านขวาบน)
- กล่องโต้ตอบจะเปิดขึ้นพร้อมเมนูแบบเลื่อนลงของโปรเจ็กต์
- หากคุณสร้างโปรเจ็กต์ Google ไว้แล้วก่อนหน้านี้ ให้เลือกโปรเจ็กต์นั้น แล้วคลิก "สร้างคีย์ API ในโปรเจ็กต์ที่มีอยู่"
- หากไม่อยู่ในรายการ: คลิก "สร้างโปรเจ็กต์"

- คัดลอกคีย์ API ที่ปรากฏ โดยจะขึ้นต้นด้วย
AIza...และมีความยาวประมาณ 40 อักขระ
✏️ วางไว้ในที่ที่ปลอดภัย เนื่องจากคุณจะต้องใช้ในขั้นตอนที่ 4 ด้านล่าง
ขั้นตอนที่ 2 — โคลนที่เก็บ (1 นาที)
👉💻 เปิดเทอร์มินัล (หรือ Cloud Shell) แล้วโคลนที่เก็บของบทแนะนำ
git clone https://github.com/cuppibla/adk_tutorial.git
cd ~/adk_tutorial
ขั้นตอนที่ 3 - สร้างสภาพแวดล้อมเสมือนและติดตั้งการอ้างอิง
👉💻 สร้างและเปิดใช้งานสภาพแวดล้อมเสมือนชื่อ .adk_env จากนั้นติดตั้งการอ้างอิงโดยใช้คำสั่งต่อไปนี้
python3 -m venv .adk_env
source .adk_env/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
คุณควรเห็น (.adk_env) ที่จุดเริ่มต้นของพรอมต์เทอร์มินัล
ขั้นตอนที่ 4 — 🔥 สำคัญ: เพิ่มคีย์ API
⚠️ อย่าข้ามขั้นตอนนี้ สร้างไฟล์ .env ในรูทของโฟลเดอร์ adk_tutorial ไฟล์นี้ใช้ขับเคลื่อนทุกเซสชันใน Codelab นี้ โดยเซสชัน ADK Web (1–5) และเซสชัน Memory และ MCP ในบรรทัดคำสั่ง (6–7) จะอ่านไฟล์นี้โดยอัตโนมัติ
👉💻 สร้างไฟล์ .env ด้วยคีย์ของคุณ (แทนที่ your_actual_api_key_here ด้วยคีย์จากขั้นตอนที่ 1)
cat > .env <<'EOF'
GOOGLE_GENAI_USE_VERTEXAI=FALSE
GOOGLE_API_KEY=your_actual_api_key_here
EOF
ตอนนี้ ~/adk_tutorial/.env ของคุณควรมีข้อมูลต่อไปนี้
GOOGLE_GENAI_USE_VERTEXAI=FALSE
GOOGLE_API_KEY=your_actual_api_key_here
🚨 สำคัญ: แทนที่ your_actual_api_key_here ด้วยคีย์ API จริงจากขั้นตอนที่ 1 (ขึ้นต้นด้วย AIza...)
✅ จุดตรวจสอบ: คุณมีไฟล์ .env ที่ ~/adk_tutorial/.env ซึ่งมีคีย์ AIza... และพรอมต์เทอร์มินัลแสดง (.adk_env) คุณพร้อมสร้าง Agent แล้ว
3. เซสชันที่ 1: Agent ตัวแรกใน ADK Web
เปิด ADK Web โดยการเรียกใช้คำสั่งต่อไปนี้
cd ~/adk_tutorial
source .adk_env/bin/activate
adk web
หลังจากเรียกใช้คำสั่งแล้ว คุณควรเห็นเอาต์พุตในเทอร์มินัลที่ระบุว่าเว็บเซิร์ฟเวอร์ ADK เริ่มทำงานแล้ว ซึ่งมีลักษณะคล้ายกับเอาต์พุตนี้
+-----------------------------------------------------------------------------+
| ADK Web Server started |
| |
| For local testing, access at http://localhost:8000. |
+-----------------------------------------------------------------------------+
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
👉 จากนั้นเปิดเบราว์เซอร์ไปที่ http://localhost:8000 เพื่อเข้าถึง ADK Dev UI

👉 พิธีกรรมการอัญเชิญเสร็จสมบูรณ์แล้ว และตอนนี้เอเจนต์กำลังทำงานอยู่ UI สำหรับนักพัฒนา ADK ในเบราว์เซอร์คือการเชื่อมต่อโดยตรงกับ Familiar
เลือกเอเจนต์คนแรก ในเมนูแบบเลื่อนลงที่ด้านบนของ UI ให้เลือก a_single_agent
คุณเลือก a_single_agent ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
👉 พรอมต์ทดสอบ:
Plan a trip from Sunnyvale to San Francisco this weekend, I love food and art.
4. เซสชันที่ 2: Agent เวิร์กโฟลว์: Agent แบบลำดับ, Agent แบบคู่ขนาน, Agent แบบวนซ้ำ
Parallel Agent
เลือกตัวแทนเวิร์กโฟลว์แบบคู่ขนาน ในเมนูแบบเลื่อนลงที่ด้านบนของ UI ให้เลือก b2_parallel_agent
👉 พรอมต์ทดสอบ:
Plan my trip to San Francisco, I want to find some good concert, restaurant and museum.
คุณเลือก b2_parallel_agent ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
Sequential Agent
เลือกเอเจนต์เวิร์กโฟลว์แบบลำดับ ในเมนูแบบเลื่อนลงที่ด้านบนของ UI ให้เลือก b1_sequential_agent
👉 พรอมต์ทดสอบ:
Find a good sushi near Standford and tell me how to get there.
คุณเลือก b1_sequential_agent ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
Agent แบบวน
เลือกเอเจนต์เวิร์กโฟลว์ของ Loop ในเมนูแบบเลื่อนลงที่ด้านบนของ UI ให้เลือก b3_loop_agent
👉 พรอมต์ทดสอบ:
Plan a trip from Sunnyvale to San Francisco today.
คุณเลือก b3_loop_agent ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
5. เซสชันที่ 3: ตัวแทนที่กำหนดเอง
เมื่อเปิด ADK Web UI แล้ว ให้เลือก c_custom_agent จากเมนูแบบเลื่อนลง
👉 พรอมต์ทดสอบ:
Plan a trip from Sunnyvale to San Francisco this weekend, I love food and art. Make sure within budget of 100 dollars.
คุณเลือก c_custom_agent ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
6. เซสชันที่ 4: รูปแบบ Orchestrator - Routing Agent
เมื่อเปิด ADK Web UI แล้ว ให้เลือก d_routing_agent จากเมนูแบบเลื่อนลง
👉 พรอมต์ทดสอบ:
Plan a trip from Sunnyvale to San Francisco this weekend, I love concert, restaurant and museum.
คุณเลือก d_routing_agent ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
7. เซสชันที่ 5: เอเจนต์ในฐานะเครื่องมือ
เมื่อเปิด ADK Web UI แล้ว ให้เลือก e_agent_as_tool จากเมนูแบบเลื่อนลง
👉 พรอมต์ทดสอบ:
Plan a trip from Sunnyvale to San Francisco this weekend, I love concert, restaurant and museum.
คุณเลือก e_agent_as_tool ได้ที่นี่ 
คุณดูการติดตามได้ที่นี่ 
8. เซสชันที่ 6: เอเจนต์ที่มีความทรงจำระยะยาว
👉💻 ทดสอบความจำระยะยาวโดยไปที่โฟลเดอร์และใช้โปรแกรมเรียกใช้เพื่อเพิ่มพลังให้ตัวแทน
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/f_agent_with_memory
python main.py
👉 พรอมต์ทดสอบ:
I like Art and Italian food.
จากนั้นสิ้นสุดเซสชันโดยกด Ctrl+C เริ่มเซสชันใหม่
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/f_agent_with_memory
python main.py
👉 พรอมต์ทดสอบ:
Plan a trip to San Francisco based on my preference.
9. เซสชันที่ 7: เพิ่มศักยภาพให้ตัวแทนด้วย MCP
ขั้นตอนที่ 1: เตรียมฐานข้อมูลในเครื่อง
👉💻 สร้างฐานข้อมูลตัวอย่างจากรูทของที่เก็บ
cd ~/adk_tutorial
source .adk_env/bin/activate
chmod +x setup_trip_database.py
./setup_trip_database.py
ซึ่งจะสร้าง destinations.db ใน ~/adk_tutorial/
ขั้นตอนที่ 2: ติดตั้งและเรียกใช้เซิร์ฟเวอร์กล่องเครื่องมือ MCP
👉💻 ดาวน์โหลดไบนารีของกล่องเครื่องมือ MCP สำหรับระบบปฏิบัติการของคุณ
cd ~/adk_tutorial/mcp_tool_box
export VERSION=0.16.0
# Choose the line that matches your machine:
export OS=linux/amd64 # Cloud Shell or Linux (x86_64)
# export OS=darwin/arm64 # macOS Apple Silicon (M1/M2/M3)
# export OS=darwin/amd64 # macOS Intel
curl -O https://storage.googleapis.com/genai-toolbox/v$VERSION/$OS/toolbox
เมื่อดาวน์โหลดเสร็จแล้ว ให้เรียกใช้
chmod +x toolbox
ขั้นตอนที่ 3
ในเทอร์มินัลหนึ่ง ให้เรียกใช้คำสั่งต่อไปนี้ (ปล่อยให้ทำงานต่อไป - Agent จะเชื่อมต่อกับคำสั่งนี้ที่ http://127.0.0.1:7001)
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/mcp_tool_box
./toolbox --tools-file "trip_tools.yaml" --port 7001
ในเทอร์มินัลอื่น ให้เรียกใช้คำสั่งต่อไปนี้
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/g_agents_mcp
python main.py
👉 พรอมต์ทดสอบ (ใช้เมืองที่มีอยู่ในฐานข้อมูลตัวอย่าง ได้แก่ ปารีส โรม นิวยอร์ก หรือโตเกียว)
What are the top-rated things to do in Tokyo?
Show me the museums in Rome.
What can I do in New York for under 25 dollars?