--- title: ChatGPT2API emoji: 🎨 colorFrom: blue colorTo: purple sdk: docker app_port: 7860 pinned: false ---
ChatGPT2API 主要是对 ChatGPT 官网相关能力进行逆向整理与封装,提供面向 ChatGPT 图片生成、图片编辑、多图组图编辑场景的 OpenAI 兼容图片 API / 代理,并集成在线画图、号池管理、多种账号导入方式与 Docker 自托管部署能力。
> [!WARNING] > 免责声明: > > 本项目涉及对 ChatGPT 官网文本生成、图片生成与图片编辑等相关接口的逆向研究,仅供个人学习、技术研究与非商业性技术交流使用。 > > - 严禁将本项目用于任何商业用途、盈利性使用、批量操作、自动化滥用或规模化调用。 > - 严禁将本项目用于破坏市场秩序、恶意竞争、套利倒卖、二次售卖相关服务,以及任何违反 OpenAI 服务条款或当地法律法规的行为。 > - 严禁将本项目用于生成、传播或协助生成违法、暴力、色情、未成年人相关内容,或用于诈骗、欺诈、骚扰等非法或不当用途。 > - 使用者应自行承担全部风险,包括但不限于账号被限制、临时封禁或永久封禁以及因违规使用等所导致的法律责任。 > - 使用本项目即视为你已充分理解并同意本免责声明全部内容;如因滥用、违规或违法使用造成任何后果,均由使用者自行承担。 > [!IMPORTANT] > 本项目基于对 ChatGPT 官网相关能力的逆向研究实现,存在账号受限、临时封禁或永久封禁的风险。请勿使用你自己的重要账号、常用账号或高价值账号进行测试。 > [!CAUTION] > 旧版本存在已知漏洞,请尽快升级到最新版本。公网部署时请尽量不要放置敏感信息,并自行做好访问控制与隔离。 ## 快速开始 已发布镜像支持 `linux/amd64` 与 `linux/arm64`,在 x86 服务器和 Apple Silicon / ARM Linux 设备上都会自动拉取匹配架构的版本。 ### Docker 运行 ```bash git clone git@github.com:basketikun/chatgpt2api.git cd chatgpt2api docker compose up -d ``` 启动前请先在 `config.json` 中设置 `auth-key`,也可以在 `docker-compose.yml` 中通过 `CHATGPT2API_AUTH_KEY` 覆盖。 - Web 面板:`http://localhost:3000` - API 地址:`http://localhost:3000/v1` - 数据目录:`./data` ### 本地开发 启动后端: ```bash git clone git@github.com:basketikun/chatgpt2api.git cd chatgpt2api uv sync uv run main.py ``` 启动前端: ```bash cd chatgpt2api/web bun install bun run dev ``` 后续更新新版本: ```bash docker pull ghcr.io/basketikun/chatgpt2api:latest docker-compose down docker-compose up -d ``` ### 存储后端配置 支持通过环境变量 `STORAGE_BACKEND` 切换存储方式: - `json` - 本地 JSON 文件(默认) - `sqlite` - 本地 SQLite 数据库 - `postgres` - 外部 PostgreSQL(需配置 `DATABASE_URL`) - `git` - Git 私有仓库(需配置 `GIT_REPO_URL` 和 `GIT_TOKEN`) 示例:使用 PostgreSQL ```yaml environment: - STORAGE_BACKEND=postgres - DATABASE_URL=postgresql://user:password@host:5432/dbname ``` ## 功能 ### API 兼容能力 - 兼容 `POST /v1/images/generations` 图片生成接口 - 兼容 `POST /v1/images/edits` 图片编辑接口 - 兼容面向图片场景的 `POST /v1/chat/completions` - 兼容面向图片场景的 `POST /v1/responses` - `GET /v1/models` 返回 `gpt-image-2`、`codex-gpt-image-2`、`auto`、`gpt-5`、`gpt-5-1`、`gpt-5-2`、`gpt-5-3`、`gpt-5-3-mini`、 `gpt-5-mini` - 支持通过 `n` 返回多张生成结果 - 支持 Codex 中的画图接口逆向,仅 `Plus` / `Team` / `Pro` 订阅可用,模型别名为 `codex-gpt-image-2`,如有需要可自行在其他场景映射回 `gpt-image-2`,用于和官网画图区分;也就意味着同一账号会同时有官网和 Codex 两份生图额度 ### 在线画图功能 - 内置在线画图工作台,支持生成、图片编辑与多图组图编辑 - 支持 `gpt-image-2`、`codex-gpt-image-2`、`auto`、`gpt-5`、`gpt-5-1`、`gpt-5-2`、`gpt-5-3`、`gpt-5-3-mini`、`gpt-5-mini` 模型选择 - 编辑模式支持参考图上传 - 前端支持多图生成交互 - 本地保存图片会话历史,支持回看、删除和清空 - 支持服务端缓存图片URL ### 号池管理功能 - 自动刷新账号邮箱、类型、额度和恢复时间 - 轮询可用账号执行图片生成与图片编辑 - 遇到 Token 失效类错误时自动剔除无效 Token - 定时检查限流账号并自动刷新 - 支持网页端配置全局 HTTP / HTTPS / SOCKS5 / SOCKS5H 代理 - 支持搜索、筛选、批量刷新、导出、手动编辑和清理账号 - 支持四种导入方式:本地 CPA JSON 文件导入、远程 CPA 服务器导入、`sub2api` 服务器导入、`access_token` 导入 - 支持在设置页配置 `sub2api` 服务器,筛选并批量导入其中的 OpenAI OAuth 账号 ### 实验性 / 规划中 - `/v1/complete` 文本补全与流式输出已实现,但仍在测试,目前会出现对话重复的问题,请谨慎测试使用 - 详细状态说明见:[功能清单](./docs/feature-status.en.md) ## API 所有 AI 接口都需要请求头: ```http Authorization: BearerGET /v1/modelsPOST /v1/images/generationsPOST /v1/images/editsPOST /v1/chat/completionsPOST /v1/responses