什么是 模型服务化(Model Serving)?
模型服务化(Model Serving)是加载版本化模型制品、通过明确接口执行推理,并在真实流量下保持行为可用、可观测和可控制的生产系统与运维实践。
工作原理
发布不可变制品契约
每个 Release 都应以不可变 Digest 或 Revision 标识权重、Tokenizer 或 Feature Pipeline、Template、Adapter、前后处理代码、Runtime Image 与 Configuration。版本化 Request/Response Schema、Error Taxonomy、Streaming Event、Finish Reason、Usage 与 Timeout 行为;加载前验证 License、Provenance、Access Policy 和 Secret Boundary。Model Alias 只是路由名称,不能证明多个 Replica 执行相同制品。
分离 Liveness、Readiness 与流量
进程存活时,模型仍可能正在加载、Warmup 未完成、Collective Peer 缺失或容量耗尽,因此不能接流量。Readiness 应证明目标制品与依赖可用,再把 Endpoint 加入路由。
[KServe Control Plane](https://kserve.github.io/website/docs/concepts/architecture/control-plane)把生命周期管理与推理执行分开,并支持 Autoscaling 和 Traffic Control。采用 Shadow、Canary 或 Blue-green,必要时保持 Sticky State,Drain 在途 Stream,并保留经过验证的 Rollback Target。
按合格工作扩缩与观测
CPU/GPU Utilization 是滞后且不完整的扩缩容信号。应按 Artifact Revision 观察 Arrival Rate、Queue Depth/Age、Admission Rejection、Batch Occupancy、Cache Pressure、TTFT、TPOT、端到端延迟、错误、取消、模型质量、安全与成本。
扩容要提前覆盖 Model Load Delay 与拓扑约束,同时通过 Admission 防止 Queue 无限增长。[Triton Model Management](https://docs.nvidia.com/deeplearning/triton-inference-server/user-guide/docs/user_guide/model_management.html)说明 Load State、Model Readiness 与安全 Repository Update 是不同问题。
主要特点
- 把模型与预处理制品绑定到版本化执行和 API 契约
- 分离负责生命周期、路由、扩缩的 Control Plane 与推理 Data Plane
- 支持 Online、Streaming、Asynchronous 或 Batch 请求语义
- 使用 Readiness、Admission、Draining 与 Rollback,而不只检查进程存活
- 按 Artifact Revision 测量延迟、吞吐、错误、质量、安全与成本
- 保护模型访问、租户数据、Credential、Log 与中间状态
常见用途
- 通过稳定 API 提供分类器、Embedding、Reranker 或 LLM
- 用 Shadow 与 Canary 发布新的模型和 Runtime 组合
- 在限制 Queue Time 和 Cold Start 的同时扩缩昂贵加速器
- 按租户或任务路由到兼容模型 Revision 与容量池
- 把权重、Tokenizer、Template 与 Runtime 作为完整契约回滚
示例
Loading code...常见问题
模型服务化与模型推理有什么区别?
模型推理是把输入映射为模型输出的执行过程;模型服务化则用版本化接口、生命周期、路由、容量、可观测性、安全与故障处理包裹推理,使应用可以稳定依赖它。
一次 Serving Release 必须版本化哪些内容?
至少版本化权重、Tokenizer 或 Feature Logic、Template、Adapter、前后处理、Runtime Image、Precision、Configuration 与 API 语义。只回滚权重而保留不兼容外层契约并不安全。
Liveness 与 Readiness 有什么区别?
Liveness 判断是否应重启进程;Readiness 判断该 Replica 是否应该接收流量。模型加载、Warmup、Peer 缺失或制品不可用时,进程可以存活但尚未 Ready。
模型服务应监控哪些指标?
应监控需求、Queue Depth/Age、Admission、延迟分位数、Throughput、错误、取消、Resource/Cache Pressure、成本、输出 Schema、任务质量与安全,并按 Artifact Revision 切分。
新模型版本应如何上线?
先离线验证,再无流量加载与 Warmup,执行 Shadow 检查,然后在自动质量和 SLO 门禁下逐步增加 Canary 流量。保留上一份完整制品契约,安全 Drain 有状态请求,并提前演练 Rollback。