22.5万奖金池丨Higress AI 网关编程挑战赛启动

AI 原生应用,对网关的需求已经超越了传统的路由和负载均衡功能,还需要为 AI 应用开发者提供便利,例如统一不同 LLM 提供商的 API 协议,并提供 API 编排、安全、稳定性和成本控制等扩展功能。

—— 赛题出品人&Higress Maintainer 张添翼

2024 天池云原生编程挑战赛 6 月 12 日正式启动,8 月 28 日线下决赛,9 月公布最终参赛结果,奖金池合计 22.5 万,共计三个赛道,面向全社会开放。 《使用 Higress AI 网关优化 AI 调用成本》是第二赛道。

赛题背景

随着 LLM 技术的蓬勃发展,AI Web 应用创新如火如荼,其对网关的需求超越了传统的路由和负载均衡功能,承载了更大的 AI 工程化使命,相关需求如下:

  • 长连接: 由 AI Web 应用常见的 Websocket 和 SSE 协议决定,长连接的比例很高,要求网关更新配置操作对长连接无影响,不影响业务。
  • 高延时: LLM 推理的响应延时比普通 Web 应用要高出很多,使得 AI Web 应用面向 CC 攻击时显得很脆弱,容易被攻击长时间维持住大量长连接,消耗大量计算和存储资源。
  • 大带宽: 结合 LLM 上下文来回传输,以及高延时的特性,AI Web 应用对带宽的消耗远超普通应用,网关或后端如果没有实现较好的流式处理能力,容易导致内存快速上涨,继而触发 OOM。

并且,在 AI 时代,对 AI 网关的需求已经超越了传统的路由和负载均衡功能,例如可以为 AI 应用开发者提供便利,统一不同 LLM 提供商的 API 协议,并提供 API 编排、安全、稳定性和成本控制等扩展功能。

Higress 作为 AI 原生的 API 网关,对于承接 AI 流量有着天然优势。Higress 既承载了通义千问等阿里云核心 AI 业务流量,也承载了云上多家 AGI 客户的流量。本赛题主要面向 Higress 的灵活扩展能力,设计 AI 网关插件,实现 LLM API 调用成本优化等目标,可以很好地满足客户对 AI 网关的需求:

  • 长连接: 不同于 Nginx 变更配置需要 Reload,导致连接断开,Higress 基于Envoy 实现了连接无损的真正配置热更新。
  • 高延时: Higress 基于安全网关能力可以提供 CC 防护能力,在 AI 场景,除了 QPS,还可以扩展针对 Token 生成的限流防护。
  • 大带宽: Higress 支持完全流式转发,在 AI Web 应用场景下,所需的内存占用极低,同时也可以开发 Wasm 插件对请求和响应进行自定义逻辑的流式处理。

此外,使用 Higress 的 Wasm 插件机制来拓展云原生网关的能力,可以满足 AI 网关的延伸需求。例如,基于 Higress 的 AI Proxy 插件,可以屏蔽不同 LLM 提供商的 API 协议,AI 应用开发者的前端无需实现多套协议,就能轻松对接不同 LLM 实现。

赛题描述

1)赛题目标:控制 AI 应用的服务成本

对 AI 应用开发者而言,控制成本是成功的关键。AI 应用的成本大头主要是两部分:

  • 应用搭建的资源成本,例如 CPU、带宽等

    为了提供 Web 能力,网关的资源成本是必须的。基于企业版 Higress 强劲的性能,能支撑高并发流量访问,可以显著降低资源成本;基于开源版 Higress 和阿里云 SAE2.0,可按请求对 CPU 用量计费的机制,适合小规模流量场景。

  • LLM 提供商 API 的调用成本,或者自建模型的 GPU 成本。

    基于向量召回的缓存策略算法,降低调用 LLM 提供商 API 的成本,并保证结果准确率。尤其是在 AI RAG 应用的场景,因为在一个封闭的知识域内,头部 query 的缓存命中率很高,使用此机制可以大幅降低成本。

