Agent 岗位高频面试题:标准答案(简洁、专业、面试直接用)
我给你整理面试可直接背诵的版本,不啰嗦、全是重点、符合大厂 Agent / RAG 工程师真实工作经验。
1. RAG 怎么优化?(高频核心)
一句话总结:从"检索不准、召回不全、上下文乱"三个方向下手。
核心优化点(面试必说)
-
数据预处理优化
- 文档清洗:去噪、去重、去乱码
- 分块优化:固定分块 → 语义分块 / 按标题分块 / 递归分块
- 增加元数据:文件名、章节、页码、时间,用于过滤
-
检索层优化(最重要)
- 向量模型升级:通用 embedding → 领域专用 embedding
- 多路召回:向量检索 + 关键词检索(BM25)+ 时间过滤
- 重排序(Rerank):用小模型精排,大幅提升准确率
- 检索阈值:设置相似度分数过滤无关内容
-
Prompt 优化
- 强制要求"只使用参考资料回答"
- 不知道就说不知道,禁止编造
- 给参考资料加编号,要求引用来源
-
架构优化
- 多轮检索:复杂问题拆步骤,分步查资料
- 上下文压缩:把召回的长文本压缩成关键信息
- 路由 RAG:简单问题直接答,复杂问题才检索
-
评估优化
- 用指标:召回率、精确率、命中率、幻觉率
- 用 LLM 自动评估回答质量
面试标准回答:
RAG 优化围绕数据、检索、提示词、架构、评估 五方面。先做文档清洗与语义分块,再用多路召回+重排序提升检索精度,通过 Prompt 约束模型只依赖资料,复杂问题用多轮检索与上下文压缩,最后通过自动化评估持续迭代。
2. Agent 卡死怎么办?
Agent 卡死 = 无限循环 / 工具调用失败 / 思考停滞 / 格式解析错误
解决方案(面试直接说)
- 设置最大步数(最有效)
- 限制最大思考/工具调用次数(如 5--10 步),超限直接退出
- 工具调用异常捕获
- 工具超时、报错、无返回 → 捕获后给 Agent 明确提示
- 格式解析容错
- 卡死 90% 是因为模型输出格式不对(少括号、JSON 错误)
- 用解析容错、正则修复、格式强校验
- 状态监控与重启机制
- 记录每一步状态,长时间无响应自动终止
- Prompt 防循环
- 明确禁止重复调用相同工具
- 让 Agent 记住上一步做了什么
- 回滚机制
- 卡死时返回上一步结果,或直接给出总结答案
面试标准回答:
Agent 卡死主要来自无限循环、工具异常、格式解析失败。解决方案包括:设置最大执行步数、工具调用异常捕获、强化输出格式校验与容错、增加循环检测、状态监控超时退出,确保流程可终止。
3. 如何降低幻觉?
幻觉 = 模型编造信息、无中生有、瞎编结论
最有效方案(面试必背)
- RAG 强制检索
- 所有事实性问题必须查资料,不检索不回答
- 强约束 Prompt
- "不知道就说不知道,严禁编造"
- "必须引用参考资料内容"
- "禁止扩展未提及信息"
- 高质量检索
- 召回越准,幻觉越低
- 用 rerank、多路召回提升相关性
- 事实校验(Fact Checking)
- 用 LLM 二次校验:答案是否来自资料?是否编造?
- 少样本/思维链引导
- 给模型看"正确回答"和"拒绝编造"的例子
- 模型选择
- 用更稳定、更听话的模型(如 GPT-4o、Claude 系列幻觉更低)
面试标准回答:
降低幻觉核心是让模型"有依据说话":通过 RAG 提供真实资料,用 Prompt 强制禁止编造,通过高质量检索保证依据可靠,再增加事实校验环节,从源头杜绝无依据生成。
4. 如何做工具调度?
工具调度 = Agent 该在什么时候、调用哪个工具、怎么选最优路径
标准架构(面试满分)
- 工具注册与描述
- 每个工具写清晰:功能、入参、使用场景
- 工具路由(Tool Router)
- 方法1:LLM 自主判断(最常用)
- 方法2:分类器/规则路由(速度快、稳定)
- 工具调用决策链
- 判断是否需要工具
- 选择最合适工具
- 生成正确参数
- 执行并解析结果
- 判断是否需要继续调用
- 多工具调度策略
- 并行调用:同时查多个工具提升速度
- 串行调用:步骤依赖,一步一步来
- 条件调度:根据上一步结果决定下一步
- 调度监控
- 失败重试、降级策略、超时控制
面试标准回答:
工具调度包括工具描述、路由选择、参数生成、执行解析、流程控制。通过清晰的工具描述让模型理解能力,用路由策略选择合适工具,支持串行/并行/条件执行,并增加异常重试与降级机制,保证稳定可用。
5. 长上下文怎么处理?
长上下文 = 文档太长、对话太长、模型装不下、注意力漂移
工业界方案(面试必说)
- 文本分块(最基础)
- 大文件切小块,只召回最相关的
- 上下文压缩
- 摘要压缩:把长文本提炼关键信息
- 抽取式压缩:只保留答案相关片段
- 动态窗口 / 滑动窗口
- 只保留最近 N 轮对话 + 关键历史
- 向量记忆(长期记忆)
- 把历史对话存向量库,需要时检索回忆
- 总结记忆
- 旧历史自动生成摘要,节省 token
- 注意力优化
- 关键信息前置
- 用更稳定的长上下文模型(Claude / Qwen Long 等)
- 分层存储
- 短期记忆(原始对话)+ 长期记忆(摘要/向量)
面试标准回答:
长上下文处理采用分块检索、动态压缩、分层记忆策略:长文档切分后只召回相关片段,对话历史用摘要+向量库管理,结合动态窗口控制长度,在有限上下文内保留最有价值信息。
最终面试万能总结(背会这一段就能通关)
- RAG 优化:数据清洗、语义分块、多路召回+重排、强约束 Prompt、自动化评估
- Agent 卡死:最大步数、异常捕获、格式容错、防循环、超时退出
- 降低幻觉:RAG 依据、禁止编造、检索精准、事实校验
- 工具调度:工具描述、路由选择、串行/并行/条件执行、重试降级
- 长上下文:分块检索、压缩、摘要、向量记忆、动态窗口