Agent 类项目拷打追问链

P2Agent 类项目深度 5 层更新于 2026-08-20

结构:三段(卡动机 → 要基线与过程 → 压今天还会不会这么做)+ 「是不是 workflow 硬叫 Agent」压力分支

第一段 · 卡动机

拷问 1这个任务为什么需要 Agent?用写死的流程做不到吗?

期望要点判据是「路径是否确定」。合格的回答:任务的步骤数和顺序无法预先确定、需要根据中间结果决定下一步、失败后需要换策略重试。加分:主动说「其中八成的请求路径其实是确定的,那部分我们走的是写死流程,Agent 只吃剩下两成的长尾」。

判别信号:能说出「Agent 更慢、更贵、更不可预测,所以能不用就不用」的,是真掂量过;答「Agent 是趋势 / 更智能」的,进压力分支。

分叉:如果描述出来的流程步骤固定、分支有限 → 直接进压力分支:「你这个听起来每一步都是确定的,和 if/else 加几个工具的区别在哪?」这一问答不好,整个项目的可信度就塌了。

拷问 2当时的基线是什么?不上 Agent 能做到多少?

期望要点:与 P1 同理,必须有基线。Agent 项目的合理基线是「规则分类 + 写死 workflow」,要能说出它覆盖了多少比例、剩下哪部分覆盖不了。

判别信号:没有基线的 Agent 项目,通常是「先决定要做 Agent,再去找场景」,顺序反了。

第二段 · 要基线与过程

拷问 3工具是怎么设计的?描述和参数怎么写模型才选得准、填得对?

期望要点:能讲出具体的设计动作:工具描述写「什么时候该用、什么时候不该用」而不只是「做什么」;参数尽量用枚举而不是自由文本;工具失败时的返回要能指导下一步(返回「订单号格式错误,应为 18 位数字」远好于返回「查询失败」)。加分:提到工具数量多了之后模型会选错,解决办法是分组、按阶段暴露,或者做工具检索。

判别信号:能说出「工具返回的错误信息本身是给模型看的提示词」的,是真调过;只说「写清楚描述」的,浮在表面。

分叉:提到 MCP → 追它解决了函数调用的什么问题(接入形态的标准化)、接第三方服务的安全风险(工具投毒、越权、描述里藏指令)。

拷问 4循环的退出条件和死循环兜底怎么设计的?

期望要点:至少三条:最大轮次上限无进展检测(连续几轮没有新信息或重复调用同一工具同一参数)、成本上限加分:提到「工具结果默认是上下文的永久居民,成本按剩余轮次复利」,所以要削减或摘要工具结果。

判别信号:只说「设了最大轮次」的,是最低配;能说出「重复调用同参数要当作无进展」的,被死循环坑过。

拷问 5上下文放不下了怎么办?压缩的时候什么必须保真?

期望要点:能说清压缩策略(滑动窗口 / 摘要 / 重要性过滤)的取舍,以及压缩的两条硬要求要少次大压(频繁小压会反复击穿缓存前缀),以及关键约束必须活在结构化状态里而不是对话历史里——用户说过的"不要退款只要换货"这类约束一旦被摘要吞掉,Agent 就会做出违背用户意图的动作。

判别信号:能说出「关键约束要放进结构化状态,不能指望摘要保住」的,吃过亏;只说「用摘要压缩」的,还没遇到过丢约束的事故。

拷问 6它会调用写操作吗?护栏放在哪几层?

期望要点护栏不能只写在提示词里。合格的三层:① 权限层——Agent 拿到的凭证本身受限,它不该有超额度的操作权限;② 工具层的不变量断言——写在工具语义里的负向断言(金额不超过订单实付、状态机不得非法跳转、同一单十分钟内不得重复通知);③ 分级自治——按不可逆程度决定自动执行 / 先确认 / 人工签字,而不是按置信度。加分:主动提幂等,因为重试、超时、用户重复提交都会导致重复执行。

判别信号:能把「权限层」和「工具层断言」分开的,理解纵深防御;能主动提幂等的,真做过写操作 Agent。

拷问 7这个 Agent 怎么评测的?只看最终结果会漏掉什么?

期望要点三层收尾——用例层(真实任务回放,看结果)、指标层(成功率、轮次分布、成本、转人工率)、不变量层(跑对抗用例,断言「永远不会发生」的事,任何一条命中就阻断发布)。要能说出只看结果会漏三类:结果对了但过程危险(试过越权被断言拦下)、结果对了但成本失控(绕了十几轮)、结果错了但错得隐蔽(回了段合理模板,用户没追问就算解决)。

加分:说得出负向断言优于参考轨迹匹配——正确的路径有很多条,但不该发生的事是有限且明确的,拿标准轨迹去对比会把合理的替代路径判成错误。还要说得出评测层级下沉顺序:端到端 → 轨迹级 → 组件级,只在上一级掉分时下沉。

判别信号:这一问是 Agent 项目的主分水岭。能讲出不变量层的人,一定做过上线;只说「看任务成功率」的,停在 demo。

拷问 8成本怎么控的?每轮都调模型很贵。

期望要点:走成本三刀——先切输入侧/输出侧,Agent 的账通常压在输入侧(每轮重发前缀 + 工具结果堆积)。可操作的动作:削工具结果(复利效应最大)、保住前缀缓存(工具定义顺序要确定、静态前缀里别放时间戳、中途别改 effort 档位)、按任务类型分档降 effort(注意它同时会减少工具调用次数,可能导致返工)、把确定路径从 Agent 里摘出去

判别信号:能说出「工具结果是上下文永久居民、成本按剩余轮次复利」的,算过账;只说「加缓存」的,没做过归因。

