第一层:基础认知(Why / What)【5 题】

Q1. 【你如何理解”智能体(Agent)”,它和普通 LLM 应用的本质区别是什么?】

面试官为什么问这个问题:
这个问题用来快速区分”会调模型的人”和”真正理解 Agent 的工程师”。很多候选人把 Agent 等同于多轮对话或复杂 Prompt,但在生产环境中这是一个危险的误解。

参考口语化回答:
我理解的 Agent,本质上是一个”具备自主决策能力的 LLM 控制器”,它不仅生成文本,还能根据当前状态选择工具、决定下一步行为。
和普通 LLM 应用最大的区别在于:普通应用是”你问我答”,而 Agent 是”你给目标,我自己拆解、执行、纠偏”。
这也是为什么 Agent 会放大能力,同时也会放大风险——一旦设计不好,它不是答错一句话,而是可能做错一整串事。

Q2. 【为什么 LangChain 会成为 Agent 构建的主流框架?它解决的不是”写 Prompt”的问题吧?】

面试官为什么问这个问题:
这里在看候选人是否真正理解 LangChain 的定位,而不是把它当成 Prompt 模板工具。

参考口语化回答:
LangChain 真正解决的不是”Prompt 好不好写”,而是把 LLM 的一次性调用,变成一个”可编排、可观测、可约束的推理过程”。
尤其在 Agent 场景下,它帮我把”决策、工具调用、状态管理”这些事拆开来做,否则代码会迅速失控。
如果只是一个简单问答,其实根本不需要 LangChain;只有当你开始关心 Agent 的行为边界和失败路径时,它的价值才会显现。

Q3. 【在你看来,Chain、Tool、Agent、Memory 的职责边界应该如何划分?】

面试官为什么问这个问题:
很多系统失控,本质是职责混乱。这个问题考察候选人是否具备”系统拆解意识”。

参考口语化回答:
我在工程里会把这几层分得比较清楚:
Chain 负责”确定性的流程”,比如固定步骤的数据处理;
Tool 是”明确副作用的能力”,比如查库、调接口、下发指令;
Agent 只做一件事:在不确定场景下做决策;
Memory 则是状态,不是知识,更不是万能缓存。
一旦 Tool 里写逻辑、Agent 里塞业务规则,系统后期一定不可维护。

Q4. 【为什么说”不是所有 LLM 应用都适合做 Agent”?】

面试官为什么问这个问题:
这是一个典型的”反直觉问题”,用来判断候选人有没有踩过坑。

参考口语化回答:
Agent 的代价非常高,不只是算力,还有不确定性成本。
如果业务流程是确定的、可枚举的,用 Agent 反而会让系统更不稳定。
我一般只有在”目标明确、路径不确定、人工成本高”的场景,才会考虑 Agent,否则宁愿用普通 API + 规则。

Q5. 【你如何理解”Agent 是能力放大器,也是风险放大器”?】

面试官为什么问这个问题:
这是价值观判断题,看候选人是否具备生产级风险意识。

参考口语化回答:
Agent 一旦接入工具,就不再只是”说错话”的问题,而是可能”做错事”。
比如一次误调用接口、一次错误的参数选择,后果可能是业务级事故。
所以我从一开始就把 Agent 当成”需要被约束的执行者”,而不是一个聪明的助手。

第二层:核心技术能力(How)【8 题】

Q6. 【你能从运行机制角度,描述一次 LangChain Agent 的完整执行过程吗?】

面试官为什么问这个问题:
考察候选人是否真的理解 Agent 的”思考—行动—反馈”闭环,而不是停留在 API 层。

参考口语化回答:
一次完整执行,通常是:模型先基于 Prompt 和上下文生成一个行动计划;
然后选择 Tool 并输出结构化调用参数;
工具执行后,结果会被再次送回模型进行判断;
这个循环可能持续多轮,直到满足终止条件。
真实工程里,最麻烦的就是控制这个循环不要失控。

Q7. 【Tool / Function Calling 在真实业务中最大的设计难点是什么?】

面试官为什么问这个问题:
很多候选人只会”把函数暴露给模型”,但从没考虑后果。