2)必答题:基于向量召回相似问题的缓存,降低 LLM API 调用成本(100分)

参赛物料清单

参赛者需要开发一个 Higress WASM 插件,支持对接开源 Redis、阿里云 Lindorm、阿里云 Tair 或阿里云向量检索服务等的向量检索能力,进行 LLM 结果的向量召回,并搭配 Higress 的 AI Proxy 插件一起使用。插件整体实现的效果如下图所示:

图中向量距离阈值(0.1)仅供参考

3)附加题:AI 网关插件创新(20分)

除了上述场景外,Higress AI 网关还可以基于插件扩展以下能力:

  • API 编排: 通过管理和编排 LLM prompt 工程相关 API,支持 Agent Reflection、多 Agent 协作等复杂的 Workflow;提供灵活的 API 对接能力,例如支持搜索等工具调用。
  • 安全: 提供 CC 攻击防护,限制请求频率和 Token 消耗速率,防止恶意请求对后端资源造成压力;还能识别并拦截含敏感信息的请求,如个人身份信息,以保护用户隐私和防止数据泄露。
  • 稳定性: 通过跨多个 LLM 提供商和自建模型实现 fallback 机制,增强服务稳定性;在模型服务不可用时,自动切换或回退到其他选项。

附加题希望参赛者设计/开发对构建 AI 应用有帮助的 AI 网关插件,可以涉及API 编排、安全、稳定性、成本控制等方向,但不局限于这些方向,所有对 AI 应用构建有帮助的插件均可。

🔔 注意: 20分包含需求评估和代码实现两部分。

  • 需求评估:提供插件使用的背景和设计思路,文档形式。
  • 代码:用代码进行实现。

实现方式

下面分别介绍使用企业版 Higress 和开源版 Higress 的两种实现方式:

  • 使用企业版 Higress,无需自购 ECS 实例

    企业版 Higress 是开箱即用的,无需自己运维网关资源,通过企业版控制台的插件市场开启 AI Proxy 插件,即可轻松对接多种不同的 LLM 实现。同时结合企业版丰富的限流、认证鉴权、安全防护能力,可以帮助开发者低成本地搭建安全、稳定、合规的 AI 应用。

下图是基于企业版 Higress 构建 AI 应用的架构示意:

  • 使用开源版 Higress,由 SAE 提供算力支持

    Higress 支持以容器化方式部署到阿里云 Serverless 应用平台 SAE 上。和 LLM API 提供商按请求 token 计费类似,SAE2.0 支持仅在请求发生时对 CPU 用量进行计费,可以降低个人开发者的 AI 应用构建成本,适合搭建私人 AI 助手、GPT 私服。

下图是基于开源版 Higress 构建 AI 应用的架构示意:

了解赛制说明、解题思路、评分标准等更多信息,请点击此处,参赛过程中若遇到问题,请加入官方选手钉群,群号:61285018407

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

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

相关文章

alembic数据库迁移工具

Alembic 使用 SQLAlchemy 作为底层引擎,为关系数据库提供变更管理脚本的创建、管理和调用。 安装alembicpip install alembic 2、初始化alembic环境命令: alembic init alembic 3、修改配置和环境 此处修改两个地方: 1 alembic.ini 将url修改为你要连接的数据库地址 2 修…

Hexo自动部署

作者: 時光 来源: 時光的博客园子 原文: https://blog.shiguang666.eu.org/2024/06/24/49078ab077e1Hexo自动部署 为了简化Hexo部署过程,你可以使用持续集成工具(如 GitHub Actions)来实现自动化部署。GitHub Actions 是一个持续集成和持续交付 (CI/CD) 平台,允许你自动化你…

SQLAlchemy的数据库引擎

