Use One-API as an AI agent
使用 One-API 作为 AI 代理
背景
- 客户端对接各种服务商的大语言模型需要实现各种接口,使用
One API可以简化这一过程,可以统一为通用的OpenAI格式的接口。
搭建
使用
docker部署One API服务端:1
2
3
4
5
6
7
8docker run -d -p 3000:3000 \
--name one-api \
--restart always \
-e TZ=Asia/Shanghai \
-e SESSION_SECRET="${SESSION_SECRET}" \
-e SQL_DSN="${USER}:${PASSWORD}@tcp(${HOST}:${PORT})/oneapi" \
-v ${DATA_PATH}:/data \
ghcr.io/martialbe/one-api环境变量
SESSION_SECRET设置之后将使用固定的会话密钥,系统在重新启动后已登录用户cookie将依旧有效;环境变量SQL_DSN设置数据库连接信息。登录
One API服务http://localhost:3000,使用默认的用户名root和密码123456登录。
渠道配置
以阿里云百炼服务商为例:
选择类型为“阿里云百炼”,填入名称“百炼”,添加分组以及选择将使用的阿里云百炼的模型,编写重定向规则,
key为客户端使用的模型名称,value为阿里云百炼的模型名称,最后填入密钥。
令牌设置
创建客户端
ai-commit令牌:点击复制,生成客户端
ai-commit的令牌:
域名配置
添加公网子域名解析,以阿里云为例:
nginx配置:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17# one-api
server{
listen 80;
listen [::]:80;
server_name openai.gardenqaq.cn;
location / {
client_max_body_size 64m;
proxy_http_version 1.1;
proxy_pass http://${ip}:${port};
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 需要较长的超时时间,请自行调整
}
}
客户端使用
以
vscode为例,安装ai-commit插件,配置ai-commit插件:点击
ai-commit按钮,自动调用模型,生成commit信息:
参考文献
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 后端学习手记!


















