使用One-Api的好處就是可以將任何使用OpenAI接口的地方替換為One-Api的接口,然后對One-Api進行大語言模型的渠道配置,比如配置文心一言Claude等,然后你就可以像請求OpenAI一樣請求文心一眼、Claude。

部署

?One-Api是一個Go項目,開箱即用,因此部署非常簡單。這里我們以正常的業務部署為例,實現下述要求:

一、在Linux服務器上部署One-Api

?一臺Linux服務器,建議選擇國外地區,但中國大陸或港澳地區亦可,但是在添加國外大語言模型時需要配置代理接口(臺灣貌似不需要)。我這里以Vultr的服務器為例,選用Debian 12 x64。

為了后續的域名配置和SSL配置,我建議服務器選擇國外的。

1. 安裝Docker

?直接通過運行官方提供的安裝腳本安裝Docker。

curl -fsSL get.docker.com -o get-docker.sh && sudo sh get-docker.sh
3. 運行One-API項目

?直接運行下述指令:

docker run -d --name one-api -p 3000:3000 -v ./data/oneapi:/data -v ./logs:/app/logs justsong/one-api:latest --log-dir /app/logs
4. 訪問

?訪問主機IP:3000

?默認管理員賬戶:

?登錄之后會提示修改密碼,按照指引完成即可。

二、配置域名和證書

1. 域名解析

?這里不對域名解析操作進行介紹,因為不同的域名提供商,對應的操作界面不同,不會域名解析的,請自行谷歌了解自己的域名提供商怎么進行域名解析。

選用國外服務器的話,域名也要國外的,我一般使用的是cloudflare平臺的域名。國內服務器進行域名配置的話,需要進行域名備案,且國外域名解析到國內服務器時會出現DNS污染的情況。

?我這里已經有一個域名oneapi.mnzdna.xyz解析到了我這臺服務器上。

如何驗證域名是否解析到了服務器上?執行ping 域名,看看信息反饋的IP地址是不是你服務器的IP即可。

2. 安裝Nginx

?運行如下指令:

apt install nginx -y

?Centos運行:

yum install nginx -y

?運行完成后,可以訪問服務器IP來驗證下Nginx是否安裝成功。

在訪問服務器的某端口所對應的程序時,需要確保對應的端口是否對外開放,nginx程序端口默認是80,如果訪問不了,可以使用iptables工具開放對應的端口,不會的話直接向ChatGPT提問。

3. 配置OneAPI項目的Nginx配置

?OneAPI的項目我們已經部署上了,從服務器的角度上來說,訪問本地3000端口即可訪問OneAPI項目,從外部網絡來說,訪問服務器IP:3000即可訪問OneAPI項目。

?在我們安裝了Nginx之后,我們需要將外部的請求全部轉發到本地的3000端口即可,這里就需要用到Nginx的反向代理。

?運行下述指令,在/etc/nginx/conf.d下創建一個oneapi項目的配置文件oneapi.conf

下面的操作需要有一定的linux基礎和Vim基礎,沒有的話,可以現在本地將oneapi.conf文件準備好,然后上傳到/etc/nginx/conf.d下。

vim /etc/nginx/conf.d/oneapi.conf

?然后將下述配置信息復制進去:

server{
server_name oneapi.mnzdna.xyz; # 請根據實際情況修改你的域名

location / {
client_max_body_size 64m;
proxy_http_version 1.1;
# 反向代理配置
proxy_pass http://localhost:3000; # 請根據實際情況修改你的端口
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header Accept-Encoding gzip;
proxy_read_timeout 300s; # GPT-4 需要較長的超時時間,請自行調整
}
}

?然后運行下述指令,重新加載Nginx配置文件

nginx -s reload

?然后在瀏覽器訪問你的域名。

?瀏覽器提示網站不安全,是因為網站沒有配置SSL證書。

4. 配置SSL證書

?Nginx配置SSL證書可以在我的博客文章中了解:https://pgthinker.me/tag/nginx/.這里我們使用自動化配置SSL工具:Certbot。

?安裝官方的教程,依次運行下述指令:

# 1. 安裝snapd 不同的Linux版本請使用不同的包管理工具進行安裝
apt install snapd

# 2. 使用snapd安裝certbot
sudo snap install --classic certbot

# 3. 創建鏈接,確保certbot能夠運行
sudo ln -s /snap/bin/certbot /usr/bin/certbot

# 4. 使用certbot自動配置nginx
sudo certbot --nginx

第4步的時候,需要依次輸入信息,第一個是你的郵箱,隨意輸入,第二個是協議條款,填Y,第三個是訂閱消息輸入N,第四個是certbot自動檢測到你Nginx綁定的哪些域名,選擇對應域名的編號回車就會自動安裝SSL并對配置文件進行修改。

配置完SSL后,就可以通過https訪問,若出現訪問不了的情況,請確定443端口是否對外開放。

三、添加ChatGPT和其它大語言模型渠道

1. 添加ChatGPT模型

2. 添加智譜AI模型

3. 創建Key

4. 測試

?這里用ChatGPT-Next-Web項目進行測試。

?填入One-Api地址和剛剛創建的Key(令牌).

?選擇gpt-3.5-turbo模型。

?添加自定義模型chatglm_turbo,并設置chatglm_turbo,測試智譜AI

文章轉自微信公眾號@易寫開發服務

上一篇:

實用 Web API 規范

下一篇:

如何打造PHP的Restful API自動化監控系統?
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

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

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

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

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

#AI深度推理大模型API

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

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