首页/AI/大模型部署与运维速查/模型别名:对外稳定内部可换

模型别名:对外稳定内部可换

对外只暴露稳定别名(如 llm-chat),网关把别名映射到具体后端与版本;换模型、换量化、换实例组都只改映射表,客户端不动。

别名是调用方与后端之间的解耦层

调用方请求里的模型名不应该是某个具体权重目录或实例地址,而是一个稳定的别名,比如对话用途叫 llm-chat、快速响应用途叫 llm-fast。别名到真实后端的映射放在网关的配置里,换模型、换量化版本、换实例组都只改这一处。这样升级对调用方完全透明,回滚也只是把映射改回去,不需要所有接入方配合发版。

基本信息

所属层网关的模型路由配置
别名命名按用途命名(对话、总结、快速),不要按版本号命名
映射内容别名指向具体后端、模型名与可选参数
变更方式修改映射表并重载网关配置
管理要求映射表纳入版本管理与评审,变更留记录

典型使用场景

  • 模型升级:新版本验证通过后把别名指向新后端,调用方零改动
  • 灰度发布:新增一个临时别名指向新版本,小范围流量验证后再切换主别名
  • 快速回滚:映射表保留上一个版本,出问题时改一行即可恢复
  • 多环境隔离:同一套调用代码在测试与生产通过不同映射指向不同后端
  • 混合路由:同一别名背后挂多个后端,按权重或来源做分流

别名映射示意

别名映射示意
# 网关配置:对外别名到内部后端的映射
aliases:
  llm-chat: local-32b@v3        # 对外主用对话模型
  llm-fast: local-8b@v2         # 低延迟轻量用途
  llm-chat-canary: local-32b@v4 # 灰度别名,验证通过后再切主别名

backends:
  local-32b@v3: { upstream: http://127.0.0.1:8000, model: "<权重名>" }
  local-32b@v4: { upstream: http://127.0.0.1:8001, model: "<权重名>" }

命名与管理要点

要点做法避免的后果
按用途命名llm-chat、llm-summary 这类语义名别名与版本耦合,每次升级都要改调用方
保留上一个版本映射表中保留可回退的条目出问题只能重建旧实例,恢复时间被拉长
变更走评审映射修改纳入变更记录一次手改影响所有调用方,无人知道是谁改的
灰度用独立别名新增别名而非直接改主别名新版本问题直接暴露给全部流量
注明参数差异映射中标注上下文长度与限流差异调用方按旧假设传参,出现截断或报错
映射表要纳入版本管理与评审:改一行就影响所有调用方,变更必须留下时间与原因,出现问题才能快速定位到是哪次调整引入的。
演进用法:灰度时新增别名指向新版本,验证通过后再把主别名切过去,回滚只需改回一行映射,不必重启引擎。

易错点

  • 别名直接等于权重名:每次换版本都要通知所有调用方改代码,升级被流程拖慢
  • 映射表无版本管理:谁改了什么没有记录,问题出现时无法回溯
  • 直接改主别名做灰度:新版本的问题一次性暴露给全量流量,缺少缓冲
  • 别名不标注能力差异:新旧版本上下文长度或参数支持不同,调用方沿用旧假设导致请求失败

数据来源与参考

  • LiteLLM 官方文档:模型别名(docs.litellm.ai)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