Gemini CLI 引入子代理机制与并行代理工作流,实现任务分发与多模型协同
InfoQ 中文2026/04/23 19:00机翻/自动摘要/自动分类
0 阅读
内容评分
技术含量
8/10
营销水分
4/10
摘要
Gemini CLI 最新版加入子代理机制和并行工作流,支持在同一次对话中动态创建并发执行的子任务,可指定不同模型实现强弱分工。通过 YAML 定义并行任务,CLI 基于 asyncio 调度并聚合结果,提供状态持久化、错误容错和可调并发度。此特性简化复杂任务拆解、提升多模型协同效率,适用于文档审阅、代码审计等企业级自动化场景。
正文
Google Gemini 团队在最新的 Gemini CLI 版本中加入了子代理(sub‑)机制,并支持并行代理工作流(parallel workflow)。子代理允许在同一次对话中动态创建多个子任务,每个子任务由独立的 实例或工具链处理,完成后再将结果汇总返回给主代理。并行工作流进一步提升了吞吐量,多个子代理可以同时执行,系统会在所有子任务完成后统一返回合并结果。
关键特性
- 子代理创建 API:
gemini subagent create --model=<model> --prompt='<prompt>',返回子代理 ID,后续可通过gemini subagent run <id>触发执行。 - 并行调度:在工作流文件(YAML)中使用
parallel:列表定义多个子任务,CLI 会自动并发调度。 - 结果聚合:子代理返回的结构化 JSON 会被主代理统一解析,支持自定义聚合函数。
- 跨模型协同:子代理可指定不同模型(如 Gemini‑1.5‑Flash、Gemini‑1.0‑Pro),实现强弱模型分工。
示例工作流
workflow:
parallel:
- name: 文本摘要
model: gemini-1.5-flash
prompt: "请对以下文章做 150 字摘要:{{input}}"
- name: 关键要点提取
model: gemini-1.0-pro
prompt: "列出文章的 5 条关键要点"
aggregate:
method: combine
format: markdown
执行 gemini run workflow.yaml --input "<article>" 后,CLI 会并行调用两个子代理,完成后返回合并的 Markdown 报告。
实现细节
- 调度层采用基于 asyncio 的任务池,默认并发数为 CPU 核心数的两倍,可通过
--max-concurrency调整。 - 子代理状态管理使用本地 SQLite 数据库记录 ID、模型、输入、输出及执行时间,支持
gemini subagent status <id>查询。 - 错误容错:子代理超时或异常时,主工作流可配置 fallback 策略(重试、使用备用模型或跳过)。
影响与使用场景
- 复杂任务拆解:如文档审阅、代码审计等需要多步骤处理的场景,可通过子代理并行完成,提高效率。
- 多模型协同:利用不同模型的专长(快速生成 vs. 高精度推理),实现成本与性能的平衡。
- 开发者友好:CLI 与 YAML 工作流的组合降低了编排门槛,无需自行实现分布式调度。
Gemini CLI 的子代理与并行工作流为 AI 架构提供了更灵活的任务分发模型,预计将在企业级自动化和研发工具链中得到广泛应用。