最新AI系统ChatGPT网站H5系统源码,支持Midjourney绘画

news2024/12/26 11:58:37

一、前言

SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型+国内AI全模型。本期针对源码系统整体测试下来非常完美,那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧。已支持GPT语音对话、GPT-4-Turbo模型、DALL-E3文生图、GPT-4-1106-Preview多模态模型。支持GPT-4图片对话能力上传图片,ChatFile文档对话总结、Midjourney绘画动态全功能。

《SparkAI系统文档》

https://bx5gkpqv57j.feishu.cn/docx/EOWUdQ04no9PoBxyp6Ecg3AAnhf

系统架构技术栈

  • 前端:Vite4 + Vue3 + TS + Naive-UI

  • 管理端:Vite4 + Vue3 + Element-Plus

  • 服务端:Nodejs + NestJs

  • 数据库:=Mysql5.7 + Redis

  • 额外数据存储:阿里云oss | 腾讯云cos | chevereto图床 任选其一

①新增OpenAI的TTS语音对话功能

支持电脑PC浏览器和手机端使用(调整用户端语音交互,语音输入则语音回复,文本输入则文本回复)

②ChatFile文档对话总结 

③DALL-E3文生图(支持直接对话绘画)

④新增已支持GPT-4图片对话能力(上传图片并识图理解对话)

1.1AI模型提问

1.2人工智能AI绘画

  • 支持同步官方图片重新生成指令
  • 支持绘画过程中实时预览缩略图以及同步实时进度显示
  • 支持Midjourney局部重绘(Vary Region)在线编辑功能
  • 支持同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle)
  • 支持绘画Pan调整:⬆️上、⬇️下、⬅️左、➡️右全方向偏移调整图片
  • 支持绘画提升功能:⏫Upscale(Creative)、⏫Upscale(Subtle)、⏫Upscale(4x)、⏫Upscale(2x)等图片调整动作
  • 支持同步MJ图片外延、图片放大、自定义缩放功能: Zoom Out 1.5x、 Zoom Out 2x、↔️Make Square
  • 支持MJ最新V6 Beta绘画模型(V6 Beta模型:能够处理更长的提示词,人物效果更加真实,构图、色调、光影更加细腻)

移动端页面:

1.1 程序核心功能

已支持 OpenAI GPT全模型 + 国内AI全模型 + 绘画池系统 + MJ局部编辑重绘功能+OpenAI TTS语音对话功能 + 文档对话总结功能 + Midjourney绘画动态全功能!

  • AI提问:程序已支持GPT3.5,GPT4.0提问、OpenAIGPT全模型+国内AI全模型、支持GPT联网提问
  • 已支持OpenAIGPT全模型+国内AI全模型,已支持国内AI模型 百度文心一言、微软Azure、阿里云通义千问模型、清华智谱AIChatGLM、科大讯飞星火大模型、腾讯混元大模型等
  • ChatFile文档上传对话功能以及总结对话
  • 新增知识库接入(对接百度千帆知识库),用户端动态显示知识库插件并通过插件的方式选择与知识库对话,可自定义训练内容回答和文档总结,上传文档作为知识库内容用于特定场景对话回答,比如企业文化规章制度、产品说明文档、客服等等各行业知识库等
  • 新增支持MJ最新V6绘画模型(V6模型:能够处理更长的提示词,人物效果更加真实,构图、色调、光影更加细腻)
  • AI绘画:Midjourney绘画(全自定义调参)、Midjourney以图生图、Dall-E3绘画
  • Midjourney绘画动态全功能、绘画过程中实时预览缩略图以及同步实时进度显示
  • 支持最新GPT-4多模态模型、OpenAI GPT-4-Turbo-With-Vision-128K模型
  • 已支持GPT-4图片对话能力(上传图片并识图理解对话)可同时支持5张图同时上传对话
  • 对话插件系统,后续逐步增加插件功能,扩展AI能力
  • 新增KEY支持单独配置消耗费率,比如GPT4-32K比GPT4成本更高应该消耗更多的额度次数
  • 微信公众号+邮箱+手机号注册登录
  • 一键智能思维导图生成
  • 应用广场,支持用户前台自定义添加私密或共享
  • AI绘画广场(画廊)
  • 邀请+代理分销模式、用户每日签到功能、会话记录同步保存
  • 支持对接微信官方支付、易支付、码支付、虎皮椒支付等,自定义聚合会员套餐
  • 其他核心功能、后续其他免费版本功能更新

