AI Agent 高频面试题(含答案 + 八股 + 实操)
持续更新中 🔄
覆盖:基础概念、LangChain 原理、Agent 工作流程、工具调用、记忆、Prompt、结构化输出、工程落地、面试反问,直接背就能用。
一、基础概念篇
1. 什么是 AI Agent?
AI Agent 是具备感知、思考、规划、工具调用、执行、记忆反思能力的智能体,不再是单纯问答,能自主拆解任务、选择工具、多步骤完成复杂目标。
核心要素:大模型 + 感知输入 + 规划推理 + 工具使用 + 记忆 + 行动执行。
2. AI Agent 和普通大模型对话有什么区别?
- 普通 LLM:只能单次问答,无自主规划、不会调用外部工具;
- AI Agent:可以自主思考 → 拆分子任务 → 选工具 → 调用工具 → 汇总结果 → 多轮迭代,能完成复杂长流程任务。
3. AI Agent 核心五大组件是什么?
- 规划(Planning):任务拆解、分步思考
- 记忆(Memory):短期对话记忆、长期知识库记忆
- 工具(Tools):联网搜索、代码执行、接口调用、自定义函数
- 行动(Action):执行工具、调用接口、输出结果
- 反思(Reflection):复盘错误、修正下一步行为
4. 主流 Agent 架构有哪些?
- ReAct:思考 + 行动,最经典;
- CoT 思维链:分步推理;
- Plan-and-Execute:先整体规划,再分步执行;
- Self-Reflection 自省式:执行后自我复盘修正;
- Multi-Agent 多智能体:分工协作(规划 Agent、工具 Agent、总结 Agent)。
二、ReAct 原理面试必问
5. 讲一下 ReAct 工作流程
ReAct = Reason(推理思考) + Act(行动执行)固定循环:
- 接收用户问题
- LLM 思考:要不要调用工具、调用哪个工具、传什么参数
- 输出思考内容 + 工具调用参数
- 框架解析参数,执行工具
- 把工具返回结果喂给 LLM
- 循环直到无需工具,输出最终答案
6. ReAct 为什么能实现工具自动调用?
通过 Prompt 约束 + 固定输出格式,让 LLM 按指定格式输出:思考过程、工具名、入参;框架正则 / JSON 解析后自动执行函数。
三、LangChain Agent 核心面试题
7. LangChain 中 Agent、Chain、Tool 区别
- Tool:最小单元,单个能力(天气查询、爬虫、计算器)
- Chain:固定流程链路,逻辑固定,不会自主选工具
- Agent:基于 LLM 自主决策,动态选择工具、动态编排流程
8. LangChain 有哪些常见 Agent 类型?
- OpenAI Functions Agent(函数调用,最常用)
- ReAct Agent
- Plan and Execute Agent
- Structured Chat Agent(结构化输出)
- Multi-agent 多智能体
9. 什么是 Function Calling 函数调用?原理是什么?
大模型原生支持输出标准 JSON 函数调用参数,无需正则解析,更稳定。原理:
- 定义函数描述(名称、参数、功能说明)传给模型
- 模型判断是否需要调用
- 直接输出标准 JSON 格式调用参数
- 框架解析并执行函数
- 结果回传给模型生成最终回答
10. 自定义 Tool 怎么开发?注意什么?
- 用
@tool装饰器包裹函数 - 写清楚函数文档字符串:功能、入参、示例
- 参数加类型注解,方便模型理解
- 工具尽量单一职责,不要一个工具做多个事
⚠️ 注意:文档描述不清晰会导致模型乱调用、传错参数。
四、记忆 Memory 相关面试题
11. LangChain 有哪些记忆类型?
- ConversationBufferMemory:完整保存所有对话
- ConversationSummaryMemory:自动总结压缩历史
- ConversationBufferWindowMemory:滑动窗口,只保留最近 N 轮
- VectorStoreRetrieverMemory:向量数据库长期记忆(知识库)
12. 长对话上下文溢出怎么解决?
- 使用滑动窗口记忆,限制轮数
- 用摘要记忆,压缩历史对话
- 向量数据库做长期记忆检索,只召回相关内容
- 拆分任务、分步执行,减少单次上下文长度
五、结构化输出 & Prompt 工程
13. 什么是结构化输出?有什么用?
强制 LLM 按照 Pydantic / JSON Schema 固定字段返回数据,而不是自由文本。用途:
- 后端可直接解析字段
- 做表单生成、数据抽取、Agent 行为约束
- 避免输出格式混乱,便于程序自动化处理
14. 怎么保证 LLM 严格按格式输出?
- 使用 Pydantic 定义模型 + 框架强制解析
- Prompt 明确约束:必须 JSON、不许多余解释
- 使用模型原生结构化输出能力
- 增加重试机制,格式错误自动重新生成
六、工程落地 & 避坑面试题
15. AI Agent 常见失败场景有哪些?
- 工具描述不清,模型选错工具 / 传错参数
- 上下文过长,模型遗忘指令
- 无限循环调用同一个工具
- 敏感词、越权操作无拦截
- 结构化输出格式错乱
- 多轮对话记忆混乱
16. 怎么防止 Agent 死循环?
- 限制最大迭代次数
- Prompt 约束:重复工具调用直接结束
- 增加自省机制,判断是否已拿到足够信息
- 记录已调用过的工具,避免重复执行
17. 如何做 AI Agent 生产级部署?
- 模型私有化 / 本地部署,降低成本
- 工具调用加权限校验、参数校验、超时控制
- 对话记忆落地 Redis,向量记忆落地向量库
- 加日志、链路追踪、失败重试
- 敏感词过滤、输出风控
- 接口封装成 HTTP 服务,前后端 / 业务系统对接
七、多智能体 Multi-Agent 面试
18. 什么是多智能体?适用场景?
把复杂任务拆分成多个分工不同的 Agent 协同工作:
- 规划 Agent:拆解任务
- 执行 Agent:调用工具干活
- 评审 Agent:校验结果对错
适用:复杂数据分析、项目拆解、长篇文案生成、复杂业务流程自动化。
八、项目面试话术(背下来直接说)
19. 你做过的 AI Agent 项目介绍模板
我基于 LangChain + DeepSeek / 通义千问 搭建过任务型 AI Agent:
- 自定义开发多个工具:天气查询、接口调用、数据解析;
- 基于 Function Calling 实现自动工具选择与参数入参;
- 用 Pydantic 做结构化输出,固定返回格式方便后端解析;
- 接入对话记忆,支持多轮上下文连贯;
- 增加 Prompt 约束与最大迭代限制,避免死循环;
- 封装成接口,可被前端 / 内部系统直接调用。
九、面试官反问你可以问的
- 咱们公司 AI Agent 主要落地在哪些业务场景?
- 目前是用开源模型还是商用大模型?
- 技术栈主要用 LangChain 还是自研框架?
- 是否有多智能体协同开发的需求?