当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > Gemini 3.7 Flash 的 Agent 任务怎么验收:多步执行、工具结果与最终状态

Gemini 3.7 Flash 的 Agent 任务怎么验收:多步执行、工具结果与最终状态

来源:17golang原创 2026-08-27 16:46:18 0浏览 收藏

Agent 接口最容易让验收变成一句“模型返回了答案”。但 Gemini 的托管 Agent 会在 Linux sandbox 里推理、运行代码、管理文件,甚至访问网络;真正要验收的是这条执行链有没有按预期结束,工具结果有没有回到正确回合,以及权限边界是否仍然可控。

把 Agent 任务当成一条可观察的状态链验收:先确认使用的模型和 agent_config,再逐步记录工具调用与结果,最后只把明确的 model_output 和终态交给用户。

要点速览
  • Gemini 3.7 Flash 是 Google 文档列出的托管 Agent 默认模型,任务运行在隔离的 Linux sandbox 中。
  • 一次 Agent 交互可能包含推理、工具调用、工具结果和最终 model_output,不能只看最后一段文本。
  • 外部工具应遵循最小权限,网络访问最好用 allowlist 限制,凭据不直接暴露给 sandbox。
  • 验收至少覆盖执行步骤、工具结果、最终状态和人工复核四个检查点。

Gemini 3.7 Flash Agent 到底执行了什么

Google 的 Agents overview 把托管 Agent 描述为可配置的 Agent harness:一次 API 调用会提供 Linux sandbox,Agent 可以在其中推理、执行代码、管理文件和浏览网页。文档列出的 Antigravity agent 默认由 Gemini 3.7 Flash 驱动,也允许通过 agent_config 配置其他 Gemini 模型。

这决定了验收对象不是单一字符串,而是一组按时间排列的执行步骤。应用侧至少要能区分用户输入、模型思考、工具调用、工具结果和最终 model_output。如果只保存最后答案,出了问题就无法回答“工具是否真的执行过”以及“哪个结果影响了答案”。

Gemini 3.7 Flash Agent 从 agent_config 到工具调用、sandbox 结果再到 model_output 的执行链

先把多步任务拆成可检查的状态

在 Go 服务里,可以把每个事件归一成小型审计记录。这里的字段只描述验收需要的最小信息,不保存密钥和完整敏感输入。

type AgentStep struct {
    Kind   string // tool_call, tool_result, model_output
    Name   string
    Status string // running, succeeded, failed
    Ref    string
}

func acceptSteps(steps []AgentStep) error {
    if len(steps) == 0 {
        return fmt.Errorf("no agent steps")
    }
    toolCalls := map[string]bool{}
    for _, step := range steps {
        switch step.Kind {
        case "tool_call":
            if step.Ref == "" || step.Name == "" {
                return fmt.Errorf("invalid tool_call")
            }
            toolCalls[step.Ref] = true
        case "tool_result":
            if !toolCalls[step.Ref] {
                return fmt.Errorf("orphan tool_result: %s", step.Ref)
            }
            if step.Status == "failed" {
                return fmt.Errorf("tool failed: %s", step.Name)
            }
        case "model_output":
            if step.Status != "succeeded" {
                return fmt.Errorf("model output not final")
            }
        }
    }
    return nil
}

tool_result 必须能通过 Ref 找到前面的 tool_call,否则它只是孤立的外部数据。实际接入 SDK 时,KindNameRef 应由响应事件映射而来,不要让模型自己填一份“已成功”的验收 JSON。

工具结果返回后,为什么还不能马上判定成功

Gemini 文档将工具分为托管工具和自定义工具。Code Execution、URL Context 等托管工具在一次 API 调用内部完成;自定义 Function Calling 则需要应用执行函数,再把带有相同调用标识的结果回传给模型,模型可能据此继续发起下一次工具调用。

因此,tool_result 到达只说明一个阶段完成,不等于整个任务完成。验收逻辑要继续等待明确的 model_output,并检查没有未收口的工具调用:

func finalState(steps []AgentStep) (string, error) {
    pending := map[string]bool{}
    final := ""
    for _, step := range steps {
        if step.Kind == "tool_call" {
            pending[step.Ref] = true
        }
        if step.Kind == "tool_result" {
            delete(pending, step.Ref)
        }
        if step.Kind == "model_output" && step.Status == "succeeded" {
            final = "completed"
        }
    }
    if final == "" {
        return "", fmt.Errorf("missing model_output")
    }
    if len(pending) != 0 {
        return "", fmt.Errorf("pending tool calls: %d", len(pending))
    }
    return final, nil
}
Gemini Agent 通过 tool_call 与 tool_result 配对后,再以 model_output 和 completed 作为终态的验收路径

sandbox、网络和凭据是上线前的硬边界

