面试官皱眉:“你的 Agent 跑了10轮之后还靠谱吗”,我说:“靠谱啊,为啥不靠谱?”,面试官让我回去再想想。。。

发布时间:2026/6/25 13:31:06

面试官皱眉:“你的 Agent 跑了10轮之后还靠谱吗”,我说:“靠谱啊,为啥不靠谱?”,面试官让我回去再想想。。。 一、上下文漂移Agent 为什么跑着跑着就偏了现象目标悄悄变了你让 Agent “分析这份销售数据找出下滑原因”理想流程是读数据 → 分析趋势 → 定位原因 → 输出报告。实际跑起来可能是读数据 → 发现格式有问题开始修格式 → 修完格式又发现某个字段缺失去查文档 → 查文档时被另一段内容吸引开始做竞品分析 → 跑了10步原始任务找出下滑原因一个字没碰。这就是上下文漂移Agent 的执行方向悄悄偏离了原始目标。不是模型变傻了是它在每一步都在做当前上下文下最合理的下一步但最合理不等于最符合原始目标。根因从注意力机制理解为什么偏一些录友会说Agent 跑久了会偏但讲不清为什么偏。要真正理解漂移得回到 Transformer 本身。Self-Attention 的核心机制每个 Token 对所有 Token 计算注意力权重加权求和得到表示。这个机制带来了两个直接后果**第一注意力有近因效应。**Self-Attention 的权重不是均匀分配的模型倾向于给最近的 Token 更高的权重。原始指令在最前面中间隔着大量中间结果到后面几步时原始指令的注意力权重已经被稀释了。Agent 不是忘了目标是目标在它的注意力里占比越来越低。**第二中间结果会抢焦点。**Agent 每一步的输出都追加到上下文里这些中间结果本身就是新的刺激信号。比如修格式时产生的日志、查文档时看到的内容都会吸引模型的注意力。上下文越长干扰信号越多原始目标越容易被淹没。这和 Transformer 那篇讲的 **“Lost in Middle”**是同一类问题上下文中间的信息最容易被忽略而原始指令恰好被推到了中间甚至开头的位置。总结一句话上下文漂移的本质是原始目标在注意力分配中逐渐失焦。注意力稀释过程漂移的三种模式不是所有漂移都一样识别模式才能对症下药目标漂移Agent 从任务 A 滑到任务 B。本来在分析销售数据跑着跑去做竞品分析了。原始目标被新刺激完全替代。优先级漂移任务没变但主次倒置了。本来找出下滑原因是主线、修格式是支线结果 Agent 在支线上花了大半步骤主线反而没推进。风格漂移目标和优先级都没偏但输出风格变了。开头按要求输出结构化 JSON跑了几步开始写大段自然语言解释。这种漂移最隐蔽不影响任务完成但影响下游消费。漂移三种模式检测信号怎么知道漂移了漂移不是突然发生的是有信号的。关键是你得监控这几个指标当前动作与原始目标的关联度如果连续两步的输出和原始目标没有直接关系大概率在漂步骤重复率Agent 反复执行同一类操作比如反复修格式说明卡在子任务里出不来了目标完成进度跑了N步原始目标的完成度还是0%明显偏了工程上可以做一个简单的漂移检测每执行K步把当前状态和原始目标丢给模型让它判断当前是否还在朝目标前进。成本不高但能有效抓住漂移。解法分层从简到难每个都有代价第一层任务分解 子目标检查点把复杂任务拆成有序子任务每个子任务有明确的完成标准。Agent 完成一个子任务后先检查原始目标推进了吗再决定下一步。这是最简单也最有效的方式适用于大部分场景。代价是需要提前设计任务分解策略对简单任务来说增加了不必要的开销。第二层上下文压缩当上下文过长时对历史步骤做摘要压缩只保留关键信息。核心思路是控制上下文中干扰信号的量让原始目标始终保持足够的注意力占比。代价是压缩可能丢失细节某些场景下摘要信息不够精确。第三层定期 Re-Planning每隔N步暂停执行让 Agent 重新审视原始目标和当前进度重新规划后续步骤。相当于一个航向校正机制。代价是每次 Re-Planning 都是一次额外的 LLM 调用增加了延迟和成本。但对长任务来说这个代价远低于跑偏后全部重来的成本。漂移解法分层二、工具调用幻觉Agent 为什么调了不该调的工具现象不是不会调是调错了你给 Agent 配了3个工具search_database、search_web、send_email。理想情况用户问上个月销售额多少Agent 调用search_database拿到数据回复用户。实际可能发生的事Agent 调了一个search_api——你的工具列表里根本没有这个Agent 调了search_database但参数传了date: 明天——接口要求YYYY-MM-DD格式用户只是闲聊今天天气不错Agent 硬是调了search_web去搜天气——根本不需要调工具这就是工具调用幻觉Agent 在工具调用上产生了虚构行为。根因从概率生成理解为什么幻觉理解工具调用幻觉要搞清楚一个关键事实模型选工具不是在查表是在猜。大模型的每一步输出都是概率采样。工具调用也一样——模型不是从工具列表里查找最匹配的工具而是根据上下文预测下一个最可能出现的工具名。这意味着如果工具描述模糊多个工具看起来都可能对模型就靠概率选选错就是幻觉如果参数类型没约束模型按感觉填值填出来的格式和类型可能完全不对如果模型被训练得太积极过度倾向于使用工具它会在不需要工具的时候也硬调一个总结一句话工具调用幻觉的本质是概率生成遇到了结构性约束不足。幻觉的三种类型不同类型的幻觉根因不同解法也不同Type 1调用不存在的工具Agent 生成了一个工具列表里没有的工具名。比如你只有search_database和search_web它调了search_api。根因工具描述和任务描述之间存在语义缝隙模型根据任务编了一个看起来合理的工具名。你的工具叫search_database但任务描述里提到搜索数据模型可能觉得search_api更匹配。Type 2参数类型或格式错误工具调对了但参数传错了。比如接口要求limit: integer模型传了limit: 十个要求date: YYYY-MM-DD模型传了date: 上周五。根因参数的类型约束和格式约束没有在工具描述中明确声明模型按自然语言习惯生成参数值而不是按接口要求。Type 3无意义的工具调用本来不需要调工具Agent 硬调了一个。用户问你好Agent 调search_web搜问候语。根因模型有工具使用倾向——训练数据中使用工具的对话往往得到更高的奖励信号导致模型过度倾向于调用工具哪怕当前不需要。幻觉三种类型×对应解法解法每种幻觉对应不同策略对抗 Type 1调错工具工具描述结构化核心思路让模型对工具的边界有清晰认知。工具描述不要只写搜索数据库要写清楚搜索数据库仅支持SQL查询不支持API调用每个工具加 Few-shot 示例展示什么场景该调这个工具、什么场景不该调调用前校验模型输出的工具名必须在注册列表中否则拒绝执行对抗 Type 2参数错误参数 Schema 约束核心思路用结构化约束替代自然语言希望。工具的每个参数都要有 JSON Schema 定义类型、枚举值、格式、是否必填利用模型的结构化输出能力response_format或tool_choice让模型按 Schema 生成参数调用前对参数做类型检查和格式验证不通过则重试对抗 Type 3无意义调用调用必要性判断核心思路给模型一个不调工具的选项。在工具列表中显式加入无工具需要调用的选项让模型知道不调工具也是合法选择调用前加一层判断当前用户意图是否真的需要工具如果只是闲聊、确认、总结直接回复设置调用频率阈值同一轮对话中如果工具调用次数超过N次触发人工确认通用防线调用全流程校验不管哪种幻觉都可以用一套三段式防线兜底调用前校验工具名是否在注册列表中参数是否符合 Schema是否满足调用必要性调用中设置超时和异常捕获工具执行失败不要直接暴露给模型原始错误容易触发下一轮幻觉而是转化为结构化的错误信息调用后校验返回结果是否符合预期格式异常结果触发重试最多2-3次超过重试次数则降级处理这套防线不解决根因但能有效拦截大部分幻觉的后果。根因靠工具描述和参数约束解决兜底靠全流程校验保障。调用全流程校验三、面试怎么答面试官问 Agent 可靠性问题不要只说会用 XX 框架要展示从根因到解法的系统性思维。参考回答思路Agent 的核心可靠性问题我认为最关键的是上下文漂移和工具调用幻觉。上下文漂移的根因在注意力机制——上下文越长原始目标在注意力分配中占比越低Agent 被’近因效应’带偏。我的解法是分层处理短任务用任务分解加检查点长任务加定期 Re-Planning 做航向校正超长任务用上下文压缩控制信息量。工具调用幻觉的根因在概率生成——模型不是查表选工具是预测下一个最可能的工具名约束不足就会猜错。我的解法是按幻觉类型对症下药调错工具靠描述结构化参数错误靠 Schema 约束无意义调用靠必要性判断。再叠加调用前中后的三段式校验做兜底。这两个问题的共同点是都是概率生成模型的固有特性不是 bug需要在工程层面做约束和兜底。这个回答从模型机制讲到工程方案再给出取舍判断比只背解法清单高一档。面试官问 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时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

相关新闻