参考口语化回答:
最大的难点不是”怎么让模型调用”,而是”怎么不让它乱调用”。
我通常会严格限制 Tool 的输入 schema、调用频率和权限范围。
否则模型一旦理解偏了,很容易出现参数越界、重复调用,甚至死循环。

Q8. 【Prompt 在 Agent 决策中真实起到什么作用?它的边界在哪里?】

面试官为什么问这个问题:
这是用来识别”Prompt 迷信者”的问题。

参考口语化回答:
Prompt 更多是”行为约束说明书”,而不是逻辑实现。
我不会指望 Prompt 去保证安全性或正确性,它只能降低概率。
真正的兜底,一定是在代码层、工具层和流程层。

Q9. 【你在 Agent 中如何使用 Memory?踩过哪些坑?】

面试官为什么问这个问题:
Memory 是 Agent 系统中最容易被滥用的部分。

参考口语化回答:
我只在确实需要跨轮决策的信息上用 Memory,比如用户偏好或中间状态。
最大的坑是”什么都存”,结果上下文越来越长,模型行为开始漂移。
后来我会给 Memory 明确生命周期,到期就清掉。

Q10. 【LangChain + RAG 在 Agent 中是如何配合的?】

面试官为什么问这个问题:
看候选人是否理解 RAG 是”信息增强”,不是”决策替代”。

参考口语化回答:
RAG 更多是给 Agent 提供事实材料,而不是直接决定行为。
我一般把 RAG 作为一个 Tool,让 Agent 自己判断”是否需要查资料”。
如果把 RAG 强行塞进主 Prompt,反而会干扰决策。

Q11. 【Agent 出现无限循环,你通常如何定位和解决?】

面试官为什么问这个问题:
这是一个几乎所有 Agent 项目都会遇到的问题。

参考口语化回答:
我会先看是不是目标定义不清,导致模型永远觉得”还没完成”。
其次会加最大步数、重复调用检测。
在生产环境里,没有”无限思考”,只有”必须停止”。

Q12. 【你如何处理 Agent 的”误调用”问题?】

面试官为什么问这个问题:
误调用是 Agent 风险的核心来源之一。

参考口语化回答:
我不会完全信任模型的判断。
重要工具一定要做二次校验,必要时引入人工确认。
在金融、医疗场景,Agent 永远只能”建议”,不能”直接执行”。

Q13. 【当 Agent 输出结果质量波动很大时,你会从哪些维度排查?】

面试官为什么问这个问题:
考察候选人是否具备系统级调优能力。

参考口语化回答:
我会先排除上下文污染,其次看工具返回是否不稳定。
再往后才是模型参数和 Prompt。
很多时候,问题根本不在模型本身。

第三层:工程化与系统能力【8 题】

Q14. 【你如何让 Agent 的推理过程”可观测”?】

面试官为什么问这个问题:
没有可观测性,Agent 系统几乎无法运维。

参考口语化回答:
我会完整记录每一步 Thought、Action、Observation。
不是为了调试炫酷,而是出事故时能回溯。
否则线上问题根本无法复现。

Q15. 【工具调用失败或超时,你的治理策略是什么?】

面试官为什么问这个问题:
真实系统里,失败是常态。

参考口语化回答:
我会区分”可重试”和”不可重试”的失败。
并且告诉 Agent 当前状态,而不是直接报错。
让模型知道”失败了”,比假装成功更重要。

Q16. 【你如何控制 Agent 的性能和成本?】

面试官为什么问这个问题:
Agent 很容易变成”烧钱机器”。

参考口语化回答:
我会限制最大调用轮数,能不用 Agent 的地方不用。
并且把高成本模型只放在关键决策节点。
Agent 不是越聪明越好,而是够用就行。

Q17. 【Agent 行为随时间漂移,你如何应对?】

面试官为什么问这个问题:
这是长期运行系统才会遇到的问题。

参考口语化回答:
我会定期回放历史请求,对比行为差异。
必要时冻结 Prompt 或模型版本。
Agent 不是一次性上线就结束的东西。

Q18. 【你如何将 LangChain Agent 服务化?】

