岗位索引

后端开发工程师面试题库第 8 页

后端开发面试题解析,覆盖缓存、数据库、分布式和系统设计基础。

378 道题 15 个公司 134 个知识点

后端开发相关面试题第 8 页

生产级 RAG 的数据解析与入库流水线如何设计,如何处理 PDF、DOCX、表格、图片和多格式文档?

生产级 RAG 的数据解析与入库流水线应从文件接入、格式识别、内容解析、结构保留、规范化切分、embedding、索引落库、权限和质量监控全链路设计。PDF、DOCX、表格、图片、Markdown、TXT 和富文本的解析策略不同:PDF 要区分数字文本和扫描件,DOCX 要保留标题层级和表格,表格要理解 sheet、表头和单元格关系,图片要 OCR 或生成视觉描述,多格式文档要保留统一的 document、section、chunk 和 asset 元数据。入库侧要支持幂等、版本、增量更新、失败重试、死信队列、ACL 过滤、向量库和关键词索引协同,以及可回溯的解析证据。

ReAct 的思考-行动-观察循环如何驱动 Agent 工具调用,和普通 CoT 有什么区别?

这题考的是候选人是否理解 ReAct 把模型推理和外部行动交织起来:模型不是一次性输出答案,而是在思考、选择工具、观察结果、继续推理的闭环中逐步完成任务;它和普通 CoT 的关键区别是能通过工具调用改变外部状态并用真实观察修正推理。

Agent 工具调用失败后,如何通过 trace 定位是意图识别、工具选择、参数生成还是工具服务本身的问题?

这题考的是 Agent 工具调用失败后的分层定位能力。好的回答不能只说看日志,而要把一次请求拆成意图识别、工具检索与选择、参数生成、执行前校验、工具服务调用、结果解释几个 span,并让每一层都有输入、输出、置信度、候选集、错误码、耗时和重试信息。定位时先判断用户意图是否被理解错,再看工具候选和最终选择是否合理,然后检查参数 schema、枚举、时间范围、权限上下文等是否正确,最后才归因到工具服务的网络、鉴权、超时、限流或业务错误。

Agent 系统可观测性平台应记录哪些 trace,LangSmith 和 Langfuse 如何用于调试与评估?

这题考 Agent 可观测平台该记录什么,以及如何把 trace 用于调试和评估。好的回答要覆盖请求级 trace、LLM 调用、工具调用、检索、记忆、planner、guardrail、人工反馈、成本延迟和评测结果,并说明 LangSmith 与 Langfuse 都可以承载调试和评估闭环,但选型应基于技术栈、部署合规、数据治理、评测流程、成本和集成方式,而不是简单说谁更强。

RAG 中既然向量检索已经计算相似度,为什么还需要 Cross-Encoder 重排?

这道题考察 RAG 检索链路中双塔向量召回和 Cross-Encoder 重排的职责边界。好的回答要说明向量检索适合在大规模语料上做低成本粗召回,但它把 query 和文档分别编码,主要比较全局语义相似度,难以精细判断短语匹配、否定关系、字段约束、时效和答案可用性。Cross-Encoder 把 query 与候选片段一起输入模型,可以做 token 级交互和上下文相关判断,因此通常用于小候选集精排。回答还应覆盖成本、延迟、候选规模、失败模式、评估指标和何时不需要重排。

向量数据库检索到语义相关但时间过久的历史信息时,RAG 系统应如何判断能否使用?

这道题考察 RAG 系统面对“语义相关但时间过久”的向量检索结果时,如何把相关性判断升级为证据可用性判断。回答要说明不能只看 embedding 分数,而要结合问题的时效敏感度、文档时间戳、版本、生效范围、来源权威性、与新证据的冲突情况和业务风险来决定使用、降权、补检、拒答或提示不确定。好的方案还要覆盖元数据过滤、时间衰减、动态检索、冲突检测、评估指标和上线监控。

RAG 什么时候只用静态知识库,什么时候需要接入动态网页检索?

这道题考察 RAG 检索源选择和系统边界设计。回答要说明静态知识库适合权威、可治理、更新频率低或组织受控知识,优势是稳定、可审计、低延迟、低风险;动态网页检索适合新闻、政策、价格、版本、故障状态、市场信息等变化快且静态库无法覆盖的问题,优势是新鲜度和覆盖面。高质量回答应给出 query 路由、混合检索、来源可信度、成本延迟、安全合规、冲突处理、引用和评估方案,而不是简单说“静态不够就联网”。

VikingDB 这类向量数据库如何设计核心链路,向量写入、ANN 索引、元数据过滤和查询召回如何协同?

