Gemini 3.5 Flash:速度翻 4 倍,Google 把赌注押在了 Agent 上

2026-05-20 21 预计阅读时间:1 分钟
来源:oschina.net AI 摘要 原文链接

免责声明:本文为 AI 摘要整理,建议结合原文阅读。摘要可能省略上下文、版本差异或边界条件,不作为官方说明。

预计阅读时间:10 分钟

Google I/O 2026 上,Gemini 3.5 Flash 正式亮相。这不是一次常规的模型迭代——从命名到定位,Google 明确把"Agentic"写进了产品基因。3.5 Flash 超越了上一代 3.1 Pro 在多项硬核基准上的成绩,同时把推理速度拉到 4 倍。对正在搭建 Agent 系统的开发者来说,这个组合值得认真拆解。

基准数字背后的信号

先看三个最关键的基准:

基准 Gemini 3.1 Pro Gemini 3.5 Flash 说明
Terminal-Bench 2.1 76.2% 终端命令生成与执行,衡量模型在真实 shell 环境中的行动能力
GDPval-AA 1656 Elo 通用决策与规划,Agent 场景的核心指标
MCP Atlas 83.6% 工具调用协议适配,直接反映模型对接外部 API 的准确度
CharXiv Reasoning 84%+ 多模态推理,图表/文档理解

三个基准的共同指向:模型不再只是"想",而是"做"。Terminal-Bench 测的是模型能不能在真实终端里写出可执行的命令链;GDPval-AA 测的是面对多步骤任务时规划和决策的质量;MCP Atlas 测的是模型能不能准确调用外部工具——这三项恰好覆盖了 Agent 从感知→规划→执行的全链路。

3.5 Flash 在这些维度上全面超越 3.1 Pro,意味着 Google 把"行动能力"从 Pro 级别下放到了 Flash 级别。这是一个明确的信号:Agent 不再是高端模型的专属功能,而是基础模型的标配能力。

4 倍速度意味着什么

"4 倍速度"不是营销口号,它直接改变了 Agent 系统的架构约束。

传统 Agent 循环是:感知→推理→规划→执行→反馈→再推理。每一步都依赖模型调用,延迟叠加后,一个 5 步任务可能要等 30 秒以上。用户体感是"慢且不确定"。

Flash 级别的推理速度把单步延迟压到毫秒级,这意味着:

  • 多步 Agent 可以用更短的 step 间隔做更频繁的规划修正,而不是一次性赌一个大计划。
  • 实时交互场景(代码助手、终端 Agent)终于能跟上人类的操作节奏
  • 成本侧同步下降——Flash 定价历来低于 Pro,速度更快意味着同等预算下能跑更多轮次。

对开发者来说,4 倍速度不是"快了一点",而是从"能用"到"好用"的门槛跨越

用 Gemini 3.5 Flash 搭一个终端 Agent

下面是一个基于 Google GenAI SDK 的最小终端 Agent 示例。它接收用户指令,规划执行步骤,调用 shell 命令,并根据输出决定下一步。这个模式可以直接扩展到更复杂的 MCP 工具链。

前置条件:安装 google-genai SDK,设置 GOOGLE_API_KEY 环境变量。模型 ID 为 gemini-3.5-flash(实际发布后可能为 gemini-3.5-flash-001,请以官方文档为准)。

import subprocess
import json
from google import genai

client = genai.Client()

SYSTEM_PROMPT = """你是一个终端执行 Agent。用户给你一个任务,你需要:
1. 将任务拆解为可执行的 shell 命令步骤
2. 每一步只输出一条命令,格式为 JSON: {"command": "具体命令", "reason": "为什么执行这条"}
3. 等待执行结果后再决定下一步
4. 任务完成后输出 {"done": true, "summary": "任务总结"}

重要:只输出 JSON,不要输出其他内容。每条命令必须是安全的、可撤销的。"""

