AI 网关和传统的 API 网关

API 网关发展

在最开始的时候,互联网通过电话线连接上网,通过“调制解调器(Modem)”将计算机信号和电话线信号“调制”与“调解”以实现上网功能。当今时代大多使用宽带上网,拨号上网已被逐渐淘汰。

流量网关得雏形来自于路由器,交换机和中转站等技术,在网络流量传输中,帮助优化流量,提高安全性和流量管理能力。

传统流量代理

随着互联网越来越普及和规模化,需要解决得问题越来越多,例如:

  • 跨域访问;
  • 性能;
  • 安全等。

正向代理(Forward Proxy)

正向代理是客户端(用户)和目标服务器之间的中继代理,客户端通过正向代理发送请求,代理服务器将请求转发给目标服务器,并将响应返回给客户端。如下图所示:

请添加图片描述

正向代理服务器一般部署在客户端内网环境中,内部用户通过其来访问外部资源。

如图所示,正向代理解决了以下问题:

  1. 安全:保护用户 IP 地址安全,防止 IP 追踪;
  2. 突破封锁:在一些情况下,客户端无法直接访问某些服务器,此时可以使用代理服务突破地理/IP 封锁限制;
  3. 流量过滤:过滤流量内包含的不良信息,例如学校内网或者图书馆网络等。

反向代理(Reverse Proxy)

反向代理是目标服务器的中继节点,客户端的请求首先到达反向代理,由它转发到实际的目标服务器。目标服务器的响应同样通过反向代理返回给客户端,如下图所示:

请添加图片描述

反向代理服务器一般部署在服务端内网环境中,用来接受客户端流量并转发给服务器。

如图所示,反向代理解决了以下问题:

  1. 安全:保护服务器的真实 IP 地址,抵御 DDos 攻击;
  2. 性能优化:采用 LB 策略,静态资源缓存等加速访问;
  3. 统一服务入口。

应用场景如 WAF(Web Application Firewall,Web应用防火墙)、CDN 等。

API 网关代理

微服务架构的核心枢纽,统一管理 API 生命周期,实现流量管理,服务治理,安全防护等特性。

请添加图片描述

在没有 Web API Gateway 组件时,client 流量直接打在服务器上,对后端服务器压力较大,且流量处理逻辑集中在后端上,使得后端服务不能专注于处理业务,同时还要处理和网络日志等相关代码逻辑。

加入 API gw 之后,统一将 API 流量管理分离到 API gw 来完成,其核心能力主要为:

  1. 服务治理:熔断,限流,重试,healthCheck,金丝雀发布,可观测支持等;
  2. 安全防护:高级认证,API 鉴权,黑白名单等;
  3. 流量管理:流量染色,多种路由策略,协议转换等。

AI 网关

大模型时代的 AI API 流量调度中心,连接 AI 服务和应用客户端。这里借用 Higress 的 AI 网关架构图来展示。

img

AI 网关核心能力:

  1. AI 流量调度,提高 TTFT(Time To First Token)并提高系统吞吐量;
  2. MCP 生态集成,通过 AI 网关,集成 MCP Server;
  3. 保障大模型的内容安全,对输入和输出进行过滤;
  4. 屏蔽底层协议,对外暴露统一 endpoint。例如 OpenAI API 和 Dashscope API ;
  5. 实现 Token 限流功能;
  6. 实现 AI 可观测集成等。

从 OpenAI GPT 爆火之后,企业级 AI 应用需求大幅增长,AI API 调用量激增, 通过 AI Gateway 可以大幅度提升 AI 接入体验。以上几点在 Higress AI 中都有体现,细节参考 Higress AI 。

AI 网关的理解

在上文中,介绍了 AI 网关的核心能力主要有以下几点,其作为 API Gateway 的一个变种实现,主要为 AI 调用提供便利:

AI 流量调度

  • 感知流量调度:通过 LLM(大语言模型)感知的流量调度,利用 Prefix Cache、Lora Adapter、KVCache 等策略,实现 TTFT(响应时间)的大幅降低。
  • 公平调度:采用 VTC(虚拟时间控制)策略,确保流量的公平分配。

AI 服务治理

  • 多租户限流:基于输入/输出 Token 实现的限流机制,确保不同用户的请求得到合理处理。
  • 自动故障转移:根据服务优先级进行推理服务的自动切换,提升系统的稳定性。
  • 超时重试:设置超时重试机制,确保请求的可靠性。

