Published on

使用 Docker 部署14.7k stars 的各大 AI 模型 key 分发及接口管理系统

对于对 AI 感兴趣的小伙伴们来说,一定听说过大名鼎鼎的 One API 项目,它在 Github 上拥有 14.7k 的 stars 和 3.4k 的 forks,项目简介如下:

OpenAI 接口管理 & 分发系统,支持 Azure、Anthropic Claude、Google PaLM 2 & Gemini、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元,可用于二次分发管理 key,仅单可执行文件,已打包好 Docker 镜像,一键部署,开箱即用. OpenAI key management & redistribution system, using a single API for all LLMs, and features an English UI.

划重点!!!

  • ⭐️⭐️⭐️ OpenAI 接口管理 & 分发系统
  • ⭐️⭐️⭐️可用于二次分发管理 key

⭐️⭐️⭐️支持的 AI 大模型有二十多种,挑几个大家熟知的列列:

还有其他一大波模型也正在支持的路上,感兴趣的小伙伴可以访问 One API 的项目地址自行查看哦👀

使用 Docker 部署

实际上项目作者提供了 6 种部署方式,外加部署之后如何配合第三方服务使用 One API。分别是:

6 种部署方式

  1. Docker 部署(本次使用 Docker 部署
  2. Docker Compose 部署
  3. 手动部署
  4. 多机部署
  5. 宝塔部署教程
  6. 部署到第三方平台

部署第三方服务配合 One API 使用

  • ChatGPT Next Web
  • ChatGPT Web
  • QChatGPT - QQ 机器人

部署

在基于 Docker 进行部署时,可以根据自己规划的并发量来选择使用 SQLite 还是 MySQL,如果并发量比较大,务必设置 SQL_DSN

# 使用 SQLite 的部署命令:
docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api
# 使用 MySQL 的部署命令,在上面的基础上添加 `-e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi"`,请自行修改数据库连接参数,不清楚如何修改请参见下面环境变量一节。
# 例如:
docker run --name one-api -d --restart always -p 3000:3000 -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api

在部署好之后,我们就可以通过访问服务器 IP:3000 的方式来访问项目了。

我们点击右上角的登录按钮进行登录(默认账号密码是 root/123456)

配置渠道

登录后会跳转到修改密码页面,修改完密码之后就可以玩儿起里面的功能了。

这里我们结合之前部署过的 coze-discord-proxy 做自定义渠道:

提交保存,然后回到渠道页面进行测试:

测试通过,就是响应时间有些长。

创建令牌

点击复制,然后就可以手动复制一个 API Key 了:

测试 Key

复制好之后,我们可以在 NextChat 上进行测试,修改红框中的配置项,其中接口地址就是 One API 的服务地址:

回到对话框开始对话:

完成~😄