ChatGPT Mirror-一键部署自己的 ChatGPT 镜像站

介绍

ChatGPT Mirror 后台是一个 ChatGPT 镜像网站,允许多账号共享管理。实现多人同时使用 ChatGPT 服务。

项目地址:https://github.com/dairoot/ChatGPT-Mirror

文件备份:https://pan.quark.cn/s/4e529db2ea56

特点

  • 提供与官网同等的极致体验。
  • 提供 ChatGPT 聊天接口 转 API /v1/chat/completions
  • 用户无需翻墙,便可轻松访问并使用 ChatGPT 官方网站的所有功能。
  • 通过在 Mirror 后台录入 ChatGPT Token,让团队成员每人拥有独立账号 (或共享同一个ChatGPT Plus账号)。
  • 提供便捷的管理后台,帮助管理员高效管理账号。

在线体验

https://chatgpt.dairoot.cn

  • 账号:dairoot
  • 密码:dairoot

部署

1. 本地运行

1
2
3
4
5
6
7
8
9
10
# 本地需要翻墙

docker pull dairoot/chatgpt-mirror

docker run -p 50001:50001 -p 443:443 \
-e ADMIN_USERNAME=dairoot \
-e ADMIN_PASSWORD=dairoot \
dairoot/chatgpt-mirror

访问: https://localhost

2. 部署到服务器(海外 vps)

1
2
3
4
5
6
7
8
9
10
# 切换到 home 目录,并克隆 ChatGPT-Mirror 仓库
cd /home/ && git clone https://github.com/dairoot/ChatGPT-Mirror.git

cd ChatGPT-Mirror/

cp .env.example .env && vi .env # 修改管理后台账号密码

docker compose pull # 拉取镜像

docker compose up -d # 后台运行

若需要配置 ChatGPT 聊天页面,请点击查看完整部署流程

3. 使用 Zeabur 部署 (免服务器)

管理后台 默认账号密码为:dairoot

Zeabur 后台修改环境变量,即可更改 管理后台 账号密码


环境变量

分类 变量名 类型 默认值 描述
管理后台 ADMIN_USERNAME string None 管理后台账号
ADMIN_PASSWORD string None 管理后台密码
API 相关 ENABLE_MIRROR_API Boolean true 是否开启 API 访问
MIRROR_API_PREFIX string None API 访问前缀,建议配置
HATD Boolean false 开启临时聊天(不保存聊天记录)

聊天 API 接口

可搭配 ChatGPT-Next-WebLobe-Chat 使用

1
2
3
accessToken 获取地址:https://chatgpt.com/api/auth/session

API 地址为:https://你的域名/上述环境变量配置的MIRROR_API_PREFIX

参数详情

字段 类型 默认值 必填 描述
model string None 模型名称 gpt-4o-mini gpt-4o gpt-4 gpt-4-mobile
messages array None 消息内容
stream boolean None 是否流式返回
conversation_id string 自动匹配 会话 ID
parent_message_id string 自动匹配 父消息 ID
hatd boolean 默认同环境变量 同上述环境变量的 HATD

聊天接口请求示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
export accessToken=XXXXX  # 获取地址:https://chatgpt.com/api/auth/session
export yourUrl=http://127.0.0.1:50001/上述环境变量配置的MIRROR_API_PREFIX


curl --location "${yourUrl}/v1/chat/completions" \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer ${accessToken}" \
--data '{
"model": "gpt-4o-mini",
"messages": [{"role": "user", "content": "你好呀!"}],
"stream": true,
"conversation_id": null,
"parent_message_id": null,
"hatd": false
}'