Last updated on February 3, 2026 pm
One-api 是 OpenAI 接口管理 & 分发系统,支持Azure、Anthropic Claude、Google PaLM 2、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元,可用于二次分发管理 key。
部署 One-api
1 2
| mkdir -p ~/app/one-api && cd ~/app/one-api && nano docker-compose.yml sudo docker-compose up -d
|
1 2 3 4 5 6 7 8 9 10 11 12 13
| version: '3' services: one-api: image: justsong/one-api:latest environment: - TZ=Asia/Shanghai volumes: - ./data:/data restart: unless-stopped networks: default: external: true name: ngpm
|

客户端
新建渠道
- Azure 需要确保部署模型的名称是
gpt-35-turbo - 可以将 one-api 本身当一个渠道进行套娃
- 在 日志 里可以看到对不同渠道进行了负载均衡

附加 关闭 Azure 筛选
- 安装油猴插件
- 去控制台新建一个筛选器,将筛选关闭,并开启异步筛选注释
- 设置模型部署中模型的高级选项,切换筛选器为刚刚创建的筛选器
附加 Google Vertex
注册 GCP 账户
启用 Vertex AI API
创建服务账户
添加到 one-api 渠道
- 区域 Region 写
us-east5 - Vertex AI Project ID 在 json 文件里
- Google Cloud Application Default Credentials JSON 为下载的 json 文件的内容
- 详细内容点此
附加 Amazon Bedrock
1
| mkdir -p ~/app/litellm && cd ~/app/litellm && nano docker-compose.yml
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| version: "3.9" services: litellm: image: ghcr.io/berriai/litellm:main-latest volumes: - ./proxy_server_config.yaml:/app/proxy_server_config.yaml environment: - AWS_ACCESS_KEY_ID=<ACCESS_KEY> - AWS_SECRET_ACCESS_KEY=<SECRET_ACCESS_KEY> - AWS_REGION_NAME=us-west-2 restart: unless-stopped networks: default: external: true name: ngpm
|
1 2
| wget https://github.com/BerriAI/litellm/raw/main/proxy_server_config.yaml
|
1 2 3 4 5 6 7
| model_list: - model_name: bedrock-claude-haiku litellm_params: model: bedrock/anthropic.claude-3-haiku-20240307-v1:0 general_settings: master_key: sk-1234
|
1
| sudo docker-compose up -d
|
one-api 添加渠道

推荐 部署 SillyTavern
1 2 3 4 5 6 7 8 9 10 11
| mkdir -p ~/app/sillytavern && cd ~/app/sillytavern && nano docker-compose.yml sudo docker-compose up -d sudo docker-compose logs nano config/config.yaml
sudo docker-compose restart sudo docker-compose logs
|
1 2 3 4 5 6 7 8 9 10 11 12 13
| version: "3" services: sillytavern: image: ghcr.io/sillytavern/sillytavern:latest volumes: - "./config:/home/node/app/config" - "./user:/home/node/app/public/user" restart: unless-stopped networks: default: external: true name: ngpm
|
附加 部署 Next-Web
1 2
| mkdir -p ~/app/next-web && cd ~/app/next-web && nano docker-compose.yml sudo docker-compose up -d
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| version: '3' services: next-web: image: limour/next-chat environment: - TZ=Asia/Shanghai - BASE_URL=https://rcdn.limour.top/one-api - CUSTOM_MODELS=-all,+gpt-4o-mini@Deepbricks,+gpt-3.5-turbo@openai,+gpt-4-turbo@openai,+gpt-4o@openai,+o1-mini@openai,+gpt-claude-3.5-haiku@OpenRouter,+gpt-claude-3.5-sonnet@OpenRouter,+gpt-qwen-coder@HuggingFace,+gpt-gemini-1.5-pro@Vertex - ENABLE_BALANCE_QUERY=1 - HOSTNAME=0.0.0.0 - DEFAULT_MODEL=gpt-4o restart: unless-stopped networks: default: external: true name: ngpm
|

- 添加基本身份验证
- 修改
/api/openai 接口的 header - 设置里的
对话摘要模型 改为 gpt-4o-mini, 否则会默认使用最贵的模型来生成标题
1 2 3 4 5 6 7 8 9 10 11
| chunked_transfer_encoding off; proxy_buffering off; proxy_cache off; set $next_header $http_authorization; if ($http_authorization = "Basic <用户1>"){ set $next_header "Bearer <用户1的key>"; } if ($http_authorization = "Basic <用户2>"){ set $next_header "Bearer <用户2的key>"; } proxy_set_header Authorization $next_header;
|

附加 独角数卡售卖
【记录】使用one-api聚合Azure和OpenAI的API
https://hexo.limour.top/Aggregating-Azure-and-OpenAI-APIs-with-OneAPI