Interview
AI 应用工程师面试通常不只问“你会不会调 API”,更关注你是否理解真实系统里的检索、工具调用、评测、成本、安全和上线问题。
面试准备的核心思路
不要只背概念。面试官更想听你能不能把一个 AI 应用从需求讲到上线:
用户问题
-> 方案设计
-> 数据流
-> 模型和工具选择
-> 评测方法
-> 上线风险
-> 迭代结果
准备时,至少要有一个项目能讲清楚架构、失败案例和优化过程。
面试官想确认什么
- 你是否理解 LLM 的能力边界
- 你是否做过完整项目,而不是只写过 demo
- 你是否知道 RAG 为什么会失败
- 你是否能设计可靠的 Agent 工具
- 你是否有评测和线上优化意识
- 你是否能控制成本和风险
你应该主动展示什么
- 你知道模型不是万能的。
- 你能画出完整数据流。
- 你理解 RAG 的失败原因。
- 你知道工具调用要做权限和确认。
- 你会用评测集判断改动效果。
- 你能说出成本、延迟和质量之间的取舍。
能讲清楚 trade-off,比只说“用了某某框架”更有说服力。
高频问题
1. RAG 是什么,解决什么问题?
RAG 是检索增强生成。它先从外部知识库检索相关内容,再把内容和用户问题一起交给模型生成答案。它解决的是模型无法天然知道私有知识、实时知识和长文档知识的问题。
2. RAG 为什么还会幻觉?
因为检索结果可能不相关、上下文可能不完整、prompt 可能没有限制模型只基于资料回答,或者模型在信息不足时仍然尝试补全答案。
3. 怎么提升 RAG 效果?
- 改进文档解析和切分
- 加 metadata filter
- 使用混合检索
- 加 rerank
- 优化 query rewrite
- 建立评测集
- 收集 bad case 持续迭代
4. Agent 和普通聊天机器人有什么区别?
普通聊天机器人主要生成回答。Agent 可以根据目标选择工具、调用工具、读取结果并继续执行下一步。
5. 工具调用怎么保证安全?
- 工具白名单
- 参数 schema 校验
- 后端权限检查
- 高风险操作用户确认
- 记录完整调用日志
- 不把敏感密钥暴露给模型
6. 如何评测一个 AI 应用?
从正确性、忠实度、完整性、格式、安全、延迟、成本等维度评测。常用方式包括规则校验、人工评分、LLM-as-judge、线上反馈和 A/B 测试。
7. 怎么降低大模型调用成本?
- 小模型处理简单任务
- 缓存高频结果
- 压缩上下文
- 减少无关历史
- 批处理离线任务
- 对不同任务选择不同模型
8. Prompt Engineering 的工程价值是什么?
Prompt Engineering 不是写神奇关键词,而是把任务、上下文、约束、输出格式和失败处理设计清楚。工程价值在于让模型输出更稳定、更容易评测、更容易被程序解析。
9. RAG 中 chunk 太大或太小有什么问题?
chunk 太小会丢失上下文,模型拿不到完整依据;chunk 太大会降低检索精度,并增加 token 成本。应该根据文档结构、问题类型和评测结果调整。
10. 如何处理模型输出 JSON 失败?
可以使用 schema 约束输出,解析失败时有限重试,仍失败则返回错误或进入人工复核。不要直接把未校验的模型输出交给下游系统。
11. Agent 为什么容易失控?
因为 Agent 会根据中间状态持续决策和调用工具。如果缺少工具边界、权限校验、终止条件和日志,就可能循环调用、越权访问或执行高风险操作。
12. 怎么防 prompt injection?
把外部内容当作数据而不是指令;工具调用前做后端权限校验;不要把密钥放进上下文;高风险操作加确认;对检索文档和用户输入中的恶意指令保持隔离。
13. 什么时候用微调,什么时候用 RAG?
私有知识和频繁变化的事实优先用 RAG;固定格式、风格、任务习惯可以考虑微调。很多项目可以先用 Prompt + RAG 达到可用,再根据评测判断是否需要微调。
项目讲述模板
面试时讲项目,可以按这个顺序:
- 背景:为什么要做这个项目
- 目标:要解决什么用户问题
- 架构:整体数据流是什么
- 技术:用了哪些模型、检索、工具和框架
- 难点:遇到什么问题
- 优化:如何评测和改进
- 结果:效果、成本、延迟或用户反馈
- 反思:如果重做,会怎么改
项目讲述示例:个人知识库问答
可以这样组织:
- 背景:用户有很多分散文档,搜索效率低。
- 目标:用户提问后,系统基于文档回答并给出处。
- 架构:上传文档,解析切分,生成 embedding,向量检索,模型基于片段回答。
- 难点:PDF 解析噪声、chunk 大小、引用不准、资料不足时模型编造。
- 优化:保留标题和页码 metadata,加入拒答策略,建立 50 条评测问题。
- 结果:常见问题命中率提高,回答带引用,bad case 可持续迭代。
关键是讲出你为什么这样设计,而不是只列技术名词。
简历关键词
- LLM Application
- Prompt Engineering
- RAG
- Embedding
- Vector Database
- Hybrid Search
- Rerank
- Agent
- Tool Calling
- MCP
- Evaluation
- Observability
- Cost Optimization
简历项目描述模板
构建个人知识库 RAG 问答系统,支持 Markdown/PDF 文档解析、chunk 切分、Embedding 向量检索和引用回答。设计 50 条评测集,对比 chunk size、top-k 和 prompt 版本,提升检索命中率并降低幻觉。加入日志、成本统计和 bad case 反馈闭环。
好的简历描述要包含:做了什么、用了什么、怎么评测、结果如何。
作品集建议
至少准备一个可以现场讲清楚的项目。最推荐的是“个人知识库问答助手”,因为它覆盖文档处理、Embedding、向量检索、Prompt、引用、评测和上线。
面试前自查
- 能否 3 分钟讲清楚一个项目。
- 能否画出项目数据流。
- 能否说出 3 个失败案例和对应优化。
- 能否解释为什么选择 RAG、Agent 或 MCP。
- 能否说明如何评测质量。
- 能否估算 token 成本和延迟来源。
- 能否说明权限、安全和日志设计。