接口格式定义
在开发 Agentic(智能体)项目时,接口定义正从传统的 RESTful 风格向更符合 AI 交互逻辑的标准化协议和意图驱动模式演变。目前普遍的接口格式主要包含以下三个层面:面向外部资源的连接协议、Agent 间的协作协议,以及面向最终用户的调用接口设计。
1. 面向外部资源与工具的接口:MCP 标准
目前,连接大模型与外部数据、工具的最主流标准化协议是 MCP (Model Context Protocol)
1
。* 核心架构:采用 Client-Server 架构,基于 JSON-RPC 进行通信
1
。
-
接口定义方式:
-
Tools(工具) :定义 Agent 可执行的操作。接口需明确描述函数名称、参数结构(JSON Schema)及功能描述,以便 LLM 理解何时及如何调用
1
。-
Resources(资源) :定义 Agent 可读取的数据源(如文件、数据库记录),通常通过 URI 标识
1
。
-
Prompts(提示词模板) :预定义的交互模板,用于标准化特定任务的输入输出
1
。
-
-
优势:实现了工具与模型的解耦,开发者只需按 MCP 标准封装一次工具,即可被任何支持 MCP 的 Agent 使用,解决了传统 Function Call 接口碎片化的问题
1
。
2. Agent 间协作的接口:A2A 协议
在多 Agent 协作场景中,A2A (Agent2Agent) 协议逐渐成为事实标准,由 Google 联合多家合作伙伴发布
1
。* 核心功能:提供标准化的通信方式,支持 Agent 的发现、身份认证(基于 W3C DID)、信息交换和任务协同
1
。-
接口特点:强调互操作性,允许不同框架和供应商开发的 Agent 无缝对接,适用于复杂流程编排(如招聘流程中筛选、面试、背调 Agent 的协作)
1
。
3. 给用户的调用接口:Agentic API 设计理念
对于最终用户或上层应用调用 Agent 能力的接口,趋势是从“资源导向”转向“意图导向”,即 Agentic API
2
。* 传统 REST API 的局限:传统接口基于名词(资源)和 HTTP 动词(GET/POST/PUT/DELETE),AI 需要猜测具体操作含义,且状态管理复杂
2
。-
Agentic API 的定义方式:
-
动词驱动路由:API 端点直接体现业务意图(动词),例如
/cancel_and_refund 而非POST /orders/{id}
2
。 -
明确的任务语义:接口直接对应具体任务(如
COMPUTE,ANALYZE,NOTIFY),降低 AI 的理解成本和幻觉风险
2
。
- 后端状态收敛:复杂的业务逻辑和状态变更在后端完成,API 仅暴露原子化的任务接口,便于权限控制(如细粒度 Token
action:cancel_and_refund)
2
。
总结与建议
在开发 Agentic 项目时,建议采用分层接口策略:1. 底层工具层:遵循 MCP 协议 封装数据和工具,确保兼容主流大模型平台
1
。- 协作层:若涉及多 Agent 交互,采用 A2A 协议 实现标准化通信
1
。
- 用户接入层:设计 Agentic API,使用清晰的动词式端点暴露核心能力,简化调用逻辑并增强安全性
2这种组合既利用了社区标准化的红利,又优化了最终用户的交互体验。
-
-