OneAPI 是一个能替代 springdoc-openapi/Swagger 的 API 生产工具,既不需要修改后端代码,也不需要启动应用。 也支持导出 OpenAPI 3.0 协议数据,方便在其他工具中消费。
前面我们介绍了LobeChat需要配置LLM的API访问Key,今天你可以使用OneAPI创建各种开源大语言模型的API访问Key,而且该开源软件自带流量收费系统。可以同时为微信、网页、PAD应用提供LLM Key服务。
下面我们就介绍OneAPI的安装配置过程,并让OneAPI生成ollama的访问key,docker的安装方式我们略去,直截从代码安装开始。
1、安装npm
#安装npm
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - && apt-get install -y nodejs
#安装pnpm
npm install pnpm -g
2、安装go语言
#下载软件包
wget https://golang.google.cn/dl/go1.19.3.linux-amd64.tar.gz
#安装
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.19.3.linux-amd64.tar.gz
#将/usr/local/go/bin添加到PATH环境变量中
export PATH=$PATH:/usr/local/go/bin
3、克隆OneAPI代码库
git clone https://github.com/songquanpeng/one-api.git
构建前端
# 构建前端
cd one-api/web/default
npm install
npm run build
构建后端
# 构建后端
cd ../..
go mod download
go build -ldflags "-s -w" -o one-api
4、运行
chmod u+x one-api
./one-api --port 3000 --log-dir ./logs
5、问题解析
(1)国内go访问慢的问题如何解决,国内Golang开发由于网络环境的问题,经常会出现依赖无法下载的问题。需要通过 exportGO111MODULE=on 激活 go module,并执行下面的执令
export GOPROXY=https://goproxy.cn
(2)从外部访问ollama,这里略去ollama的安装,有需要了解ollama安装的小伙伴可以去前面的文章中搜索有关ollama的安装。
vim /etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"
[Install]
WantedBy=default.target
重装装载ollama
sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama
6、OnetAPI的操作
(1)运行
访问 http://localhost:3000/ 并登录。初始账号用户名为 root,密码为 123456。
注意第一次运行需要修改root的密码。
(2)配置渠道
这个例子是模仿openai的API格式,名称:ollama,模型那里,你要自己填入llama的名字并加入。
重点是下面两项:
密钥:随便填。
代理:http://192.168.29.87:11434,这个是你配置的ollama的地址及端口。
然后提交。
点击测试,来测试一下连通性。
(3)创建Key
点击令牌
名称:你自己定义
模型范围:你可以选择你在渠道里填写好的模型名称。
过期时间:我这里选的是永不过期。
额度:无限额。
以上配置大家可以根据需要息行设置。
然后提交
点击复制,你就可以得到一个ollama的访问key。
然后你可以填写到LobeChat的OpenAI里面试一下。
OneAPI也可以生成各类LLM应用所需要的Key。有兴趣的小伙伴可以去试试。