提升 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,并在恢复后重新加入,从而提升服务的稳定性和用户体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/22635.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

提升C++项目编译速度

目录 一、问题背景 二、代码规范方面的解决方案 2.1 拆分头文件 2.2 拆分巨型类 2.3 使用前置声明 2.4 避免在头文件中包含实现 2.5 避免头文件重复包含 2.6 将常用且变动较少的独立到一个文件 三、代码业务重构方面经验 3.1 使用PIMPL(Pointer to Imple…

【学术投稿-第四届材料工程与应用力学国际学术会议(ICMEAAE 2025】材料工程与应用力学的探讨

重要信息 官网:www.icmeaae.com 时间:2025年3月7-9日 地点:中国西安 简介 第四届材料工程与应用力学(ICMEAAE 2025)将于2025年3月7日至9日在中国西安召开。本次会议将重点讨论材料科学、应用力学等领域的最新研究进…

抓包工具(三)Wireshark代理抓包Java程序的HTTPS请求

目录 一、需求背景二、操作步骤2.1 jSSLKeyLog 工具下载2.2 jSSLKeyLog工具使用2.3 将sslkeylog导入Wireshark2.4 测试Demo2.5 测试结果1)使用工具解密HTTPS前:2)实用工具解密HTTPS后: 三、补充:如果出现未解密成功的情…

[VSCode]彻底卸载和重装,并搭建Java开发环境

VSCode彻底卸载 由于当初是朋友帮忙装的,所以准备卸载,自己装一遍 从控制面板找到 vscode 将其卸载。 此时仅仅是删除了应用软件 删除安装插件 在图示路径中找到 .vscode 文件夹,将其删除,即可彻底清除安装的插件 C:\Users\user\.vscode …

泛微OA编写后端Rest接口

泛微OA编写后端Rest接口 前言 具体实现 运行结果 注意要点 总结 前言 在泛微E9中,可以通过注解的方式来编写对外的接口,之前的版本都是通过编写servlet类,然后在web.xml文件中将这个类和访问路径进行编辑之后才好在浏览器中通过输入对应…

