{"id":13455647,"url":"https://github.com/Dooy/chatgpt-web-midjourney-proxy","last_synced_at":"2025-03-24T08:33:28.738Z","repository":{"id":208008544,"uuid":"720619789","full_name":"Dooy/chatgpt-web-midjourney-proxy","owner":"Dooy","description":"chatgpt web, midjourney, gpts,tts, whisper 一套ui全搞定","archived":false,"fork":false,"pushed_at":"2024-04-10T01:18:36.000Z","size":20007,"stargazers_count":2907,"open_issues_count":20,"forks_count":750,"subscribers_count":29,"default_branch":"main","last_synced_at":"2024-04-10T04:07:30.408Z","etag":null,"topics":["chatgpt-ui","chatgpt-web","gpts","gpts-ui","gptstore","midjourney","midjourney-api","midjourney-ui","whisper-ui"],"latest_commit_sha":null,"homepage":"https://vercel.ddaiai.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dooy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.en.md","funding":null,"license":"license","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-11-19T03:18:59.000Z","updated_at":"2024-08-07T01:20:29.624Z","dependencies_parsed_at":"2024-04-15T02:33:04.395Z","dependency_job_id":"a4765cba-5c87-4c7a-9550-20e2f4da30d8","html_url":"https://github.com/Dooy/chatgpt-web-midjourney-proxy","commit_stats":null,"previous_names":["dooy/chatgpt-web-midjourney-proxy"],"tags_count":87,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dooy%2Fchatgpt-web-midjourney-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dooy%2Fchatgpt-web-midjourney-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dooy%2Fchatgpt-web-midjourney-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dooy%2Fchatgpt-web-midjourney-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dooy","download_url":"https://codeload.github.com/Dooy/chatgpt-web-midjourney-proxy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221947783,"owners_count":16906184,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chatgpt-ui","chatgpt-web","gpts","gpts-ui","gptstore","midjourney","midjourney-api","midjourney-ui","whisper-ui"],"created_at":"2024-07-31T08:01:08.655Z","updated_at":"2025-03-24T08:33:28.731Z","avatar_url":"https://github.com/Dooy.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","A01_文本生成_文本对话","Repos"],"sub_categories":["大语言对话模型及数据"],"readme":"# ChatGPT Web Midjourney Proxy\n\n[English](./README_EN.md) | [Русский язык](./README_RU.md) | [Français](./README_FR.md) | [한국어](./README_KR.md) | [Tiếng Việt](./README_VN.md) | [Türkçe](./README_TR.md)\n\n## 声明\n- 此项目只发布于 GitHub，基于 MIT 协议，免费且作为开源学习使用。并且不会有任何形式的卖号、付费服务、讨论群、讨论组等行为。谨防受骗。\n- 本开源是在 [ChenZhaoYu](https://github.com/Chanzhaoyu/chatgpt-web) 基础上做二次开发 ；使用 [midjourney-proxy](https://github.com/novicezk/midjourney-proxy) 、 Suno-API、[Luma-API](https://github.com/LumaAI-API/Luma-API)  作为后端API而形成的；\n- 可以直接用 https://vercel.ddaiai.com 先体验\n\n![cover](./docs/mj2a1.jpg)\n## 支持功能 \n- [x] 支持 udio 文生音乐\n- [x] 支持 pika  文生视频，图生视频\n- [x] 支持 openai realtime [点击观看.youtube](https://www.youtube.com/watch?v=pKvVi3oBRQU)  [B站](https://www.bilibili.com/video/BV1Kt22YPE2c/) \n- [x] 支持 kling 可灵 文生视频，图生视频, 绘图\n- [x] 支持 ideogram 绘图\n- [x] 支持 runway 文生视频，图生视频\n- [x] 支持 luma 文生视频，图生视频\n- [x] 支持 viggle 舞蹈\n- [x] 支持 suno 单独模块，可歌词调整 曲风调整\n- [x] 支持 suno 以音频生成音频\n- [x] 支持 flux dall.e 文生图\n- [x] 原chatgpt web 所有功能\n- [x] chatgpt web 支持自定义api key、base_url\n- [x] midjourney 文生图、垫图+文生图  、图变 U1到U4 、 V1到V4、重绘等操作\n- [X] midjourney 支持局部重绘、支持1.5倍变焦 2倍变焦、2倍高清 4倍高清\n- [X] midjourney 支持左、右、上、下延伸变化\n- [X] midjourney 同时支持[midjourney-proxy](https://github.com/novicezk/midjourney-proxy) 接口 和 [midjourney-proxy-plus](https://github.com/litter-coder/midjourney-proxy-plus) 接口\n- [X] midjourney 图生文\n- [X] 图片使用localforage实现本地存储\n- [X] 支持midjourney、niji 不同机器人\n- [X] 支持[InsightFace 人脸替换](https://discord.com/api/oauth2/authorize?client_id=1090660574196674713\u0026permissions=274877945856\u0026scope=bot)\n- [X] midjourney 混图、获取 seed \n- [X] chatgpt 前端支持自定义模型、上下文对话数、回复数\n- [X] chatgpt 支持图片上传图片 供gpt-4-vision-preview使用、gpts\n- [X] chatgpt 支持超链模型切换 https://vercel.ddaiai.com/#/m/gpt-4-all https://vercel.ddaiai.com/#/m/gpt-4-gizmo-g-2fkFE8rbu\n- [X] 支持ChatGPT试的超链模型切换 https://chat.openai.com/g/g-2fkFE8rbu 修改为 https://vercel.ddaiai.com/#/g/g-2fkFE8rbu\n- [X] chatgpt 支持 GPTs 多模态\n- [X] chatgpt 支持 tts whisper dall-e-3 画图\n- [X] 即时语音识别(浏览器自带语音识别 ASR) `v2.15.7`以上版本\n- [X] 支持超链更换设置，适合`one-api` `new-api`部署聊天(\u003cb color=\"red\"\u003e为了安全，此方式请使用自己域名\u003c/b\u003e) https://mj.your-name.com/#/s/t?OPENAI_API_BASE_URL=https://abc.com\u0026OPENAI_API_KEY=sk-xxxxx\u0026MJ_SERVER=https://abc.com\u0026MJ_API_SECRET=sk-xxx\u0026UPLOADER_URL=\n- [X] 支持`one-api`、`new-api`部署聊天 (\u003cb color=\"red\"\u003e为了安全，此方式请使用自己域名\u003c/b\u003e) https://mj.your-name.com/#/?settings={%22key%22:%22sk-abc%22,%22url%22:%22https://www.abc.com%22} `(v.2.14.3)`\n\n## 无服务器-个人桌面安装\n\u003e - [x] 请到 https://github.com/Dooy/chatgpt-web-midjourney-proxy/releases 下载最新版本安装(选择合适你操作系统的版本)\n\u003e - [x] 选择一个合适的中转服务商( 最好都支持 `gpt`  `gpts` `midjourney` `claude`  `suno` `luma` `runway` `viggle` `flux` `ideogram` `kling` `pika`)\n\u003e - [x] 中转服务商推荐 https://www.openai-hk.com 一个`key`和`api接口地址` 同时支持 [gpt](https://www.openai-hk.com/docs/getting-started.html) [gpts](https://www.openai-hk.com/docs/openai/gpts.html) [midjourney](https://www.openai-hk.com/docs/midjourney/guide.html) [claude](https://www.openai-hk.com/docs/lab/claude-3.html) [suno](https://www.openai-hk.com/docs/lab/suno-v3.html) [luma](https://www.openai-hk.com/docs/lab/luma-video.html) [runway](https://www.openai-hk.com/docs/lab/runway-video.html) [viggle](https://www.openai-hk.com/docs/lab/viggle-dance.html) [ideogram](https://www.openai-hk.com/docs/lab/ideogram.html) [flux](https://www.openai-hk.com/docs/lab/flux.html) [kling](https://www.openai-hk.com/docs/lab/kling.html) [pika](https://www.openai-hk.com/docs/lab/pika-video.html) [udio](https://www.openai-hk.com/docs/lab/udio-music.html)，mj-fast最低能到0.12rmb/张,`suno` 最低能到4分一首 \n![多模态](./docs/suno-ds.jpg)\n\n## Vercel 一键部署\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/Dooy/chatgpt-web-midjourney-proxy\u0026env=OPENAI_API_BASE_URL\u0026env=OPENAI_API_KEY\u0026env=MJ_SERVER\u0026env=MJ_API_SECRET\u0026project-name=chatgpt-web-midjourney-proxy\u0026repository-name=chatgpt-web-midjourney-proxy)\n\n## env 环境变量\n\n| 环境变量 | 说明 | 默认值 |docker等部署| vercel 部署|\n| --- | --- | --- | --- | --- |\n| OPENAI_API_BASE_URL | OpenAI API 接口地址 | https://api.openai.com | ✅ |  ✅|\n| OPENAI_API_KEY | OpenAI API 密钥 |  sk-xxxxx | ✅ |  ✅|\n| OPENAI_API_MODEL |  默认模型 | gpt-3.5-turbo  | ✅ |  ✅|\n| MJ_SERVER |  mj proxy 接口地址  |[搭建参考](https://github.com/novicezk/midjourney-proxy) | ✅ |  ✅|\n| MJ_API_SECRET |  mj proxy | 空  | ✅ |  ✅|\n| SUNO_SERVER |  SUNO API 接口地址  | [搭建参考](https://github.com/SunoAI-API/Suno-API) | ✅ |  ✅|\n| SUNO_KEY |  SUNO API 的key | 空  | ✅ |  ✅|\n| AUTH_SECRET_KEY |  访问授权密码 | 无  | ✅ |   x|\n| API_UPLOADER |  支持上传 | 关闭  | ✅ |  x|\n| HIDE_SERVER |  前端ui隐藏服务端|    | ✅ |  x|\n| CUSTOM_MODELS |  自定义可选模型 `CUSTOM_MODELS=-all,gpt-3.5` | 无  | ✅ |  ✅|\n| TJ_BAIDU_ID |  百度统计ID | 无  | ✅ |  ✅|\n| TJ_GOOGLE_ID |  谷歌统计ID | 无  | ✅ |  ✅|\n| SYS_NOTIFY |  系统通知，支持HTML | 无  | ✅ |  ✅|\n| DISABLE_GPT4 |  禁用GPT-4 | 无  | ✅ |  ✅|\n| GPT_URL | 自定 GPT_URL=/gpts.json  | 无 也可自己的外链 | ✅ |  ✅|\n| UPLOAD_IMG_SIZE | 上传图片大小限制 默认1M |  1 | ✅ |  ✅|\n| SYS_THEME | 默认主题 `light`或者`dark`  | dark | ✅ |  ✅|\n| MJ_IMG_WSRV | 是否开启 `wsrv`图床  | 无(关闭)  | ✅ |  ✅|\n| AUTH_SECRET_ERROR_COUNT | 防爆破验证：验证次数触发 NGINX 请设置 `proxy_set_header   X-Forwarded-For  $remote_addr`  | 无  | ✅ |  x|\n| AUTH_SECRET_ERROR_TIME | 防爆破验证：停留时间 单位分钟  | 无  | ✅ |  x|\n| CLOSE_MD_PREVIEW | 是否不关闭输入预览 | 无  | ✅ |  ✅|\n| UPLOAD_TYPE | 指定上传方式 [`R2` R2上传] [`API` 跟随UI前端中转]、[`Container` 本地容器]、[`MyUrl` 自定义链接]  |  空 | ✅ |  x|\n| MENU_DISABLE  | 菜单禁用 可选:gpts,draws,gallery,music,video,dance,realtime |  空 | ✅ |  ✅|\n| VISION_MODEL  | 默认使用的识图 可选:`gpt-4o`,`gpt-4-turb`,`gpt-4-vision-preview`等 |  空 | ✅ |  ✅|\n| SYSTEM_MESSAGE  | 自定义默认角色消息 |  空 | ✅ |  ✅|\n| CUSTOM_VISION_MODELS  | 自定义可视图模型 用`,` 分开 |  空 | ✅ |  ✅|\n| LUMA_SERVER |  LUMA API 接口地址  | [搭建参考](https://github.com/LumaAI-API/Luma-API) | ✅ |  ✅|\n| LUMA_KEY |  LUMA API 的key | 空  | ✅ |  ✅|\n\n  \n\n## docker 部署\n \n\u003e - [x] 需 [midjourney-proxy](https://github.com/novicezk/midjourney-proxy) 或者[trueai](https://github.com/trueai-org/midjourney-proxy) 支持 \n\u003e - [x] 需 Suno-API  支持\n\u003e - [x] 需 [Luma-API](https://github.com/LumaAI-API/Luma-API)  支持\n\n\n```bash\ndocker run --name chatgpt-web-midjourney-proxy  -d -p 6015:3002 \\\n-e OPENAI_API_KEY=sk-xxxxx \\\n-e OPENAI_API_BASE_URL=https://api.openai.com  \\\n-e MJ_SERVER=https://your-mj-server:6013  \\\n-e MJ_API_SECRET=your-mj-api-secret  \\\n-e LUMA_SERVER=https://your-luma-server:8000  \\\n-e LUMA_KEY=your-luma-key  \\\n-e SUNO_SERVER=https://your-suno-server:8000  \\\n-e SUNO_KEY=you-suno-key  ydlhero/chatgpt-web-midjourney-proxy\n```\n访问 http://ip:6015 \n\n**文件上传**: \n```bash\ndocker run --name chatgpt-web-midjourney-proxy  -d -p 6015:3002 \\\n-e OPENAI_API_KEY=sk-xxxxx \\\n-e OPENAI_API_BASE_URL=https://api.openai.com  \\\n-e MJ_SERVER=https://172.17.0.1:6013  \\\n-e API_UPLOADER=1  -v /data/uploads:/app/uploads \\\n-e MJ_API_SECRET=abc123456  ydlhero/chatgpt-web-midjourney-proxy\n```\n如果是前端ui设置 OPENAI_API_KEY OPENAI_API_BASE_URL ; 图片上传也会随着走 OPENAI_API_BASE_URL走\n```shell\ncurl -X POST -H \"Content-Type: multipart/form-data\" -F \"file=@/path/to/file\" http://OPENAI_API_BASE_URL/v1/upload\n```\n返回格式\n```json\n{\n\"url\":\"https://xxxxxxx.jpg\"\n}\n```\n\n### midjourney-proxy API docker部署\n更多参考到 [midjourney-proxy](https://github.com/novicezk/midjourney-proxy) 开源光光\n```bash\ndocker run -d --name mj6013  -p 6013:8080  \\\n-e mj.discord.guild-id=discord服务ID  \\\n-e mj.discord.channel-id=discord服务组ID   \\\n-e mj.queue.timeout-minutes=6 \\\n-e mj.api-secret=abc123456 \\\n-e mj.discord.user-token=**********  \\\n--restart=always novicezk/midjourney-proxy:2.5.5\n```\n\n\n## 更多展示\n\n\n### Realtime \n\n[点击观看Realtime视频](https://www.youtube.com/watch?v=pKvVi3oBRQU) \n\n\u003cdiv style=\"display: flex; flex-wrap: wrap\"\u003e\n \u003cimg src=\"./docs/realtime-2.jpg\" style=\"width:200px\" \u003e \n\u003c/div\u003e\n \n\n### suno、udio 音乐AI制作\n![suno](./docs/suno2.jpg)\n\n### luma runway pika kling 视频AI制作\n![suno](./docs/luma-video.jpg)\n\n\n\n### 自定义服务端api key、base_url：\n![base_url](./docs/gptbase.jpg)\n\n### GPTS  GTP Store \n![多模态](./docs/gpts.jpg)\n![多模态](./docs/gpts1.jpg)\n\n### 录音 whisper  和  tts\n![whisper--tts](./docs/tts-whisper.png)\n\n### 局部重绘：\n[![局部重绘](./docs/mj2.jpg)](./docs/mj2.jpg)\n\n### 换脸\n![换脸](./docs/mj2a2.jpg)\n\n### 混图\n![混图](./docs/mj2a3.jpg)\n\n### 支持图片上传图片 供gpt-4-vision-preview使用\n![混图](./docs/mj4a1.png)\n手机端：\n\u003cdiv style=\"display: flex; flex-wrap: wrap\"\u003e\n \u003cimg src=\"./docs/mjs1.jpg\" style=\"width:200px\" \u003e\n \u003cimg src=\"./docs/mjs2.jpg\"  style=\"width:200px\"\u003e\n \u003cimg src=\"./docs/mjs3.jpg\"  style=\"width:200px\"\u003e\n\u003c/div\u003e\n\n\n## 文件上传 支持cloudflare r2 存储\n\n- cloudflare r2 存储 10 GB/月 免费 https://www.cloudflare.com/zh-cn/developer-platform/r2/\n- 配置文档参考 https://zhuanlan.zhihu.com/p/658058503\n- vercel 不支持 r2 存储\n```yml\nR2_DOMAIN=\nR2_BUCKET_NAME=\nR2_ACCOUNT_ID=\nR2_KEY_ID=\nR2_KEY_SECRET=\n```\n## 文件服务器请求优先顺序\nR2\u003e 前端UI设置文件服务\u003e 后端文件服务 \u003e跟随中转\n## 防爆破验证设置\n\n![防爆破](./docs/check_error.jpg)\n- [x] vercel 不支持；仅支持Docker化部署\n- [x] 如果前面挂载 `nginx` 请配置 `proxy_set_header   X-Forwarded-For  $remote_addr;`\n- [x] 参数如下: 错误验证3次，只能在10分钟后再验证\n```yml\n# Secret key 注意: 只能拿事英文+数字\nAUTH_SECRET_KEY=my888god\n#爆破：验证次数 注意: 数字 ；nginx 请设置  proxy_set_header   X-Forwarded-For  $remote_addr;\nAUTH_SECRET_ERROR_COUNT=3\n#爆破：验证停留时间 单位分钟 注意: 是数字\nAUTH_SECRET_ERROR_TIME=10\n```\n- [x] 脚本如下\n```shell\ndocker run --name chatgpt-web-midjourney-proxy  -d -p 6015:3002 \\\n-e OPENAI_API_KEY=sk-xxxxx \\\n-e OPENAI_API_BASE_URL=https://api.openai.com  \\\n-e MJ_SERVER=https://172.17.0.1:6013  \\\n-e MJ_API_SECRET=abc123456 \\\n-e API_UPLOADER=1  -v /data/uploads:/app/uploads \\\n-e AUTH_SECRET_KEY=你的英文密码 -e AUTH_SECRET_ERROR_COUNT=3 \\\n-e AUTH_SECRET_ERROR_TIME=10 ydlhero/chatgpt-web-midjourney-proxy\n```\n- \n## License\nMIT © [Dooy](./license)\n\n## 其他\n如果觉得这个项目对您有所帮助，请帮忙点个star 或者捐助我们\n\n[![Star History Chart](https://api.star-history.com/svg?repos=Dooy/chatgpt-web-midjourney-proxy\u0026type=Date)](https://star-history.com/#Dooy/chatgpt-web-midjourney-proxy\u0026Date)\n\n## 捐助\n如果我的开源项目对你有帮助，请考虑通过以下任意一种方式赞助: \n\u003cbr\u003e `付款备注上您的联系方式`\n\u003cdiv style=\"display: flex; flex-wrap: wrap\"\u003e\n    \u003cdiv style=\"width:200px\"\u003e\n        \u003cimg src=\"./docs/wxpay.jpg\"  style=\"width:200px\"\u003e\n        \u003cdiv\u003e微信捐助\u003c/div\u003e\n    \u003c/div\u003e\n    \u003cdiv style=\"width:200px\"\u003e\n        \u003cimg src=\"./docs/alipay.jpg\"  style=\"width:200px\"\u003e \n        \u003cdiv\u003e支付宝捐助\u003c/div\u003e\n    \u003c/div\u003e\n\u003c/div\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDooy%2Fchatgpt-web-midjourney-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDooy%2Fchatgpt-web-midjourney-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDooy%2Fchatgpt-web-midjourney-proxy/lists"}