当前位置: 首页 > news >正文

提升 AI 服务的稳定性:Higress AI 网关的降级功能介绍

在使用 LLM 服务时,服务的稳定性和可用性至关重要。然而,由于网络问题、服务器故障或其他不可控因素,LLM 服务可能会暂时不可用。为了保障用户体验和业务连续性,Higress AI 网关提供了强大的模型降级和令牌降级功能。本文将介绍这两个关键功能,并展示它们如何为 AI 应用提供可靠的服务保障。

一键启动 Higress AI 网关

首先启动 Higress AI 网关,仅需一行命令,即可快速在本地搭建好 Higress AI 网关(此步骤需要有 Docker 环境):

curl -sS https://higress.cn/ai-gateway/install.sh | bash

执行以上命令后,会进入引导界面,可以在此处配置 Provider 的 ApiToken,也可以输入回车直接跳过:

看到以下界面就表示 Higress AI 网关已经成功启动了。

浏览器输入 http://localhost:8001 就可以访问 Higress 的控制台界面了。

配置 ApiToken

Higress AI 网关内置了主流的 LLM Provider,仅需要在控制台上简单填写 ApiToken 即可完成 Provider 的配置。这里我们分别配置 DeepSeek 和通义千问两个 Provider。

请求 DeepSeek 和通义千问

配置完 ApiToken 以后,就可以直接通过 Higress AI 网关来访问 DeepSeek 和通义千问了。

# 请求 DeepSeek
curl 'http://localhost:8080/v1/chat/completions' \
      -H 'Content-Type: application/json' \
      -d '{
        "model": "deepseek-chat",
        "messages": [
          {
            "role": "user",
            "content": "你是谁?"
          }
        ]
      }'

# 请求通义千问
curl 'http://localhost:8080/v1/chat/completions' \
      -H 'Content-Type: application/json' \
      -d '{
        "model": "qwen-turbo",
        "messages": [
          {
            "role": "user",
            "content": "你是谁?"
          }
        ]
      }'

Higress AI 网关已经帮用户预先配置了 AI 路由,可以根据模型名称的前缀来路由到不同的 LLM。

模型降级

Higress AI 网关提供的模型降级(fallback)功能,能够在主 LLM 服务不可用时,自动切换到备选的 LLM 服务,确保业务连续性和用户体验不受影响。

接下来,我们将以通义千问作为主 LLM 服务,DeepSeek 作为备 LLM 服务进行演示。在 AI 路由管理界面中,选择通义千问预设的 AI 路由(aliyun),并启用降级配置。在降级服务选项中选择 deepseek,同时将目标模型设置为 deepseek-chat

AI 服务提供者管理 界面中,编辑通义千问的凭证(ApiToken),这里我们故意设置一个错误的凭证,以确保能够触发降级功能。

接下来,客户端向 Higress AI 网关发送请求,其中 model 设置为 qwen-turbo。以 qwen- 开头的模型将首先通过 AI 路由转发至通义千问。

# 请求通义千问
curl 'http://localhost:8080/v1/chat/completions' \
      -H 'Content-Type: application/json' \
      -d '{
        "model": "qwen-turbo",
        "messages": [
          {
            "role": "user",
            "content": "你是谁?"
          }
        ]
      }'

从响应内容可以看出,这个请求最终是由 DeepSeek 处理的,说明我们设置的模型降级功能已经生效。

# 响应内容来自 DeepSeek
{
  "id": "99ad1eed-2445-4722-a1e7-d9a9fb2a3b74",
  "object": "chat.completion",
  "created": 1739801515,
  "model": "deepseek-chat",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "您好!我是由中国的深度求索(DeepSeek)公司开发的智能助手DeepSeek-V3。如您有任何任何问题,我会尽我所能为您提供帮助。"
      },
      "logprobs": null,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 5,
    "completion_tokens": 37,
    "total_tokens": 42,
    "prompt_tokens_details": {
      "cached_tokens": 0
    },
    "prompt_cache_hit_tokens": 0,
    "prompt_cache_miss_tokens": 5
  },
  "system_fingerprint": "fp_3a5770e1b4"
}

令牌降级