这道题考察对向量数据库核心链路的系统设计能力,而不是背某个产品未公开实现。回答要从写入、向量化、分片、持久化、ANN 索引构建、增量更新、元数据过滤、查询召回、重排和运维指标串起来,说明向量、原始文档、元数据和索引如何保持一致。关键是讲清近似召回与过滤条件的协同:先过滤、后过滤、混合过滤各有什么代价;写入与索引的实时性、删除更新、分布式扩展、一致性和评估指标如何设计。

如果项目要基于 Claude Code 这类现成 Agent 做领域适配,如何设计数据边界、工具接入、RAG、评测和监控?

这道题考察如何把现成 Coding Agent 或通用 Agent 平台做成某个业务域可用的工程系统。回答不能停留在“加提示词”或“接几个工具”,而要围绕数据边界、权限隔离、工具契约、领域知识 RAG、任务流程、评测集、灰度发布、监控和人工接管设计。重点是让通用 Agent 只在授权数据和明确工具能力内行动,用可回放、可评测、可审计的方式逐步扩大自主能力。

在现有 LangGraph Agent 上新增功能时,如何设计节点、边、state schema、工具注册和回归测试?

这题考的是把 Agent 功能扩展做成可维护的状态机工程,而不是在一个大 prompt 或一个大节点里继续堆逻辑。高质量回答应说明如何先界定新功能的触发条件和输出契约,再决定是否新增节点、边、state 字段和工具,并用可回放测试证明新增路径没有破坏原有 Agent 行为。

Agent 项目中的 harness engineering 是什么,如何支撑工具模拟、回放、评测、回归和线上前验证?

这题考的是 Agent 工程里的验证基础设施意识。harness engineering 不是写几个单测,而是为不稳定的模型输出、外部工具、副作用和多轮状态机建立可控运行环境,让开发者能模拟工具、回放真实轨迹、做离线评测、跑回归并在上线前发现风险。

当 Agent 有 100 个 Tool 时,如何做工具分组、动态子集检索、schema 治理、监控和 meta-tool/Skill 收口?

这题考的是大规模工具接入后的 Agent 治理能力。100 个 Tool 不能简单全部塞进模型上下文,否则会带来选择混乱、token 成本、schema 冲突、误调用和监控不可解释。好的回答应从工具分类、检索式候选集、契约治理、调用观测和能力收口几层展开。

同题还出现在 1 个公司岗位

内容安全类 Agent 需求如何从“万能问答”拆成可评测的原子能力、输入输出契约和停止条件?

这题考的是把模糊的内容安全 Agent 需求工程化。不能把它做成什么都能问、什么都回答的聊天助手,而要拆成可独立评测的能力单元,例如分类、证据抽取、规则匹配、风险解释、处置建议和人工复核触发,并为每个能力定义输入、输出、置信度和停止条件。

文本搜图场景如何设计图片搜索系统,让用户搜“小狗”时能召回包含小狗的图片?

文本搜图系统要让用户输入“小狗”时召回包含小狗的图片,核心不是只按文件名搜索,而是建立图片内容理解、文本语义表示、索引召回和排序评估的完整链路。图片侧需要离线或实时提取对象标签、检测框、caption、OCR、视觉向量和多模态向量;查询侧需要把文本解析成语义向量和关键词;召回侧结合倒排索引、向量检索和元数据过滤;排序侧再按语义匹配、对象置信度、图片质量和用户意图重排。

多 Agent 协作时,Agent 之间如何传递状态、消息和工具结果,并避免并发读写冲突?

这道题考察多 Agent 系统的状态建模、通信协议、工具结果传递和并发一致性设计。好答案不能停留在 Agent 之间互相发消息,而要区分临时对话消息、可持久化任务状态、不可变工具产物和需要事务保护的共享资源。回答边界应覆盖消息队列或事件总线、共享状态存储、编排器协调、版本号或乐观锁、文件和数据库写入隔离、幂等重试、冲突检测,以及如何用日志和压测证明没有丢消息、重复执行和覆盖写。

Agent 中 Function Call、MCP 和 Skill 的工具描述上下文占用有什么差异,如何降低 token 成本?

这道题考察对 Agent 工具接入方式和上下文成本的工程理解。好答案要区分 Function Call 是模型请求内的工具 schema,MCP 是客户端和外部工具服务器之间的协议,Skill 是把说明、脚本和资源按能力打包并按需加载的机制。回答不能简单说 MCP 一定比 Skill 大,而要说明上下文占用取决于客户端暴露了多少工具描述、schema 是否冗长、是否做动态路由和懒加载。高质量答案还应给出降低 token 成本的方法,包括工具分层、候选工具筛选、描述压缩、结果引用、prompt caching 和按任务加载。

Agent 的 self-refine 自我修正如何处理 API 返回字段缺失、冗余或结构不符合预期?