AI 安全防护

  • 证书管理:管理 LLM 供应商的证书,确保安全性。
  • 安全校验:对请求的 prompt 进行安全校验,防止恶意内容。
  • 内容过滤:实现不当内容的过滤,保障使用安全。

AI 可观测性

  • 细粒度指标:提供对 LLM 服务访问的细致指标,便于监控和分析。

AI 扩展插件

  • 插件机制:支持用户面向 LLM 场景的插件,如语义缓存和 Prompt 改写,增强功能灵活性。

AI 生态交互

  • 协议转换:实现 MCP(模型控制协议)到 HTTP 的转换,便于无缝对接。
  • 统一 API 管理:支持多 LLM 供应商的接入,简化 API 管理流程。

AI 网关架构

下面以 Envoy AI Gatwway 为例,来分析下 AI 网关架构。其分为数据面(CP control plane)和控制面(DP data plane)。

  • CP:将用户配置 CRD 等转流量配置规则,下发至 DP;
  • DP:应用 CP 下发的规则,转发给指定的 AI 后端。

请添加图片描述

从架构图可以看到,请求流量经过 External processor,通常在这里会给流量染色,加入后端服务特征,后续 DP 基于此特征转发流量。

请添加图片描述

上图为 Envoy AI Gateway DP 面和流量示意图。可以看出 Envoy AI Gateway 提供的 AI Gateway 发生在请求流量的那一步。

AI 网关功能详解

LLM 感知的流量调度

基于 Prefix Cache 的调度

LLM 推理计算主要分为两个过程:Prefill 阶段(Prompt 计算)和 Decode 阶段。在 Prefill 阶段计算所有 Token 的 KV Cache,通常 KVCache 只是为单次推理的,当推理结束,对应的 KV-Cache 就会清除。此时,AI Gateway 就可以保存并复用对应的 KV Cache。

在某些 LLM 业务场景下,多次请求的 Prompt 可能会共享同一个前缀(Prefix),比如少量样本学习,多轮对话等。在这些情况下,很多请求 Prompt 的前缀的 KV Cache 计算的结果是相同的,可以被缓存起来,给之后的请求复用。

这里既然要复用对应的 KV Cache,KV Cache 又是在同一个 AI 后端 pod 中产生的,那么自然要求 Prefix Cache 的优化要调度到同一个 Pod 上去。

基于 VTC 公平推理调度

参考地址 Arxiv:https://arxiv.org/pdf/2501.14312

虚拟令牌计数器(VTC)是基于 “大型语言模型服务的公平性” 的 LLM 服务公平调度算法。

VTC 的目的是通过跟踪每个客户获得的服务(加权令牌计数),优先处理获得服务较少的客户,从而实现客户之间的公平性。它集成了连续批处理功能,并能处理 LLM 服务所面临的独特挑战,如可变的令牌成本和未知的输出长度。

其他的调度策略不一一描述。

MCP 转换

Higress 支持将存量的 API 服务转为 MCP Server,并基于 Higress 进行服务调用。

Token 限流
  • https://higress.cn/ai/scene-guide/token-management/

AI Gateway 能够对大模型使用的 Token 数量进行追踪,在消费者使用超额时进行限制,从而更好管理调用 AI 应用的用户额度,为 Token 使用分析提供数据支持

自动故障转移

相关概念可以参考:https://help.aliyun.com/zh/api-gateway/ai-gateway/user-guide/ai-fallback

结合服务发现机制,为 AI 后端服务根据 Region 和 Zone 设立优先级,当某个 AI 后端服务不可用时,短暂从可用列表中摘除,使用小流量探测的手段,直至 AI 后端服务恢复时继续提供服务。

AI 内容安全

基于此机制,API Gateway 可以通过进入阿里云的内容安全审核服务对用户的 Prompt 进行检测,以组织不安全的输入:

请添加图片描述

自定义扩展

可扩展是 API Gateway 的一个重要特性,支持用户根据自己的流量场景,使用不同的语言定制化 API Gateway 插件,例如 Kong 和 APISIX 支持 Lua 插件集成。

在此处同样参考 Higress 的架构图,其基于 WASM 机制,提供了一系列的 AI 插件:

请添加图片描述

