Google ADK Python
Xây dựng hệ thống multi-agent marketing mạnh mẽ với Google Agent Development Kit (ADK) Python.
Skill Này Làm Gì
Thách thức: Marketing automation phức tạp đòi hỏi nhiều agents chuyên biệt làm việc phối hợp — research, content creation, SEO optimization, email scheduling — mà một agent đơn lẻ không thể xử lý hiệu quả.
Giải pháp: Skill google-adk-python hướng dẫn xây dựng multi-agent marketing systems với Google ADK, bao gồm agent orchestration, tool integration, memory management và deployment.
Kích Hoạt
Ngầm định: Tự động kích hoạt khi cần xây dựng AI agent pipelines hoặc automation workflows phức tạp.
Tường minh: Kích hoạt qua prompt:
Activate google-adk-python skill to build [agent/workflow]
Tính Năng
1. Cài Đặt Google ADK
# Cài đặt ADK
pip install google-adk
# Hoặc dùng uv (nhanh hơn)
uv add google-adk
# Verify
python -m google.adk --version
Cấu hình credentials:
# Google Gemini API
export GOOGLE_API_KEY=your_gemini_api_key
# Hoặc Google Cloud credentials
gcloud auth application-default login
2. Single Agent Cơ Bản
from google.adk.agents import Agent
from google.adk.tools import Tool
# Định nghĩa tools
def analyze_campaign_performance(campaign_id: str) -> dict:
"""Phân tích hiệu suất của một campaign cụ thể."""
# Kết nối với Google Analytics API
return {
"impressions": 50000,
"clicks": 1500,
"ctr": 0.03,
"conversions": 45,
"roas": 3.2
}
def generate_optimization_recommendations(data: dict) -> str:
"""Tạo khuyến nghị tối ưu dựa trên dữ liệu."""
# Logic analysis
return "Tăng budget cho ad set có ROAS > 3.0"
# Tạo agent
campaign_analyst = Agent(
name="campaign_analyst",
model="gemini-2.0-flash",
description="Phân tích và tối ưu hiệu suất campaigns.",
instruction="""Bạn là marketing analyst chuyên nghiệp.
Phân tích dữ liệu campaign và đưa ra khuyến nghị cụ thể,
dựa trên dữ liệu thực tế.""",
tools=[
analyze_campaign_performance,
generate_optimization_recommendations
]
)
3. Multi-Agent Marketing System
from google.adk.agents import Agent, SequentialAgent, ParallelAgent
# Agent 1: Research
research_agent = Agent(
name="market_researcher",
model="gemini-2.0-flash",
description="Nghiên cứu thị trường và đối thủ.",
tools=[search_web, analyze_competitor, get_market_data]
)
# Agent 2: Content Creator
content_agent = Agent(
name="content_creator",
model="gemini-2.0-flash",
description="Tạo nội dung marketing dựa trên research.",
tools=[generate_blog_post, create_email_copy, write_ad_copy]
)
# Agent 3: SEO Optimizer
seo_agent = Agent(
name="seo_optimizer",
model="gemini-2.0-flash",
description="Tối ưu content cho search engines.",
tools=[check_keywords, optimize_meta, analyze_readability]
)
# Orchestrate: Research → Content (parallel: blog + email) → SEO
pipeline = SequentialAgent(
name="content_pipeline",
agents=[
research_agent,
ParallelAgent(
name="content_creation",
agents=[content_agent, seo_agent]
)
]
)
4. Agent Memory và Session State
from google.adk.memory import InMemoryMemoryService
from google.adk.sessions import Session
# Session với persistent memory
session = Session(
memory_service=InMemoryMemoryService(),
state={
"brand_voice": "professional, friendly",
"target_audience": "B2B SaaS founders",
"campaign_goals": ["awareness", "trial_signup"]
}
)
# Agent có access vào shared state
campaign_agent = Agent(
name="campaign_manager",
instruction="""
Khi tạo nội dung, luôn tuân theo brand voice: {brand_voice}
Target audience: {target_audience}
Campaign goals: {campaign_goals}
""",
tools=[...]
)
# Chạy với session
async def run_campaign():
result = await campaign_agent.run_async(
"Tạo email campaign cho tháng này",
session=session
)
return result
5. Tool Integration Với Marketing APIs
from google.adk.tools import Tool
import httpx
# Tích hợp với Google Analytics 4
async def get_ga4_metrics(
property_id: str,
date_range: str = "30daysAgo:today",
metrics: list[str] = ["sessions", "conversions"]
) -> dict:
"""Lấy metrics từ Google Analytics 4."""
# GA4 Data API call
async with httpx.AsyncClient() as client:
response = await client.post(
f"https://analyticsdata.googleapis.com/v1beta/properties/{property_id}:runReport",
headers={"Authorization": f"Bearer {get_access_token()}"},
json={
"dateRanges": [{"startDate": date_range.split(":")[0],
"endDate": date_range.split(":")[1]}],
"metrics": [{"name": m} for m in metrics]
}
)
return response.json()
# Wrap thành ADK tool
ga4_tool = Tool(
func=get_ga4_metrics,
name="get_ga4_metrics",
description="Lấy dữ liệu analytics từ Google Analytics 4"
)
Điều Kiện Tiên Quyết
- Python 3.10+
- Google Gemini API key hoặc Google Cloud project
pip install google-adk google-generativeai
Cấu Hình
Project structure:
marketing-agents/
├── agents/
│ ├── research_agent.py
│ ├── content_agent.py
│ └── seo_agent.py
├── tools/
│ ├── analytics_tools.py
│ ├── seo_tools.py
│ └── email_tools.py
├── pipelines/
│ └── content_pipeline.py
├── .env
└── main.py
.env file:
GOOGLE_API_KEY=your_gemini_api_key
GA4_PROPERTY_ID=your_property_id
Thực Hành Tốt Nhất
1. Agents Focused, Không Phải Generalist Mỗi agent làm tốt một việc. Research agent không nên viết content.
2. Structured Output Giữa Agents Định nghĩa Pydantic models cho data passed giữa agents để đảm bảo type safety.
3. Logging Và Observability Log mọi agent interaction để debug và improve performance.
Các Trường Hợp Sử Dụng Phổ Biến
Trường Hợp 1: Weekly Content Pipeline
Tình huống: Tự động tạo content marketing hàng tuần.
Pipeline:
- Research Agent: Tìm trending topics trong ngành
- Content Agent: Viết 2 blog posts + 5 social posts
- SEO Agent: Optimize keywords và meta
- Review Agent: QA trước khi schedule
Trường Hợp 2: Campaign Performance Monitor
Tình huống: Agent tự động monitor và alert khi campaign có vấn đề.
Pipeline:
- Analytics Agent: Pull metrics mỗi 6 giờ
- Analysis Agent: So sánh với benchmarks, phát hiện anomalies
- Alert Agent: Slack notification khi ROAS giảm > 20%
Xử Lý Sự Cố
Vấn đề: Agent bị stuck trong loop
Giải pháp: Set max_iterations limit. Log mỗi iteration để debug.
Vấn đề: Tool calls thất bại không nhất quán Giải pháp: Implement retry với exponential backoff trong tool functions.
Skill Liên Quan
- Context Engineering - Multi-agent architecture
- Backend Development - Tools backend
- Analytics - GA4 integration
Lệnh Liên Quan
/ckm:google-adk-python- Xây dựng AI agents/ckm:context-engineering- Tối ưu agent architecture/ckm:backend-development- API tools cho agents