def run_agent(task: str, max_steps: int = 10):
    conversation = [
        {"role": "user", "parts": [{"text": f"任务: {task}"}]},
        {"role": "model", "parts": [{"text": SYSTEM_PROMPT}]},
    ]

    for step in range(max_steps):
        response = client.models.generate_content(
            model="gemini-3.5-flash",
            contents=conversation,
        )
        reply = response.text.strip()
        print(f"\n[Agent Step {step + 1}] 模型回复:\n{reply}")

        # 解析模型输出的 JSON
        try:
            action = json.loads(reply)
        except json.JSONDecodeError:
            print("模型输出非 JSON,终止。")
            break

        if action.get("done"):
            print(f"\n✅ 任务完成: {action['summary']}")
            break

        cmd = action.get("command", "")
        reason = action.get("reason", "")
        print(f"  原因: {reason}")
        print(f"  执行: {cmd}")

        # 执行 shell 命令
        result = subprocess.run(
            cmd, shell=True, capture_output=True, text=True, timeout=30
        )
        output = result.stdout + result.stderr
        print(f"  输出:\n{output[:500]}")

        # 将执行结果反馈给模型,让它决定下一步
        conversation.append({"role": "model", "parts": [{"text": reply}]})
        conversation.append({
            "role": "user",
            "parts": [{"text": f"命令执行结果:\n{output[:2000]}"}],
        )

# 运行示例:查找当前目录下最大的 Python 文件
run_agent("找出当前目录下体积最大的 .py 文件,并显示它的行数和前 5 行内容")

这个 Agent 的核心设计是单步输出 + 执行反馈循环。3.5 Flash 的速度优势在这里直接体现:每一步推理延迟极低,用户几乎不需要等待。你可以把 subprocess.run 替换为任何 MCP 工具调用——这正是 MCP Atlas 基准所测量的能力。

MCP 工具声明:让模型知道它能调用什么

Gemini 3.5 Flash 对 MCP(Model Context Protocol)的适配是它 Agent 定位的关键支撑。在实际项目中,你需要告诉模型有哪些工具可用。以下是一个 MCP 工具声明的 YAML 示例,可以嵌入到 Agent 配置中:

# agent_config.yaml — Agent 工具声明
agent:
  model: gemini-3.5-flash
  max_steps: 15
  tools:
    - name: read_file
      description: "读取指定路径的文件内容"
      parameters:
        path: { type: string, required: true }
    - name: run_command
      description: "在终端执行 shell 命令,超时 30 秒"
      parameters:
        command: { type: string, required: true }
        timeout: { type: integer, default: 30 }
    - name: search_web
      description: "搜索互联网获取最新信息"
      parameters:
        query: { type: string, required: true }
    - name: write_file
      description: "将内容写入指定路径的文件"
      parameters:
        path: { type: string, required: true }
        content: { type: string, required: true }
  safety:
    blocked_commands: ["rm -rf", "sudo", "mkfs"]
    require_confirmation: ["write_file", "run_command"]

在 SDK 调用中,你可以通过 tools 参数将这些声明传入模型。3.5 Flash 在 MCP Atlas 上 83.6% 的得分,意味着它对这类结构化工具声明的理解和调用准确度已经相当可靠。

落地前的几个现实考量

速度 ≠ 通用智能。 3.5 Flash 在 Agent 和编程基准上表现突出,但复杂推理、长上下文深度分析等场景,3.5 Pro 仍然有优势。选模型要看任务结构,不是看哪个"更强"。

Agent 的可靠性瓶颈不在模型,在工具。 模型能正确调用 MCP 工具,不代表工具本身不会出错。shell 命令执行有副作用,API 调用有网络抖动。生产环境中,每一步都需要错误处理和回滚机制——上面的示例代码只覆盖了最基本的情况。

成本结构变了。 Flash 级别的定价 + 4 倍速度,意味着 Agent 循环的边际成本大幅降低。但多步 Agent 的总 token 消耗仍然会随步骤数线性增长。设定 max_steps 上限不只是安全措施,也是成本控制。

多模态能力值得单独测试。 CharXiv Reasoning 84%+ 的成绩说明 3.5 Flash 在图表和文档理解上有实质提升。如果你的 Agent 需要处理截图、PDF、数据可视化,这个能力直接可用——但建议先在自己的数据分布上做一轮评估。


Gemini 3.5 Flash 的发布,本质上是 Google 对 Agent 时代的一次架构表态:把行动能力做进基础模型,把速度拉到交互级,把成本压到可循环。 对开发者来说,现在是用 Flash 级模型搭 Agent 原型的最佳窗口——速度够快、工具适配够好、成本够低。下一步要验证的是:在你的具体业务流程里,这个模型的规划质量和工具调用准确度,能不能撑住一个生产级 Agent。


相关推荐