任何SQLAlchemy应用程序的开始都是一个名为 Engine . 此对象充当连接到特定数据库的中心源,提供工厂和称为 connection pool 对于这些数据库连接。引擎通常是一个只为特定数据库服务器创建一次的全局对象,并使用一个URL字符串进行配置,该字符串将描述如何连接到数据库主机或…

Butterfly主题配置及美化

作者: 時光 来源: 時光的博客园子 原文: https://blog.shiguang666.eu.org/2024/06/24/a334c4683866/Butterfly主题配置及美化 Butterfly主题介绍官方文档:Hexo Butterfly 主题官方文档 GitHub 仓库:Hexo Butterfly 主题 GitHub 仓库Hexo官网上面有非常多好看的主题,你可以选…

概率释疑 | 高一层次

人教2019 A版概率中的问题释疑前言 疑难廓清 ✍️【人教 2019A 版教材 \(P_{246}\) 习题 \(10.1\) 第 \(4\) 题】判断下列说法是否正确.若错误,请举出反例. (1). 互斥的事件一定是对立事件,对立事件不一定是互斥事件; (2). 互斥的事件不一定是对立事件,对立事件一定是互斥…

[Triton课程笔记] 2.1.4 Backend-build

课程链接:https://www.bilibili.com/video/BV1Fa411G75m/?spm_id_from=333.788&vd_source=c2a322357481107ab7f418b1ae9ce618 一、build写CMakeLists.txt文件; 写cmake/TritonYourBackendConfig.cmake.in 文件; 将pytorch_backend/src/libtriton_pytorch.ldscript 拷贝…

pdf转ppt怎么免费转换?3个方法一定要看看!

我们在工作中经常会遇到这两种格式的文件,各有各的优点,PDF兼容性很强,但是不易编辑,如果想要修改其中的内容那就比较麻烦,所以通常会将PDF文件转换成易编辑的Word、PPT等文档。那么你知道pdf如何免费转换ppt吗?下面就来讲讲pdf转ppt的方法,看完你就会了。 方法一、Wind…

服务器raid5数据恢复

服务器数据恢复环境: x3850 X5服务器,一组由5块硬盘组建的raid5阵列,安装linux操作系统,运行oracle数据库。服务器故障检测分析描述: 服务器上raid5阵列中两块硬盘故障导致磁盘离线,服务器数据库数据丢失。raid5阵列中有两块硬盘处于离线状态;没有发现物理故障。服务器数…

服务器磁盘阵列数据恢复

服务器环境描述: IBM 3650服务器,raid磁盘阵列中共有5块 SAS 300GB 磁盘组成一组RAID5磁盘阵列,是windows 2003系统, SQL Server 2010数据库。服务器检测与分析: 首先检测raid磁盘阵列,发现服务器中的2块磁盘物理故障离线且有坏道导致RAID离线,服务器无法进入系统。服务…

浏览器截长图方法及工具推荐

作者: 時光 原文: https://blog.shiguang666.eu.org/2024/06/20/2cff0738b0b5 来源: 時光的博客园子1、使用浏览器开发者工具 一、使用浏览器开发者工具 1.1、 Chrome截图 在浏览器网页中按下F12,进入开发者工具。 输入Ctrl+Shift+P进入命令,中文界面输入截图二字,选择截取完…

npm-ERR-errno-4048

作者: 時光 原文: https://blog.shiguang666.eu.org/2024/06/22/45f9b42e4573 来源: 時光的博客园子这个错误代码通常时由于权限不足所导致,例如执行npm link详细报文如下: npm ERR! code EPERM npm ERR! syscall symlink npm ERR! path D:\hexo\plugins\hexo-footer-plugin …

【定制化代码生成项目】3、代码生成

作者: 時光 原文: https://blog.shiguang666.eu.org/2024/06/17/e7566f48d4f5 来源: 時光的博客园子本节重点 本节教程属于项目的第一阶段 —— 开发本地代码生成器。 重点内容:完成项目的初始化 静态文件生成 动态文件代码生成 FreeMarker 模板引擎入门及实战 动静结合 - ACM…