面试官为什么问这个问题:
考察是否真正做过生产部署。

参考口语化回答:
我通常会把 Agent 封装成无状态 API。
Memory 放在外部存储,方便扩展和回滚。
否则一上并发就全乱了。

Q19. 【Agent 的日志体系你是如何设计的?】

面试官为什么问这个问题:
日志是 Agent 运维的生命线。

参考口语化回答:
我会区分用户日志、推理日志和工具日志。
不是所有信息都给用户看,但后台必须全量可查。

Q20. 【当 Agent 行为不可控时,你的止损方案是什么?】

面试官为什么问一个问题:
这是”责任意识”问题。

参考口语化回答:
我一定会有全局熔断开关。
必要时直接降级为普通 LLM 或人工流程。
系统稳定性永远高于智能程度。

Q21. 【你如何验证一个 Agent 是否”可以长期运行”?】

面试官为什么问这个问题:
区分 Demo 与系统。

参考口语化回答:
我会跑长时间压力测试和异常注入测试。
只要跑一周不出幺蛾子,才算合格。

第四层:真实项目与业务场景能力【6 题】

Q22. 【在医疗场景中,你如何设计 Agent 的职责边界?】

面试官为什么问这个问题:
医疗是高风险领域。

参考口语化回答:
Agent 只能做分析和提示,最终决策一定在人。
我会强制设计人工确认节点。

Q23. 【金融场景下,Agent 可以自动执行交易吗?】

面试官为什么问这个问题:
这是典型的”诱导式问题”。

参考口语化回答:
不能。
Agent 最多做到策略建议和风险提示。
自动执行意味着法律和合规风险。

Q24. 【企业内部流程自动化,Agent 的最大风险是什么?】

面试官为什么问这个问题:
考察业务理解。

参考口语化回答:
最大风险是”越权”。
Agent 一旦权限设计不当,很容易破坏流程边界。

Q25. 【你如何评估 Agent 的效果?】

面试官为什么问这个问题:
效果评估比模型指标更难。

参考口语化回答:
我会结合成功率、人工介入率和事故率。
不是看”答得多聪明”,而是”省了多少人力”。

Q26. 【你是如何降低幻觉风险的?】

面试官为什么问这个问题:
这是所有业务方最关心的问题。

参考口语化回答:
我不会指望模型不幻觉。
我只关心幻觉能不能被发现、被拦住。

Q27. 【Human-in-the-loop 你通常放在哪一层?】

面试官为什么问这个问题:
看系统设计成熟度。

参考口语化回答:
我一般放在”不可逆操作”之前。
而不是等出事了再让人兜底。

第五层:进阶与加分项【3 题】

Q28. 【你如何设计多 Agent 协作?】

面试官为什么问这个问题:
考察系统拆分能力。

参考口语化回答:
我会按职责拆分,而不是按模型拆分。
否则只是多个 Agent 一起混乱。

Q29. 【你为什么会从 LangChain 迁移到 LangGraph / Workflow?】

面试官为什么问这个问题:
这是高级工程师分水岭。

参考口语化回答:
当流程复杂到”必须可视化、可回放”时,LangGraph 更合适。
Agent 不该全靠隐式推理。

Q30. 【在你看来,什么样的人是”有 Agent 潜力的工程师”?】

面试官为什么问这个问题:
这是价值判断题。

参考口语化回答:
不是最懂模型的人,而是最敬畏不确定性的人。
知道什么时候不用 Agent,往往比会用更重要。


Q31. 【你如何区分”Agent 决策”与”业务规则判断”?】

面试官为什么问这个问题:
这个问题用于判断候选人是否理解 Agent 的适用边界,还是试图用 Agent 替代所有 if/else。

参考口语化回答:
在我看来,Agent 适合处理”规则难以穷举”的决策问题。
一旦规则可以明确写清楚,我一定会用代码而不是让模型猜。
把业务规则塞进 Agent,本质是在制造不可控性。

Q32. 【你认为 Agent 的”自主性”应该控制在什么程度?】

面试官为什么问这个问题:
考察候选人是否对”过度自主”的风险有清醒认知。

