智能AI系统ChatGPT系统源码+支持GPT4.0+支持ai绘画(Midjourney)/支持OpenAI GPT全模型+国内AI全模型

news2024/11/23 19:12:41

一、AI创作系统

SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型+国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧!SparkAi程序使用Nestjs和Vue3框架技术,持续集成AI能力到AIGC系统。已支持OpenAI GPT全模型+国内AI全模型+Midjourney绘画池系统!

《SparkAi系统详情及搭建部署文档》:

https://www.yuque.com/yuqueyonghutq9yt2/egy0d0?# https://www.yuque.com/yuqueyonghutq9yt2/egy0d0?# 

AI模型提问

AI绘画

新增Midjourney局部重绘(Vary Region)在线编辑功能

70b0f45bf37b49b6a8939421f1267c20.png

手机移动端

0d183361ca69492aa9d0e6bd99307bbc.png

f02148b9ce694bc4b9a2815cc0ba2ebe.jpeg

1.1 程序核心功能

已支持OpenAI GPT全模型+国内AI全模型+Midjourney绘画池系统!

  1. AI提问:程序已支持GPT3.5,GPT4.0提问、OpenAIGPT全模型+国内AI全模型、支持GPT联网提问

  2. 已支持OpenAIGPT全模型+国内AI全模型,已支持国内AI模型 百度文心一言,支持百度文心4.0版本、微软Azure、阿里云通义千问模型、清华智谱AIChatGLM、科大讯飞星火大模型等、新增支持讯飞星火认知大模型V3.0版本、新增支持腾讯混元大模型

  3. AI绘画:Midjourney绘画(全自定义调参)、Midjourney以图生图、Dall-E2绘画

  4. 新增 Midjourney绘画账号池系统,可实现万级用户高并发

  5. 支持Midjourney局部重绘(Vary Region)

  6. 微信公众号+邮箱+手机号注册登录

  7. 一键智能思维导图生成

  8. 应用广场知识库,支持用户前台自定义添加私密或共享

  9. AI绘画广场(画廊)

  10. 邀请+代理分销模式

  11. 用户每日签到功能

  12. 会话记录同步保存

  13. 支持对接微信官方支付、易支付、码支付、虎皮椒支付等

  14. 其他核心功能

1.2 更新日志

SparkAi最近大版本更新日志:

SparkAi【V3.0】版本已上线!

【V3.1.0】更新功能(10.29更新):

1.新增 Midjourney局部重绘(Vary Region)在线编辑功能

2.新增 Midjourney绘画账号池系统,可实现万级用户高并发

3.支持手机端 Midjourney局部重绘功能(Vary Region 局部重绘)

4.首页AI提问UI更新,侧边栏样式更新,对话框工具更新

5.提问模型:新增支持腾讯混元大模型

6.提问模型:新增支持讯飞星火认知大模型V3.0版本(20231024发布评论超越GPT)

7.提问模型:新增支持百度文心4.0版本(对标OpenAI-GPT4.0)

8.移除后台Midjourney绘画代理配置,将转由绘画池一并处理,优化速度

9.修复MJ绘画单张图片下出现U1-4问题 不能对单张图片操作问题

10.用户端大模型列表点击切换后允许自动关闭,且列表支持滑动选择查看

11.修复开启百度敏感词检测,因为以图生图提示词包含了图片链接地址,百度都检测触发推广敏感词导致无法提交绘图的问题

二、系统演示

演示系统

SparkAi官方演示站:
https://ai.sparkaigf.com
管理后端:

https://ai.sparkaigf.com/sparkai/admin

测试账号:admin、123456

如不能访问请查看《SparkAi系统详情及搭建部署文档》获取最新地址。

三、系统功能模块

3.1 ChatGPT模型提问

支持GPT联网提问

273c43731b544e89a2dddf4c789e9ac2.png

3.2 Prompt应用

3.2.1 Prompt应用

c28134641efe43de837d71ca755d37d1.png

3.2.2 自定义Prompt应用

支持用户自定义Prompt应用

2cb6dc159a164a10a0949baa89415baa.png

3.3 支持Midjourney绘画

  • 支持同步官方图片重新生成指令

  • 同步官方 Vary 指令 单张图片对比加强 Vary(Strong) | Vary(Subtle)

  • 同步官方 Zoom 指令 单张图片无限缩放 Zoom out 2x | Zoom out 1.5x

  • 新增 Midjourney局部重绘(Vary Region)在线编辑功能

文生图

以图生图

2f923c6974574802962a90d161fdecc5.png

3.4 Dall-E2绘画(已移除)

e624a9c2f5ea43ae9926303bcda3c4d3.png

3.5 思维导图生成

a2e09ed69534492d969237e3360cfc9d.png

3.6 AI画廊

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

四、搭建部署教程

