生产环境中AI调用的优化:AI网关高价值应用实践

随着越来越多的组织将生成式AI引入生产环境,他们面临的挑战已经超出了初步实施的范畴。如果管理不当,扩展性限制、安全漏洞和性能瓶颈可能会阻碍AI应用的推广。实际问题如用户数据的安全性、固定容量限制、成本管理和延迟优化等,需要创新的解决方案。

本文我们深入探讨了一些独特的应用场景和策略,如:语义缓存、提示保护、提示增强和动态负载均衡等等,及如何帮助企业构建具有弹性、安全性和可扩展性的AI驱动应用。通过探索这些具体的案例,希望给正在应用生成式AI大模型的企业组织提供可行的参考。

“Hi” 用例:

对于企业的客户来说,用户与其产品和服务的产生的互动是主要的收入来源。生成式AI(GenAI)已经改变了用户的接入方式和互动通道,并且为企业创造了更快的收入增长、更多忠实用户和更佳的客户体验。

以下是一家全球电信公司的实践案例:该公司开发了一个用于提升客户体验的AI的聊天机器人。

从他们的经验中,我们可以看到,、在很多AI驱动的客户沟通互动中,用户通常会从简单的问候开始,比如“Hi,你好”。

以ChatGPT-4为例,系统的典型回应是“您好,有什么可以帮到您的?Hello! How can I assist you today?” 这类互动看似简单和常见,但对于需要处理大量交互的公司而言,这样的应答成本很快就会积累起来。就算每次“Hi”请求消耗1个token,而AI模型的默认回复需要9个tokens,总的合计每次互动就要10个tokens了。

虽然单次的消耗看起来不是很多,但如果一个企业组织每年处理10亿次这样的请求,成本就会达到92,500美元之多!

虽然礼貌的问候和回应对客户体验至关重要,但这个案例也表现了优化成本存在的巨大潜力。

GPT-4o 的成本

这种情况下,“语义缓存”则成为了一个游戏改变者。由于绝大多数用户发送的初始内容相同,且他接收到的输出内容也相同,所以每次都生成新的回应就没有必要。

通过缓存这些常见的互动内容,企业可以确保每个请求只计算输入token,而输出则从缓存中直接获取。假设缓存命中率达到100%,而且没有过期,这样下来可以将token的调用成本降低到每年仅需$2,500。仅计算输入token的费用——形式相较于重复的、非唯一的互动,就节省了$90,000。

这种方法不仅优化了调用成本,还能将资源重新分配到那些真正为用户创造价值的交互中。

性能优势:

目前,采用生成式AI的企业组织系统通常在互动中存在一定程度的延迟。通过语义缓存来优化性能的形式为提升用户体验是一种高效的形式,也一定程度上推动AI应用的普及。

语义缓存允许像常见的“Hi”请求这样的频繁重复查询,在亚毫秒级的时间内即可返回响应。另外,通过设置相似度评分,像比如 “你好”或“在吗”,这样的轻微变体也可以从缓存中返回。

AI Gateway 可以给出解决方案,将响应添加到缓存中非常简单。

像“帮我转人工客服支持?”或“给我FAQ链接”这样的常见请求都可以通过最少的配置进行缓存,并且由于缓存是基于语义的,AI Gateway会对任何与缓存请求相似的请求返回缓存响应。

这不仅提高了速度和一致性,还减少了资源消耗。对于企业来说,这不仅提升了用户满意度,还带来了显著的成本节省和更高的可扩展性收益。

“Prompt 卫士 ”使用用例

虽然看起来部署生成式AI模型很简单,但企业组织仍然面临不少挑战。例如,企业搭建了一个AI聊天机器人,可能会有一部分用户的查询是恶意的。如果企业允许这些查询传递到大模型里面不仅浪费了资源还可能引入不必要的风险。

通过AI网关即可拦截这些不当的信息,企业的应用就可以避免将这些请求发送到LLM所带来的延迟成本和token费用。例如,可以通过简单的正则表达式模式来标记不当语言或阻止某些关键词,确保这些请求永远不会越过网关。

这种方法不仅降低了运营成本,还提升了应用的安全性和应答效率,从而为用户提供更好的整体体验。

高级 Prompt 保护:

随着应用系统工作负载变得更加复杂,我们也可以预见到有些应用场景是需要过滤的,而不仅仅是简单的字符串匹配或正则表达式规则。例如,检测和清理用户输入中的个人身份信息(PII)就需要更加复杂的处理,这时候高级的Prompt保护就显得尤为重要了。

开发者可以选择不依赖基本的技术,而只是将输入首先发送到本地服务的、经过微调的小型语言模型(SLM)专门用于检测、清理清除敏感数据,然后再将其传递给后台的LLM。