1.2 更新日志

【V5.0.0】更新功能(2024.01.18号更新)

  1. 重构Midjourney绘画功能,新增支持MJ动态全功能:

  • 新增支持绘画Pan调整:上、下、左、右全方向偏移调整图片

  • 新增支持绘画提升功能:Upscale(Creative)、Upscale(Subtle)、Upscale(4x)、Upscale(2x)等图片调整动作

  • 新增支持同步MJ图片外延、图片放大、自定义缩放功能:Zoom Out 1.5x、Zoom Out 2x、Make Square

2. 新增绘画过程中实时预览缩略图以及同步实时进度显示

3. 调整按钮为根据当前图片状态全动态显示,兼容未来MJ官方可能新增的功能

4. 新增绘制命令显示,绘画状态跟踪、连续大量绘画时方便追踪串联上下级

5. 修复适配MJ官方更新导致V5版本局部重绘功能失效的问题

6. 新增PC浏览器功能菜单栏默认名称显示、调整前端UI主题为紫色以及UI美化、管理后台菜单栏UI优化

7. 调整应用工作台为对话模式,支持持续使用

8. 调整单用户可以同时进行5个任务

9. 优化提交绘画时检查是否有返回错误,避免空等超时;优化绘图失败时,可能未退还余额的问题

10. 优化PDF文档总结对话上传文档时校验额度并扣费,避免恶意上传;上传失败消息提示

11. 优化拉黑和锁定用户时强制用户登出

二、系统模块演示

快速体验

官方演示站:

  • 系统用户端:https://ai.sparkaigf.com
  • 管理后端:https://ai.sparkaigf.com/sparkai/admin
  • 测试账号密码:admin 123456

三、系统功能模块

3.1AI提问

3.2Prompt应用

3.2.1Prompt应用

3.2.2自定义Prompt应用

支持用户自定义创建Prompt应用

3.3 支持Midjourney绘画

3.3.2文生图

3.3.2以图生图

3.4Dall-E3绘画

可直接对话文生图

3.5智能思维导图生成

3.6AI画廊

3.7系统后台管理系统

其他和后台页面太多功能,就不展示了,直接访问演示站点和演示后台。 

四、搭建部署教程

4.1基础env环境配置

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

  • 授权码授权ip配置

  • 邮件服务配置

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

4.2env文件代码

# 服务器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
MAILER_PORT=465
MAILER_USER=发信邮箱
MAILER_PASS=邮箱发信密钥
MAILER_FROM=发信邮箱

# Redis
REDIS_PORT=6379
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=
REDIS_DB=0

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

五、环境安装

前置条件:

  1. 国内或者海外服务器均可,最低配置2H2G起,建议2H4G甚至更高

  2. 宝塔安装成功

所需环境:

  • Nginx >= 1.19.8
  • MySQL >= 5.7或者MySQL 8.0
  • PHP-7.4(非系统需要环境)
  • PM2管理器 5.5
  • Redis 7.0.11
  • Node版本:>=v16.14.1

注意1:

使用mysql8.0版本,需要重置root密码才能创建数据库

注意2:

同步服务器端口刀宝塔运维面板(重要)

5.1Node版本

使用PM2切换Node版本(必须)

切换Node版本为:v16.19.1(大于v16.14.1)

5.2安装pnpm模块

如果安装不上淘宝源的ssl证书2024.1.22过期了,可能无法安装,切换为官方源,单独安装pnpm模块

5.2.1先设置npm为官方源

npm config set registry https://registry.npmjs.org/

5.2.2单独安装pnpm

npm install -g pnpm

5.3安装Redis

六、部署跑起来

6.1新建站点

进入宝塔 - > 网站 -> 添加站点

6.2开启HTTPS

