当前位置: 首页 > news >正文

大模型openai服务网关,认证,限流,接口输入输出的修正,监控等功能

大模型openai服务网关

大模型服务网关是为了代理多个openai接口,并且在代理中实现认证,限流,接口输入输出的修正,监控等功能而设计的。

在这里插入图片描述

认证方式

  • 1、数据库匹配: 从秘钥位置获取到的秘钥跟服务网关设定的秘钥完全一致
  • 2、正则匹配:从秘钥位置获取到的秘钥要符合服务网关设定的秘钥 正则表达式
  • 3、JWT认证:从秘钥位置获取到的秘钥 要能使用 服务网关 设定的秘钥 key 进行jwt解码

秘钥位置

position:key的写法,

其中position 为 密码获取方法,header 表示从http header头中读取,body 表示从json请求体中读取,arg 表示从请求的url中读取。

其中key为对应位置处的key值, 比如

  • 1、header:Authorization 表示从header头中读取Authorization 的值为秘钥
  • 2、body:user_id 表示从json请求体中读取user_id的值为 秘钥
  • 3、arg:token 表示从url请求路径中读取参数token的值,作为秘钥

秘钥

根据认证方法,可自己设定,也会随机生成。

过期时间

网关的过期时间,超过该时间后,对访问请求返回“该网关已过有效期”的应答

token额度

整数或者no-limit,是问答总token的最大累加和。

服务列表

平台内创建的自己可以有权限访问的openai接口服务,但并不是当前上线的llm服务。在正式访问时会查询代理的llm服务是否上线中,再根据是否上线,决定应答

失败重试

请求大模型openai接口,报错后重试的次数

限速

  • no-limit 没有限制
  • ingress:n/minute 针对该网关,限制最近1分钟最多访问n次
  • ingress:n/hour 针对该网关,限制最近1小时最多访问n次
  • ingress:n/day 针对该网关,限制最近1天最多访问n次
  • secret:n/minute 针对每个秘钥,限制最近1分钟最多访问n次
  • secret:n/hour 针对每个秘钥,限制最近1小时最多访问n次
  • secret:n/day 针对每个秘钥,限制最近1天最多访问n次

白名单

如果设置了白名单,在白名单范围内的就放行,不在白名单范围内的就不放行,优先级高于黑名单。每行一个白名单规则。

每行的白名单书写规则: type:value, 其中type可为

  • ip,表示的是客户端的访问ip范围,值为ip网段
  • secret,表示的访问者的秘钥,秘钥的正则表达式
  • time 表示的是访问的时间,时间范围段

黑名单

书写规则同白名单,访问流量符合黑名单规范就阻拦,优先级低于白名单

激活

可控制当前网关是否有效

深度思考

暂时无效

联网搜索

暂时无效

内容安全

暂时无效

数据脱敏

暂时无效

提示词模板

最终发给给大模型的问题,如果当前服务网关配置了提示词模板,其中一定要包含{{query}},比如

cube-studio是开源一站式机器学习平台,请你的回答尽可能专业。请问:{{query}}

那么最终发给给大模型的问题就是上面的一整段话,替换了{{query}} 为用户最原始的问题的。

我们可以通过这种方式添加一些问答限制

参数值映射

对推理服务的json请求体的value进行映射,格式为"key":[“old_value”,“new_value”],

例如"model":[“deepseek”,“deepseek-qwen2-7b”],可以将请求deepseek的模型全部代理到deepseek-qwen2-7b模型服务上

参数值固定

参数值固定,对推理服务的json请求体的value进行固定,格式为"key":“new_value”,

例如"model":“deepseek-qwen2-7b”,可以将任何模型请求全部代理到deepseek-qwen2-7b模型服务上

调用测试

当配置了服务网关,那么网关会对外提供openai接口,代理用户的请求到下面的openai模型接口上。在外部智能体平台,主要需要调用所需的环境变量配置

API_SECRET_KEY = "sk-xxxxxxxx"  
BASE_URL = "http://xx.xx.xx.xx/llm/api/xx/v1"  

也可以自己写API调用示例代码

curl -X POST http://xx.xx.xx.xx/llm/api/xx/v1/chat/completions \-H "Content-Type: application/json" \-H "Authorization: Bearer sk-xxxxx" \-d '{"model": "xxxx","messages": [{"role": "user","content": "你是谁?"}],"temperature": 0.7,"stream": false}'
参数说明:
MODEL_NAME:替换为你的模型名称,当前可访问模型名包含: (无可访问模型服务,请先部署大模型服务)
messages:对话历史,包含 role(user / assistant / system)和 content(消息内容)
temperature:控制生成文本的随机性(0~2,值越大越随机)

监控

客户端可以进行调用访问,每次调用访问,服务网关都会监控当前以使用token数目,和今日每小时的调用次数

在这里插入图片描述

http://www.dtcms.com/a/438286.html

相关文章:

  • 贵州百度seo整站优化做网站收入怎样
  • AI驱动的视频生成革命:MoneyPrinterTurbo技术架构深度解析
  • 东莞p2p网站开发价钱店铺logo在线制作免费
  • LeetCode:89.分割等和子集
  • 基于 GEE 处理、可视化和导出 Landsat 5 和 Landsat 8 卫星遥感影像数据
  • Python基础入门例程88-NP88 句子拆分
  • 网站上添加图片的原则59网一起做网站
  • k8s学习(一)——kubernetes重要基础概念概述
  • Unity excel 表格文件导入
  • 【系统架构设计-零】系统架构设计总述与学习线路
  • 做网站郑州公司北京工商局网站如何做股东变更
  • 【C++】C++ 中多态是什么?咋用的?
  • Dijkstra最短路径算法
  • 扶沟县网站开发怎么知道一个网站是哪家公司做的
  • mysql基于GTID恢复数据
  • LabVIEW正弦波去噪与信号处理
  • winform 五子棋
  • Java实现BCH与BTC的地址相互转换
  • CyberSecurity:SSL Client-Initiated Renegotiation 客户端发起的重新协商ddos攻击
  • 关于Mybatis-Plus的insertOrUpdate()方法使用时的问题与解决—数值精度转化问题
  • 石家庄做网站制作公司网站写作赚钱
  • Docker、容器、虚拟机到底是什么
  • 西安微信商城网站开发做阿里巴巴怎么进公司网站
  • Go语言入门(17)-接口
  • WebPages 安全
  • 安卓基础组件030-进程和线程
  • [ vue 前端框架 ] 基本用法和vue.cli脚手架搭建
  • 鸿蒙Next中使用Socket进行网络通信:完整指南与实战
  • dw如何做商业网站淘宝网站建设流程
  • 网站做好了 怎么做解析wordpress 怎么迁移