参考资料

  1. Envoy AI Gateway:https://aigateway.envoyproxy.io/docs/concepts/architecture/system-architecture
  2. Higress AI:https://higress.ai/
  3. 阿里云内容审核服务:https://www.aliyun.com/product/lvwang
  4. K8s Gateway API 推理扩展:https://kubernetes.io/zh-cn/blog/2025/06/05/introducing-gateway-api-inference-extension/
  5. VTC 公平推理调度:https://arxiv.org/pdf/2501.14312

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

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

相关文章

15.3 LLaMA 3+LangChain实战:智能点餐Agent多轮对话设计落地,订单准确率提升90%!

LLaMA 3LangChain实战:智能点餐Agent多轮对话设计落地,订单准确率提升90%! 关键词:多轮对话设计、场景化提示工程、LLaMA 3 微调、LangChain Agent、饭店点餐场景建模 饭店点餐场景的 Agent 方案设计 通过分层架构实现复杂场景对…

EXPLAIN优化 SQL示例

以下通过 6 个真实案例展示如何使用 EXPLAIN 优化 SQL,每个案例包含问题 SQL、EXPLAIN 分析、优化方案和优化后效果对比: 案例 1:全表扫描优化 (typeALL) 问题 SQL(用户订单查询): SELECT * FROM orders …

「Linux文件及目录管理」通配符与文件名

「Linux文件及目录管理」通配符与文件名 知识点解析 通配符是Linux中用于匹配文件名的特殊字符,能高效处理批量文件操作。 常见通配符包括: *:匹配任意字符序列(包括空字符)touch a b ab a123 # 创建测试文件 ls a* # 匹配a, ab, a123?:精确匹配单个字符…

服务器配置记录

1. 获取服务器IP,用户,密码 2. 使用VS Code远程登录 下载ssh插件本地cmd执行ssh-keygen -t rsa -b 4096 -C "jt_windows"完成密钥生成。本地cmd执行type %USERPROFILE%\.ssh\id_rsa.pub查看密钥并复制。远程服务器执行以下命令: …

Windows 后渗透中可能会遇到的加密字符串分析

在 Windows 后渗透过程中,攻击者经常会遇到各种加密字符串或数据,这些数据通常用于存储敏感信息,如凭据、会话票据或配置数据。理解这些加密字符串的类型、加密机制、存储位置以及解密方法,对于权限提升、横向移动和持久化至关重要…

腾讯云本地专用集群CDC:混合云架构下的分布式云服务实践

摘要 在数字化转型加速的背景下,企业上云面临数据合规、低时延、运维复杂度等多重挑战。腾讯云本地专用集群CDC(Cloud Dedicated Cluster)通过融合公有云与本地IDC优势,提供近场云服务解决方案。本文基于IDC行业报告及技术实测数…

wpa_supplicant 源码学习

代码地址:git clone https://w1.fi/hostap.git 我目前学的的版本是 wpa_supplicant 2.12-devel-hostap_2_11-857-g54930b62b 五月份左右的提交,是较新的代码 想做白盒测试。最近开始学习 wpa_supplicant 这个工具。 自学了一个多月吧。 整理了一些代码跳…

[学习] C语言<string.h>中字符串函数全解析

C语言<string.h>中字符串函数全解析 在 C 语言中&#xff0c;字符串处理是程序开发中的重要组成部分。C 标准库 <string.h> 提供了一系列函数用于操作字符数组&#xff08;即字符串&#xff09;。这些函数以 str 开头&#xff0c;功能强大、使用广泛&#xff0c;掌…

OJ搭建:Judge0服务器、DeepSeek服务接入简介

序 各大OJ平台上有很多很好的资源&#xff0c;但作为自己的“备课本”总有各种不便&#xff0c;教学生时间久了总是有一些自己的题目和想法&#xff0c;这在教初学的学生时非常突出。所以&#xff0c;很多年前就搞了一些尝试&#xff0c;包括&#xff1a;在机房搭建ubuntu服务器…

Java的锁机制问题

锁机制 1.锁监视器 在 Java 并发编程中&#xff0c;锁监视器&#xff08;Monitor&#xff09; 是对象内部与锁关联的同步机制&#xff0c;用于控制多线程对共享资源的访问。以下是核心要点&#xff1a; &#x1f512; 监视器的核心组成 独占区&#xff08;Ownership&#xff…

