# 1. 请求数、输入/输出 Token、并发数和 Provider 配额四类限制如何建立统一限流模型 A 只限请求数即可 B 各维度独立即可 C 并发无需限制 D 按租户/模型/Provider 多维配额,分层管理请求数、Token、并发与 Provider 配额,Provider 配额最硬 ✓ 正确答案
# 2. 客户端、服务端、租户队列与 Provider 限额如何分层,怎样保证大租户不会饿死小租户 A 分层限流(客户端/服务端/租户/Provider)+ 租户隔离与最小保证,防止大租户饿死小租户 ✓ 正确答案 B 大租户可无限占资源 C 无需租户隔离 D 公平调度无意义
# 3. 如何尊重 Retry-After 等信号并使用有上限、带抖动的退避,避免重试风暴 A 立即重试最有效 B 抖动无意义 C 尊重 Retry-After、有上限退避、加抖动、限制重试次数,网关统一协调 ✓ 正确答案 D 重试次数不限
# 4. 有副作用的工具调用(写数据库、发送消息)为何不能自动重试,幂等键(idempotency key)应如何设计才能安全重试 A 有副作用调用用唯一幂等键让服务端去重返回首次结果,安全重试;纯读可自动重试 ✓ 正确答案 B 副作用调用可自动重试 C 幂等键无必要 D 重复副作用可接受
# 5. 端到端超时预算应如何在排队、检索、模型、工具、生成各阶段分配,谁负责取消传播 A 总预算按阶段分配子超时,协调者统一负责取消传播,任一步超时取消下游 ✓ 正确答案 B 只设总超时即可 C 无需取消传播 D 各阶段独立超时即可
# 6. 断路器、Bulkhead、Fallback、幂等和补偿应怎样组合,哪些副作用调用不能自动重试 A 所有调用都可自动重试 B 副作用调用可自动重试 C 断路器/舱壁/降级/幂等/补偿组合,写库发消息等副作用调用不能自动重试,用幂等与补偿 ✓ 正确答案 D 断路器是唯一的
# 7. Provider outage、rate limit 与 quota exhausted 的识别和应急处置有何不同 A 三类故障处置相同 B quota exhausted 应重试 C outage 切换 Provider、rate limit 退避等待、quota exhausted 停止重试并升级配额,按错误分类处置 ✓ 正确答案 D rate limit 应切换 Provider
# 8. 多 Provider 部署下,如何用断路器与舱壁(Bulkhead)隔离故障 Provider,避免级联失败 A 一个 Provider 故障影响全部 B 熔断后不再恢复 C 无需隔离 D 每个 Provider 独立断路器与舱壁资源池,故障隔离并 fallback 到健康 Provider,防级联 ✓ 正确答案
# 9. 降级到备用模型时,如何校验工具、Schema、多模态和安全能力没有静默缺失 A 降级无需校验能力 B 用能力矩阵查表、运行时探测、输入校验与安全兜底,防止备用模型静默缺失能力 ✓ 正确答案 C 所有模型能力相同 D 降级后无需监控
# 10. 为什么“重试更多次”不等于“成功率更高”,盲目重试反而恶化系统状态 A 系统性过载时重试放大负载导致雪崩,需区分故障类型、有上限退避、过载降级 ✓ 正确答案 B 重试越多成功率越高 C 重试无副作用 D 重试永能提升成功率
# 11. 429 响应中的 Retry-After 头应如何在网关层透明处理,避免每个调用方都需重试 A 每个调用方各自重试 B 调用方各自处理更好 C 网关应忽略 Retry-After D 网关统一拦截 429、读取 Retry-After、协调重试与排队,调用方无需感知 ✓ 正确答案
# 12. 输入/输出 Token 限流(TPM)应如何预估未知输出长度的影响,预留合理余量 A 按实际输出精确计 B 无需预留余量 C 输出未知时按上限或历史高分位预估并预留缓冲,防止突发超限 ✓ 正确答案 D 输出长度始终可预测
# 13. 为什么“熔断器半开”状态在 AI 场景下比传统服务更难判定(输出可能随机变化) A 单次试探即可判定 B AI 输出随机且质量需评估,半开判定用多请求统计与质量门槛而非单次成败 ✓ 正确答案 C AI 熔断与传统相同 D 无需质量判定
# 14. 降级策略(返回固定模板、人工接管、备用模型)应如何让 UI 明确告知用户 A 降级无需告知用户 B 静默降级可接受 C 降级时 UI 明确提示降级类型、原因并提供重试/人工等路径,避免静默降级 ✓ 正确答案 D 无需管理用户预期
# 15. 重试产生的额外计费(Provider 对重试的账单)应如何向租户透明 A 账单区分重试与成功请求、明确重试费用归属、限制重试量,让成本透明可查 ✓ 正确答案 B 重试费用直接计入租户 C 无需透明 D 重试不产生费用
# 16. 长时间 Retry-After(如 30 秒)期间客户端应如何降级而非保持连接占用资源 A 阻塞等待直到重试 B 长等待无需处理 C 保持连接占用 D 立即降级响应、异步排队、释放连接资源,不让长等待占死资源 ✓ 正确答案
# 17. 在多模态/工具调用链路中,限流粒度(用户/会话/工具/模型调用)应如何分层设计,防止单个工具或用户耗尽共享配额 A 只做全局限流 B 用户/会话/工具/模型多层配额,共享配额上限 + 单维度上限,防止单工具或用户耗尽共享 ✓ 正确答案 C 无需工具级配额 D 单用户可耗尽所有
# 18. 模型网关应如何统一认证、路由、限流、重试、成本和观测,同时保留厂商特有能力 A 网关应抹平所有厂商差异 B 无需保留厂商能力 C 统一认证/路由/限流/重试/成本/观测,厂商特有能力用透传与扩展字段保留 ✓ 正确答案 D 网关只做路由
# 19. 任务复杂度路由如何通过可解释特征选择 mini、标准或 reasoning 模型,并用反馈纠偏 A 所有请求用同一模型 B 路由无需纠偏 C 特征无需可解释 D 用请求长度/工具数/推理需求等可解释特征选档位,并用反馈纠偏优化路由 ✓ 正确答案
# 20. 模型网关(LiteLLM Proxy、Portkey、OpenRouter、Cloudflare AI Gateway)的架构差异与选型依据是什么,哪些场景应自研 A 所有场景用托管网关 B 网关架构无差异 C 自研永远最优 D 按数据主权、成本、运维、功能与合规选型,强定制/强合规/大规模选自研 ✓ 正确答案
# 21. 任务复杂度路由(task router)如何基于可解释特征(请求长度、工具数、领域)选择模型档位,特征如何采集与验证 A 用请求长度/工具数/领域等可解释特征选档位,采集决策并用质量成本对比验证特征 ✓ 正确答案 B 特征无需验证 C 特征不可解释也行 D 路由无需特征
# 22. 网关怎样做能力矩阵、模型别名和版本固定,避免同名模型升级造成不可控变更 A 业务直接写模型名 B 版本无需固定 C 用稳定别名映射固定版本快照,升级走显式切换 + 评估灰度,避免同名升级不可控 ✓ 正确答案 D 升级应静默
# 23. 多 Provider 时,如何统一 usage 计费字段(input_tokens、output_tokens、cache_read、cache_write) A 各 Provider 字段天然一致 B 建立统一 usage 模型并映射各 Provider 字段,统一计费、对账与跨 Provider 对比 ✓ 正确答案 C 无需统一 D 计费无需对账
# 24. 网关层是否应负责缓存、压缩、向量化等“超出路由”的功能,还是应保持单一职责 A 网关应包含所有功能 B 网关只做路由 C 网关专注认证/路由/限流/重试/观测,缓存可纳入,压缩向量化等重功能放业务层 ✓ 正确答案 D 缓存必须放业务层
# 25. 自建网关(基于 OpenAI 协议 + Envoy/Istio)应如何拆分职责,与业务服务、Provider 直连的边界在哪里 A 网关是模型访问唯一入口管横切,业务服务管业务逻辑,服务网格管网络,Provider 不直连 ✓ 正确答案 B 业务服务直连 Provider C 网关应掺入业务逻辑 D 无需服务网格
# 26. 为什么选型文档不应写死网关支持的模型数量或固定延迟优势,能力与性能数据应如何标注核查日期并定期重验 A 写死固定值即可 B 数据永不过时 C 能力/性能数据标注核查日期,定期重验并用实测范围描述,防基于过时数据决策 ✓ 正确答案 D 无需重验
# 27. 网关缓存或重试如何与流式响应、工具调用和 Provider usage 对账保持一致 A 缓存/重试不影响 usage B 重试无需对账 C 缓存响应可随意 D 缓存保留完整流式与工具安全、重试 usage 去重累计、流式保序,并与 Provider 账单对账 ✓ 正确答案
# 28. 为什么不应把网关抽象为“OpenAI 兼容即可”,应保留各家特有的流事件结构 A OpenAI 兼容即可 B OpenAI 兼容作通用入口,保留/透传各家特有流事件结构,避免丢失厂商能力 ✓ 正确答案 C 所有 Provider 事件结构相同 D 厂商特性无价值
# 29. 网关缓存如何避免给用户返回“过期”或“跨用户”的回答,应如何设置租户与版本边界 A 缓存键含租户、模型版本、Prompt 版本、上下文,设 TTL 与失效策略,防过期和跨用户 ✓ 正确答案 B 缓存键只需含 query C 跨租户缓存可接受 D 缓存无需 TTL
# 30. 多区域部署时,如何在网关上做地域路由(EU/US 数据不出域) A 所有请求路由到同一区域 B 按地域标签路由到对应区域端点和驻留配置,保证数据不出域并就近低延迟 ✓ 正确答案 C 数据任意跨域 D 无需区域隔离
# 31. 网关应如何对流式响应做透明监控,又不破坏 Provider 特有的事件结构 A 监控需解析改造事件 B 事件原样透传保留特有结构,监控用旁路记录统计,互不破坏 ✓ 正确答案 C 监控会破坏事件 D 无需流式监控
# 32. Provider 切换(如 OpenAI 到 Azure OpenAI)时,认证方式、端点、模型别名与数据驻留差异应如何通过抽象层平滑过渡 A 切换需改业务代码 B 切换无需校验能力 C 用网关抽象层统一认证/端点/别名,配置层切换 Provider,能力校验 + 灰度平滑过渡 ✓ 正确答案 D 切换不可回滚
# 33. 稳定系统指令、工具 Schema、示例和长文档前缀如何布局,才能提高前缀缓存复用 A 动态内容放最前 B 前缀顺序无关 C 稳定内容(系统指令/工具 Schema/长文档)放前缀、动态内容放后,避免前缀抖动 ✓ 正确答案 D 动态时间放开头
# 34. 多轮会话新增尾部消息时如何保留可缓存前缀,动态时间和用户数据为何应后置 A 历史消息与系统指令作稳定前缀,动态时间/用户数据后置,新消息追加尾部 ✓ 正确答案 B 动态时间放最前 C 前缀可任意变化 D 动态数据放前缀更好
# 35. 语义缓存如何设相似阈值、租户隔离和过期规则,防止相似问题返回错误或越权答案 A 相似就返回缓存 B 缓存永不失效 C 无需租户隔离 D 调优相似阈值、租户隔离、过期规则、敏感不缓存,防止误命中与越权 ✓ 正确答案
# 36. 缓存与流式输出、工具副作用、引用新鲜度和 usage 对账会产生哪些交互问题 A 缓存无交互问题 B 缓存命中无需处理 usage C 缓存要与流式保完整、工具幂等、引用新鲜、usage 对账、版本匹配,避免引入问题 ✓ 正确答案 D 工具结果可随意缓存
# 37. 租户隔离缓存应如何设计,防止租户 A 的请求命中租户 B 的缓存 A 缓存键不含租户 B 租户数据可共享缓存 C 跨租户命中可接受 D 缓存键含租户 ID、命名空间隔离、访问校验,防止跨租户命中 ✓ 正确答案
# 38. 如何按命中率、节省 Token、额外延迟、错误命中率评估缓存,而非只看请求数 A 综合命中率、节省 Token、额外延迟、错误命中率评估,而非只看请求数 ✓ 正确答案 B 只看命中率 C 请求数即价值 D 错误命中可忽略
# 39. 不同 Provider 缓存规则与价格会变化,工程文档为何必须标注核查日期 A 缓存规则/价格会变,文档标注核查日期、来源并定期重验,防基于过时信息 ✓ 正确答案 B 缓存规则永不变 C 无需核查 D 价格固定
# 40. 缓存键(cache key)应包含哪些维度(模型、Prompt 哈希、参数、租户) A 只需含 Prompt B 参数不影响输出 C 缓存键含模型、参数、Prompt 哈希、租户、上下文与版本,保证命中正确且隔离 ✓ 正确答案 D 租户可省略
# 41. 缓存命中率监控应如何区分“真正的命中率提升”与“低质量查询的重复提交” A 命中率越高越好 B 重复查询提升命中率是好事 C 命中率即价值 D 分析命中多样性、查询质量与节省 Token,区分真实命中率提升与低质量重复提交 ✓ 正确答案
# 42. 缓存击穿(hot key 失效)应如何用 singleflight、分布式锁、本地缓存防止雪崩 A 用 singleflight 合并请求、分布式锁控重建、本地缓存减压,防热点 key 失效击穿 ✓ 正确答案 B 热点 key 失效无需处理 C 分布式锁是唯一手段 D 击穿无害
# 43. Provider 自动缓存与显式缓存在断流恢复、长 Prompt 时如何混合使用 A 只用一种缓存 B 断流时缓存失效即放弃 C 显式缓存不可控 D 长 Prompt 用 Provider 前缀缓存省 token,断流恢复用显式缓存重放,分层互补 ✓ 正确答案
# 44. 缓存不应包含敏感数据(PII、密钥),写入前应做哪些脱敏与访问控制 A 写入前识别脱敏、访问控制、加密、短 TTL 与审计,源头避免敏感数据进缓存 ✓ 正确答案 B 缓存可直接存敏感数据 C 敏感数据可缓存 D 无需访问控制
# 45. 为什么不能把 Provider 缓存当作“永远命中”,应保持应用层重算与缓存双轨能力 A 依赖 Provider 缓存即可 B Provider 缓存不可控,保持缓存加速 + 应用重算兜底双轨,失效/存疑时重算 ✓ 正确答案 C 缓存永远命中 D 无需重算能力
# 46. 限流算法的选型,令牌桶、漏桶、滑动窗口与 Redis 分布式限流在 AI 网关的实现取舍与突发容忍差异? A 漏桶允许突发 B 本地限流多实例一致 C 令牌桶最平滑 D 令牌桶容忍突发、漏桶严格平滑、Redis 分布式保多实例一致,按突发与一致性需求选型 ✓ 正确答案
# 47. 队列背压与积压治理,请求排队长度上限、拒绝策略、降级提示与消费者伸缩,如何避免雪崩? A 队列无限排队 B 设排队上限、拒绝、降级提示、消费者伸缩与背压,形成防雪崩闭环 ✓ 正确答案 C 积压无需处理 D 拒绝策略不必要
# 48. 缓存策略应在哪些情况下主动失效(Prompt 改版、模型切换、法规变化) A Prompt 改版、模型切换、法规变化、知识更新等影响输出的因素变化时主动失效 ✓ 正确答案 B 缓存永不失效 C 法规变化无需失效 D 模型切换不影响缓存
# 49. 多模态请求中的图像/音频内容如何参与缓存(哈希 + 视觉特征) A 图像只用原始字节 B 用内容哈希精确匹配 + 视觉特征相似匹配,组合进缓存键 ✓ 正确答案 C 图像无法缓存 D 无需哈希
# 50. 缓存的“新鲜度”与“召回质量”应如何联合评估,单一指标为何不够 A 联合评估命中率、新鲜度、内容正确性,单一指标会误导缓存价值判断 ✓ 正确答案 B 只看命中率 C 只看新鲜度 D 过期内容也可返回
# 51. AI 网关(LiteLLM Proxy、Portkey、OpenRouter)如何统一认证和路由 A 客户端需管理各 Provider 密钥 B 客户端直连 Provider C 网关统一一个 key 认证并集中管理 Provider 密钥,按策略统一路由,客户端只接一个接口 ✓ 正确答案 D 无需统一认证
# 52. 多模型路由如何通过可解释特征选择不同模型档位 A 路由用黑盒模型 B 用请求长度/复杂度/工具等可解释特征映射档位,成本质量平衡,反馈纠偏优化 ✓ 正确答案 C 特征无需解释 D 路由不优化
# 53. 自建网关在数据主权与合规驻留上的优势应如何量化,哪些场景下商业网关的多区域合规能力反而更划算? A 自建永远最优 B 合规无需考虑 C 商业网关无优势 D 自建强在数据主权与无锁定,多区域合规需求广、自建合规成本高时商业网关更划算 ✓ 正确答案
# 54. 自建网关与商业网关在数据主权、多区域、合规、运维和退出成本上如何决策 A 综合数据主权、多区域、合规、运维与退出成本五维权衡,强合规选自建、快速上线选商业 ✓ 正确答案 B 只看价格 C 商业永远最优 D 退出成本无关
# 55. 流式响应的中断恢复,断流后客户端重连、增量续传与超时重发如何设计? A 断开即放弃 B 断流无需恢复 C 自动重连、用事件游标增量续传、超时重发并幂等去重,保证不重复不丢失 ✓ 正确答案 D 重发会重复