这道题考察 Agent 自我修正是否能和工程化 API 契约治理结合起来。好答案不能把 self-refine 说成让模型再想一遍,而要说明先用确定性 schema 校验发现字段缺失、冗余字段、类型错误和结构不匹配,再根据错误类型决定丢弃、补默认值、结构化转换、重调 API、降级或交给模型生成修复计划。边界是不能让模型凭空编造缺失事实;所有修复都要可追溯、有限重试、重新校验,并用错误率、修复成功率和幻觉字段率验证效果。

RAG 和 Embedding 分别是什么,在大模型应用中各自解决什么问题?

这道题看似是定义题,实际考察大模型应用的知识接入链路。Embedding 是把对象映射成可计算的语义向量,RAG 是检索增强生成架构;RAG 常用 embedding 做召回,但不等于向量库加大模型,还需要文档切分、索引、混合检索、重排、权限、引用、拒答、评估和监控。

MCP 接入多个测评工具时,如果不同工具对同一问题返回格式不统一,应该如何设计统一输出协议或适配层?

这题考 MCP 多工具输出治理。多个 MCP 工具返回格式不统一时,应在工具和 Agent Runtime 之间加适配层,统一 envelope、内容块、结构化数据、错误协议、元数据、版本和审计,而不是让模型解析各类私有格式。

可中断的 Agent 系统如何设计,怎样保存执行状态、恢复任务并处理用户打断?

这题从后端视角考察可中断 Agent 的状态机、持久化和恢复设计。好的回答要说明 Agent 执行不是一次同步请求,而是可暂停、可恢复、可取消、可重试的长任务。核心包括任务状态模型、步骤 checkpoint、幂等工具调用、用户打断语义、恢复策略、并发控制和可观测性。

RAG 知识库有十几万文档时,如何设计切片、索引、召回和增量更新,避免检索质量与性能下降?

这题考察大规模 RAG 知识库的工程扩展能力。十几万文档不是简单把文本塞进向量库,而要设计文档解析、切片策略、索引结构、召回链路、重排、增量更新、权限过滤、评估和性能优化。好的回答要同时覆盖质量和性能,说明如何避免召回变差、延迟变高、索引过期和重复内容污染。

AI 服务中的多模型降级与熔断机制如何设计,怎样定义异常、状态流转和自动恢复条件?

这题考察 AI 服务后端的稳定性设计。多模型降级和熔断不是简单把模型 A 挂了切到模型 B,而要定义异常、统计窗口、状态机、路由策略、自动恢复和质量兜底。好的回答要覆盖可用性、质量、成本、延迟、限流、观测和安全边界。

做 AI 项目时如何选择和使用大模型?

做 AI 项目选择和使用大模型,不能只看榜单或单次体验,而要从业务目标、任务类型、质量要求、成本预算、延迟约束、上下文长度、工具能力、数据安全、供应商稳定性和可观测性综合评估。正确姿势是小范围评测、多模型分层、持续监控和可替换架构。

同题还出现在 1 个公司岗位

RAG 或大模型知识库应用中,知识不断追加导致 Prompt 越来越长时,会带来哪些上下文、成本和质量问题,如何治理?

这题考 RAG 或大模型知识库应用的上下文治理能力。题源 evidence 指向新加入知识库造成 prompt 越来越长,所以回答不能停留在换长上下文模型,而要说明 prompt 变长会带来窗口挤占、成本上升、延迟变高、噪声和冲突增加、回答质量下降,并给出检索、压缩、版本、权限、评测和监控的治理方案。

代码生成大模型或 Copilot 类工具应如何评估,哪些能力维度决定是否适合业务落地?

这题不是让候选人背当前哪个代码模型排名最高,而是考能否把 Copilot 类工具评估成一个可落地的研发效能系统。高质量回答要围绕业务场景、仓库理解、生成正确性、补全/重构/修 bug/测试生成能力、IDE 体验、安全合规、延迟成本、评测集和灰度指标展开。

MCP 在 Agent 工具接入中解决什么问题,适合哪些场景,又有哪些落地边界?

这题考 MCP 在 Agent 工具接入中的协议价值和工程边界。高质量回答要说明它解决的是 Agent 与外部工具、资源、提示模板之间的标准化连接问题,并能覆盖工具发现、resources/tools/prompts、schema、跨进程接入、权限、审计、超时、版本和服务治理。

如何评价并落地 AI 辅助开发:它能提升哪些开发环节,开发者仍必须承担哪些工程责任?

这道题考候选人对 AI 编程工具的工程判断。好答案要说明 AI 能提升需求拆解、代码阅读、样板代码、测试、排错和文档效率,也要明确架构决策、正确性、安全、隐私、性能、代码审查和最终交付责任仍在开发者。

同题还出现在 1 个公司岗位