最新智能AI系统ChatGPT网站程序源码+详细图文搭建教程/支持GPT4/WEB-H5端+微信公众号版源码

news2024/11/20 17:55:15

 一、AI系统

如何搭建部署AI创作ChatGPT系统呢?小编这里写一个详细图文教程吧!SparkAi使用Nestjs和Vue3框架技术,持续集成AI能力到AIGC系统!

1.1 程序核心功能

程序已支持ChatGPT3.5/GPT-4提问、AI绘画、Midjourney绘画(全自定义调参)、Midjourney以图生图、Dall-E2绘画、思维导图生成、知识库(可自定义训练)、AI绘画广场、邀请+代理分销模式、用户每日签到功能、会话记录保存、微信公众号+邮箱+手机号注册登录、后续其他免费版本功能更新。

1.2 最新版本更新日志

版本【V2.6.0】更新功能:

  • 优化key池额度耗尽锁定逻辑(8月26日更新)!
  • 优化MJ绘画连接、优化CSS、部分页面样式修改(8月26日更新)!
  • 增加手机端签到领取免费次数功能、优化后台总计绘画数量逻辑!
  • 新增 MJ 官方图片重新生成指令功能
  • 同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle)
  • 同步官方 Zoom 指令 单张图片无限缩放 Zoom out 2x | Zoom out 1.5x

二、系统演示

https://ai.idcyli.com

三、功能模块

3.1 GPT模型提问

已支持GPT联网提问

3.2 应用工作台

3.2.1 prompt知识库

3.2.2 支持用户自定义知识库

3.3 Midjourney专业绘画

文生图:

以图生图: 

3.4 Dall-E2绘画

3.5 思维导图生成​

3.6 AI绘画广场

四、源码系统

4.1 前台演示站点

  • 系统演示

4.2 SparkAi源码下载

  • 源码

4.3 SparkAi系统文档

  • SparkAi系统文档 · 语雀

五、详细搭建教程

以下教程使用Linux宝塔搭建部署

5.1 基础env环境配置

在代码中我们提供了基础 环境变量文件配置文件env.example,使用前先去掉后缀改为.env文件即可, 我们在env环境配置文件只需要配置如下东西。

  • 授权码、ip配置

  • 邮件服务配置

  • mysql数据库 这三项是基础配置、mysql与授权是必须的、在配置mysql与授权的情况下项目才可以启动成功、邮件服务可以后续追加。

5.2 env.env文件配置

# 服务器ip (必填项)
SPARK_AI_HOST=
# 授权码 (授权码留空,可启动运行体验系统半小时)
SPARK_AI_KEY=

# mysql
DB_HOST=localhost
DB_PORT=3306
DB_USER=数据库用户名
DB_PASS=数据库密码·
DB_DATABASE=数据库名
DB_LOG=false
DB_SYNC=true

#  mailer 邮件服务
MAILER_HOST=smtp.163.com/smtp.qq.com (选择自己的发信服务器地址,网易邮箱或者qq邮箱)
MAILER_PORT=465
MAILER_USER=发信邮箱
MAILER_PASS=邮箱发信密钥
MAILER_FROM=发信邮箱

# Redis
REDIS_PORT=6379
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=

# mj并发数
CONCURRENCY=3

# jwt token
JWT_SECRET=chat-spark
# jwt token 过期时间
JWT_EXPIRESIN=7d
# 接口文档前缀
SWAGGERPREFIX=/docs
# 自定义端口
PORT=9520

六、环境安装

  • Nginx >= 1.19.8

  • MySQL >= 5.7或者MySQL 8.0

  • PHP-7.4

  • PM2管理器 5.5

  • Redis 7.0.11

  • Node版本:>=16.19.1

详细教程:

6.1 确定Node版本