参考口语化回答:
我不追求完全自主。
在生产环境里,Agent 的自主性一定是被框死的,只在小范围内自由。
真正可控的 Agent,一定是”有限自主”。

Q33. 【为什么说 Agent 更像”系统组件”,而不是”智能助手”?】

面试官为什么问这个问题:
这是认知层分水岭问题。

参考口语化回答:
助手强调体验,组件强调稳定性。
我做 Agent 时更关注它在系统里的位置,而不是它多聪明。
一旦把 Agent 当”人”,工程决策基本都会出问题。

Q34. 【你如何向非技术同事解释 Agent 的能力边界?】

面试官为什么问这个问题:
考察候选人是否具备跨角色沟通能力。

参考口语化回答:
我会明确说:Agent 是”辅助决策系统”,不是自动化替身。
它能提高效率,但永远不能保证正确。
如果业务方一开始就期望”全自动”,我通常会强烈反对。

Q35. 【在你看来,一个 Agent 项目失败,最常见的原因是什么?】

面试官为什么问这个问题:
这是经验反推题。

参考口语化回答:
失败往往不是模型能力不够,而是期望设得太高。
把不成熟的 Agent 推到关键业务,是最常见的踩坑方式。

第二层:核心技术能力(How)【8 题】

Q36. 【你如何设计 Agent 的”终止条件”?】

面试官为什么问这个问题:
Agent 不停机,是工程灾难。

参考口语化回答:
我从不只依赖模型自己判断结束。
一定会有硬性条件,比如最大步数、目标完成标志。
终止逻辑必须是工程可控的。

Q37. 【你如何避免 Agent 在多个 Tool 之间来回震荡?】

面试官为什么问这个问题:
这是典型的真实问题。

参考口语化回答:
我会记录最近调用历史,并对重复模式做拦截。
如果模型连续调用同一类 Tool,基本说明它迷路了。

Q38. 【你是否会让 Agent 自己选择使用哪一个 RAG 数据源?】

面试官为什么问这个问题:
考察对复杂 Agent 的控制能力。

参考口语化回答:
一般不会完全放权。
我会先做一层粗分类,把可选范围缩小,再交给 Agent 判断。
否则召回结果很容易污染上下文。

Q39. 【你如何设计 Tool 的返回结果,才能”更适合 Agent 使用”?】

面试官为什么问这个问题:
这是很多人忽略的工程细节。

参考口语化回答:
我会返回结构化、语义明确的数据,而不是自然语言。
Tool 是给模型”看”的,不是给人看的。
描述越模糊,Agent 决策越不稳定。

Q40. 【你是否在 Agent 中使用过多模型?如何分工?】

面试官为什么问这个问题:
考察对成本与能力的权衡。

参考口语化回答:
用过。
通常用小模型做分类、校验,大模型只做关键决策。
不分工的话,成本很快失控。

Q41. 【当 Agent 调用 Tool 后返回”异常但不报错”的结果,你如何处理?】

面试官为什么问这个问题:
真实系统里的灰色地带。

参考口语化回答:
我会把异常状态显式告诉 Agent,而不是当正常结果处理。
否则模型会基于错误前提继续推理。

Q42. 【你如何限制 Agent 的”上下文膨胀”?】

面试官为什么问这个问题:
上下文膨胀会直接影响成本和稳定性。

参考口语化回答:
我会做摘要、裁剪,并限制历史长度。
不是所有历史都值得给模型看。

Q43. 【你是否遇到过 Agent “理解对但执行错”的情况?怎么解决?】

面试官为什么问这个问题:
这是 Agent 特有问题。

参考口语化回答:
遇到过。
通常是 Tool 接口设计有歧义。
解决方式不是调 Prompt,而是重构 Tool 定义。

第三层:工程化与系统能力【8 题】

Q44. 【你如何在生产环境中灰度发布 Agent 版本?】

面试官为什么问这个问题:
考察候选人是否具备上线经验。

参考口语化回答:
我会先让新 Agent 只做”影子执行”,不影响结果。
确认行为稳定后再逐步放量。

Q45. 【Agent 出现”偶发性错误”,你如何定位?】

