如何通过开源项目一键部署属于自己的 ChatGPT Web 站点
ChatGPT
已经火遍全球好几个月了,了不起前面也给大家分享过好多种 ChatGPT
的玩法,如果到现在你还没有玩过的话,只能说太落后了。
了不起最近在逛 Github
的时候发现了一个很不错的开源产品 ChatGPT-Next-Web
,目前 Star
和 Fork
的数量都非常高,可见这款产品是很受人喜欢的。完整的项目地址我放在下面了,感兴趣的小伙伴待会记得去看一看。
通过官方使用文档,我们可以看到这个产品有如下特点
- 在 1 分钟内使用
Vercel
免费一键部署 - 完整的
Markdown
支持:LaTex
公式、Mermaid
流程图、代码高亮等等 - 精心设计的
UI
,响应式设计,支持深色模式,支持PWA
- 极快的首屏加载速度(~100kb),支持流式响应
- 隐私安全,所有数据保存在用户浏览器本地
- 预制角色功能(面具),方便地创建、分享和调试你的个性化对话
- 海量的内置
prompt
列表,来自中文和英文 - 自动压缩上下文聊天记录,在节省
Token
的同时支持超长对话 - 多国语言支持:
English
, 简体中文, 繁体中文, 日本語,Español
,Italiano
,Türkçe
,Deutsch
,Tiếng Việt
,Русский
,Čeština
- 拥有自己的域名?好上加好,绑定后即可在任何地方无障碍快速访问
部署
这个产品的部署有很多中方式,最简单的一种就是直接 Fork
项目,然后通过Vercel
一键部署,在部署的时候我们设置好自己的 API KEY
和一个授权密码即可。API KEY
是用来访问 OpenAI
服务的,授权密码是为了防止账号被别人滥用,所以通过密码来拦截一下,只有有授权密码的人才能使用。
-
首先我们要先
Fork
项目的代码到自己的Github
账号下,Fork
后的仓库名称可以修改也可以保持一致; -
然后我们通过点击
Readme
里面的depoy
按钮,会自动跳转到Vercel
中;- 这里选择我们刚刚克隆的资源库
然后在环境变量中设置好下面的环境变量,产品本身还提供了BASE_URL
、OPENAI_ORG_ID
、HIDE_USER_API_KEY
和DISABLE_GPT4
环境变量。
-
BASE_URL
: 这个是用来进行代理转发了,因为国内的服务器是无法访问OpenAI
接口服务的;当把服务部署在国内的时候就需要设置,不然会被封号,如果是用国外的服务器就可以不用设置; -
HIDE_USER_API_KEY
:这个环境变量是用来控制是否运行用户在产品里面使用自己的API KEY
,用户如果使用了自己的API KEY
就不会使用上面服务部署时候设置的API KEY
了,但是有时候并不希望自己部署的服务被别人绕过访问密码进行使用,这个时候就可以设置这个环境变量; -
DISABLE_GPT4
:这个环境变量是用来禁止使用GPT4
模型的,因为GPT4
模型的费用较高,避免被滥用;
使用
说了这么多,先看看这个产品长什么样子,了不起部署了一个给大伙看看,聊天界面如下所示,设置了自己的 API KEY
或者访问密码后就可以进行正常的聊天了。回答的响应也是支持打字机模式的。
点击左下角设置按钮后,可以配置访问密码和一些个性化设置,这里的设置是全局的设置。
通过面具功能我们可以使用内置的很多角色场景,可以定义自己的面具,根据自己的情况进行设置。
有兴趣的小伙伴也可以进行一些二次开发,比如了不起这边就基于主干分支又拉取了新分支,然后接入了 DALL-E AI
绘画功能,可以看到效果还是可以的。
写在最后
可能看到这里有很多小伙伴会说,现在官方都出 APP
了,直接下载就能使用,为什么还要自己搞这个。
其实主要看怎么看待这个问题吧,官方 APP
固然很好,但是使用的时候总得需要魔法和解决账号,而且上班也不能一直用手机和挂梯子,所以有了这个还是很方便的。
另外这个项目目前还在接入其他家的模型,后期的能力会更多,不单单只支持 OpenAI
;当然更主要的还是我们通过对开源项目的研究和学习来提升自身的技能,毕竟好的项目是值得学习的。
最后这个特别适合一些公司内部搭建一下,然后让员工使用,也适合搭建一个分享给朋友小圈子里面使用。
项目地址:https://github.com/Yidadaa/ChatGPT-Next-Web