8月1日,谷歌开源的全栈AI框架Genkit推出Agents API,瞄准的是Agent开发里最磨人、却最不性感的那部分:管道。无论是做一个记得工单的客服助手,还是一个跨多轮交互的编程副驾驶,开发者几乎每次都要重复处理消息历史、工具循环、流式传输、持久化存储以及前端协议——这些代码与业务创新关系甚微,却像影子一样跟在每一个项目后面。Genkit的思路是,把这些底层能力封装进一个统一接口,让开发者少造轮子、多想业务。

一、统一chat():从单次回复到多轮对话一根线串起

Agents API的核心是一个chat()接口。开发者在服务端定义一个agent——给它一个名称和系统提示词,随着功能扩展再逐步加入工具、状态和会话存储。预览版的代码示例显示,定义一个名为「assistant」的agent只需指定模型名称和系统提示;而同一个agent对象足够灵活,既能处理单次回复,也能跑流式对话、处理暂停的工具调用(tool call),还能维持多轮对话。关键在于:功能增长时,开发者无需切换到另一套抽象模型。过去构建Agent,往往要分别处理「一次性问答」与「长程多轮」两套状态机,Extension一多逻辑就发散;chat()试图把这层复杂度收回到框架内部,对外只暴露一个一致的入口。

二、服务端会话存储:把记忆变成快照

多轮对话需要连续性,而会话管理的责任在Genkit的设计里交给了开发者自己决定。如果为agent添加存储能力,会话便转为服务端管理模式:服务端以快照(snapshot)形式持久化消息、自定义状态以及产出的工件(artifact),客户端仅需回传一个会话ID即可继续对话。文档给出的Firestore会话存储示例显示,通过设置快照集和检查点间隔,就能让agent拥有持久的记忆力。这种设计天然适用于持久聊天应用、共享设备等任何「不希望客户端承载完整对话历史」的工作流——比如一台公共信息亭、一个被多个坐席共用的客服agent,对话状态留在服务端,前端只管传ID。

三、为什么重要:Agent开发的「标准化」信号

Genkit本身已支持TypeScript、Go、Dart与Python等语言,定位是「构建全栈、AI驱动及智能体应用」的开源框架。Agents API的推出,释放出一个信号:Agent开发的竞争正从「谁的模型更强」下沉到「谁把工程抽象做得更省心」。当多轮、工具环、流式、持久化这些能力被框架收敛为统一的chat()调用,中小团队构建生产级Agent的门槛被显著拉低,也更利于把Agent能力嵌进既有Web与移动应用。对一个要靠生态吃饭的云厂商而言,框架层的易用性,往往比单次benchmark更能决定开发者的去留。

四、客观看:预览阶段的红利与前提

红利明确:它把Agent开发里最重复的「管道」工作标准化,让团队把精力放回业务本身,且与谷歌云、Firestore、Gemini API的绑定又顺又自然。但边界也要摆清:其一,Agents API目前在TypeScript与Go中处于预览阶段,谷歌明确提醒此版本可能在次版本更新中引入破坏性变更,生产采用需谨慎评估升级成本;其二,使用该能力需启用Genkit的实验性支持选项,意味着它尚未进入稳定承诺期;其三,会话持久化、工具调用等能力需要开发者自行接入存储与后端,框架提供的是抽象而非开箱即用的托管服务——它降低的是编码复杂度,不是架构决策的责任。总体而言,Genkit Agents API未必是颠覆性的技术突破,但它指对了Agent工程化的方向:把混乱的管道,收进一个能信任的接口里。