041集——封装之:新建图层(CAD—C#二次开发入门)

如图所示&#xff1a;增加一个图层“新图层”&#xff0c;颜色为红&#xff08;1&#xff09;&#xff0c;当图层颜色定义为黄&#xff08;2&#xff09;时&#xff0c;直接覆盖之前图层颜色&#xff0c;图层名不变。 代码如下&#xff1a; /// </summary>/// <param …

Redis存储⑪主从复制_分布式系统解决单点问题

目录 1. 主从复制的概念 1.1 分布式解决单点问题 1.2 主从复制的特点 2. 模拟配置主从复制 2.1 建立复制 2.2 断开复制 2.3 安全性 2.4 只读 2.5 传输延迟 3. 主从复制的拓扑 3.1 一主一从结构 3.2 一主多从结构 3.3 树形主从结构 4. 主从复制的原理 4.1 复制过…

XiaoMi Mi5(gemini) 刷入Ubuntu Touch 16.04——安卓手机刷入Linux

最近在研究个人用的小服务器&#xff0c;期间也搞了一台某讯的盒子&#xff0c;s905的芯片&#xff0c;28G&#xff0c;刷入了Armbian&#xff0c;在自己本地当linux服务器用用挺方便的&#xff0c;但总感觉性能不太够。 然后灵机一动&#xff0c;手上还有几台旧的安卓手机&am…

SpringCould+vue3项目的后台用户管理的CURD【Taurus教育平台】

文章目录 一.SpringCouldvue3项目的后台用户管理的CURD【Taurus教育平台】 1.1 背景 二.用户列表&#xff08;分页查询&#xff09; 2.1 前端Vue3 &#xff08;Vue3-Element-Admin&#xff09;2.2 后端SpringCould 处理 三. 用户信息删除 3.1 前端Vue3 &#xff08;Vue3-Eleme…

HackTools插件+反弹shell的27种方法

前言 在渗透测试过程中&#xff0c;我们往往要使用很多命令&#xff0c;比如反弹shell、xss测试语句、sql测试语句、Linux常用提权语句、PowerShell常用语句。 为了方便&#xff0c;这里给大家推荐一个插件&#xff1a;HackTools&#xff0c;里面涵盖了渗透测试各种常用的语句…

Java语法-IO流

Java语法 Java基础语法 IO流 一、File类 /* java.io.File 文件类 提供了用于操作文件 创建文件 获取文件信息等 各种文件相关的方法 exists() 判断文件或目录是否存在 boolean isFile() 判断是否是文件 boolean isDirectory() 判断是否是目录 String getPath(…

Microsoft Office 2024 软件安装教程(免费)

1.通过百度网盘下载Microsoft Office 2024安装包 下载地址为: https://pan.baidu.com/s/1jk1kvQsKFH9dZGF5xfGgiQ?pwdjbkv 提取码: jbkv 。 2.安装环境 Win10~Win11或更高。 3.安装步骤 &#xff08;1&#xff09;下载压缩包&#xff0c;解压缩。 &#xff08;2&#xf…

鸿蒙NEXT应用App测试-专项测试(DevEco Testing)

注意&#xff1a;大家记得先学通用测试在学专项测试 鸿蒙NEXT应用App测试-通用测试-CSDN博客 注意&#xff1a;博主有个鸿蒙专栏&#xff0c;里面从上到下有关于鸿蒙next的教学文档&#xff0c;大家感兴趣可以学习下 如果大家觉得博主文章写的好的话&#xff0c;可以点下关注…

【学习笔记】【SpringCloud】MybatisPlus 基础使用

目录 一、使用 MybatisPlus 基本步骤 1. 引入 MybatisPlus 依赖 2. 定义Mapper接口并继承BaseMapper 二、MybatisPlus 常用配置 三、自定义SQL 四、IService 接口 1. 批量新增的效率问题 2. 配置方式 五、插件功能 1. 分页插件 一、使用 MybatisPlus 基本步骤 1. 引…

球队训练信息管理系统设计与实现(代码+数据库+LW)

摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装球队训练信息管理系统软件来发挥其高效地信息处理的作用&a…

使用Dify将AI机器人嵌入到你的前端页面中及chrome的扩展应用

目录 1 博主有话说2 前提环境3 Dify创建个聊天助手应用4 将AI聊天机器人嵌入到html中5 将AI聊天机器人设置为chrome的扩展应用6 博主增语 1 博主有话说 那博主话不多说&#xff0c;先展示一下成果&#xff01; 这个界面是使用dify配置的一个“聊天助手”的应用&#xff0c;助…

Oracle JDK、Open JDK zulu下载地址

一、Oracle JDK https://www.oracle.com/java/technologies/downloads/ 刚进去是最新的版本&#xff0c;往下滑可以看到老版本 二、Open JDK的 Azul Zulu https://www.azul.com/downloads/ 直接可以选版本等选项卡

PiscTrace开发者版:只需考虑算法的视图处理应用

在计算机视觉领域&#xff0c;处理图像和视频数据的需求日益增长。无论是在智能监控、自动驾驶&#xff0c;还是工业检测中&#xff0c;图像处理都扮演着至关重要的角色。基于 OpenCV 的视图处理工具&#xff0c;专为需要高度定制和精确图像处理的开发者而设计。 一、CodeTrac…

线性回归 (Linear Regression)基础知识1

本章节主要介绍&#xff1a;回归任务简介、线性回归模型、回归任务的损失函数 *回归任务*机器学习的三要素线性回归线性回归模型 *数据分析*散点图*相关性系数矩阵 *拓展知识&#xff1a;相关性系数矩阵定义计算相关性系数矩阵示例应用 线性回归的损失函数回归任务目标函数&…

直角三角堰计算公式

直角三角堰的计算公式通常用于确定流经直角三角形形状的堰的流量。河北瑾航科技遥测终端机 通过采集液位数据(模拟量、串口485/232)&#xff0c;计算得到瞬时流量&#xff0c;然后通过积分进行累计算出累积量&#xff1b;直角三角堰的流量计算公式为&#xff1a; 直角三角堰 计…