以下教程使用宝塔面板搭建

4.1 基础env环境配置

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

  • 授权码授权ip配置

  • 邮件服务配置

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

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

# Redis
REDIS_PORT=6379
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=

# 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版本:>=16.19.1

a871d1741c2f41d6b958c77125d5a594.png

5.1 Node版本

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

  • 切换Node版本为:v16.19.1

7b024939978343ac914baaa8d8619ec8.png

5.2 安装pnpm模块

729df29b970c42c99ad10721f69576dd.png

5.3 安装Redis

1a92226e7d31465b85933c1865a8ef16.png

六、部署跑起来

6.1 新建站点

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

a5aea0d49b5849478ea952c6c02c9dd4.png

6.2 开启HTTPS

6.2.1使用自己的ssl证书

4e5674802d0c4565a92fff88d3f5689a.png

6.2.2 Let's Encrypt 证书申请

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

c9dac158301845aaaa56a694a4918daa.png

6.3 上传系统源码

删除宝塔创建站点生成的原始文件

ea67a0be19334bfd856c207bbd0e7d05.png

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

90f75159cf434e529e387e7242b9af4c.png

6.3.1 配置.env文件

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

c10615067c0c43a5b101633569d7eefa.png

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

37b24e036b2f4330bcab4b0567f9b3b2.png

6.3.2 检查验证Node环境

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

node -v
npm -v
pnpm -v

eaa6adb3f4cc4a939f3471b3f99ab527.png

6.4 启动项目

6.4.1 开启端口

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

5b8b549759f8485eb34b4bb696a47275.png

6.4.2 安装依赖

使用终端切换到网站目录

cd /www/wwwroot/网站目录

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

使用 pnpm i 命令安装依赖

pnpm i

8cda7727b56a4e849854d052d7d038f6.png

6.4.3 启动项目

使用 pnpm start 命令启动项目

pnpm start

b3cce39f6eb14570bd9cae6a58e8e745.png

6.4.4 查看启动日志

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

pm2 log

325148f6c03d410bbeb73d21876137cf.png

6.4.5 添加反向代理

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

b2e1b0b53c7c48c0b8d696312b17eaf7.png

七、使用系统

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

7.1 管理后台

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

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

813255c76c9d460fb9ceaaa0dfbe747b.png

此时我们就安装完成了

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

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

7.3 搭建完成

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

8.1 后台配置

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

https://www.idcyli.com

8.2 系统版本更新

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

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

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

相关文章

交流负载发电机测试

交流负载发电机测试是一种常用的测试方法,用于评估发电机在负载条件下的性能和稳定性。测试过程中需要使用负载设备模拟实际负载,并通过测量电压、电流、功率等参数来评估发电机的输出能力和稳定性。 在进行测试之前,首先需要准备好测试设备和…

30张图详解IP地址网络知识

你们好,我的网工朋友。 IP地址是所有网络初级课程里最先涉及到的技术点,对于IP地址的合理规划是网络设计的重要环节,必须拿捏。 IP地址规划的好坏,影响到网络路由协议算法的效率,影响到网络的性能,影响到网…

短剧出海火爆,Flat Ads独家流量助泛娱乐赛道App迅速获客增长

10月26日,由扬帆出海主办的GICC2023 | 第四届全球互联网产业CEO大会正式圆满落幕,Flat Ads等出海企业应邀参加。 据悉,本届GICC深圳站邀请200CXO行业领袖、300各路优质厂商、1200全球互联网产业代表共聚一堂,聚焦短剧、游戏、泛娱…

最前端|如何使用Plausible实现页面埋点?

目录 一、业务背景 二、业务场景描述 三、解决方案 //如何集成 Plausible ? //如何监控特定功能使用情况? 什么是 MyEventName? //如何向自定义事件传递参数? 一、业务背景 随着公司自研产品的不断发展,对前端页面的监控和…

强力解决使用node版本管理工具 NVM 出现的问题(找不到 node,或者找不到 npm)

强力解决使用node版本管理工具 NVM 出现的问题(找不到 node,或者找不到 npm) node与npm版本对应关系 nvm是好用的Nodejs版本管理工具, 通过它可以方便地在本地调换Node版本。 2020-05-28 Node当前长期稳定版12.17.0,…

适用于Linux桌面歌词应用程序MusixMatch

导读Musixmatch桌面应用程序可用于Linux!不是Linux用户缺少桌面歌词应用程序。包括“即时歌词”和“Lyricfier”,许多开源音乐播放器都会运用某种歌词集成。 但是Musixmatch应用程序与那些有点不同。 Musixmatch的USP是Syncronized歌词 如果您曾经使用…

如何选择高效率的在线分板机主轴?

