2024.11月最新智能问答AI创作系统源码,GPT4.0多模态模型+AI换脸+AI智能体GPTs应用+AI绘画(Midjourney)+详细搭建部署教程
一、前言
SparkAi创作系统是一款基于ChatGPT和Midjourney开发的智能问答和绘画系统,提供一站式 AI B/C 端解决方案,AI大模型提问、AI绘画、专业版AI视频生成、文档分析、多模态识图理解、TTS & 语音识别对话、AI换脸、支持AI智能体应用(支持GPTs应用+Prompt自定义预设应用)、插件系统、AI音乐生成、一站式系统。该系统兼容OpenAI-GPT全模型及国内所有AI模型,具备GPT-4大模型支持、联网提问、DALL-E3文本生成图像、联网搜提问、思维导图、会员套餐、分销系统以及Midjourney绘画动态全功能等,提供AI换脸、图像混合、局部编辑重绘等强大功能,为用户带来丰富的智能创作和互动体验。
系统介绍文档
《SparkAI系统介绍文档 - 渐进式AIGC系统》
二、功能模块介绍
1. 使用 Nodejs + NestJs 服务端渲染技术, 支持高并发(万级甚至千万级用户同时请求使用);提供更高的可用性和稳定性。
2. 支持宝塔常规部署和Decker一键部署方式,所有对接配置均可在后台界面上完成。
3. 支持OpenAI官方API + One API 等中转对接使用(即支持OpenAI全模型、三方大模型、国内全模型);支持 OpenAI / Azure OpenAI / Anthropic Claude / Google Gemini / Midjourney / 讯飞星火 / 百川 AI / Moonshot / 智谱 ChatGLM / 通义千问 / 云雀大模型 / 腾讯混元 / 360 智脑等模型, 适配 LocalAI / Ollama 等模型 (LLaMa / RWKV / SDXL ),支持openai发布最新gpt-4o大模型对接使用.....
4. 自定义模型对接系统:所有模型走OpenAI的输入格式,当OpenAI发布新的语言模型,可后台第一时间添加,无须系统每次开发对接才能使用!同理支持对接了其他三方模型的中转系统,即支持OpenAI全模型、三方大模型、国内大模型 最新发布模型快速可用。对话模型自定义分类、自定义名称自定义排序、以及部分功能自定义。
5.AI视频生成独立功能,支持文生视频/图生视频(最新新增)
6. 支持任何 OpenAI 格式中转API, 自研渠道均衡负载和分配算法, 支持多渠道高并发调用管理, 支持多 API Key 轮询! (优先级/权重/状态管理)。
7. 对话会话隔离、云端存储、支持多设备共享数据!
8. 多模态模型支持: 识图、文档分析支持。支持自定义对话模型开启多模态支持。
9. 支持联网模式、可对模型进行扩展搜索当前网络实时内容总结。
10. 支持AI智能体应用:GPTs应用+Prompt自定义预设应用;GPTS:支持GPTS后台自定义添加、也可以全站搜索 = 官方搜索。
11. 语音识别 & TTS , 支持 OpenAI / Azure 等语音识别 & TTS 模型,支持 Whisper & TTS 格式中转;支持TTS对话输入回复模式。
12. 支持 Midjourney全功能, 支持 Imagine / Upscale / Vary / Zoom Out 等众多功能, 支持 Seed 获取。支持 中转API / 支持局部重绘 (Vary Region)等等。
13. 专业绘画支持文生图、图生图、垫图混图、角色一致参考图、风格一致参考图生成等、支持AI换脸、支持混合图片。
14. Dall-E-2/3绘画支持、支持所有参数并享有单独模块。
15. 强大 Markdown 语法支持 (支持 代码高亮 / LaTeX 公式 / Mermaid 思维导图 / 图表绘制), 支持集成对话绘图模型 (DALL-E / Stable Diffusion / Midjourney 等)。
16. 开箱即用的文档解析服务, 支持 Pdf / Docx / Xlsx / 音频 / 图片等文件类型解析。
17. 存储系统:支持本机、阿里云OSS、腾讯云cos、Chevereto图床多种类型。
18. 会员系统: 提供普通模型积分、高级普通模型积分、绘画积分三种货币类型、支持各类商品自定义扣费模式与额度。支持自定义模型扣除费用类型、多种计费方式:按时间限制、无时间限制、自定义组合套餐设置 (免费 / 积分(次数)扣费 计费)。
19. 支持官方微信支持、易支付、码支付、虎皮椒支付等支付方式, 支持同步检查订单状态, 支持订单搜索和管理。
20. 商城系统:自定义商品套餐、可自定义生成永久套餐、限时套餐。
21. 签到系统: 支持配置每日签到赠送不同额度的奖励。
22. 访客系统: 支持不登录使用部分内容、可游客模式体验站内功能。
23. 分销系统:支持 A + B 分销模式、后台可自定义分销提成额度、可对单独用户单独设置。支持设置提现门槛选项,支持用户多种提现方式选择(支付宝、微信、银行卡等)。
24. 卡密系统:支持批量生产卡密供用户兑换、用户端可兑换卡密或三方卡网购买支持完备卡密兑换码体系, 支持自定义点数, 支持批量生成和卡密兑换码管理, 支持卡密兑换码查看领取用户 / 创建时间 / 领取时间等信息;删除卡密兑换码等功能。
25. 登录系统:支持 邮箱 | 手机短信 | 微信扫码 等不同登录注册方式供选择。 26. 插件系统开放、内部支持各类插件并会持续开发更多插件。
27. 多端支持,自适应布局、适配PC、移动端、平板等设备。支持 Web / PWA / App / 小程序(后续开发), UI 移动端适配, 支持明暗主题切换, 支持 Windows / MacOS / Linux / Android / iOS App。
28. 专业站点管理系统, 支持自定义配置网站 LOGO / 站点名称 / 页脚 / 百度统计/ AI名称 / 版权信息/ 联系方式 / 站点公告 / 提示欢迎语等多种内容等多种内容;支持设置用户初始点数, 单独用户群配置 等等。
29. 数据统计, 丰富美观的仪表盘统计,支持每日新增用户数量统计 / 总计和每日对话数量 / 总计和每日新加绘画数量 / 总计和每日日订单数量统计 / 等多种信息统计图表趋势展示。
30. 内容敏感词多种限制、支持自定义敏感词/百度内容审核等安全检测、可共同开启。支持敏感词检查记录查询统计!
31. 动态菜单系统:支持内嵌网页、外部链接跳转、内部路径跳转、可以自定义开关菜单、添加菜单、自定义ICON、自定义菜单类型、可使用三方站点内嵌、支持移动端PC端各自单独设置。
32. 管理端支持超管和普通演示账户用于分销系统、普通账号仅可读权限 33. 管理端支持配置关键词回复、可自定义关键词及回复内容
34. 推广邀请奖励,支持邀请和被邀请用户设置自定义积分奖励。
35. 板块添加, 支持添加自定义板块嵌入网站页面, 支持设置板块图标,使站点更加丰富多样。
36. 其他功能
37. 更多AI能力持续开发更新中...
系统快速体验
系统用户端:https://ai.sparkaigf.com
管理后端:Admin - v6.6
测试账号密码:admin 123456
三、系统功能模块
3.1 AI全模型支持/插件系统
AI大模型
多模态模型文档分析
多模态识图理解能力
3.2 AI智能体应用
3.2.1 AI智能体/GPTs商店
GPTs应用+Prompt自定义预设应用、可全网搜索使用
3.2.2 AI智能体/GPTs工作台
3.2.3 自定义创建AI智能体应用
3.3 AI专业绘画
3.3.1 文生图/图生图(垫图)
3.3.2 局部编辑重绘
3.3.3 混图生图
3.3.4 AI换脸
3.4 AI视频生成
支持文生视频 / 图生视频、可生成15秒视频
3.5 Dall-E2/E3/E4绘画
3.6 智能思维导图生成
3.7 AI绘画广场
3.8 登录模块
支持微信环境静默登录、浏览器中微信主动扫码登录、邮箱注册登录、手机号注册登录
3.9 H5移动端(部分)
3.10 管理后台(部分)
其他和后台页面太多功能,就不展示了,直接访问演示站点和演示后台。
四、部署教程(Node.js + PM2 部署)
这里使用标准Node.js + PM2 部署项目,系统提供Docker快速部署教程
当你进入这个栏目的时候说明你已经想要使用宝塔面板部署了、如果你不知道什么是宝塔、那么请前往宝塔官网进行简单的了解、我们默认你已经安装了宝塔面板、这是最基础的需要。
第一步 4.1 环境安装
宝塔需要安装的环境
Nginx >= 1.19.8
MySQL >= 5.7或者MySQL 8.0
PHP-7.4(非系统需要环境)
PM2管理器 5.5
Redis 7.0.11
Node版本:>=v16.14.1
初始安装环境推荐使用LNMP一键环境套件
第二步 4.2 Node版本选择
使用PM2切换Node版本(必须)
-
切换Node版本为:大于等于v16.14.1(这里为v16.19.1)
第三步 4.3 安装pnpm模块
(宝塔默认会安装pnpm 9 的最新版本,此版本要求Node.js版本最低为18,很多linux版本不支持最新pnpm 9)
先设置npm为官方源:
npm config set registry https://registry.npmjs.org/
单独安装pnpm:
请直接安装pnpm 8 的版本
npm install -g pnpm@8
此时再次打开终端、确定我们需要是否有node相关环境
分别执行以下命令,出现版本号说明已经安装成功
node -v
npm -v
pnpm -v
验证pm2环境是否存在:
pm2 -v
如果提示 pm2: command not found
,则并没有成功安装,再次手动命令安装:
npm install -g pm2
再次输入 pm2 -v
显示以下页面,则成功安装
第四步 4.4 安装Redis
第五步 4.5 部署跑起来
4.5.1 新建站点
宝塔 - 网站 - 添加站点
4.5.2 配置SSL证书
如果自己没用商业SSL证书,就使用宝塔免费证书,申请Let's Encrypt 证书
开启强制HTTPS并保存
4.5.3 上传SparkAi系统源码
进入网站站点根目录
删除新建站点生成默认文件
将系统程序上传并解压到网站根目录下
解压源码包
4.5.4 配置.env文件
复制一份.env.example文件,并重命名为 .env 文件
修改.env 配置文件为自己站点信息
- 其中mysql为必配项目、redis服务必须安装 否则无法启动项目
- jwt token 必须修改为自己个人的密钥(再原有基础上再加一点随机英文即可)
4.5.5 启动项目
4.5.5.1 开启端口
宝塔面板安全开启9520端口(如果在配置文件自定义了其他端口,开启对应端口即可,不要和系统一些端口冲突,建议默认9520端口)
4.5.5.2 安装依赖
直接在网站根目录打开ssh终端
如果打开不在网站根目录请切换为网站根目录
cd /www/wwwroot/你的网站目录
宝塔默认为淘宝旧源,请切换淘宝最新源:
npm config set registry https://registry.npmmirror.com
使用 pnpm i 命令 回车 安装依赖
使用 pnpm start 命令启动项目
pnpm start
4.5.5.3 查看启动日志
输入 pm2 log 查看详细日志、看到下图表示成功!
pm2 log
初始化创建super用户成功、用户名为[super]、初始密码为[sparkai]
4.5.6 添加反向代理
添加站点 9520 端口,宝塔安全需要开启该端口,不然无法访问
目标url:http://127.0.0.1:9520
4.5.7 搭建完成
搭建完成,访问域名,输入域名授权码即可
第六步 5.6 授权激活系统
访问你自己的系统前台域名
4.6.1 未授权激活
5.6.2 激活成功示例
相关文章:

2024.11月最新智能问答AI创作系统源码,GPT4.0多模态模型+AI换脸+AI智能体GPTs应用+AI绘画(Midjourney)+详细搭建部署教程
一、前言 SparkAi创作系统是一款基于ChatGPT和Midjourney开发的智能问答和绘画系统,提供一站式 AI B/C 端解决方案,AI大模型提问、AI绘画、专业版AI视频生成、文档分析、多模态识图理解、TTS & 语音识别对话、AI换脸、支持AI智能体应用(…...

江协科技STM32学习- P34 I2C通信外设
🚀write in front🚀 🔎大家好,我是黄桃罐头,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝…...

Python 继承、多态、封装、抽象
面向对象编程(OOP)是 Python 中的一种重要编程范式,它通过类和对象来组织代码。OOP 的四个核心概念是继承(Inheritance)、多态(Polymorphism)、封装(Encapsulation)和数据…...

在.net下后台设置前台UEditor编辑器不可编辑
今天手下有个问:当用户填写提交后,再次显示提交页面时,该页面的UEditor编辑器需要设置成不可编辑,怎么实现? 可以用后台调用前台js的方式实现: 例如: 前台页面: <div style&qu…...

Flutter CustomScrollView 效果-顶栏透明与标签栏吸顶
CustomScrollView 效果 1. 关键组件 CustomScrollView, SliverOverlapAbsorber, SliverPersistentHeader 2. 关键内容 TLDR SliverOverlapAbsorber 包住 pinned为 true 的组件 可以被CustomScrollView 忽略高度。 以下的全部内容的都为了阐述上面这句话。初阶 Flutter 开发知…...

【新手入门软件测试--该如何分辨前后端问题及如何定位日志--前后端问题分辨与日志定位查询问题】
前后端问题分辨与日志定位查询 一、前端问题1. 页面无法加载2. 样式错乱3. API请求失败4. 数据格式错误5. 跨域请求问题 二、后端问题6. 表单验证失败7. 数据库连接失败8. 请求超时9. 权限问题10. JavaScript运行错误 三、日志查询的方法1. 查看日志文件2. 过滤关键字3. 实时查…...

【Java Web】DAO模式及单例模式(含代码示例)
文章目录 JDBC封装DAO模式实体类DAO接口DAO实现类数据源配置基础DAO类业务逻辑层 单例模式饿汉式懒汉式 JDBC封装 JDBC(Java Database Connectivity)封装是一种将 JDBC 的基本操作和常见的数据库访问逻辑封装成易于使用的工具类或框架的方法。这样做的目…...

深入探讨SEO分析技巧助力网站流量提升
内容概要 在当前的数字化时代,SEO分析的重要性不言而喻。它是提升网站流量的关键工具,帮助站长有效地优化网站内容和结构。通过系统的SEO分析,站长可以掌握用户搜索行为和需求,从而制定出更具针对性的内容策略。例如,…...

Chrome 130 版本开发者工具(DevTools)更新内容
Chrome 130 版本开发者工具(DevTools)更新内容 一、网络(Network)面板更新 1. 重新定义网络过滤器 网络面板获新增了一些过滤条件,这些过滤条件是根据反馈重新设计的,特定于类型的过滤条件保持不变&…...

深度学习基础知识-残差网络ResNet
目录 一、ResNet 的核心思想:残差学习(Residual Learning) 二、ResNet 的基本原理 三、ResNet 网络结构 1. 残差块(Residual Block) ResNet 的跳跃连接类型 2. 网络结构图示 四、ResNet 的特点和优势 五、ResNe…...

Linux云计算个人学习总结(二)
高级文件系统 一、RSYNC概述 1、作用:快速的文件复制工具(支持本地和远程),以及删除、查看等基本功能。 2、特点:支持实时(inotify、sersync)的增量备份工具3、模式:检查模式&#…...

Java入门(7)--网络编程
Java网络编程:构建网络应用的基石 🌐 🎯 掌握Java网络编程,打造强大的网络应用! 在上一篇文章中,我们探讨了Java的I/O操作和反射机制。今天,让我们深入学习Java网络编程,了解如何构建…...

[思考记录]思维局限,以为懂了
最近配合整理一些内容,找到较早期的某些产品设计资料在翻阅回顾。在这次回顾过程中,发现当时自己的理解存在很多局限。 以资源体系的设计为例,那时自认为已经“懂了”,对相关的概念、作用关系、组成及实现等都有一定的了解&#x…...

力扣题目解析--最长公共前缀
题目 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入:strs ["flower","flow","flight"] 输出:"fl"示例 2ÿ…...

不画饼——研究生学习和赚钱的平衡点
在现代社会中,年轻人面临着学习和赚钱之间的矛盾。尤其是在经济压力日益增大的背景下,如何在这两者之间找到合适的平衡点,成为了许多学生和职场新人面临的重要问题。本文将探讨在何种情况下应该听从老师的建议,专注于学习…...

华为实时视频使用FLV播放RTSP流
import flvjs from ‘flv.js’; 安装flv <video style"width:100%;height:100%;" ref"videoHWRef" ></video>// src 华为rtsp流 rtsp://admin:Huaweivideo10.10.8.151:554/xxx/trackID1// url 需要后端提供视频源地址playVideo() {if (fl…...

JAVA设计模式之【建造者模式】
1 定义 建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 2 类图 产品类(Product):表示被创建的复杂…...

【jvm】为什么Xms和Xmx的值通常设置为相同的?
目录 1. 说明2. 避免性能开销3. 提升稳定性4. 简化配置5. 优化垃圾收集6. 获取参数6.1 代码示例6.2 结果示例 1. 说明 1.-Xms 和 -Xmx 参数分别用于设置堆内存的初始大小(最小值)和最大大小。2.在开发环境中,开发人员可能希望快速启动应用程…...

windows查看net网络监听端口命令和工具(ipconfig、netstat、tasklist、TCPView)
文章目录 使用命令提示符(CMD)查看网络连接和配置使用 netstat 命令查看监听端口查看特定的端口查看TCP监听端口tasklist查看对应进程ID的程序Get-NetTCPConnection 命令使用 TCPView工具使用命令提示符(CMD) 查看网络连接和配置 ipconfig :显示所有网络 适配器的当前 TC…...

JAVA-数据结构- 二叉搜索树
1.搜索树 前面我们已经使用C语言学习完了二叉树,懂得了一些二叉树的基本性质已经实现方法 https://mp.csdn.net/mp_blog/creation/editor/139572374,本文我们来一起进行二叉树的衍生-二叉搜索树 1.1 概念 二叉搜索树又称二叉排序树,它或者是…...

深入研究 RAG 流程中的关键组件
我们已经看到了整个RAG流程,并获得了第一手的实践经验,您可能会对RAG流程中一些组件的使用和目的存在很多疑惑,比如RunnablePassthrough。在本节中,我们将进一步了解这些关键组件。 RAG的核心模型思想是将一个复杂的任务分解为多…...

新手如何学习python并快速成为高手
英雄Python入门到精通链接:https://pan.quark.cn/s/57162ec366a9 学习Python作为新手,有以下几个步骤: 学习基本概念和语法:首先,你需要学习Python的基本概念和语法。可以通过在线教程、书籍或者视频教程来学习。了解…...

Linux历史命令history增加执行时间显示
Centos系统默认历史命令显示如下 为了更好的溯源,获取执行命令的准确时间,需要增加一些配置 设置环境变量 vim /etc/profile 在最下面添加以下环境配置 export HISTTIMEFORMAT"%Y-%m-%d %H:%M:%S " 立即刷新该环境变量 source /etc/pro…...

从 vue 源码看问题 — 你知道 Hook Event 吗?
前言 在之前的几篇文章中,都有提到 vue 中调用生命周期钩子时是通过 callHook() 方法进行调用的,比如在初始化篇章中调用 beforeCreate 和 created 生命周期钩子方式如下: 那么接下来一起来了解下到底什么是 Hook Event ? Hook Event 是什…...

信息安全工程师(68)可信计算技术与应用
前言 可信计算技术是一种计算机安全体系结构,旨在提高计算机系统在面临各种攻击和威胁时的安全性和保密性。 一、可信计算技术的定义与原理 可信计算技术通过包括硬件加密、受限访问以及计算机系统本身的完整性验证等技术手段,确保计算机系统在各种攻击和…...

每日OJ题_牛客_相差不超过k的最多数_滑动窗口_C++_Java
目录 牛客_相差不超过k的最多数_滑动窗口 题目解析 C代码 Java代码 牛客_相差不超过k的最多数_滑动窗口 相差不超过k的最多数_牛客题霸_牛客网 (nowcoder.com) 描述: 给定一个数组,选择一些数,要求选择的数中任意两数差的绝对值不超过 …...

来咯来咯webSocket
在项目总目录下 设置socketServe文件夹 里面创建下面两个文件 使用的时候需要开启 node webSocket.cjs var { Server } require(ws); var moment require(moment);const wss new Server({port: 8888 });let id 0; let onlineMemberList []; const defaultUser user;wss…...

Android CALL关于电话音频和紧急电话设置和获取
获取音频服务,设置音源类型:电话类型和获取最大电话音量,响铃模式 private AudioManager mAudioManager; mAudioManager (AudioManager) getSystemService(AUDIO_SERVICE); mAudioManager.setStreamVolume(AudioManager.STREAM_VOIC…...

【春秋云镜】CVE-2023-23752
目录 CVE-2023-23752漏洞细节漏洞利用示例修复建议 春秋云镜:解法一:解法二: CVE-2023-23752 是一个影响 Joomla CMS 的未授权路径遍历漏洞。该漏洞出现在 Joomla 4.0.0 至 4.2.7 版本中,允许未经认证的远程攻击者通过特定 API 端…...

C#-__DynamicallyInvokable
[__DynamicallyInvokable] 属性是用于 .NET Framework 中的特性之一。这个特性通常用于标记在动态语言运行时中可以进行调用的方法或属性。 当一个方法或属性被标记为 [__DynamicallyInvokable],它表明这个成员在动态语言的环境中是可调用的。换句话说,…...