使用PM2切换Node版本(必须

切换Node版本为:v16.19.1

​​​​​​

6.2 安装pnpm模块

6.3 安装Redis

​​​​​​

七、部署跑起来

7.1 新建站点

宝塔 - 网站 - 添加站点

7.2 配置SSL

7.2.1 使用自己的ssl证书,使用HTTPS安装访问

7.2.2 Let's Encrypt 证书申请

如果自己没有证书,可以使用宝塔免费证书,申请Let's Encrypt

​​​​​​

7.3 上传系统源码

7.3.1 上传系统源码

删除原始文件

将程序上传并解压到网站根目录下

​​​​7.3.2 配置.env文件

在宝塔直接双击 .env.example 文件编辑,或在终端vim编辑

配置完成后将文件后缀删掉、文件名字就是 .env

7.4 启动项目

7.4.1 宝塔开启端口

进入宝塔面板安全设置,开启 9520 端口和 3306 端口

7.4.2 安装依赖

在网站根目录下进入ssh终端
使用 pnpm i 安装依赖

7.4.3 启动项目

使用 pnpm start 启动项目

7.4.4 查看启动日志

输入 pm2 log 查看详细日志、看到下图表示成功!

​​​​​​

7.4.5 设置反向代理

添加 9520 端口反向代理,宝塔安全需要开启该端口,不然无法访问

八、测试使用系统

部署完成!此时通过域名即可访问SparkAi系统了!

8.1 管理后台

默认前台地址为域名地址 默认后台地址则为:域名地址/sparkai/admin

默认超级管理员账号是 super spark123

此时我们就安装完成了!​

8.2 访问测试系统

感谢观看,教程完成!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/961534.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL高阶语句(三)

一、NULL值 在 SQL 语句使用过程中,经常会碰到 NULL 这几个字符。通常使用 NULL 来表示缺失 的值,也就是在表中该字段是没有值的。如果在创建表时,限制某些字段不为空,则可以使用 NOT NULL 关键字,不使用则默认可以为空…

Vue中过滤器如何使用?

过滤器是对即将显示的数据做进⼀步的筛选处理,然后进⾏显示,值得注意的是过滤器并没有改变原来 的数据,只是在原数据的基础上产⽣新的数据。过滤器分全局过滤器和本地过滤器(局部过滤器)。 目录 全局过滤器 本地过滤器…

Python之父加入微软三年后,Python嵌入Excel!

近日,微软传发布消息,Python被嵌入Excel,从此Excel里可以平民化地进行机器学习了。只要直接在单元格里输入“PY”,回车,调出Python,马上可以轻松实现数据清理、预测分析、可视化等等等等任务,甚…

好马配好鞍:Linux Kernel 4.12 正式发布

Linus Torvalds 在内核邮件列表上宣布释出 Linux 4.12,Linux 4.12 的主要特性包括: BFQ 和 Kyber block I/O 调度器,livepatch 改用混合一致性模型,信任的执行环境框架,epoll 加入 busy poll 支持等等,其它…

从零开始,探索C语言中的字符串

字符串 1. 前言2. 预备知识2.1 字符2.2 字符数组 3. 什么是字符串4. \04.1 \0是什么4.2 \0的作用4.2.1 打印字符串4.2.2 求字符串长度 1. 前言 大家好,我是努力学习游泳的鱼。你已经学会了如何使用变量和常量,也知道了字符的概念。但是你可能还不了解由…

2023_Spark_实验四:SCALA基础

一、在IDEA中执行以下语句 或者用windows徽标R 输入cmd 进入命令提示符 输入scala直接进入编写界面 1、Scala的常用数据类型 注意:在Scala中,任何数据都是对象。例如: scala> 1 res0: Int 1scala> 1.toString res1: String 1scala…

11 模型选择 + 过拟合和欠拟合

训练集:用于训练权重参数 验证集:用来调参,评价模型的好坏,选择合适的超参数 测试集:只用一次,检验泛化性能,实际场景下的数据 非大数据集通常使用K-折交叉验证 K-折交叉验证 一个数据集分成…

云原生Kubernetes:二进制部署K8S多Master架构(三)

目录 一、理论 1.K8S多Master架构 2.配置master02 3.master02 节点部署 4.负载均衡部署 二、实验 1.环境 2.配置master02 3.master02 节点部署 4.负载均衡部署 三、总结 一、理论 1.K8S多Master架构 (1) 架构 2.配置master02 (1)环境 关闭防…

Docker:自定义镜像

(总结自b站黑马程序员课程) 环环相扣,跳过部分章节和知识点是不可取的。 一、镜像结构 镜像是分层结构,每一层称为一个Layer。 ①BaseImage层:包含基本的系统函数库、环境变量、文件系统。 ②Entrypoint&#xff1…

Vue在表格中拿到该行信息的方式(作用域插槽-#default-scope-解决按钮与行点击的顺序问题)

遇到的问题 在做表格的时候,表格是封装好了的,用于展示数据。如果想给单行增加按钮,可以单独写一列存放按钮,最基本的需求是,点击按钮后要拿到数据然后发起请求。 且Vue的element-plus,当我们点击按钮之后…

python二级例题

请编写程序,生成随机密码。具体要求如下:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ (1)使用 rand…

XSS漏洞及分析

目录 1.什么是xss漏洞 1)存储型XSS漏洞 2)反射型XSS漏洞 3)DOM型XSS漏洞 2.什么是domcobble破环 3.案例一 1)例题链接 2)代码展示 3)例题分析 4.案例二 1)例题链接 2)代…