与正则表达式或字符串匹配不同,后者受限于预定义的模式且难以处理上下文,SLM能够动态分析输入,识别出微妙或模糊化的个人身份信息(PII),如姓名、地址或支付信息。

SLM随后处理输入,实时清除敏感信息,并返回清理后的提示。只有这个经过清除环节的版本才会被转发到LLM进行进一步处理。这种分层处理方式不仅保护了用户数据,还确保AI系统在合规和安全标准内运行,为企业避免了不必要的风险和成本。

Prompt 增强实践

给业务和安全需求增加控制层

随着生成式AI应用的变得越来越复杂,建议企业为AI的负载增加能够实现更加精细化管理的控制层以增强安全性。这个时候,提示工程就变得尤为关键了,因为它允许开发者通过精细调整AI模型来应用户的输入来优化性能和行为。虽然很多开发者更注重为特定用例配置最佳的Prompt,但企业组织通常需要额外的控制层,才能满足其对安全、合规和组织标准要求。

在AI 网关层级对Prompt 增强提供额外的管控,可以让安全部门和业务研发同事们在不修改底层应用代码的情况下,就可以采用预先或后附加的形式对业务的 Prompt 进行配置。例如,安全团队可以强制执行系统级的提示,如:“如果请求涉及法律、医疗或个人身份信息(PII),请回应:抱歉,我无法提供该话题的帮助。请咨询专业人士获取更多信息。"

作为防御深度策略中的关键第一层,辅以 Prompt 保护,AI网关这领域的能力适用于模型可能产生幻觉并违反提示词的场景。同样,业务团队也可以通过提示增强来自定义响应,比如添加多语言翻译或应用敏感内容过滤。通过Prompt 的增强,企业组织可以更加灵活的实施必要的保护措施,并且从整体上确保消息传递的一致性,同时也不限制开发人员在业务应用层面的创新能力。

应对负载均衡

随着这家企业的 AI 聊天机器人AI应用逐渐成熟,现在需要扩展到更多场景负载。那么找到一种高效且安全的方式来管理和优化其跨多个部署的GenAI容量,就是其下一步的关键所在。

例如,像Azure OpenAI这样的平台,就是通过处理吞吐量单元(PTU)来分配和计量容量,每个部署都受到固定配额的限制。这些部署通常与应用程序紧密耦合,当容量耗尽或需要优化性能时,如何在不影响服务的情况下进行调整就是要面临的难点。

管理员可以创建多个端点来管理不同应用、区域或业务单元的容量,但在这些端点之间动态路由流量需要复杂的负载均衡策略。

整体上,从管理容量限制到区域路由,再到短期后端支持,企业需要一个更加灵活、自动化的解决方案,来确保AI基础设施的高可用性、低延迟和无缝扩展。

Token 容量的透明性

建议企业在将AI部署到应用和服务的时候,要注意容量配置的SLA,以便了解扩展限制。例如,微软的就提供了有关容量的透明信息,但并不保证你在需要时容量一定可用。在容量在部署时进行分配,并且只要部署存在就会被保留。然而,当你缩小规模或删除部署就会将该容量释放回主区域,也并不能保证未来扩展或重新部署时会再次可用。

鉴于这种不确定性,你可以实施一个抽象层来将流量路由到任何可用的后端,这样即可减轻与扩展限制相关的风险,来保证调用的灵活性。

在不更改应用层的情况下处理固定 Token 消耗

如果团队的某些应用硬编码了特定的后端LLM端点(例如:acme-gpt4o-01.openai.azure.com),一旦达到 Token 限制,应用就必须重启以切换到其他后端时,可能会导致中断。

这里的一个有效的解决办法是,可以在AI网关层实现动态负载均衡层。让流量能够在容量阈值到达之前自动路由到备用端点,以确保服务不中断,而且无需进行应用层的更改或重启。

这样不但确保了高可用性和无缝扩展,使企业能够有效管理容量,同时保持应用的稳定运行。

跨LLM端点的集中流量管理

从安全角度来看,建议将所有LLM流量路由通过单一的出口点,来进行重要的安全、合规性和运营监控。这样子就可以确保所有交互都被监控、记录起来,符合企业的管理要求。

但是在管理跨多个区域和应用的LLM部署时,强制执行这一点可能会面临很多的问题。为了平衡安全性和灵活性,可以通过AI Gateway实现集中流量管理。

将所有LLM流量通过一个受控的单一出口点进行路由,同时仍允许根据容量或性能优化动态路由到后端部署,确保严格的安全合规性的同时,不牺牲扩展性和优化后端容量的灵活性。

通过区域感知路由来减少用户延迟

