经常使用 ChatGPT 和 Midjourney 这两个AI产品的,可能有这样的困扰,每次都要分别访问这两个站点还不一定能访问成功。如果有一款工具,可以将其整合起来就好了。
刚好,就有这样一个开源项目,作者借助了ChatGPT Web 和 Midjourney Proxy 两个开源项目,进行了二次开发,开发出了 ChatGPT Web Midjourney Proxy 这个开源项目,以下简称为CWMP。chatgpt web, midjourney, gpts,tts, whisper 一套ui全搞定, 只支持OpenAI或或者第三方接口。它使用了ChatGPT Web项目进行二次开发,又使用了Midjourney Proxy项目提供的 MD API 作为后端而形成的。
ChatGPT Web :是一款用 Express 和 Vue3 搭建的 ChatGPT 演示网页。Midjourney Proxy:是通过Proxy Midjourney 的Discord频道,实现api形式调用AI绘图项目
整体功能和NineAi和本站的提供的99AI二开版差不多又有所不同,核心是前端自行输入KEY自己玩,合适提供给专业团队使用
该项目支持 Docker部署 和 Vercel一键部署、代码安装三种方式,本教程主要针对Docker安装部署。现在这些开源也坑对新手非常不友好,更别说怎么改代码了。还是习惯用宝塔处理,在安装过程中顺便与大家分享一下安装过程出现的问题。该系统研究了一下是没后台的,相当于适用提供一个前端应用,非常合适给团队或者一些公司搭建服务本地使用。同时提供开源代码下载自行宝塔部置(安装。
在部署之前,如果docker原来安装过其他项目而且端口是一样的情况下先停止删除,如果删除或者停止出错,先执行命令,如果端口不一样不用管
docker stop one-api(one-api为项目名称)
再执行下面的安装命令后可以看到docker管理器已经部置好了,三种安装方式在最下方
docker run –name chatgpt-web-midjourney-proxy -d -p 6015:3002 \
-e OPENAI_API_KEY=sk-xxxxx \
-e OPENAI_API_BASE_URL=https://api.openai.com \
-e MJ_SERVER=https://172.17.0.1:6013 \
-e MJ_API_SECRET=abc123456 ydlhero/chatgpt-web-midjourney-proxy
访问 http://ip:6015
这时候需要建立反代网址,需要哪域名访问就设置哪个域名,端口这里修改成对应的6015,比如另一个站点也在docker管理里只是端口不一样,两个项目同时运行,可以再新建一个网址,操作和下面一样,关键点端口不同,如果两个端口一样是有冲突的,换句话讲你想在同一服务器上安装两个一样的系统问题就会很多。
搭建完成就能访问前端
如果使用代码安装,修改相关文字文件src\locales\zh-CN.ts,打开对照修改
中转接口使用教程
如果只使用MJ接口https://mj.cxhao.com 上新增令版,KEY在复制那里复制出来
如果即想使用GPT3.5+GPT4.0+MJ访问 https://api.cxhao.com/上新令牌,KEY在复制那里复制出来
然后粘贴KEY(令牌粘贴至设置那里服务端保存使用即可)
体验了下MJ绘画速度非常快,单图细节支持多种方式,针对MJ接口优势后最大的图片相当快。
体验了下MJ绘画速度非常快,单图细节支持多种方式,针对MJ接口优势后最大的图片相当快。
支持功能如下:
✅ 原chatgpt web 所有功能
✅ chatgpt web 支持自定义api key、base_url
✅ midjourney 文生图
✅ midjourney 垫图+文生图
✅ midjourney 图变 U1到U4 、 V1到V4、重绘等操作
✅ midjourney 支持局部重绘
✅ midjourney 支持1.5倍变焦 2倍变焦
✅ midjourney 支持2倍高清 4倍高清
✅ midjourney 支持左、右、上、下延伸变化
✅ midjourney 同时支持midjourney-proxy 接口 和 midjourney-proxy-plus 接口
✅ midjourney 图生文
✅ 图片使用localforage实现本地存储
✅ 支持midjourney、niji 不同机器人
✅ 支持InsightFace 人脸替换
✅ midjourney 混图
✅ midjourney 获取 seed
✅ dall-e-3 画图
✅ chatgpt 前端选择模型
✅ chatgpt 前端支持自定义模型、上下文对话数、回复数
✅ chatgpt 支持图片上传图片 供gpt-4-vision-preview使用
✅ chatgpt 支持文件后端上传(供给gpt-4-all gpt-4-gizmo-xxx 模型)! 默认是关闭的 打开需要环境变量 API_UPLOADER=1
✅ chatgpt 支持逆向模型 gpt-4-all gpt-4-v gpt-4-gizmo-(gizmo_id)
✅ chatgpt 支持超链模型切换 h
✅ 支持ChatGPT试的超链模型切换
✅ chatgpt 支持 GPTs 多模态
✅ chatgpt 支持 tts whisper
✅ 即时语音识别(浏览器自带语音识别 ASR) v2.15.7以上版本
✅ 支持超链更换设置,适合 one-api 部署聊天
✅ 支持one-api部署聊天
支持自定义服务端api key、base_url:
局部重绘
换脸功能
方式 一、本地部署(或者通过宝塔):
远程安装按顺序执行命令:
git clone https://github.com/Dooy/chatgpt-web-midjourney-proxy
cd chatgpt-web-midjourney-proxy/service
npm install
npm run start#运行后端
回到根目录下
$ npm install
$ npm run dev#运行前端
方式二、宝塔安装
本站下载安装包,上传代码,参照NineAi3.4.0去授权版本ChatGPT宝塔安装详细教程
安装依赖包
pnpm i
项目运行
pnpm start
方式三、Docker 部署项目
前提准备:
已经搭建好 midjourney-proxy 服务,假设端口服务器地址为 https://192.168.0.1:6013
假设 midjourney-proxy 服务 的 API_SECRET 为 abc123
然后通过下面的命令创建Docker镜像并设置接口及密钥,启动服务
- docker run –name chatgpt-web-midjourney-proxy -d -p 6015:3002 \
- -e OPENAI_API_KEY=sk-xxxxx \
- -e OPENAI_API_BASE_URL=https://api.openai.com \
- -e MJ_SERVER=https://172.17.0.1:6013 \
- -e MJ_API_SECRET=abc123456 ydlhero/chatgpt-web-midjourney-proxy
成功后,即可通过访问 http://ip:6015访问,或者增加反代网址访问|(见最前说明)
只需要执行上面命令
如果前面挂载 nginx 请配置 proxy_set_header X-Forwarded-For $remote_addr;
参数如下: 错误验证3次,只能在10分钟后再验证
- # Secret key 注意: 只能拿事英文+数字
- AUTH_SECRET_KEY=my888god
- #爆破:验证次数 注意: 数字 ;nginx 请设置 proxy_set_header X-Forwarded-For $remote_addr;
- AUTH_SECRET_ERROR_COUNT=3
- #爆破:验证停留时间 单位分钟 注意: 是数字
- AUTH_SECRET_ERROR_TIME=10
脚本如下:
- docker run –name chatgpt-web-midjourney-proxy -d -p 6015:3002 \
- -e OPENAI_API_KEY=sk-xxxxx \
- -e OPENAI_API_BASE_URL=https://api.openai.com \
- -e MJ_SERVER=https://172.17.0.1:6013 \
- -e MJ_API_SECRET=abc123456 \
- -e API_UPLOADER=1 -v /data/uploads:/app/uploads \
- -e AUTH_SECRET_KEY=你的英文密码 -e AUTH_SECRET_ERROR_COUNT=3 \
- -e AUTH_SECRET_ERROR_TIME=10 ydlhero/chatgpt-web-midjourney-proxy