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

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

一键启动 Higress AI 网关

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

bash 复制代码
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 和通义千问了。

bash 复制代码
# 请求 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 路由转发至通义千问。

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

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

bash 复制代码
# 响应内容来自 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 网关向通义千问发送请求,可以多次尝试,你会发现始终能够收到来自通义千问的成功响应。

bash 复制代码
# 请求通义千问
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,并在恢复后重新加入,从而提升服务的稳定性和用户体验。

相关推荐
33三 三like32 分钟前
《基于知识图谱和智能推荐的养老志愿服务系统》开发日志
人工智能·知识图谱
芝士爱知识a33 分钟前
【工具推荐】2026公考App横向评测:粉笔、华图与智蛙面试App功能对比
人工智能·软件推荐·ai教育·结构化面试·公考app·智蛙面试app·公考上岸
腾讯云开发者2 小时前
港科大熊辉|AI时代的职场新坐标——为什么你应该去“数据稀疏“的地方?
人工智能
工程师老罗2 小时前
YoloV1数据集格式转换,VOC XML→YOLOv1张量
xml·人工智能·yolo
Coder_Boy_2 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
啊森要自信2 小时前
CANN ops-cv:面向计算机视觉的 AI 硬件端高效算子库核心架构与开发逻辑
人工智能·计算机视觉·架构·cann
2401_836235862 小时前
中安未来SDK15:以AI之眼,解锁企业档案的数字化基因
人工智能·科技·深度学习·ocr·生活
njsgcs3 小时前
llm使用 AgentScope-Tuner 通过 RL 训练 FrozenLake 智能体
人工智能·深度学习
董董灿是个攻城狮3 小时前
AI 视觉连载2:灰度图
人工智能