工作原理如下:

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 端口號
本地端口容器端口
30333000

環境

可變
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?的開發者賬號,新用戶注冊會有?15?元額度。這和之前我們用的?kimi-free-api?中介紹的?refresh_token?不是一個概念。

保存之后,可以?測試

如果沒問題的話,會提示測試成功

kimi-free-api

當然,我們也可以添加之前使用過的?kimi-free-api

kimi 是 Moonshot 基于 Moonshot AI 開發的產品

保存之后,可以測試一下是否設置正確

創建令牌

要二次分發使用,還需要有令牌

用于控制可使用的模型、額度、時限等

【注意】:這里沒有設置模型范圍,意味著后續添加的新渠道的模型,都是可以通過這個令牌進行訪問的

保存之后

以?ChatGPT Next Web?為例

會得到一個字符串,其中

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,需要修改三個環境變量參數

服務名稱服務地址
FreeGPT35http://192.168.0.197:3044
aurorahttp://192.168.0.197:8328
GPT4Freehttp://192.168.0.197:1337
kimi-free-apihttp://192.168.0.197:8126
One APIhttp://192.168.0.197:3033

CUSTOM_MODELS?:用來控制模型列表,使用?+?增加一個模型,使用?-?來隱藏一個模型,使用?模型名=展示名?來自定義模型的展示名,用英文逗號隔開。需改為?-all,+moonshot-v1-8k,+moonshot-v1-32k,+moonshot-v1-128k

重新啟動 ?ChatGPT-Next-Web??容器后,進入的設置,可以看到模型已經改變了

接下來就可以開始聊天了

當然,One API?作為分發系統,還支持充值、兌換、日志等功能

本文章轉載微信公眾號@各種折騰

上一篇:

Moonshot 大模型的API調用

下一篇:

百度地圖API使用總結(一)
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費