可靠性、限流

共 55 题
#

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 重发会重复