隔离环境不是“可以随便放权限”的理由。官方建议只连接可信的外部工具和 API,按最小权限配置服务账号或 API key,并优先使用短期凭据。托管 Agent 默认有出站网络能力,生产场景应使用 network allowlist 缩小可访问域名。

检查项通过条件不通过时的动作
模型记录 gemini-3.7-flash 或明确的 agent_config拒绝把默认值当成业务契约
工具每个 tool_result 都匹配一个调用引用标记任务失败并保留事件链
网络allowlist 只包含任务需要的域名先收紧规则,再重新验证
凭据密钥经安全注入,不出现在 Agent 输入或日志中撤销暴露凭据并复核权限

还有一个经常被忽略的事实:托管 Agent 目前属于 Public Preview,官方明确建议在用于敏感工作流前复核 Agent 的动作和输出。这个提醒应进入发布门禁,而不是只放在 README 里。

最小可行的验收顺序

  1. 记录本次请求使用的模型、agent_config、工具清单和网络 allowlist。
  2. 按事件顺序保存 tool_calltool_resultmodel_output 的非敏感摘要。
  3. 用调用引用配对每个工具结果,检查失败分支是否被显式处理。
  4. 只有出现成功的 model_output 且不存在 pending tool calls,才写入 completed
  5. 对会改数据、访问外部系统或产生代码的结果安排人工复核,再进入业务动作。

常见问题

Agent 返回一段完整文字就算成功吗?

不算。至少要确认执行步骤收口、工具结果配对成功,并出现明确的最终输出状态。

托管 Agent 的 sandbox 可以访问任意网站吗?

默认出站网络能力较宽,生产任务应配置 network allowlist,只允许任务必须访问的域名。

为什么要保留工具调用引用?

因为自定义工具的结果必须回传到对应调用;没有引用就无法证明结果属于哪一轮,也无法可靠处理重试和失败。

Public Preview 的 Agent 能直接用于敏感流程吗?

不建议直接放行。应先复核 Agent 动作、输出、网络范围和凭据权限,再决定是否进入人工审批后的流程。

把“有答案”改成“可验收”

Gemini 3.7 Flash Agent 的价值在于把推理、代码执行、文件管理和工具协作串起来;工程风险也正来自这条长链。应用只要把 tool_calltool_resultmodel_outputcompleted 分开记录,再加上网络与凭据门禁,就能把一次不可解释的模型回答变成可复查的任务结果。

版本声明
本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
Go crypto/ecdh 密钥交换怎么落地:公钥序列化与共享密钥一致性Go crypto/ecdh 密钥交换怎么落地:公钥序列化与共享密钥一致性
上一篇
Go crypto/ecdh 密钥交换怎么落地:公钥序列化与共享密钥一致性
Windows on Arm 应用生态扩展:开发团队如何为原生与模拟运行做发布决策
下一篇
Windows on Arm 应用生态扩展:开发团队如何为原生与模拟运行做发布决策
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • ljg-skills -
    ljg-skills
    ljg-skills 是李继刚开源的 AI 技能与提示词集合,面向大模型使用者整理了一批可复用的 prompt、角色设定和任务技能模板,适合用于学习提示词设计、搭建个人 AI 工作流和沉淀团队常用智能体能力。
    5316次使用
  • MELO音乐 - AI 音乐生成平台,支持多模态创作能力
    MELO音乐
    MELO音乐是一站式AI视频与音乐制作助手,对标suno, udio的高品质体验。提供伴奏生成、原创写词、无损导出、哼唱识曲、混音变声等全套音频与短视频编辑工具。无论是流行Kpop、电音说唱、民谣古风、摇滚儿歌还是商用轻音乐,MELO为你免费谱曲,轻松做同款!
    4831次使用
  • UniScribe - AI 免费在线音视频转文字平台
    UniScribe
    UniScribe 是一款 AI 音视频转文字与内容整理工具,支持上传音频、视频文件或粘贴 YouTube 链接,自动生成转写文本、摘要、思维导图和关键问题,并支持多格式导出,适合会议记录、课程学习、访谈整理和内容创作复盘。
    4771次使用
  • 剧云 - 免费 AI 智能中文剧本创作平台
    剧云
    剧云是专业中文剧本创作平台,安全稳定运行十余年,集成AI编剧、剧本医生审核、人物小传、剧情关系图、大纲编写、多人协作、Word导入导出、版权管控功能,数据安全防护,轻松高效创作剧本。
    5032次使用
  • 万象有声 - AI 一站式有声内容创作平台
    万象有声
    万象有声,一个专为有声创作者打造的新一代智能有声内容创作平台。平台提供专业的智能拆章、智能画本编辑、AI配音、AI生成音效、后期制作、智能对轨、智能审听等有声创作全流程工具,可以帮助创作者高效、低成本创作出引人入胜的有声作品。立即体验,让有声书制作更简单!
    4979次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码