如果你有分布式应用,最小化用户延迟则是提升用户体验的关键因素。实现的一种方式是确保根据用户的地理位置将请求路由到最近的后端LLM部署。通过实现区域感知路由,应用可以自动将流量引导到最近的后端LLM端点(例如,欧洲使用acme-gpt4o-02.openai.azure.com,亚洲使用acme-gpt4o-03.openai.azure.com)。

通过管道触发器自动化LLM容量部署

自动化LLM容量的部署对于应对实时需求波动至关重要。例如,你可以配置一个管道,当满足预定义条件(如接近配额限制或流量增加)时,就触发创建具有固定容量的新LLM部署。

一旦创建了新的部署,路由规则可以自动更新,将流量导向新的LLM容量。这种方法很大程度上简化了过程,并降低了容量短缺的风险,无需人工干预就确保应用的连续可用性。

尽管现在AI技术仍处于初期阶段,但越来越多的企业已经将AI 集成到业务和内部管理的系统中来提升效率。在这个过程中,AI网关发挥着重要的作用,帮助企业应对这一些列的挑战。

比较火热的一些国内外LLM 网关/ AI 网关:

APIParkAPIPark是一款国人开发的开源免费 AI网关项目,支持100多种AI模型接入,并提供Prompt 与AI封装成API功能,可搭建自己专属的API开放门户,拥有丰富的API管理功能,适合需要自定义和多样化AI应用的团队。

Cloudflare的AI Gateway:Cloudflare AI Gateway专注于模型的安全保护和性能优化,集成了加密、访问控制和负载均衡等功能,适合高流量和对安全要求高的场景,并具有全球化布局。

Portkey:Portkey是一款开源的AI网关平台,支持灵活的本地或云端部署,注重治理和模型解释性,帮助企业落实负责任的AI应用并提供对决策过程的透明性。

MLFlow Deployment Server:如果您的工作流依赖MLflow,那么MLFlow Deployment Server可以无缝集成到现有基础设施中,便于管理、部署和追踪MLflow模型。

LiteLLMLiteLLM是针对资源有限的边缘设备设计的轻量化AI网关,支持实时推理和远程感知等低延迟、低硬件要求的应用场景。

Wealthsimple LLM Gateway:该网关提供一系列预训练语言模型,适合文本生成、摘要和翻译任务的简便集成,专为开发者或企业提供简单、高效的语言模型接入方式

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

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

相关文章

Redis 概 述 和 安 装

安 装 r e d i s: 1. 下 载 r e dis h t t p s : / / d o w n l o a d . r e d i s . i o / r e l e a s e s / 2. 将 redis 安装包拷贝到 /opt/ 目录 3. 解压 tar -zvxf redis-6.2.1.tar.gz 4. 安装gcc yum install gcc 5. 进入目录 cd redis-6.2.1 6. 编译 make …

SpringBoot 2.2.10 无法执行Test单元测试

很早之前的项目今天clone现在,想执行一个业务订单的检查,该检查的代码放在test单元测试中,启动也是好好的,当点击对应的方法执行Test的时候就报错 tip:已添加spring-boot-test-starter 所以本身就引入了junit5的库 No…

[项目代码] YOLOv5 铁路工人安全帽安全背心识别 [目标检测]

YOLOv5是一种单阶段(one-stage)检测算法,它将目标检测问题转化为一个回归问题,能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法(如Faster R-CNN),YOLOv5具有更高的…

SIM Jacker攻击分析

简介: 2019年9月12日,AdaptiveMobile Security公布了一种针对SIM卡ST Browser的远程攻击方式:Simjacker。攻击者使用普通手机发送特殊构造的短信即可远程定位目标,危害较大 。sim卡的使用在手机上的使用非常普遍,所以…

【linux】centos7 换阿里云源

相关文章 【linux】CentOS 的软件源(Repository)学习-CSDN博客 查看yum配置文件 yum的配置文件通常位于/etc/yum.repos.d/目录下。你可以使用以下命令查看这些文件: ls /etc/yum.repos.d/ # 或者 ll /etc/yum.repos.d/备份当前的yum配置文…

AI 写作(八)实战项目一:自动写作助手(8/10)

一、项目背景与需求分析 (一)写作需求的多样化 在互联网普及的今天,人们对写作的需求呈现出前所未有的多样化态势。无论是学术论文、新闻报道,还是社交媒体的动态更新、网络小说的创作,都离不开高质量的写作。以学术研…

微信小程序内嵌h5页面(uniapp写的),使用uni.openLocation无法打开页面问题

1.问题 微信小程序内嵌h5页面(uniapp写的),使用uni.openLocation打开地图页面后,点击该页面下方“到这里”按钮,显示无法打开。如下图: 3.解决方案 在内嵌h5中不使用uniapp的api打开地图,而在h5页面事件处理程序中去跳转新的小程序页面,在该新页面去使用微信小程序…