除了模型降级功能,Higress AI 网关还提供了令牌降级功能。用户可以设置多个 ApiToken,Higress 默认会随机选择一个进行请求。如果某个 ApiToken 不可用,Higress 会将其从列表中移除,并在后台进行健康检查。一旦该令牌通过检查并恢复正常,它将被重新加入可用列表。这一机制进一步保障了服务的连续性,并确保了用户的良好体验。

AI 服务提供者管理 界面中,为通义千问模型启用令牌降级功能,将健康检测请求的模型设置为 qwen-turbo,其他参数保持默认不变。另外在凭证中分别设置一个可用的 ApiToken 和一个不可用的 ApiToken。

接下来,客户端通过 Higress AI 网关向通义千问发送请求,可以多次尝试,你会发现始终能够收到来自通义千问的成功响应。

# 请求通义千问
curl 'http://localhost:8080/v1/chat/completions' \
      -H 'Content-Type: application/json' \
      -d '{
        "model": "qwen-turbo",
        "messages": [
          {
            "role": "user",
            "content": "你是谁?"
          }
        ]
      }'

# 响应内容来自通义千问
{
  "id": "09257759-00f2-9130-bfbb-799d2b430390",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "我是阿里云开发的一款超大规模语言模型,我叫通义千问。"
      },
      "finish_reason": "stop"
    }
  ],
  "created": 1739801612,
  "model": "qwen-turbo",
  "object": "chat.completion",
  "usage": {
    "prompt_tokens": 11,
    "completion_tokens": 17,
    "total_tokens": 28
  }
}

由于令牌不可用时需要满足的最小连续请求失败次数参数默认设置为 1,如果首次请求时正好使用了不可用的 ApiToken,Higress 会立即将其从可用列表中移除。同时,默认情况下,Higress 会主动发起一次新的尝试。由于不可用的 ApiToken 已被移除,新的尝试将使用另一个可用的 ApiToken,因此无论尝试多少次,你始终可以收到成功的响应。

此外,令牌降级功能还可以与模型降级功能配合使用。例如,配置多个 ApiToken,当请求失败时,首先尝试使用另一个 ApiToken,如果仍然失败,再降级到备用 LLM,从而进一步提高系统的稳定性和可靠性。

总结

本文重点介绍了 Higress AI 网关的模型降级和令牌降级功能。在 LLM 服务不可用时,模型降级功能能自动切换到备用 LLM,确保业务连续性。而令牌降级功能则通过健康检查机制,自动移除不可用的 ApiToken,并在恢复后重新加入,从而提升服务的稳定性和用户体验。

相关文章:

  • 区块链共识机制详解
  • CentOS的ssh复制文件
  • C++ DAY3
  • SMT贴片车间高效运作实战指南
  • uniapp 网络请求封装(uni.request 与 uView-Plus)
  • 《深度学习实战》第2集:卷积神经网络(CNN)与图像分类
  • BDF7与glm的对话
  • 学习笔记-沁恒第四讲-米醋
  • 校园电子地图制作:校园三维地图从 CAD 图纸到 WebGIS 服务的完整链路
  • Spring Boot 集成 T-io 实现客户端服务器通信
  • 蓝桥杯定时器实现led闪烁
  • Proser:在项目中验证功能
  • 【多模态处理篇六】【DeepSeek3D点云处理:PointNet++工业检测】
  • C++17中std::chrono::duration和std::chrono::time_point的舍入函数
  • 解决:将deepseek本地部署之后出现网络错误
  • 51单片机-串口通信编程
  • js 实现隔行幻色
  • 第五篇:DeepSeek-R1 的应用场景与未来展望
  • [特殊字符] 蓝桥杯 Java B 组 之位运算(异或性质、二进制操作)
  • Linux第十三节 — 进程状态详解
  • 江西省文化和旅游厅厅长梅亦已任省委宣传部副部长
  • 新华社:赵心童世锦赛夺冠,中国书写斯诺克运动新历史
  • 新闻1+1丨多地政府食堂开放 “舌尖上的服务”,反映出怎样的理念转变?
  • 菲律宾首都机场航站楼外发生汽车冲撞事故致2死多伤
  • 旧宫新语|瑞琦:再探《古玩图》——清宫艺术品的前世与今生
  • 艺术开卷|韩羽读齐白石:妙在似与不似之间