前言

CLIProxyAPI 是一个开源的 AI 接口代理服务,用于将多种 AI CLI 工具统一转换为标准 API。通过该项目,可以把 Claude、Gemini、Qwen 等模型的 CLI 或账号能力封装成类似 OpenAI 的接口(如 /v1/chat/completions),方便程序直接调用。更直白的讲就是它可以把网页或者CLI 的 AI 使用方式,转换成标准 API 接口。

CLIProxyAPI 支持账号登录、多账号轮询、模型映射和流式输出等功能,可部署在服务器或 Docker 环境中,作为统一的 AI 接入网关。开发者只需对接一次接口,就能在不同模型之间切换或扩展,适合需要集中管理和调用多种 AI 服务的场景。

项目地址:https://github.com/router-for-me/CLIProxyAPI

开始部署

  • 创建相关文件和目录

复制以下命令并执行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
mkdir -p /root/data/docker_data/cpa
cd /root/data/docker_data/cpa

# 创建 config.yaml
cat > config.yaml <<EOF
host: ""
port: 8317 # CLIProxyAPI 容器内监听的端口,不要改
auth-dir: "~/.cli-proxy-api"
remote-management:
allow-remote: true
secret-key: "SECRET_KEY" #修改登陆密码
disable-control-panel: false
debug: false
logging-to-file: true
api-keys:
- "API_KEY" #修改密钥
EOF

# 创建 docker-compose.yaml
cat > docker-compose.yaml <<EOF
version: "3.9"

services:

cli-proxy-api:
image: eceasy/cli-proxy-api:latest
container_name: cli-proxy-api
restart: unless-stopped
ports:
- "8317:8317" # API 端口映射,左边端口可改,右边不要改
volumes:
- ./config.yaml:/CLIProxyAPI/config.yaml # 配置文件
- ./auths:/root/.cli-proxy-api # AI账号持久化
- ./logs:/CLIProxyAPI/logs # 日志持久化
environment:
- TZ=Asia/Shanghai
cap_drop:
- ALL # 最小化容器权限
EOF

# 创建持久化目录
mkdir -p auths logs
  • 启动容器
1
docker-compose up -d
  • 访问管理面板
1
ip:8317/management.html