Gemini 交互式对话 API 指南
在 Google Agent Platform 上构建有状态、多轮的 Gemini 交互。
文档说明使用 ADC、项目、区域和服务端存储,并区分 store=True/False,具备一定的数据流透明度;但未说明最小 IAM 权限、敏感数据与提示词保留风险、代理工具的权限边界、用户确认、费用控制或失败回滚,因此从满分扣除较多,得 11/25。
核心路径覆盖 Python、JS/TS、REST、多轮、流式、结构化输出和函数调用,且提醒按步骤类型读取结果;但没有测试、CI、版本锁定后的兼容性证据,也缺少认证失败、无效 agent、网络中断、流式异常、工具错误和 schema 不匹配的诊断处理,静态上仅属合理 happy path,得 8/20。
目标用户和适用场景较明确,涵盖多轮对话、后台执行、流式、结构化输出和函数调用,并明确 GEAP 需要 provisioned agent;但未充分定义不适用范围、权限前置条件、输入输出契约及中文/中国大陆网络环境适配,核心服务依赖 Google 海外云端可达性,得 10/15。
技能有清晰的分节结构、安装入口、代码示例、数据模型和存储说明;仓库 README 提供 Apache-2.0、维护说明、问题反馈和安装方式。但该技能自身没有 changelog、明确维护负责人、版本兼容矩阵、FAQ、故障排查或依赖安装说明,且文档中的模型与 API 版本声明缺少稳定性说明,得 8/15。
示例直接覆盖常见 Interactions API 操作,并提供 Python、JS/TS 与 REST 形式,理论上可作为起点;但 agent 必须预先 provisioned,认证、权限、服务启用和环境配置仍需用户自行完成,且没有静态可验证的完整成功输出或替代方案比较,因此按静态上限给 7/15。
文档包含指向 Google 官方文档的链接、具体 SDK 版本、端点、事件和步骤字段,具备部分可审计性;但提供的响应示例和版本/模型断言无法在本次静态审查中独立复现,仓库材料未展示针对该技能的测试套件、CI 覆盖或第三方执行证据,因此得 4/10。
- 交互默认 store=True,可能将提示词、个人信息或工具相关数据保留在服务端;使用敏感数据前应明确确认保留期限、访问范围和关闭方式。
- 文档要求执行 gcloud 登录、启用 API 和调用云端代理,但未给出最小 IAM 权限、费用控制或用户确认流程。
- 模型名称、SDK 版本和 API 行为属于易变信息;应在实际使用前核对对应 revision 的官方文档和服务可用性。
- 流式、函数调用和异常路径缺少错误处理示例;不要把示例视为经过验证的生产实现。
- 核心功能依赖 Google Cloud/Gemini Enterprise Agent Platform 的网络可达性,可能受中国大陆网络、账号区域和企业策略影响。
这个 Skill 能做什么,适合哪些场景?
该技能指导开发者在 Gemini Enterprise Agent Platform 上使用有状态、由服务器管理的 Gemini Interactions API。内容覆盖认证、客户端初始化、单轮和多轮对话、实时流式输出、结构化输出及函数调用。它同时提供 Python、TypeScript/JavaScript 和 REST/curl 示例。使用该技能需要已配置 Google Cloud ADC、启用 Vertex AI API,并针对已配置的 Agent,而不是直接调用基础模型。
指导用户执行 gcloud ADC 登录并启用 aiplatform.googleapis.com;使用 Google Gen AI SDK 初始化 Python 或 TypeScript/JavaScript 客户端;向 Interactions API 创建单轮或基于 previous_interaction_id 的多轮请求;处理流式事件;使用 Pydantic 或 TypeScript schema 获取结构化 JSON;识别 function_call 步骤、执行本地函数并提交 function_result;通过 REST endpoint 使用 curl 发送同步、多轮和 SSE 流式请求;解释 steps、content、output_text、存储和保留行为。
- 需要在 Google Agent Platform 上维护服务器端会话状态的 Python 或 JavaScript 开发者。
- 需要实时显示模型增量输出的交互式应用开发者。
- 需要让模型调用本地函数并把结果提交回对话的工程师。
- 需要按 Pydantic 或 TypeScript schema 生成结构化 JSON 的应用开发者。
- 需要通过 curl 或其他非 Python/JavaScript 环境调试 Interactions API 的开发者。
这个 Skill 有哪些优点和局限?
- 覆盖 Python、TypeScript/JavaScript 及 REST 三种调用方式。
- 同时说明多轮状态、流式事件、结构化输出和函数调用。
- 明确区分现代 steps schema、output_text 和各类步骤类型。
- 包含认证、环境变量和 Agent Platform 定向配置示例。
- 必须使用已配置的 Agent;源材料说明 Agent Platform 尚不支持通过 model 参数直接调用基础模型。
- 要求使用 Google Gen AI SDK >= 2.3.0,旧版 Google SDK 不受支持。
- 示例依赖 Google Cloud 项目、ADC、API 启用状态和网络访问。
- 源材料未提供测试套件、版本兼容矩阵或成本说明。
如何安装这个 Skill?
运行 npx skills add google/skills,并在交互式选择中选择 skills/cloud/gemini-interactions-api。该仓库是包含 90 个技能的集合,源材料未说明单独安装该技能的其他命令或发布包。
如何使用这个 Skill?
安装后,可向兼容的 Agent Skill 客户端提出:请指导我使用 Google Gemini Interactions API,在 Agent Platform 上实现一个支持多轮状态、流式输出和函数调用的 Python 示例。 使用前先运行 gcloud auth application-default login 和 gcloud services enable aiplatform.googleapis.com,配置 GOOGLE_GENAI_USE_ENTERPRISE=true、GOOGLE_CLOUD_PROJECT 与 GOOGLE_CLOUD_LOCATION=global,并提供已配置 Agent 的 ID。
这个 Skill 与同类方案有什么区别?
该技能明确将 Google Gen AI SDK 与 google-cloud-aiplatform、@google-cloud/vertexai 和 google-generativeai 等旧版 SDK 区分开来;这些旧版 SDK 不支持 Interactions。它也指出 Agent Platform 的 agent 目标方式不同于使用 model 的其他 Gemini API 场景。