



2024.8完善版 NineAi-ChatGPT系统源码
Nine AI.ChatGPT是基于ChatGPT开发的一个人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码,写论文等任务。
运行环境分解
-
Node.js 版本:必须大于 16
-
pnpm 版本:必须大于 6
-
MySQL 版本:不低于 5.7
-
Redis:必须安装并运行
目录结构分解
系统由三端独立代码库组成,分别存放于以下目录:
-
chat:用户端前端代码 -
admin:管理端前端代码 -
service:后端服务代码
本地开发分解
三端采用完全统一的命令流程:
-
pnpm install—— 安装全部依赖 -
pnpm dev—— 启动本地开发服务器 -
pnpm build—— 打包生成生产环境代码
启动项目分解
-
分别进入各端目录执行
pnpm i安装依赖。 -
首先启动服务端:
-
进入
service目录,创建.env文件 -
在其中配置测试数据库连接信息及 Redis 配置
-
执行
pnpm dev启动后端服务 -
数据库通过 ORM 映射,启动项目时会自动创建数据库表结构。
-
-
后端启动成功后,分别进入
chat和admin目录执行pnpm dev启动前端项目。
关于授权分解
授权验证模块位置:
src/modules/globalConfig/globalConfig.service.ts
移除授权方法:
-
删除函数
NineAiCheckAuth内部的全部代码 -
移除
onModuleInit生命周期中对NineAiCheckAuth的调用 -
同时移除定时任务:在
src/modules/task/task.service.ts中删除checkauth定时任务的定义与注册
打包路径问题分解
后端服务(service)
-
执行
pnpm build完成打包 -
环境变量文件
.env需要后续自行挂载或创建,源码提供示例文件.env.example -
打包过程会对代码进行混淆,最终部署仅需七个核心文件,其余文件不再需要
用户端前端(chat)
-
打包配置文件为
.env.production(管理端 admin 同理) -
核心变量:
VITE_APP_BASE_URL—— 填写线上后端服务地址 -
若前端与后端分离部署,请务必替换该变量为实际线上地址
管理端前端(admin)
-
修改方式与 chat 完全相同
-
仅需修改线上地址变量,其余配置无需改动
其他文件与常见问题
前端 history 模式刷新 404
由于前端项目使用 HTML5 History 路由模式,刷新页面会导致 404 错误。需要对 Nginx 进行相应配置,将所有请求指向 index.html 以解决该问题。

评论(0)