【开源推荐】Express和Vue3开发的ChatGPT Web带用户中心 源码 安装教程

ChatGPT 2023年9月19日 902

之前给大家推荐了一个带用户中心的ChatGPT Web 的源码,秉着学习的原则,我研究了一下它的安装,下面说一下安装的过程和碰到的问题。

没看过之前文章的,可以点击先看看

【开源推荐】Express和Vue3开发的ChatGPT Web带用户中心 源码 可二开

安装方法

首先是mongodb的安装(大家查找资料即可),这个系统使用的是mongodb作为存储的数据库要注意一点是,创建的数据库和用户名都为 chatgpt,因为作者写死了这两部分,否则会报链接不上的错误。

程序安装

Node

node 需要 ^16 || ^18 || ^19 版本(node >= 14 需要安装 fetch polyfill),使用 nvm 可管理本地多个 node 版本

PNPM

若你没有安装过 pnpm

npm install pnpm -g

后端

进入文件夹 /service 运行以下命令

pnpm install

前端

根目录下运行以下命令

pnpm bootstrap

测试环境运行

后端服务

进入文件夹 /service 运行以下命令

pnpm start

前端网页

根目录下运行以下命令

pnpm dev

环境变量配置

进入 service 目录

# service/.env 打开文件,若无,请将 .env.example 复制后改为 .env,添加以下环境变量

# OpenAI API Key - https://platform.openai.com/overview
OPENAI_API_KEY= 'sk-J3ZM'

# OpenAI API Base URL - https://api.openai.com
OPENAI_API_BASE_URL= http://api.openai.com

# OpenAI API Model - https://platform.openai.com/docs/models
OPENAI_API_MODEL='gpt-3.5-turbo'

# timeout
TIMEOUT_MS=100000

# set `true` to disable OpenAI API debug log
OPENAI_API_DISABLE_DEBUG=

# Rate Limit
MAX_REQUEST_PER_HOUR=

# Auth Rate Limit
AUTH_MAX_REQUEST_PER_MINUTE=5

# Title for site
SITE_TITLE="ChatGpt Web"

# Databse connection string
# MONGODB_URL=mongodb://chatgpt:xxxx@yourip:port
MONGODB_URL=mongodb://chatgpt:123456@127.0.0.1:27017/chatgpt

# Secret key for jwt
# If not empty, will need login
AUTH_SECRET_KEY='qwer123df'

# ----- Only valid after setting AUTH_SECRET_KEY begin ----

# The roon user only email
ROOT_USER='123456@qq.com'

# Password salt 必须填写
PASSWORD_MD5_SALT='123'

# Allow anyone register, Must be turned on, otherwise administrators cannot register, can be turned off later.

REGISTER_ENABLED=true

#发邮件设置
SMTP_HOST='smtp.qq.com'
SMTP_PORT=465
SMTP_TSL=true
SMTP_USERNAME='123456@qq.com'
SMTP_PASSWORD='123456'

上线配置

后端服务打包

复制 service 文件夹到你有 node 服务环境的服务器上。

# 安装
pnpm install

# 打包
pnpm build

# 运行
pnpm prod

PS: 不进行打包,直接在服务器上运行 pnpm start 也可

前端网页

1、修改根目录下 .env 文件中的 VITE_GLOB_API_URL 为你的实际后端接口地址

2、根目录下运行以下命令,然后将 dist 文件夹内的文件复制到你网站服务的根目录下

pnpm build

最后前端打包后生成dist文件夹,然后将 nginx 的配置指到此文件夹即可。

特别技巧

若是想要不用chatgpt的用户名和数据库名,那么需要更改 service/src/storage/mongo.ts下的代码

const dbName = (parsedUrl.pathname && parsedUrl.pathname !== '/') ? parsedUrl.pathname.substring(1) : 'chatgpt'

将chatgpt改为你自定义的数据库名称。

还有一个更好的方法,配置文件中写上数据库(官方给的文档没写)

# MONGODB_URL=mongodb://用户名:密码@链接地址:端口/数据库名称
MONGODB_URL=mongodb://chatgpt:123456@127.0.0.1:27017/chatgpt

很多报错基本都是数据库链接错误,写仔细点不会有问题的。

429问题

估计作者的轮询Key有问题,当你把key填写上后,很快就报429了。

到此就可以将整个项目跑起来了,429的问题,回头看看改改。

扫码或搜索:PHP学习网 微信公众号

发送 T

刷新页面 即可 立即解锁 本站全部文章

PHP学习网-微信公众号
PHP学习网:站内收集的部分资源来源于网络,若侵犯了您的合法权益,请联系我们删除!
分享到:
赞(0)

文章评论

您需要之后才可以评论
0点赞 0评论 收藏 QQ分享 微博分享

PHP学习网

PHP学习网