6.2.1使用自己的ssl证书

6.2.2Let's Encrypt 证书申请

如果没有证书,就使用宝塔提供免费证书,申请 Let's Encrypt

6.3上传系统源码

删除宝塔创建站点生成的默认文件

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

6.3.1配置.env文件

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

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

6.3.2 检查验证Node相关环境

此时再次打开终端、确定我们需要是否有node相关环境

node -v
npm -v
pnpm -v

6.4启动项目

6.4.1开启端口

宝塔面板安全开启 9520 端口和 3306 端口

6.4.2安装依赖

使用终端切换到网站目录

cd /www/wwwroot/网站目录

或直接在网站根目录下输入ssh终端

使用 pnpm i 命令安装依赖

pnpm i

6.4.3启动项目

使用 pnpm start 命令启动项目

pnpm start

6.4.4查看启动日志

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

pm2 log

6.4.5添加反向代理

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

七、使用系统

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

7.1管理后台

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

https://域名地址/sparkai/admin

默认超级管理员账号为:

super ,spark123

7.2修改超级管理员默认密码

登录后,请先修改超级管理员默认密码

7.3搭建完成

八、后台配置&系统版本更新

8.1后台配置

系统配置教程和其他教程请前往系统详情部署文档或博客原教程。

https://www.idcyli.com

8.2系统版本更新

系统版本更新教程请前往系统详情部署文档或博客原教程。

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

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

相关文章

《互联网的世界》第四讲-拥塞控制与编码

需要澄清的一个误区是,拥塞绝不是发送的数据量太大导致,而是数据在极短的时间段内到达了同一个地方以至于超过了网络处理容量导致,拥塞的成因一定要考虑时间因素。换句话说,拥塞由大突发导致。 只要 pacing,再多的数据…

MongoDB开启事务

MongoDB开启事务 配置单节点。到路径C:\Program Files\MongoDB\Server\4.0\bin 使用记事本以管理员权限打开文件mongod.cfg添加如下配置: replication:replSetName: rs02. 重启MongoDB服务 3. 重启后执行命令 rs.initiate()

Python采集学习笔记-request的get请求和post请求

使用http://httpbin.org测试,一个简单的 HTTP 请求和响应服务。(需联网)1.导入requests包 import requests 2.测试get请求 url http://httpbin.org/get par {key1: value1, key2: value2} # 不带参数请求 r1 requests.get(url) # 带参数请求 r2 requests.get(url, paramspa…

数据库管理-第158期 Oracle Vector DB AI-09(20240304)

