高频合集 · CHEAT SHEET
AI Agent 面试题(60 问,含答案)
以下 60 道是 Agent 岗面试被问最多的题,来自社区 2582 道真题图谱的高频聚类。每题先给一句能直接说出口的答案——时间紧就背结论,每题右侧有完整解析(含面试官追问与常见坑)。
本页 47 题同页给全答案,可直接背结论;每题链到 2431+ 篇真题解析库与逐题深挖。更新于 2026-10-01,持续补充。
Agent 架构
- Q1
什么是 AI Agent?它和直接调用大模型有什么区别?
直接调用是「一问一答」,Agent 是让模型在循环里自主使用工具、维护状态、根据反馈决定下一步,直到把目标做完。差的是「行动循环」,不是模型更强。
- Q2
ReAct 是什么?它是怎么跑起来的?
ReAct 让模型交替输出「思考(Reason)」和「行动(Act)」:想一步该干什么、调一次工具、看一眼结果再想下一步,把推理过程和行动轨迹串成一个循环。
- Q3
ReAct、Plan-and-Execute、Reflection 三种范式有什么区别?怎么选?
ReAct 边想边走适合路径不明的短任务,Plan-and-Execute 先立整体计划再分步执行适合步骤多的长任务,Reflection 在执行后自我审查再返工,三者常组合用而不是三选一。
- Q4
Agent 的记忆系统怎么设计?
按寿命分层:上下文窗口是工作记忆,向量库放长期记忆,数据库放结构化事实;要点是定清楚「什么值得记、怎么检索回来、什么时候过期」。
- Q5
Agent 的上下文窗口不够用怎么办?
四板斧:裁剪(丢旧留新)、压缩(长文摘要化)、外置(状态写进存储按需取回)、分流(子任务拆给独立上下文)。目标是让窗口只装当前决策需要的信息。
- Q6
Agent 为什么会陷入死循环?怎么检测和治理?
死循环的根子是「模型看不到失败」:同一动作反复重试、两个工具互相踢皮球、错误输出被当成进展。治理靠检测(轨迹指纹、轮数预算、进度指标)加干预(升级提示、换路线、交还人)。
- Q7
Agent 的效果怎么评估?评测集怎么建?
分任务级(最终结果对不对)、轨迹级(过程合不合理)、成本级(轮数和 token)三层评;评测集从真实任务来,按难度分级,改一版跑一遍——没有回归评测的 Agent 迭代等于盲飞。
- Q8
Workflow 和 Agent 有什么区别?什么时候不该用 Agent?
Workflow 是人写死的流程图,模型只填空;Agent 是模型自己决定下一步。流程稳定、错误代价高的场景用 Workflow,路径真不确定才上 Agent。能用 Workflow 解决的问题上 Agent 是负收益。
- Q9
Agent 的任务规划怎么做?为什么要先拆解再执行
规划就是把目标拆成有依赖关系的子步骤,再按依赖顺序执行、根据每步反馈调整。先拆解是因为模型的上下文和可靠性都有限,大任务直接做容易在中途迷失。
- Q10
业界说的 Agent Harness 是什么?为什么同一个模型换个框架效果差很多
Harness 是模型外面那套工程框架:循环控制、上下文管理、工具执行、权限和日志。模型只负责决定下一步,剩下的都由 harness 决定,所以它直接决定效果上限。
- Q11
让 Agent 自己跑代码,沙箱要怎么设计?
核心是把模型生成的代码当成不可信输入,放进无默认网络、最小文件权限、严格资源限额且用完即弃的隔离环境,再受控回传结果。
- Q12
Code Agent 跑到一半挂了,怎么恢复而且不重复执行?
恢复不是把聊天记录接着播一遍:执行状态要持久化到进程外,每步有副作用的操作带幂等键,重启后先对账「哪些已生效、哪些未知」,只重做未完成的,把重复副作用关在边界内。
记忆系统
- Q1
Agent 的长期记忆和短期记忆怎么分层?
三层:上下文窗口里的工作记忆(本轮任务)、向量库里的情景/语义记忆(跨会话)、数据库里的结构化事实(精确读写);每层有明确的写入门槛和淘汰机制。
- Q2
Agent 的记忆检索和 RAG 检索是一回事吗?
底层机制相似(都是向量检索),但数据源、条目形态、更新频率、冲突处理完全不同:记忆是「关于这个用户的、活的、会过期的」,文档是「外部的、静态的、有版本的」。
- Q3
上下文快满了,Agent 的记忆怎么压缩?
分层处理:丢(裁掉旧轮次和冗余工具输出)、缩(结构化摘要替换原文)、沉(稳定事实写入长期记忆从上下文移除)。压缩的原则是保决策依据,丢过程细节。
- Q4
Agent 记忆为什么要分级?多级架构的必要性怎么讲清楚?
记忆分级是为了在生命周期与访问成本之间做平衡。单级架构无法同时解决窗口限制、检索损耗与成本控制问题,多级架构通过冷热数据分离实现了各级存储的高效协同。
- Q5
记忆写入前怎么校验?记忆模块的质量和效果怎么评估?
写入前通过去重、原文一致性校验和新旧冲突检测把关;评估时写入侧看抽取准确率和冲突率,使用侧看记忆命中率、任务成功率增量,并引入基于调用结果的可信度回写机制。
多智能体
- Q1
什么是多智能体(Multi-Agent)?什么时候才需要多个 Agent?
多个各有职责、各有上下文的 Agent 通过消息协作完成任务——当单 Agent 的上下文装不下、工具互相打架、或者任务天然要多种专业视角时,才值得拆多智能体。
- Q2
多 Agent 系统怎么通信、怎么编排?
编排有三种基本形:主从式(一个 Leader 分派汇总)、流水线式(按阶段接力)、群聊式(共享消息板自由认领);通信靠结构化消息和明确协议,核心是把「交接什么信息」定义清楚。
- Q3
单 Agent 和多 Agent 怎么选?
默认单 Agent,直到出现三个信号(上下文装不下、职责互相污染、权限需要隔离)才拆多 Agent;拆的时候先粗后细,每一次拆分都要能说清「解决了什么问题」。
- Q4
多 Agent 系统常见的失败模式有哪些?
四类高发:交接时信息损耗、子任务目标漂移越帮越乱、循环互踢皮球、错误沿链路传播放大。治理上有共性:结构化交接契约、独立验收、全程留痕可回放。
- Q5
子 Agent 崩溃或超时,主流程怎么兜底?
应对子 Agent 异常的核心是先自救再上报,通过超时预算与异常分类进行检测,按重试、降级、委派、上抛的梯度执行兜底,并利用沙箱隔离与幂等设计保障全局状态的一致性。
- Q6
多个 Agent 同时改同一个文件,怎么避免冲突?
默认把同一文件的写操作串行化,再用版本检查、最小补丁和显式合并处理并发,写后通过测试校验,冲突就回滚并重新规划。
工具调用
- Q1
Function Calling 是什么?模型是怎么学会调工具的?
把工具的名字、用途、参数 Schema 写进提示词,模型输出结构化的调用意图(工具名 + JSON 参数),由应用侧执行后把结果喂回——模型只「点菜」,执行在你的代码里。
- Q2
MCP 协议是什么?和 Function Calling 有什么区别?
Function Calling 是模型「选工具、填参数」的能力,MCP 是把工具标准化接入的开放协议——一个管能力,一个管接入层,MCP 服务器暴露的工具最终还是要靠 Function Calling 来调。
- Q3
Function Calling 准确率上不去怎么优化?
按错误类型对症下药——选错工具改描述和工具筛选,参数填错改 Schema 设计和校验回路,时机错误改流程约束;先建错误分类账,再逐类治理。
- Q4
工具有上百个的时候,Agent 怎么选对工具?
别让模型直面几百个工具——加一层工具检索:按语义把工具索引起来,每个场景先召回最相关的一小撮,再让模型在里面选;工具多本身是设计问题,先合并同类再上检索。
- Q5
工具调用失败怎么办?重试和兜底怎么设计?
先把错误分类:参数错就回传让模型改,瞬时故障做退避重试,确定性失败立刻换路线;重试要有上限和预算,最后一级兜底是降级输出或转人工,绝不静默吞错。
- Q6
A2A 协议是什么?它和 MCP 是什么关系?
MCP 解决「Agent 怎么接工具」,A2A 解决「Agent 和 Agent 怎么协作」。前者是纵向的能力接入,后者是横向的智能体互操作,两个协议互补而不是竞争。
- Q7
怎么防止 Agent 调工具时越权?权限怎么控?
三道闸:Agent 只拿到当前任务需要的最小工具集,写操作和高危操作强制人工确认,执行层用独立凭据按资源级鉴权。权限控制在代码里,不在提示词里。
- Q8
Agent Skills(技能包)是什么?它和 MCP、提示词是什么关系
Skills 把完成一类任务的说明文档、脚本和资源打包成一个文件夹,模型按需读取里面的说明来加载做法。MCP 管工具怎么接进来,Skills 管流程和知识怎么按需装载。
- Q9
工具的 description 怎么写?为什么模型总调错工具?
把工具的用途、适用和禁用场景、参数格式与限制写清楚,再用不重叠的职责和工具路由减少模型猜错与误调用。
- Q10
工具返回的结果太长怎么办?怎么处理才能塞进上下文?
别把几十 KB 的原始结果整段塞回上下文,先在工具层按任务裁剪或摘要;必须保留的大结果放到外部存储,只传引用,按需再取。
- Q11
大模型和小模型怎么分级路由?什么请求该给谁?
核心思路是在成本和质量间找平衡,工程上分路由和级联两种形态,通过规则、分类器或偏好数据训练的判断器,把简单高频请求给小模型,复杂低频请求给大模型。
- Q12
工具的 Schema 和描述怎么写?模型才不容易调错参数
模型看不见工具实现,只看见注册时给的名称、描述和参数 Schema,调用质量首先由这三样文本决定。名称直说动作、描述写清用途和边界、参数少而必填明确、枚举代替自由填写,调不准先改 Schema 再改提示词。
评测与可观测
- Q1
用大模型给大模型打分(LLM-as-Judge)可靠吗?怎么用才靠谱?
有系统性偏差但可用——前提是评分细则拆到可判定、给参考样例、做位置去偏、定期人工抽检校准;裁判分数用于筛选和趋势对比,关键决策仍靠人。
- Q2
大模型评测都看哪些 Benchmark?榜单排名可信吗?
通用能力看 MMLU 系列和 GPQA,代码看 HumanEval/SWE-bench,数学看 AIME,Agent 能力看 SWE-bench 和各类 agent benchmark;榜单看趋势别看名次:数据污染、应试特化和场景错配是三个坑。
- Q3
Agent 改了一版提示词,怎么知道没有改坏别的地方?
靠回归评测集:改前改后跑同一批用例,任务成功率、轨迹质量、成本三类指标对比,绿了才上线;再配线上灰度和反馈监控兜底。
- Q4
评测用的 Golden Set 怎么建?
从真实任务采样起步,人工标注「标准答案 + 评分要点」,覆盖正常、边界、失败三类场景;小而准胜过大而杂,随线上反馈滚动补充;Golden Set 本身也要版本管理。
- Q5
模型应用上线后怎么持续评测?线上和离线评测怎么配合
线上评测看真实流量的质量信号,靠抽样人审、用户反馈、埋点指标和灰度对比;离线评测保回归,固定评测集在每次改动前跑。线上发现问题,沉淀成离线用例。
- Q6
Benchmark 数据污染是什么?怎么判断模型是背过题还是真会?
数据污染就是评测题或题解进了训练语料,判断模型真能力要看训练集重叠、改写题表现和真实业务自测,不能只看公开榜单。
- Q7
从零构建一个 Agent Benchmark 要做哪些事?
构建Agent Benchmark的核心是确保评估客观且可复现,需要依次完成定义任务域与自动校验标准、搭建可重置的沙箱环境与数据集、设计成功率与过程指标,并做好人类基线校准与防数据污染。
- Q8
LLM 应用的 A/B 测试和传统有什么不同?怎么设计?
LLM 应用的 A/B 测试面临输出非确定性和质量难量化的问题。设计时需按用户分流,指标改用解决率等业务代理指标,并用交错实验和离线影子评测提高测试敏感度。
- Q9
上游模型升级后效果变差,怎么发现和应对?
发现依赖版本变更时的固定评测集自动回归测试,以及线上灰度分流的业务指标对比;应对则需锁定模型版本并跟踪厂商公告,通过小流量灰度和提示词适配层来兼容新版本的漂移。
- Q10
LLM 应用的 trace 怎么设计 span?要记哪些字段?
将一次请求作为根节点记录用户意图,按执行步骤拆分检索、工具、模型等子节点,记录耗时、token与费用,并保留prompt版本、chunk id等核心字段用于排障与评测。
- Q11
LLM 应用上线后要监控哪些指标?告警怎么设?
监控分质量、行为、性能、成本四层。告警策略是性能和成本的硬指标设自动告警,质量指标看日报周报,点踩和告警样本自动进入 badcase 池回流到评测集。
- Q12
LangSmith 和 Langfuse 怎么选?
选型主要看是否重度绑定 LangChain 生态以及对数据隐私的要求。如果深度使用 LangChain 或 LangGraph,选 LangSmith 集成最快;如果需要私有化部署、数据不出域,或者应用了多种。