第三段 · 压「今天还会不会这么做」

拷问 9放到今天,这套还会这么做吗?

期望要点:能点到 2026 年的真实变化:推理模型已内化部分思维链,harness 变薄但不消失(该薄的是提示工程,不该薄的是权限、护栏、可观测);答得浅要提 effort 档位而不是加提示词;工具接入形态趋于标准化;渐进式披露让「把所有说明塞进系统提示」成为反模式。同时要能说不变的部分:护栏、分级自治、不变量断言这些和模型能力无关,今天照做。

判别信号:能区分「变薄的部分」和「不变的部分」的,判断力好;全盘说「现在模型强了不需要那么多工程」的,是没上过线。

拷问 10你用了多 Agent 吗?如果用了,它比单 Agent 好在哪、贵在哪?

期望要点:多 Agent 的代价要说得出来:上下文不共享导致信息损失token 大致按参与方线性叠加调试难度指数上升(错在哪一步、谁的责任说不清)。合格的判据是:任务确实可以并行且子任务之间弱耦合,才值得多 Agent;只是「角色扮演式分工」(规划师、执行者、审查者)通常是负收益。

判别信号:说「多 Agent 更智能」的,没量过成本;能说「我们试过多 Agent,后来砍回单 Agent 加子任务」的,是真做过。

拷问 11这个项目最大的遗憾是什么?

期望要点:同 P1,考诚实度。Agent 项目常见的真实遗憾:不变量断言加晚了、可观测做晚了导致排障全靠猜、一开始把太多确定流程塞进了 Agent。

这份模板怎么用

候选人简历上写了「Agent」「智能体」「自动化助手」「多智能体协作」,就走这条链。

Agent 类项目的造假率是三类里最高的——因为「Agent」这个词的门槛很低:接了两个工具、跑了个循环,就可以写成 Agent 项目。所以这条链比 P1 多一个专门的压力分支:判断这到底是 Agent 还是一个被硬叫成 Agent 的 workflow

用法纪律与 P1 相同:按段推进、每问留分叉、允许答不知道。

三段结构总览

原文示意
第一段 卡动机     ── 为什么需要 Agent 而不是 workflow?    → 挡「硬叫 Agent」
第二段 要基线与过程 ── 工具、循环、记忆、护栏、评测、成本   → 挡「跑通 demo 就写简历」
第三段 压今天       ── 换成今天你还会这么做吗?             → 挡「知识停在做项目那一年」

压力分支:「这是不是一个 workflow 硬叫 Agent?」

第一段触发这条分支时,按顺序压:

  1. 「你的流程一共有几个分支?分支条件是谁定的?」——分支有限且条件写死,就是 workflow。
  2. 「有没有出现过模型自己决定多调一次工具的情况?举个例子。」——举不出来,就是 workflow。
  3. 「如果我把模型换成一个只会填参数的分类器,你的系统还能跑吗?」——能跑,就是 workflow。
  4. 「那这样叫 workflow 有什么不好?」——这一问是给台阶的。能坦然说「其实它就是个 workflow,这样更稳更便宜,我们当时叫它 Agent 是为了立项」的候选人,诚实度加分,不应该扣分。继续硬撑说它是 Agent 的,才该扣分。

排障分支:固定住一个变量,把问题一分为二

原文示意
固定「文档」       → 切开 检索侧 / 生成侧      (Agent 里的检索工具答非所问)
固定「输入」       → 切开 流量侧 / 系统侧      (金丝雀集,线上突然变差)
固定「模型段」     → 切开 模型侧 / 链路侧      (延迟变高)
固定「token 类别」 → 切开 输入侧 / 输出侧      (成本变高)
固定「变更集」     → 切开 变更侧 / 环境侧      (上线后出事故)

Agent 场景还要加一刀专属的:固定「轨迹」——把一条真实失败轨迹逐步回放,切开「工具选错」/「参数填错」/「结果理解错」,这三类的修法完全不同(分别改描述、改 schema、改结果格式)。

危险信号清单

出现下列任意两条,基本可以判定项目虚高:

  • 说不出为什么不用 workflow
  • 没有基线,直接就是 Agent 方案
  • 循环只有最大轮次一条兜底
  • 护栏全写在提示词里
  • 有写操作但说不出幂等怎么做
  • 评测只有任务成功率,没有轨迹层和不变量层
  • 说不出单次任务的平均轮次和平均成本
  • 用了多 Agent 但说不出它贵在哪
  • 排障靠「重跑几次看看」,没有轨迹回放

判分档位

档位 画像
60 分 讲得清工具调用机制和循环结构,但没有基线、护栏只在提示词里、评测只看成功率。跑通过 demo。
75 分 有基线、有分级自治、有轨迹可观测,讲得出一次完整的失败定位。上过线。
90 分 上面全有,且:有不变量层作为发布闸门;说得出多 Agent 的代价并解释为什么用或不用;成本能按输入输出结构归因;被问「今天还会不会这么做」时能区分变薄的部分与不变的部分。做过,且知道边界在哪。

关联题目

Q3-01/Q3-02(Agent 与 workflow 的分界)、Q3-04(工具 schema 设计)、Q3-05(并行调用与工具结果过长)、Q3-06(ReAct 循环与死循环兜底)、Q3-08/Q3-10(MCP 与第三方安全风险)、Q3-13(压缩丢关键决定)、Q3-16(多 Agent 什么时候是灾难)、Q3-18/Q3-19(护栏与分级自治)、Q3-23(成本与延迟)、Q5-05(轨迹评估与不变量断言)Q5-10(三层收尾)Q8-03(工单 Agent 完整设计)

关联题目