m佬淘天AI应用开发二面
面试流程简述#
二面整体仍然偏项目深聊和 AI 工程认知探讨,面试官会沿着一面的项目和观点继续往下追问。问题更关注候选人对 RAG、代码智能体、上下文压缩、工程安全和未来工具形态的判断。
问题记录#
- 聊到 RAG 时,怎么看待现在的 RAG?
- Karpathy 之前提到过用 Obsidian 做知识库,用 Markdown 和代码片段存储,检索已经能覆盖很多场景;包括 page index 这类方案也很实用。向量数据库在 RAG 中后续还有哪些需求?
- 聊到 Claude Code 的代码泄露和 harness engineer,怎么看待代码智能体的安全边界?
- 怎么看待 Claude Code 的上下文压缩方式?
参考答案(AI 生成)#
以下答案由 AI 生成,仅供面试复盘参考。
1. 怎么看待现在的 RAG?#
答:RAG 的核心价值是把外部知识以可检索、可引用、可更新的方式接入模型。现在的 RAG 已经从“向量召回 + 拼 prompt”演进成一套工程系统,包括文档治理、分块、索引、混合检索、rerank、权限过滤、上下文压缩、引用溯源和效果评测。真正影响效果的往往是数据质量、召回可控性、上下文组织和评测闭环。
2. 向量数据库在 RAG 中后续还有哪些需求?#
答:向量数据库的价值取决于知识规模、查询复杂度和工程约束。小规模代码库、个人知识库、Markdown 文档和结构化代码片段,关键词检索、文件索引、AST/符号索引、page index 已经很强;企业级知识库、多语言语义查询、自然语言模糊表达、跨文档关联、海量增量索引、权限过滤和高并发检索,会继续需要向量索引和向量数据库。
更合理的判断是:RAG 会走向混合检索。代码类场景依赖符号索引、依赖图、全文检索和结构化检索;知识问答场景依赖 BM25、向量召回、rerank 和元数据过滤;Agent 场景还需要按任务动态选择工具、文档和历史记忆。向量数据库会成为检索栈的一层,而 RAG 的能力上限来自整体检索与上下文工程。
3. 怎么看待代码智能体的安全边界?#
答:代码智能体有仓库读取、文件修改、命令执行、网络访问和凭证接触能力,权限边界要按真实工程工具来设计。安全策略可以分成四层:权限最小化、敏感信息隔离、执行审计、变更验证。比如限制可读目录和命令白名单,屏蔽 token、密钥和生产配置,对每次工具调用留审计日志,所有代码变更经过测试、review 和 CI。
聊到 Claude Code 代码泄露这类事件时,可以重点回答工程启示:把 AI coding 当成具备操作权限的工程系统管理,明确数据边界、日志边界、模型调用边界和插件边界。harness engineer 的价值也在这里,通过自动化评测、沙箱、回归集和安全用例持续验证智能体的行为。
4. 怎么看待 Claude Code 的上下文压缩方式?#
答:上下文压缩的目标是在有限窗口里保留任务目标、关键约束、代码事实、已做决策和下一步计划。它能提升长任务连续性,也会带来信息损耗、事实漂移和约束丢失风险。压缩质量取决于摘要结构、来源引用、时间顺序和可恢复能力。
更稳的做法是把压缩结果分层:任务目标、用户约束、仓库事实、修改记录、未解决问题、验证结果。压缩后的摘要要保留文件路径、函数名、命令结果和关键决策来源;遇到高风险修改时,智能体应该回读源文件和测试结果,再继续执行。长期看,上下文压缩会和检索、记忆、trace、CI 结合,形成可追踪的工程上下文系统。