面试官为什么问这个问题:
这是长期运行系统才会遇到的问题。

参考口语化回答:
我会结合日志、上下文快照和模型版本一起看。
单看 Prompt 基本没用。

Q46. 【你如何设计 Agent 的权限体系?】

面试官为什么问这个问题:
权限是 Agent 安全的核心。

参考口语化回答:
我不会让 Agent 直接拥有全部能力。
不同 Tool 对应不同权限等级,逐级放开。

Q47. 【Agent 高并发时,最先出现瓶颈的通常是什么?】

面试官为什么问这个问题:
考察性能经验。

参考口语化回答:
通常不是模型,而是外部 Tool。
Agent 一多,接口调用压力会被放大。

Q48. 【你是否做过 Agent 行为的自动化回归测试?】

面试官为什么问这个问题:
高级工程实践问题。

参考口语化回答:
做过。
我会用固定输入集,比较行为轨迹是否发生变化。
不测行为,只测输出是不够的。

Q49. 【你如何防止 Agent 被 Prompt Injection 利用?】

面试官为什么问这个问题:
这是现实安全问题。

参考口语化回答:
我不会把用户输入直接拼进系统 Prompt。
并且对关键指令做多层校验。

Q50. 【Agent 日志量暴涨,你会如何处理?】

面试官为什么问这个问题:
这是运维视角的问题。

参考口语化回答:
我会区分采样日志和全量日志。
不是所有请求都值得完整记录。

Q51. 【当 Agent 成为系统瓶颈时,你的降级策略是什么?】

面试官为什么问这个问题:
考察止损能力。

参考口语化回答:
直接切换为规则或普通 LLM。
宁可变”笨”,也不能拖垮系统。

第四层:真实项目与业务场景能力【6 题】

Q52. 【你是否遇到过业务方要求”Agent 替代人工岗位”?你如何应对?】

面试官为什么问这个问题:
考察候选人的现实判断力。

参考口语化回答:
我通常会明确反对这种说法。
Agent 是辅助工具,不是裁员方案。

Q53. 【在高风险业务中,你如何向业务方证明 Agent 是”安全的”?】

面试官为什么问这个问题:
这是信任建设问题。

参考口语化回答:
我会展示失败场景和兜底机制。
只展示成功案例是不负责任的。

Q54. 【你如何评估 Agent 给业务带来的”负收益”?】

面试官为什么问这个问题:
成熟工程师才会考虑的问题。

参考口语化回答:
我会统计误操作率和人工返工成本。
Agent 不是一定带来正收益。

Q55. 【你是否遇到过 Agent 被业务”误用”的情况?】

面试官为什么问这个问题:
考察候选人是否有真实项目经验。

参考口语化回答:
遇到过。
后来通过权限限制和使用指引才解决。

Q56. 【你如何判断一个业务是否”值得上 Agent”?】

面试官为什么问这个问题:
这是决策能力问题。

参考口语化回答:
我会看流程复杂度、不确定性和容错空间。
三者缺一,都不适合。

Q57. 【当 Agent 给出错误建议导致业务损失,你如何复盘?】

面试官为什么问这个问题:
责任意识问题。

参考口语化回答:
我会先复盘系统设计,而不是甩锅模型。
错误一定是系统允许它发生的。

第五层:进阶与加分项(架构 / 视野)【3 题】

Q58. 【你如何判断一个 Agent 系统是否需要”平台化”?】

面试官为什么问这个问题:
考察架构视野。

参考口语化回答:
当多个业务开始重复造 Agent,我就会考虑平台化。
否则维护成本会爆炸。

Q59. 【在你看来,LangChain 最大的工程短板是什么?】

面试官为什么问这个问题:
区分盲目追随者与理性使用者。

参考口语化回答:
隐式行为太多。
一旦系统复杂,调试成本会迅速上升。

Q60. 【你未来在 Agent 方向最关注的能力是什么?】

面试官为什么问这个问题:
判断候选人成长潜力。

参考口语化回答:
我更关注可控性和可验证性。
Agent 不是比谁更”像人”,而是比谁更可靠。