多租户的三大课题:噪声、配额与公平
一套推理服务同时服务多个租户(企业客户、产品线、团队),面临三大课题。课题一:噪声隔离。租户 A 的流量高峰不能拖慢租户 B——GPU 是共享的,算力与显存没有天然的租户边界(本库 GPU 共享篇:共享的隔离路线)。课题二:配额。每个租户的用量上限(token 配额、并发配额、QPS 上限)——配额既是商业合约的执行,也是系统保护的闸门(一个租户的失控任务吃光所有容量)。课题三:公平。同样的付费、同样的服务水准——公平调度的实现(不能「先来先服务」让大户饿死小户)。三课题的解法分两层:逻辑隔离(网关与调度层的软隔离)与物理隔离(资源分区的硬隔离)——成熟的多租户架构是两层组合。
隔离的两层:逻辑隔离与物理隔离
逻辑隔离(网关层):租户的身份与配额在网关层实现——虚拟 key 的体系(本库 LiteLLM 篇:每租户一个虚拟 key、各自的配额与用量统计)、限流的多维实现(按租户的 QPS/token 上限、令牌桶的每租户实例)、排队与调度的公平(多租户的请求在引擎的批处理里如何公平分配——公平调度的实现:vLLM 的调度策略按租户加权、防止大户的请求填满每个 batch)。逻辑隔离的边界:批处理内的噪声无法完全消除(同 batch 的请求共享 GPU 的算力——长请求拖慢同批的短请求——batch 内的干扰是逻辑隔离的固有局限)。物理隔离(资源层):租户独占的推理副本(每个大租户专属的模型实例——本库 GPU 共享篇的 MIG/vGPU 或独立副本)、MIG 的硬件隔离(硬件级的噪声隔离——物理隔离的极致)。物理隔离的代价:利用率下降(独占副本的低谷空闲——隔离与利用率的永恒权衡)。两层组合的架构:小租户共享副本(逻辑隔离)、大租户独占副本(物理隔离)——按租户的规模与 SLA 分层。
配额与公平调度:从合约到实现
配额的实现。配额的维度:QPS(每秒请求数)、TPM(每分钟 token 数)、并发数——多维度配额的组合(不同维度防不同的滥用:QPS 防刷、TPM 防大请求、并发防堆积)。配额的执行:网关层的令牌桶(每租户独立计数——Redis 的分布式实现)、超限的行为设计(429 拒绝 + Retry-After 头——标准的限流响应,让客户端知道何时重试)。公平调度的实现。公平的定义先明确:公平 ≠ 平均——公平是「按合约分配」(付费多的租户获得更大的份额)——加权公平队列(按租户的合约权重分配资源份额)。调度的实现位置:网关层的调度(租户级的请求排队与放行)+ 引擎层的调度(vLLM 的调度策略对租户的感知——引擎级的租户感知调度是进阶能力)。公平的监控:各租户的延迟分位数、排队时间、被限流的次数——公平不是宣布的,是监控出来的(某租户的 P99 显著差 = 公平失效的信号)。
噪声治理与多租户的工程清单
噪声治理的工程手段。手段一:租户级的流量整形(大租户的突发流量在网关平滑——削峰填谷让引擎看到的是平稳的流量)、手段二:请求的分级调度(交互式请求优先于批处理请求——同租户内的优先级)、手段三:超长请求的隔离(超长上下文的请求单独池——长请求的 prefill 与长输出的 decode 挤占共享资源,本库压测篇的隔离原则)。手段四:租户的画像与预测(各租户的流量模式统计——可预测的尖峰提前扩容)。多租户的工程清单。清单项:租户身份体系(虚拟 key 与租户映射)、多维配额的实现、公平调度的策略与监控、物理隔离的分界(哪些租户独占)、噪声的持续监控(租户间的延迟影响分析)、账单与用量的对账(配额执行与计费的一致)。清单的元原则:多租户推理的本质是「GPU 上的云服务化」——云计算的所有课题(隔离、配额、公平、计量、滥用防护)在 GPU 上重演一遍,而 GPU 的「算力软共享 + 显存硬边界」让隔离的难度比 CPU 云更高一档。多租户推理的成熟,标志着一个推理服务从「单机产品」进化为「基础设施平台」——这是所有推理服务商的必经之路。
多租户的进阶:租户级的模型定制与微调服务
多租户推理(正文配额)的进阶:租户级的模型定制——多租户与微调服务的结合。场景:企业客户要求「用自己的数据微调模型」(SaaS 平台提供微调服务——每个租户一个定制模型)。工程的三种形态。形态一:每租户一个全量模型副本(每租户一份模型权重——显存的天文数字:100 租户 × 14G = 不可行,小规模可行)。形态二:LoRA 的多租户(基座共享 + 每租户一个 LoRA 适配器——本库 LoRA 篇的工程优势在多租户的最大发挥:100 租户 = 1 个基座 + 100 个 MB 级 LoRA——显存可行、切换灵活:LoRA 热切换)。形态三:模型的软定制(不真微调,用 system prompt + few-shot + RAG 的「软定制」——本库决策表篇的提示词路线——成本最低但定制深度有限)。三种形态的决策:定制的深度需求(行为风格的深度定制 → LoRA、知识定制 → RAG、风格微调 → prompt)× 租户数量(LoRA 的显存账)× 合规要求(数据的隔离)。LoRA 多租户的工程要点:LoRA 的动态加载与切换(请求级的 LoRA 热切换——vLLM 的 LoRA 支持:同一引擎动态挂载租户的适配器)、LoRA 的存储与版本管理(每租户的适配器管理——本库模型分发篇)、以及租户间的隔离验证(A 租户的 LoRA 不能影响 B 租户——基座共享的隔离验证)。多租户微调的收束:LoRA 让「每个租户一个定制模型」从天文数字变成工程现实——多租户 + 微调服务的组合,是 LLM 平台从「标准化 API」走向「定制化服务」的关键一步;而 LoRA 的热切换,是这一步的技术地基。
推理平台的产品化:从服务到平台的演进
推理服务(正文清单)的进阶:从服务到平台的演进——多租户推理的平台化产品形态。平台的组成要素。租户与计费(租户管理、用量计量与计费——本库多租户篇的计量+FinOps)、模型与微调的管理(模型的注册、微调的服务化——本库 LoRA 多租户、模型发布篇)、配额与 SLA 的产品化(配额的套餐化、SLA 的分级——本库 SLA 篇的分级承诺)、可观测的租户视图(每租户的用量与质量仪表盘——租户自己能看到自己的用量与质量——透明度是平台信任的来源)。平台的产品化意义。从「服务」到「平台」的差异:服务是「我给你跑模型」、平台是「你自己来管模型与应用」——平台的标志是「自助化」(租户自助上传模型、自助微调、自助监控——自助化的程度 = 平台的成熟度)。与现有平台的对照:LLM 平台的三层地图(本库 Dify 篇的分层——模型平台/编排平台/集成平台)——推理服务的产品化是「模型平台层」的竞争(MaaS 的产品化竞争:各家 API 平台的租户功能竞赛)。平台化的收束:推理服务的平台化演进,是从「算力的贩卖」到「能力的平台」——多租户、微调服务、配额 SLA、租户可观测,四件套齐了,推理服务才完成了从「基础设施」到「平台产品」的进化。
多租户的进阶:限流的算法与实现
多租户推理(正文配额)的进阶:限流的算法与实现——多维限流的工程。限流的算法。令牌桶(token bucket):恒定速率的令牌生成 + 突发容忍(桶的容量允许突发——适合「平均有上限、偶尔有突发」的租户)。滑动窗口:精确的时间窗口计数——适合「严格的速率限制」。漏桶(leaky bucket):恒定的流出速率——适合「恒定速率的输出」。多维限流的组合:QPS 限流 + TPM 限流 + 并发限流的三维组合——每个维度防不同的滥用(本库正文的配额维度)。分布式限流的实现。单机限流 vs 分布式限流——多副本的推理服务需要跨副本的统一限流(Redis 的分布式限流——INCR + EXPIRE 或滑动窗口的 Redis 实现)。限流的收束:限流是多租户推理的「呼吸系统」——它控制了每个租户能「呼吸」多少算力;令牌桶的突发容忍、滑动窗口的精确控制、多维限流的组合,是限流的三个基本工具——而限流的「公平性与突发容忍的平衡」,是多租户限流设计的核心决策。)
多租户的实战案例:一个推理平台的租户体系搭建
多租户推理(正文清单)的实战案例:推理平台的租户体系搭建——从零到多租户的完整实现。租户体系的三层。层一:身份与认证(租户的身份体系:虚拟 key 的发放与管理——本库 LiteLLM 篇)。层二:配额与计费(配额的设置、用量的计量、计费的核算——本库 FinOps 篇)。层三:隔离与公平(逻辑隔离的网关策略、物理隔离的副本分配、公平调度的实现——本库正文的配额与公平)。搭建的步骤。第一步:网关部署(LiteLLM Proxy——OpenAI 兼容接口、虚拟 key 管理)。第二步:配额配置(每租户的 QPS/TPM/预算)。第三步:监控部署(每租户的用量与质量仪表盘——租户自己能看到自己的数据)。第四步:SLA 分级(不同等级租户不同承诺——本库 SLA 篇的分级)。搭建案例的收束:多租户推理平台的搭建,核心是「网关+配额+监控+SLA」四件套——四件套的每一个都可以从开源方案起步(LiteLLM+Prometheus+Grafana+文档),生产化后再逐步替换——多租户不是大厂专属,是每个推理服务的进化方向。
读者留言
COMMENTS 暂无还没有留言,来说第一句?