最新ChatGPT程序源码+AI系统+详细图文部署教程/支持GPT4.0/支持Midjourney绘画/Prompt知识库

一、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系统文档 · 语雀

4.4 详细搭建部署教程

  • 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.rhkb.cn/news/112818.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hadoop 集群小文件归档 HAR、小文件优化 Uber 模式

文章目录 小文件归档 HAR小文件优化 Uber 模式 小文件归档 HAR 小文件归档是指将大量小文件合并成较大的文件,从而减少存储开销、元数据管理的开销以及处理时的任务调度开销。 这里我们通过 Hadoop Archive (HAR) 来进行实现,它是一种归档格式&#xf…

【Interaction交互模块】LinearJointDrive线性关节驱动

文章目录 一、预设体位置二、案例:做一个“能拉动的抽屉”三、原理四、交互方式1、碰触2、抓取 一、预设体位置 交互模块——可控制物体——物理关节——线性关节驱动 二、案例:做一个“能拉动的抽屉” 建一个柜子外框,然后拓展“线性关节…

Node.js /webpack DAY6

一、Node.js 入门 1. 什么是 Node.js? 2. 什么是前端工程化? 3. Node.js 为何能执行 JS? 4. Node.js 安装 5. 使用 Node.js 总结 6. fs 模块 - 读写文件 /*** 目标:基于 fs 模块 读写文件内容* 1. 加载 fs 模块对象* 2. 写入文件…

零撸大肉,赛博尔Seppol游戏,无限制闯关打碎片,装备,直接变现项目。

2023年7月10日,在上海外滩酒店—— 由来自硅谷、华尔街的技术先锋,与中国科技翘楚阿里、腾讯的骨干团队联手呈现,区块链元宇宙游戏塞波尔 Seppol于上海精彩亮相路演。 1,栖息之地,宠物可放入栖息之地进行挖矿&#xf…

C#关于WebService中File.Exists()处理远程路径的异常记录

目录 前言方案一打开网站对应的程序池的高级设置按下图步骤设置凭据重启网站若方案一未能解决,请继续尝试方案二👇 方案二从控制面板进入到 凭据管理器为windows凭据添加凭据点击**Windows凭据**,并点击**添加Windows凭据**键入远程路径的地址…

【校招VIP】java语言考点之synchronized和volatile

考点介绍: synchronized和volatile两个关键字也是校招常考点之一。volatile可以禁止进行指令重排。synchronized可作用于一段代码或方法,既可以保证可见性,又能够保证原子性...... 『java语言考点之synchronized和volatile』相关题目及解析…

雅思写作 三小时浓缩学习顾家北 笔记总结(一)

目录 饥饿网翻译100个句子记录 There are some economically deprived communities in large cities. there is no clear link between grouping student by ability and their levels of attainment. young people without tertiary education qualification normally hav…

面试结束后:如何写一封有效的感谢信

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

springboot docker

在Spring Boot中使用Docker可以帮助你将应用程序与其依赖的容器化,并简化部署和管理过程。 当你在Spring Boot中使用Docker时,你的代码不需要特殊的更改。你可以按照通常的方式编写Spring Boot应用程序。 java示例代码,展示了如何编写一个基…

SQLServer审计功能配置

一. SQL Server审计功能介绍 SQL Server审计功能(Audit)是SQL Server 2008之后才有的功能,审计(Audit)用于追踪和记录SQL Server实例,或者单个数据库中发生的事件(Event),审计运作的机制是通过捕获事件(Event)&#x…

RHCE——九、SELinux

SELinux 一、概念1、作用2、SELinux与传统的权限区别 二、SELinux工作原理1、名词解释主体(Subject)目标(Object)策略(Policy)安全上下文(Security Context) 2、文件安全上下文查看1…

springboot使用properties

一、方式1: 1.1.配置类: package cn.zyq.stater.config;import cn.zyq.stater.bean.User4; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework…

第 3 章 栈和队列(顺序栈,算法 3.3)

1. 背景说明: 若迷宫 maze 中存在从入口 start 到出口 end 的通道,则求得一条存放在栈中(从栈底到栈顶),并返回 TRUE;否则返回 FALSE,注意,该解并非最优解, 最优解需要求得最短路径且可能并非…

源码角度看待线程池的执行流程

文章目录 前言一、线程池的相关接口和实现类1.Executor接口2.ExecutorService接口3.AbstractExecutorService接口4.ThreadPoolExecutor 实现类 二、ThreadPoolExecutor源码解析1.Worker内部类2.execute()方法3.addWorker()方法 总结 前言 线程池内部维护了若干个线程&#xff…

C++笔记之静态成员函数可以在类外部访问私有构造函数吗?

C笔记之静态成员函数可以在类外部访问私有构造函数吗? 参考笔记: 1.C笔记之静态成员函数可以在类外部访问私有构造函数吗? 2.C笔记之设计模式:setter函数、依赖注入 3.C笔记之两个类的实例之间传递参数——通过构造函数传递类对象…

Springboot集成Docker并将镜像推送linux服务器

案例使用springboot项目,在IDEA 中集成Docker生成镜像,并将镜像发布到linux服务器 具体步骤如下: 1、Centos7安装Docker 更新系统的软件包列表 sudo yum update安装Docker所需的软件包和依赖项: sudo yum install docker完成…

说说FLINK细粒度滑动窗口如何处理

分析&回答 Flink的窗口机制是其底层核心之一,也是高效流处理的关键。Flink窗口分配的基类是WindowAssigner抽象类,下面的类图示出了Flink能够提供的所有窗口类型。 Flink窗口分为滚动(tumbling)、滑动(sliding&am…

postgresql-子查询

postgresql-子查询 简介派生表IN 操作符ALL 操作符ANY 操作符关联子查询横向子查询EXISTS 操作符 简介 子查询(Subquery)是指嵌套在其他 SELECT、INSERT、UPDATE 以及 DELETE 语句中的 查询语句。 子查询的作用与多表连接查询有点类似,也是为…

NTP时钟同步服务器

目录 一、什么是NTP? 二、计算机时间分类 三、NTP如何工作? 四、NTP时钟同步方式(linux) 五、时间同步实现软件(既是客户端软件也是服务端软件) 六、chrony时钟同步软件介绍 七、/etc/chrony.conf配置文件介…

JVM内存管理、内存分区:堆、方法区、虚拟机栈、本地方法栈、程序计数器

内存管理 内存分区 线程共享 堆 存放实例,字符串常量(直接引用),静态变量,线程分配缓冲区(TLAB线程私有)。垃圾收集器管理的区域 方法区 非堆,和堆相对的概念。存储已被虚拟机加载的…