Google ADK 搭建基于 Kimi K3 的智能体详尽过程
Google Agent Development Kit (ADK) 是 Google 于 2025年4月发布的一个开源、以代码为核心的框架,旨在帮助开发者构建、评估和部署复杂的AI智能体(Agent)及多智能体系统[1][2]。因为一些特殊原因,笔者并不想访问外网的大语言模型。国内的模型很多,但是到目前为止,通过检索的资料和测试,通过Google ADK访问Kimi K3模型成功。过程非常曲折,但是结果很好。也可以通过同样的方法,对搭建基于其他模型的智能体。在这篇文章中,将中间的过程介绍如下:
一、安装Google ADK库
pip install google-adk
二、创建项目的目录层次结构
创建一个目录结构:
multi_tool_agent |-
|-.env
|- _ init _.py
|- agent.py
1.1 定义.env
.env定义一些必备的环境变量的配置文件。因为需要访问kimi-k3模型,该文件的内容如下:
# 设置kimi官方开放平台申请API密钥 MOONSHOT_API_KEY="你的kimi-k3模型的API密钥" # 设置访问的模型的基址 MOONSHOT_API_BASE="https://api.moonshot.cn/v1"
1.2 _ _ init _ _.py
from . import agent
二、在agent.py文件中调用kimi-k3模型
2.1 配置LiteLlm
import os
import litellm
# LiteLLM 配置
# 禁用远程成本映射获取(避免网络问题)
litellm.local_model_cost_map = True
# 禁用远程成本映射获取(避免网络问题)
os.environ["LITELLM_LOCAL_MODEL_COST_MAP"] = "True"
# 设置 LiteLLM 日志级别为 ERROR(避免过多日志输出)
os.environ["LITELLM_LOG"] = "ERROR"
# 设置 LiteLLM 请求超时时间为 60 秒(避免网络问题)
os.environ["LITELLM_REQUEST_TIMEOUT"] = "60"
# 为 LiteLLM 添加一个“非官方/自定义”kimi-k3模型的配置
# 注册 kimi-k3 模型成本
litellm.model_cost = litellm.model_cost or {}
litellm.model_cost["moonshot/kimi-k3"] = {
"input_cost_per_token": 0.000001,
"output_cost_per_token": 0.000002,
"litellm_provider": "openai",
"mode": "chat",
"supports_system_messages": True,
"supports_function_calls": True,
}
print("自定义LiteLLM 配置完成")
2.2 导入Google ADK库和配置环境变量
# 利用load_dotenv加载当前目录的.env文件的环境变量 from dotenv import load_dotenv load_dotenv() # 导入google adk的相关库 from google.adk.models.lite_llm import LiteLlm from google.adk.tools import FunctionTool from google.adk.agents import Agent
2.3 定义函数工具
使用标注@FuntionTool标注函数工具
@FunctionTool
def get_weather(city: str) -> dict:
"""
获取指定城市的天气信息.
Args:
city (str): 城市名称.
Returns:
dict: 状态和结果或错误的信息.
"""
if city == "南昌":
return {
"status": "success",
"report": (
"今天南昌的天气是晴朗,最高气温为35摄氏度。"
" 天气炎热,请注意防暑降温。"
),
}
else:
return {
"status": "error",
"error_message": f"没有找到 '{city}' 的天气信息。",
}
此处定义一个工具,获取指定城市的天气,这是一个模拟的操作。
2.4 创建智能体
# 创建LiteLlm模型对象
model = LiteLlm(
model="moonshot/kimi-k3",
temperature=1,
max_tokens=2048,
extra_params={
"api_base": os.getenv("MOONSHOT_API_BASE"),
"api_key": os.getenv("MOONSHOT_API_KEY"),
}
)
# 创建智能体
root_agent = Agent(
name="weather_assistant",
model=model,
instruction="你是一个有帮助的助手。需要时使用get_weather工具获取天气信息。",
description="一个获取天气信息的助手。",
tools=[get_weather]
)
三、利用adk web在网页中测试连接是否成功
启动终端,进入目录multi_tool_agent的上级目录。下图是在上级目录中调用tree命令,显示当前目录的所有下级目录:

图1 显示当前目录的所有下级目录
然后调用命令:
adk web
启动adk web,使得可以通过http://127.0.0.1:8000访问智能体。运行结果如下所示:

图2 调用adk web
然后启动浏览器,在浏览器中输入“http://127.0.0.1:8000”,运行结果如下所示:

图3 启动成功
分别在红色箭头所指的消息输入框中输入“南昌的天气”和“南京的天气”,这是kimi-k3调用工具get_weather得到不同的调用结果,运行结果如下图所示:

图4 运行结果
参考文献
- “Agent Development Kit: Making it easy to build multi agent applications” https://developers.googleblog.com/en/agent-development-kit-easy-to-build-multi-agent-applications [EB/OL]
- “DeepWiki google/adk-python Overview”
- https://deepwiki.com/google/adk-python/1-overview[EB/OL]
-
07.23
PPT大纲如何编辑?借助WPS AI快速生成专业PPT的技巧与范文!
-
07.23
生成ppt的ai有哪些: WPS AI如何改变你的文档处理方式
-
07.23
AI技术如何改变Word AI生成PPT的制作方式?
-
07.23
Gemini谁啊 谷歌前沿AI模型迟迟未发布 竞争对手群嘲
-
07.23
英伟达加速 AI 算力供应:Grace 芯片累计交付超 250 万颗:Vera Rubin 机架目标日产 1000 台
-
07.23
月之暗面黄震昕:Kimi K3性能跃升并非对现有模型的蒸馏复刻
推荐专题
热门阅读
-
- AI大消息!四大巨头:同时出手!
- 07.23
-
- 爱立信助力北京联通打造5G-A百兆大上行网络
- 07.23
-
-
-
- 模型不再值钱之后:AI编程工具在争什么
- 07.23
-
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