面试情景讲工程判断 · 文中公司名与数字均为示意
同一个“查订单”需求,有人的 Agent 调了17次工具,有人只用4次。差的往往不是模型智商,是工具契约写没写清。
一句话先说清
工具契约(Tool Contract):给每个工具写清楚“什么时候调、怎么停、失败怎么办”的一张说明卡。下文所有字段都用中文说。
一、面试现场
面试官提问
“查一个订单,光工具就调用了 17 次,怎么收敛?”
京东面试官把场景压得很具体:这题看似在考模型规划,实际在考你能不能区分“模型乱调”和“工具契约太碎”。
**直接回答:**工具契约碎,Agent 就会绕路。
17 次工具调用不一定说明模型笨。很多时候,是工具像数据库字段一样碎,返回值又不给停止信号。
判断工具膨胀,先看调用轨迹(trace)里有没有重复调用、无效重试和缺失停止条件。别一上来就怪模型规划差。
这张卡把工具从“能调”升级到“知道何时调、何时停、失败后怎么办”。
工具契约写不清,光靠限制调用次数只能拖一下;真正降调用,得重写工具边界。
二、大多数人怎么答的
典型翻车回答
“给 Agent 加一句少调用工具,或者限制最多调用 5 次。”
**它的有效区间:**设个次数上限,能防止一次请求无限膨胀。
**天花板在这里:**如果工具没有停止条件、返回不指导下一步,限制次数只会让它更早失败。
限制最多 5 次调用可以防爆,但不能让 Agent 知道哪一步已经完成。
先看调用轨迹:同一工具、同一参数、同一错误反复出现,基本就是契约问题。
三、深度解析
收敛工具调用,要从工具契约改起:工具要像一个“业务动作”,不要像一个“数据库字段”。
查一个订单本来一次就能答完,Agent 却调了 17 次。不是它笨:你把“查订单”拆成了查用户、查权限、查物流一堆小工具,每个只吐一段零碎字段,还从不告诉它“到这儿就够了”。于是它一步步试、物流和状态来回重查,累计就是 17 次。
三件事就能把 17 次调用压到 4 次:合并成一个“一次问清”的工具、让返回自己说“答完了”、把重试塞进工具代码,别让 Agent 自己扛。
**改前 / 改后对照:**一条调用轨迹就能把工具契约问题讲清楚。
| 改前 | 问题 | 改后 | 效果 |
|---|---|---|---|
| 查用户→校权限→查订单→物流/状态反复重查,累计 17 次 | 工具太碎,又没有停止条件 | 合成一个“查订单送达摘要” | 一次返回订单、物流和下一步 |
| 只返回零散字段 | Agent 得自己拼状态 | 返回状态、原因、“可停”标记 | 标记“可停”时就停止 |
| 失败后反复查物流 | 没有重试策略 | 超时重试一次,权限失败不重试 | 失败后不再无谓重查 |
别把它当成填表任务——写一个工具时,顺手对一眼这张清单就够:何时用、何时不用、必填参数、返回什么、停止条件、重试策略、审计留痕。
最容易漏的是第二刀。Agent 反复查,多半不是没查到,是返回里全是数据、就差一句“到此为止”,它不确定自己已经拿到答案。一个明确的完成标记,比在提示词里写十句“别重复调用”都管用。
关键是把好上工具的门:没有停止条件和错误策略的工具,默认就别暴露给 Agent 自由选择。
我的建议是先改最常被重复调用的工具:补上返回状态、失败原因、停止条件和重试策略。
四、面试官追问链
追问会绕着预算、工具粒度和重复调用打转。答题主线始终是:把工具契约落成根因。
追问 1
追问点:调用预算还有必要吗
有,但预算是保险丝,不是根因修复。
追问 2
追问点:工具应该大还是小
面向用户意图要大,面向内部实现可以小但别暴露给 Agent。
追问 3
追问点:重复调用怎么查
把调用轨迹按(工具名、参数)分组计数,某一组次数异常高,就是重复调用热点。
五、落地案例:查订单从 17 次到 4 次
举个示意例子(数字非实测):一个查订单场景,工具调用从 17 次收敛到 4 次,关键是把内部字段工具收成业务摘要工具。
最初暴露了太多内部查询工具。Agent 每一步都能走,但不知道什么时候该停。
第 1 步 · 合并摘要工具
合并成一个“查订单送达摘要”工具,一次返回订单、物流、要不要下一步。
↳ 结果:17 次 → 8 次
第 2 步 · 写停止条件
工具标记“可停”时必须停止,不再补查。
↳ 结果:8 次 → 5 次
第 3 步 · 标重试策略
权限失败不重试,临时超时只重试一次。
↳ 结果:5 次 → 4 次
这次怎么验
17 次降到 4 次,靠的是工具契约变清楚,不是单纯限制调用次数。
改完后,业务工具一次返回订单状态、物流状态、失败原因和是否需要下一步。
这时预算仍然保留,但它只是保险丝;真正减少调用的是工具边界和停止条件。
六、本课总结
一句话总结
工具契约碎,Agent 就会绕路。
面试可背答案
工具不是越细越好。Agent 调不动,很多时候不是模型笨,是工具没有业务语义、没有停止条件、没有失败策略。
这套做法适合工具多、调用链长的 Agent;如果你的 Agent 只有两三个工具、一步就能出结果,先别急着套模板。
学AI大模型的正确顺序,千万不要搞错了
🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!
有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!
就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋
📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇
学习路线:
✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经
以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!
我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~