jvm-堆

1.堆的核心概念 一个jvm实例只存在一个堆内存,堆也是java内存管理核心区域 java堆区在jvm启动的时候即被创建,其空间大小就确定了,是jvm管理最大的一块内存空间; 堆可以处于物理上不连续的内存空间,但在逻辑上它应该被…

Linux gdb调式的原理

文章目录 一、原理分析二、dmoe测试2.1 hello.s2.2 demo演示 参考资料 一、原理分析 #include <sys/ptrace.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> #include <…

使用VBA快速比对数据

实例需求&#xff1a;第一行是全系列数据集合&#xff0c;现在需要对比第一行数据&#xff0c;查找第2行数据中缺失的数字&#xff0c;保存在第3行中。 具备VBA初步使用经验的同学&#xff0c;都可以使用双重循环实现这个需求&#xff0c;这里给大家提供另一种实现思路&#x…

写的一款简易的热点词汇记录工具

项目需要对用户提交的附件、文章、搜索框内容等做热词分析。如下图&#xff1a; 公司有大数据团队。本着不麻烦别人就不麻烦别人的原则&#xff0c;写了一款简易的记录工具&#xff0c;原理也简单&#xff0c;手工在业务插入锚点&#xff0c;用分词器分好词&#xff0c;排掉字…

阿晨的运维笔记 | CentOS部署Docker

使用yum安装 # step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # Step 3: 更新并安装 …

使用VBA快速关闭应用程序进程

使用VBA进行开发时&#xff0c;如果需要关闭其他Office应用程序&#xff0c;那么通常可以使用GetObject的方式获取该应用程序的引用&#xff0c;然后再关闭&#xff0c;有时需要重复多次以关闭多进程。如果希望关闭的应用程序并非Office组件&#xff0c;那么GetObject方式有时就…

裸露土方智能识别算法 python

裸露土方智能识别算法通过opencvpython网络模型框架算法&#xff0c;裸露土方智能识别算法能够准确识别现场土堆的裸露情况&#xff0c;并对超过40%部分裸露的土堆进行抓拍预警。此次算法用到的Python是一种由Guido van Rossum开发的通用编程语言&#xff0c;它很快就变得非常流…

NOR型flash vs NAND型flash

FLASH是一种存储芯片&#xff0c;全名叫Flash EEPROM Memory&#xff0c;通过程序可以修改数据&#xff0c;即平时所说的“闪存”。 闪存可以在软件的控制下写入和擦写数据。其存储空间被分割成相对较大的可擦除单元&#xff0c;成为擦除块&#xff08;erase block&#xff09…