SpringCloud核心组件(五)

文章目录 Gateway一. 概述简介1. Gateway 是什么2. 什么是网关?3.Gateway 和 Nginx 两个网关的区别什么是流量入口? 4.Gateway 能干嘛5.gateway 三大核心概念6.运行方式 二. 入门案例a.创建gateway模块,在pom.xml中引入依赖b.创建启动类GatewayApplicat…

1+X应急响应(网络)系统备份:

系统备份: 系统备份概述: 备份种类: 灾难恢复等级划分: 执行一次备份: 创建备份计划: 恢复备份:

Python学习26天

集合 # 定义集合 num {1, 2, 3, 4, 5} print(f"num:{num}\nnum数据类型为:{type(num)}") # 求集合中元素个数 print(f"num中元素个数为:{len(num)}") # 增加集合中的元素 num.add(6) print(num) # {1,2,3,4,5,6} # 删除…

git撤销、回退某个commit的修改

文章目录 撤销某个特定的commit方法 1:使用 git revert方法 2:使用 git rebase -i方法 3:使用 git reset 撤销某个特定的commit 如果你要撤销某个很早之前的 commit,比如 7461f745cfd58496554bd672d52efa8b1ccf0b42,可…

《译文》2024年11月数维杯国际大学生数学建模挑战赛题目

# 赛题正式发布 2024年第十届数维杯国际大学生数学建模挑战赛顺利开赛,竞赛开始时间为北京时间2024年11月15日09:00至北京时间2024年11月19日09:00,共计4天,竞赛题目正式发布,快来一起围观,你认为今年的哪个题目更具有…

LabVIEW 使用 Snippet

在 LabVIEW 中,Snippet(代码片段) 是一个非常有用的功能,它允许你将 一小段可重用的代码 保存为一个 图形化的代码片段,并能够在不同的 VI 中通过拖放来使用。 什么是 Snippet? Snippet 就是 LabVIEW 中的…

【苍穹外卖】学习日志-day1

目录 nginx 反向代理介绍 nginx 的优势 提高访问速度 负载均衡 保证后端服务安全 高并发静态资源 Swagger 生成 API 文档 Swagger 的使用方式 导入knife4j的maven坐标 在配置类中加入knife4j相关配置 设置静态资源映射 通过注解控制生成的接口文档 项目技术点 Token 模式 MD5 加…

Java poi 模板导出Word 带图片

Java poi 模板导出Word 带图片 重点&#xff01;&#xff01;&#xff01; 官方文档&#xff1a;https://deepoove.com/poi-tl/#_maven 最终效果 模板 其实内容都在官方文档里写的非常明白了 我这里只是抛砖引玉。 Maven依赖 <poi.version>4.1.2</poi.version>…

HMSC联合物种分布模型在群落生态学中的贝叶斯统计分析应用

联合物种分布模型&#xff08;Joint Species Distribution Modelling&#xff0c;JSDM&#xff09;在生态学领域&#xff0c;特别是群落生态学中发展最为迅速&#xff0c;它在分析和解读群落生态数据的革命性和独特视角使其受到广大国内外学者的关注。在学界不同研究团队研发出…

postman变量和脚本功能介绍

1、基本概念——global、collection、environment 在postman中&#xff0c;为了更好的管理各类变量、测试环境以及脚本等&#xff0c;创建了一些概念&#xff0c;包括&#xff1a;globals、collection、environment。其实在postman中&#xff0c;最上层还有一个Workspaces的概…

Java NIO 核心知识总结

NIO 简介 在传统的 Java I/O 模型&#xff08;BIO&#xff09;中&#xff0c;I/O 操作是以阻塞的方式进行的。也就是说&#xff0c;当一个线程执行一个 I/O 操作时&#xff0c;它会被阻塞直到操作完成。这种阻塞模型在处理多个并发连接时可能会导致性能瓶颈&#xff0c;因为需要…

Qwen2.5-Coder-32B-Instruct Docker 部署openai接口

Qwen2.5-Coder-32B-Instruct 模型下载,国内快捷方式: conda create -n modelscope python=3.10 conda activate modelscopepip install modelscopemodelscope download --model Qwen/Qwen2.5-Coder-32B-Instruct --local_dir /ssd/xiedong/Qwen/Qwen2.5-Coder-32B-I

基于STM32的智能语音识别饮水机系统设计

功能描述 1、给饮水机设定称呼&#xff0c;喊出称呼&#xff0c;饮水机回答&#xff1a;我在 2、语音进行加热功能&#xff0c;说&#xff1a;请加热&#xff0c;加热片运行 3、饮水机水位检测&#xff0c;低于阈值播报“水量少&#xff0c;请换水” 4、检测饮水机水温&#xf…