老凤祥的AI智能眼镜:让智慧更近生活

在科技进步的潮流中,人工智能技术不断为我们的生活增添色彩。近日,有关字节跳动旗下的火山引擎与中国珠宝品牌老凤祥合作开发 AI 智能眼镜的消息引发了广泛关注。这款与众不同的眼镜因其独特的功能及技术支持,已经在业内引起了极大反响。 AI眼镜:老年群体的智能好帮手 根…

Kotlin 中为什么没有静态变量和静态方法—不用static?

Kotlin 的设计核心是&#xff1a; 一切皆对象&#xff1a;消除 static 的「非对象」特性&#xff0c;用 companion&#xff08;对象&#xff09;和顶层函数&#xff08;包级对象&#xff09;替代&#xff0c;让代码更统一。避免全局状态滥用&#xff1a;static 成员是全局可见…

VSCode性能调优:从卡顿到丝滑的终极方案

⚡ 核心价值 "这套配置使某金融核心系统VS Code内存占用从8GB降至1.2GB,加载速度提升15倍" —— 2024某银行效能优化报告 🧩 性能瓶颈拆解 一、百万行项目优化方案 🚀 黄金配置参数 // settings.json(核弹级优化) {"files.watcherExclude": {"…

以云织梦,渡数济世:辉瑞与亚马逊云科技共谱医药新乐章

胖头陀科技 编辑&#xff1a;沐由 【导读】“用合规的数据来帮助患者&#xff0c;成为患者回归健康的一味新药。”当下&#xff0c;在数字洪流的浪潮中&#xff0c;这味“良药”正沿着云和AI的脉络&#xff0c;奔向有需求的千家万户…… 如果说到Pfizer&#xff0c;估计十个人…

SpringBoot后端开发知识点总结(持续更新)

目录 1. 常用易混淆注解解释1.1 Resource和Autowired注解的区别1.2 PathVariable和RequestParam注解的区别 2. Mybatis-Plus高级特性2.1 强大的通用CRUD接口2.2 代码生成器 3. IDEA实用快捷键4. 前后端联调关键点4.1 代码示例4.2 联调要点4.3 调试技巧 1. 常用易混淆注解解释 …

电脑商城--用户收货管理

新增收货地址 1 新增收货地址-创建数据表 1.使用use命令先选中store数据库。 USE store; 2.在store数据库中创建t_address用户数据表。 CREATE TABLE t_address (aid INT AUTO_INCREMENT COMMENT 收货地址id,uid INT COMMENT 归属的用户id,name VARCHAR(20) COMMENT 收货人姓…

开发者避坑:接入Flux-Kontext API实现文生图、图生图功能

在数字化浪潮背景下&#xff0c;人工智能&#xff08;Artificial Intelligence, AI&#xff09;技术正加速重塑图像创作领域。智创聚合API平台近日宣布整合Flux-Kontext系列模型&#xff0c;通过API接口支持图生图和文生图功能&#xff0c;为开发者及创作者提供高效解决方案。此…

.Net Core 获取与bin目录相同文件路径的文件

在 .NET Core 中&#xff0c;您可以使用以下方法来获取与 bin 目录相同的文件路径。通常&#xff0c;bin 目录是应用程序编译后生成的输出目录&#xff0c;您可以使用 AppContext.BaseDirectory 或 Directory.GetCurrentDirectory() 来获取该目录的路径。 以下是一些常用的方法…

RN(React Native)技术应用中常出现的错误及解决办法

React Native 作为跨平台开发框架&#xff0c;在实际应用中可能会遇到一些常见的错误。以下是React Native 技术应用中常出现的错误及解决办法&#xff1a; 1. 网络请求失败&#xff08;Network Request Failed&#xff09; 原因&#xff1a; 请求地址不正确网络权限未配置i…

Java 21 的虚拟线程与桥接模式:构建高性能并发系统

Java 21 的虚拟线程与桥接模式&#xff1a;构建高性能并发系统 &#x1f31f; 嗨&#xff0c;我是IRpickstars&#xff01; &#x1f30c; 总有一行代码&#xff0c;能点亮万千星辰。 &#x1f50d; 在技术的宇宙中&#xff0c;我愿做永不停歇的探索者。 ✨ 用代码丈量世界&…