随着智能移动设备和其他电子3C设备需求的增大,PCB分板机的需要也随之而大增。越来越多的企业开始使用在线分板机来替代传统的手工分板,从而提升了生产效率,提高了产品质量,降低了生产成本。在分板机设备中,高速主轴是关…

Pandas数据预处理Pandas合并数据集在线闯关_头歌实践教学平台

这里写目录标题 第1关 Concat与Append操作第2关 合并与连接第3关 案例:美国各州的统计数据 第1关 Concat与Append操作 任务描述 本关任务:使用read_csv()读取两个csv文件中的数据,将两个数据集合并,将索引设为Ladder列&#xff0…

92. 递归实现指数型枚举

题目 思路 因为有n个数&#xff0c;每个数选或不选都是一种方案&#xff0c;而且要递增输出&#xff0c;那么就标记每个数是否备选&#xff0c;然后判断完n个数以后&#xff0c;就可以输出了 代码 #include<bits/stdc.h> using namespace std; int n; bool f[100] {0…

WEB渲染模式——CSR SSR SSG ISR DPR区别

页面渲染 浏览器渲染页面&#xff0c;根据HTML文档类型声明&#xff08;DOCTYPE&#xff09;解析HTML和CSS&#xff0c;渲染步骤&#xff1a;解析、样式计算、元素布局、绘制、重绘重排。HTML、CSS、JavaScript是网页的三大核心技术。 HTML (Hyper Text Markup Language) 超文…

【沐风老师】3dMax快速平铺纹理插件QuickTiles教程

QuickTiles是3ds max的一个插件&#xff0c;允许您将常规瓷砖纹理转换为交互式纹理&#xff0c;就在mat.editor中。 换言之&#xff0c;您可以根据需要对任何纹理进行修改和重新创建&#xff1a;更改布局、瓷砖大小、格式、颜色、接缝、体积、随机化形状或纹理等等。 这种方法大…

eNsp下如何使用wireshark抓包

文章目录 拓扑图抓包操作 拓扑图 抓包操作 可以通过下图上的指示 来设置 Time列的显示样式。 这里有个缺点就是就是抓取ensp上的虚拟设备上的数据包时的&#xff0c;年月日时间显示的不对。暂时无解决办法。 一般选择 日期和时间&#xff08;日期和时间与当前标准时间对应上时…

集简云平台助力无代码开发,实现平安银行与电商平台、CRM系统的快速连接

无代码开发与平安银行 平安银行是中国内地首家公开上市的全国性股份制银行&#xff0c;经过多年发展&#xff0c;已经在科技引领、综合金融、零售转型等领域形成独特竞争力和鲜明经营特色。近年来&#xff0c;平安银行更是积极拥抱科技&#xff0c;为此&#xff0c;选择了与集…

智慧工地源码 手册文档 app 数据大屏、硬件对接、萤石云

智慧工地解决方案依托计算机技术、物联网、云计算、大数据、人工智能、VR、AR等技术相结合&#xff0c;为工程项目管理提供先进技术手段&#xff0c;构建工地现场智能监控和控制体系&#xff0c;弥补传统方法在监管中的缺陷&#xff0c;最终实现项目对人、机、料、法、环的全方…

CROS错误 403 preflight 预检

预检 403 响应 Response for preflight 403 forbidden 如上图&#xff0c;配置了请求接口一直报错&#xff0c;前端看了没有什么问题&#xff0c;不知道哪里报错了&#xff0c;那么可能是后端没有设置跨域。&#xff08;或者是设置了&#xff0c;但是可能需要换一种方式&#…

C语言每日一题(26)

力扣网 203. 移除链表元素 题目描述 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 思路分析 针对如图的普通情况&#xff0c;不能简单的遍历到对应位置然后进行释放&#xff0c;一方…

基于springboot实现致远汽车租赁平台管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现致远汽车租赁平台管理系统演示 摘要 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统…

bamboo is currently exporting

bamboo每天到11点会自动挂起执行export任务 构建任务会暂停影响研发发布版本 原因是bamboo设置了Scheduled backups 把时间改成凌晨的1点钟

SpringBoot不同环境加载不同配置文件(dev,sit,uat)

目录 一、springboot的profile配置profile多配置文件 二、maven的profiles策略 我们在使用spring的时候&#xff0c;一般都会有不同的环境需要部署&#xff1a;开发环境、测试环境和验收环境&#xff0c;而不同的环境则会有不同的配置&#xff0c;比如数据库ip。解决这个问题&a…

pyqt5的组合式部件制作(二)

接着做 3、为指示器设计合适的模型&#xff1a; 新建MyLamp.py&#xff0c;代码如下&#xff1a; from PyQt5.QtWidgets import QLabelclass MyLamp(QLabel):def __init__(self, parentNone):super().__init__(parent)self.rad Noneself.blink Falseself.normal_style No…