挺突然的,老苏的公众号可以留言了,是临时开放还是以后就这样了?
老苏就职于一家专注于音视频实时交互技术和智能算法的创新企业。公司通过提供全面的 SDK
和解决方案,助力用户轻松实现实时音视频通话和消息传递等功能。尽管公司网站上有详细的文档中心,但在实际开发中,仍面临大量咨询工作。
鉴于此,老苏考虑利用 GPT
模型的卓越文本生成功能,构建一个企业级的私有知识库。通过用户输入,生成连贯、有逻辑的回复,并通过不断训练和优化,打造一个更智能、更个性化的客户服务体验。
接下来,我们将分三篇文章来实践这一解决方案的可能性,看看效果到底如何?
什么是 One API ?
One-API
是OpenAI
接口管理 & 分发系统,支持Azure
、Anthropic Claude
、Google PaLM 2 & Gemini
、智谱ChatGLM
、百度文心一言、讯飞星火认知、阿里通义千问、360
智脑以及腾讯混元,可用于二次分发管理key
,仅单可执行文件,已打包好Docker
镜像,一键部署,开箱即用。
One API
可以用来管理模型池,其可以兼容 OpenAI
、Azure
、国内主流模型和本地模型等
工作原理如下:
-
在 渠道
页面中添加你的API Key
-
然后在 令牌
页面中新增访问令牌 -
客户端使用令牌访问 One API
-
根据请求中的 model
参数,匹配对应的渠道(根据渠道里的模型进行匹配,必须完全一致)。如果匹配到多个渠道,则随机选择一个(同优先级) -
One API
向真正的地址发出请求,并将结果返回给客户端
graph LR
A(用户)
A --->|使用 One API 分发的 key 进行请求| B(One API)
B -->|中继请求| C(OpenAI)
B -->|中继请求| D(Azure)
B -->|中继请求| E(其他 OpenAI API 格式下游渠道)
B -->|中继并修改请求体和返回体| F(非 OpenAI API 格式下游渠道)
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 one-api
,选择第一个 justsong/one-api
,版本选择 latest
。
本文第一次折腾时,
latest
版本对应为v0.5.7-alpha.1
;本文写作时,latest
版本对应为v0.6.5
卷
在 docker
文件夹中,创建一个新文件夹 one-api
,并在其中建一个子文件夹 data
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/one-api/data |
/data |
存放数据库和日志等 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 | 容器端口 |
---|---|
3033 |
3000 |
环境
可变 | 值 |
---|---|
TZ |
设为 Asia/Shanghai |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
# 新建文件夹 one-api 和 子目录
mkdir -p /volume1/docker/one-api/data
# 进入 one-api 目录
cd /volume1/docker/one-api
# 运行容器
docker run -d
--restart always
--name one-api
-p 3033:3000
-v $(pwd)/data:/data
-e TZ=Asia/Shanghai
justsong/one-api
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
version: '3'
services:
one-api:
image: justsong/one-api
container_name: one-api
restart: unless-stopped
ports:
- 3033:3000
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
然后执行下面的命令
# 新建文件夹 one-api 和 子目录
mkdir -p /volume1/docker/one-api/data
# 进入 one-api 目录
cd /volume1/docker/one-api
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d
运行
在浏览器中输入 http://群晖IP:3033
就能看到主界面
点 登陆
按钮
初始管理员账号用户名为
root
,密码为123456
当然也可以注册新用户
登陆成功之后的主界面
【注意】:记得立刻修改默认密码!
新建渠道
点 添加新的渠道
Moonshot AI
以 Moonshot AI
为例
-
类型:类型下拉选择 Moonshot AI
-
名称:随意 -
分组:内置三种,分别是 default
、vip
和svip
-
模型:一般会根据类型自动填写 -
密钥: Moonshot AI
的秘钥,可以在这里申请:https://platform.moonshot.cn/console/api-keys
这是
Moonshot
的开发者账号,新用户注册会有15
元额度。这和之前我们用的kimi-free-api
中介绍的refresh_token
不是一个概念。
保存之后,可以 测试
如果没问题的话,会提示测试成功
kimi-free-api
当然,我们也可以添加之前使用过的 kimi-free-api
kimi
是Moonshot
基于Moonshot AI
开发的产品
-
类型:选择 自定义渠道
-
Base URL
:填入kimi-free-api
的访问地址http://群晖IP:8126
-
名称:例如: kimi-free-api
-
分组: default
就行 -
模型:输入自定义模型名称, 填入
即可 -
秘钥:从 kimi.moonshot.cn 网页上获取的 refresh_token
保存之后,可以测试一下是否设置正确
创建令牌
要二次分发使用,还需要有令牌
用于控制可使用的模型、额度、时限等
【注意】:这里没有设置模型范围,意味着后续添加的新渠道的模型,都是可以通过这个令牌进行访问的
保存之后
以 ChatGPT Next Web
为例
会得到一个字符串,其中
-
key
:对应的是ChatGPT Next Web
的环境变量OPENAI_API_KEY
-
url
:对应的是ChatGPT Next Web
的环境变量BASE_URL
,但不能用http://localhost:3000
,而要使用外部地址http://http://群晖IP:3033
ChatGPT Next Web
还是以 ChatGPT-Next-Web
为例
文章传送门:跨平台私人ChatGPT应用ChatGPT-Next-Web
如果你还没安装 ChatGPT-Next-Web
,可以用下面的命令一键搞定
# 运行容器
docker run -d
--restart unless-stopped
--name chatgpt-next-web
-p 3059:3000
-e OPENAI_API_KEY=<你的 key>
-e BASE_URL=http://<你的群晖IP>:3033
-e CUSTOM_MODELS="-all,+moonshot-v1-8k,+moonshot-v1-32k,+moonshot-v1-128k"
yidadaa/chatgpt-next-web
如果你已经安装过ChatGPT-Next-Web
,需要修改三个环境变量参数
-
OPENAI_API_KEY
:之前不论你是安装的FreeGPT35
还是aurora
,这个值都是随便填的,现在必须改为我们前面获取的key
-
BASE_URL
:填写One API
服务的地址 + 端口
服务名称 | 服务地址 |
---|---|
FreeGPT35 |
http://192.168.0.197:3044 |
aurora |
http://192.168.0.197:8328 |
GPT4Free |
http://192.168.0.197:1337 |
kimi-free-api |
http://192.168.0.197:8126 |
One API |
http://192.168.0.197:3033 |
-
CUSTOM_MODELS
:用来控制模型列表,使用+
增加一个模型,使用-
来隐藏一个模型,使用模型名=展示名
来自定义模型的展示名,用英文逗号隔开。需改为-all,+moonshot-v1-8k,+moonshot-v1-32k,+moonshot-v1-128k
重新启动 ChatGPT-Next-Web
容器后,进入的设置,可以看到模型已经改变了
接下来就可以开始聊天了
当然,One API
作为分发系统,还支持充值、兑换、日志等功能
参考文档
songquanpeng/one-api: OpenAI 接口管理 & 分发系统,支持 Azure、Anthropic Claude、Google PaLM 2、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元,可用于二次分发管理 key,仅单可执行文件,已打包好 Docker 镜像,一键部署,开箱即用. OpenAI key management & redistribution system, using a single API for all LLMs, and features an English UI. 地址:https://github.com/songquanpeng/one-api
@所有人:写文不易,如果你都看到了这里,请点个赞
和在看
,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。
原文始发于微信公众号(各种折腾):大模型接口管理和分发系统One API
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/284631.html