- 文档首页
AgentKit
AgentKit
开发者指南
SDK 参考
Anotation使用指南
Anotation使用指南
AgentKit SDK提供了一套简洁的装饰器(注解),用于快速构建不同类型的Agent应用。本文详细介绍各种注解的使用方法和最佳实践。
AgentkitSimpleApp是最常用的应用框架,提供标准的HTTP服务端点。
定义Agent的主入口函数,处理来自Platform的调用请求。
- payload (dict): 请求体,包含用户输入和配置。
- headers (dict): 请求头,包含上下文信息。
- request_id (str): 请求追踪ID。
- 参数顺序固定:第一个参数是payload,第二个是headers。
- 返回字符串:返回值会被自动封装为JSON 响应。
定义健康检查函数,用于AgentKit和Kubernetes的健康探测。
- 返回值 (str): 健康状态信息,通常返回 "pong" 或 "ok"。
- 无参数:函数签名必须为def ping() -> str:。
健康检查函数会自动注册到以下端点:
- GET /readiness:Kubernetes就绪探针。
- GET /liveness:Kubernetes存活探针。
AgentkitMCPApp用于构建MCP (Model Context Protocol) 服务,将函数封装为标准的MCP工具。
将函数注册为MCP工具,供LLM调用。
- 文档字符串:会作为工具描述,供LLM理解工具用途。
- 类型注解必需:所有参数必须有类型注解,MCP需要此信息生成工具模式。
- 详细的文档字符串:文档字符串会作为工具描述,帮助LLM理解工具用途。
- 同步和异步均可:支持def和async def。
- 返回结构化数据:建议返回dict类型,便于LLM解析。
- 错误处理:在函数内部处理异常,避免工具调用失败。
将整个Agent封装 MCP工具,实现Agent的组合和协作。
- Agent 职责单一:每个Agent应专注于特定领域。
- 清晰的描述:文档字符串要明确Agent的能力边界。
AgentkitA2aApp用于构建 A2A (Agent-to-Agent) 应用,支持Agent之间的通信和协作。
注册Agent执行器,定义Agent的执行逻辑。
- 继承AgentExecutor:必须继承自AgentExecutor或其子类。
- 提供runner:必须通过参数传入runner实例。
- 实现execute 方法:如需自定义逻辑,重写execute方法。
- 使用event_queue:通过事件队列发送中间状态。
注册任务存储,用于持久化A2A任务状态。
- 继承TaskStore:必须继承自TaskStore。
- 实现必需方法:实现save_task、get_task、delete_task等方法。
- 持久化存储:生产环境建议使用持久化存储(Redis、数据库等)。
所有装饰的函数都应该有良好的错误处理。
添加适当的日志以便追踪问题。
使用完整的类型注解提高代码质量。
为所有函数添加详细的文档字符串。
避免在装饰的函数中执行耗时初始化。
最近更新时间:2026.01.08 10:02:18