数据库管理158期 2024-03-04 数据库管理-第158期 Oracle Vector DB & AI-09(20240304)1 创建示例表2 添加过滤条件的向量近似查询示例1示例2示例3示例4示例5示例6示例7 总结 数据库管理-第158期 Oracle Vector DB & AI-09(20240304&a…

怎么采集GBK或GB2312等特殊字符编码的网站数据

如果要采集的网站是GBK或GB2312等特殊字符编码,采集结果可能是一堆看不懂的文字或乱码,无法使用。 通常网页文章采集工具有字符编码选项,默认是UTF-8(现在大部分网站都是),改选为GBK或GB2312字符编码即可&…

无人机/飞控--ArduPilot、PX4学习历程记录(1)

本篇博客用来记录个人学习记录,存放各种文章链接、视频链接、学习历程、实验过程和结果等等.... 最近在整无人机项目,接触一下从来没有接触过的飞控...(听着就头晕),本人纯小白。 目录 PX4、Pixhawk、APM、ArduPilot、Dronecode Dronekit…

【ArcPy】游标访问几何数据

访问质心坐标相关数据 结果展示 代码 import arcpy shppath r"C:\Users\admin\Desktop\excelfile\a2.shp" with arcpy.da.SearchCursor(shppath, ["SHAPE","SHAPEXY","SHAPETRUECENTROID","SHAPEX","SHAPEY",&q…

【Mybatis】批量映射优化 分页插件PageHelper 逆向工程插件MybatisX

文章目录 一、Mapper批量映射优化二、插件和分页插件PageHelper2.1 插件机制和PageHelper插件介绍2.2 PageHelper插件使用 三、逆向工程和MybatisX插件3.1 ORM思维介绍3.2 逆向工程3.3 逆向工程插件MyBatisX使用 总结 一、Mapper批量映射优化 需求: Mapper 配置文件很多时&…

高精准无人机激光雷达标定板

无人机激光雷达标定板是一种用于校准无人机激光雷达系统的工具,它可以帮助无人机获取更准确、更可靠的数据,从而提高无人机的导航精度和自主控制能力。本文将从无人机激光雷达标定板的基本概念、作用、应用领域、市场现状和发展趋势等方面进行介绍。 一…

LeetCode 1976.到达目的地的方案数:单源最短路的Dijkstra算法

【LetMeFly】1976.到达目的地的方案数:单源最短路的Dijkstra算法 力扣题目链接:https://leetcode.cn/problems/number-of-ways-to-arrive-at-destination/ 你在一个城市里,城市由 n 个路口组成,路口编号为 0 到 n - 1 &#xff…

【音视频开发好书推荐1】《RTC程序设计:实时音视频权威指南》

1、WebRTC概述 WebRTC(Web Real-Time Communication)是一个由Google发起的实时音视频通讯C开源库,其提供了音视频采集、编码、网络传输,解码显示等一整套音视频解决方案,我们可以通过该开源库快速地构建出一个音视频通…

12-Linux部署Zookeeper集群

Linux部署Zookeeper集群 简介 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。…

设计模式:六大原则 ③

一、六大设计原则 🍠 开闭原则 (Open Close Principle) 💌 对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易…

4步教你完成一篇让人挑不出毛病的产品需求文档!

“需求”这个词是产品经理工作中的常客,产品需求文档也贯穿于整个产品经理的日常工作中,本周小编将通过什么是产品需求文档,产品需求文档的作用、如何写好产品需求文档等方面分享如何写出一篇让你挑不出毛病的PRD,让需求文档助力产…

光分路器概述

光分路器主要有两种 技术: ㈠平面波导型光分路器(PLC Splitter) PLC分路器的封装是指将平面波导分路器上的各个导光通路(即波导通路)与光纤阵列中的光纤一一对准,然后用特定的胶(如环氧胶)将其粘合在一起…

计算机系统中的文件系统梳理

看之前,大家动动小手点个关注,谢谢。 原文地址:计算机系统中的文件系统梳理 - Pleasure的博客 下面是正文内容: 前言 这是一篇笔记 我之所以要选择这个话题,是因为前几天在对TF卡进行格式化的时候遇到了问题。有些专…

每日一练 | 华为认证真题练习Day192

1、下面是路由器RTB的部分输出信息,关于输出信息描迷错误的是: A. 接口上动态加入的组播组个数是1。 B. 加入的组播组地址是225.1.1.2 C. DISPLAY IGMP GROUP命令用来查看IGMP组播组信息,包括通过成员报告动态加入的组播组和通过命令行静态加入的组播组…

抖音视频下载软件|视频批量采集工具

便捷操作,高效采集 在快节奏的数字化时代,我们的视频下载软件提供了简单便捷的操作流程,让用户能够高效地采集所需视频内容。用户只需输入关键词并点击开始抓取,系统会自动搜索指定关键词下的抖音视频数据,并将待解析视…

2024年软考考试安排和报名时间出来了!有重大变化!

软考办2024年软考考试安排终于发布了!变化很大!信息系统项目管理师上半年考、系统集成项目管理工程师下半年考。很多科目一年只考一次了! 温馨提示: 1、目前这个文件,软考办官网还未发布,但是陕西软考办官方已经发布了2024年考试安排&…

kafka查看消息两种方式(命令行和软件)+另附发送消息方式

1、命令行方式 ①找到kafka安装文件夹 ②执行命令 #指定offset为指定时间作为消息起始位置 kafka-consumer-groups.sh \ --bootstrap-server 20.2.246.116:9092 \ --group group_1 \ --topic lanxin_qiao \ --reset-offsets \ --to-datetime 2023-07-19T01:00:00.000 \ -exe…