当前位置: 首页 > news >正文

最新AI智能聊天对话问答系统源码(详细图文搭建部署教程)+AI绘画系统(Midjourney),DALL-E3文生图,TTS语音识别输入,文档分析

一、文章前言

随着人工智能技术的持续进步,AI绘画已经发展成为一个日益成熟的领域。越来越多的人开始尝试使用AI绘画软件来创作艺术作品。尽管这些AI绘画软件对绘画领域产生了显著影响,但它们并不会完全取代画师。与传统手绘不同,AI绘画可以在短时间内生成大量作品,并根据用户需求进行调整和定制。尽管AI绘画能够生成非常精美的作品,但它们依然无法取代传统画师的创造力和灵感,也难以表达情感和个性。画师在创作过程中,会将个人情感和想法注入作品中,而在构图、色彩搭配和氛围营造等方面,AI绘画难以完全模拟。因此,在某些方面,AI绘画仍然需要依赖画师的帮助。

系统文档 

  • 《SparkAI系统介绍文档 - 渐进式AIGC系统》

二、系统演示

  • 系统用户端:https://ai.sparkaigf.com

  • 管理后端:Admin - v6.6

  • 测试账号密码:admin 123456

三、系统功能模块

3.1 AI全模型支持/插件系统

AI模型提问

文档分析

​识图理解能力

3.2 GPts应用

3.2.1 GPTs应用

可全网搜索使用

3.2.2 GPTs工作台

3.2.3 自定义创建预设应用

3.3 AI专业绘画

3.3.1 文生图/图生图(垫图)

3.3.2 局部编辑重绘

3.3.3 混图生图

3.3.4 AI换脸

3.4 Dall-E2/E3/E4绘画

3.5 智能思维导图生成

3.6 AI绘画广场

3.7 支持微信登录

支持微信环境静默登录、浏览器中微信主动扫码登录、邮箱注册登录、手机号注册登录

3.8 管理后台(部分)

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

四、V6系统重构日志

V6 版本大面积重构,系统大版本更新升级

🚀 Feat

  • 新增模型分类、支持自定义模型名称、自定义排序、模型配置、支持单个模型设置上下文Token限制、轮次限制、可以允许当前模型上传文件、允许开启当前模型联网!

  • 🔥 新增tts语音、支持语音模式对话、支持自动播放回复语音、支持六种音色的选择、实时读取、不占用存储空间!

  • 🔥 新增插件系统、多个内置插件、通过配置即可启用、支持识图、支持PDF文档分析、支持对话版本Midjourney、SD绘画等功能、支持自定义插件接入知识库!

  • 新增本地存储、文件可以直接上传到服务器而不需要再上传到cos、为了性能考虑、我们只对非核心文件开放了存储到本地、例如聊天对话中产生的文档、pdf、图片、语音等素材将存储在本地、一些优先级较低的logo、icon、和系统预设也放入本地、对于一些重要属于依然选择存储云上。

  • 新增列表布局、两种布局方式自定义切换!

  • 🔥 新增GPTS应用、支持全网搜索、可以获取所有官方已有的GPTS直接加入系统使用!

  • 应用支持绑定模型了、绑定模型的应用不可以切换模型、未绑定的可以切换、gpts只支持gpt-4-gizmo模型!

  • ui更新:整体风格改为卡片风格、 公告版更新、新增顶部栏、对话|Gpts分组隔离、应用中心改动、合并GPTS、增加全网搜素

  • 侧边栏更新、支持双SVG图标配置对应选中和未选中、支持双图片配置、可以使用图片链接了。

  • 布局改变、积分剩余额度独立、清空对话组分组、工作台位置迁移。

  • 初始化欢迎页面变动、九宫格改为随机应用与gpts、并支持随机更换。

  • 工具栏合并、多种场景多种联动设置。

  • 输入框支持粘贴上传文件!

  • 登录窗口背景图变更、增加弹窗背景图配置、支持背景图自定义了!

  • 增加发送图片和文档、在发送栏目可以下载

  • 增加语音发送、可以暂停继续连续组织语言、支持在录制过程中直接点击发送

🔨 Fix

  • 修复用户创建的应用管理员拒绝会通过问题

  • 修复客户端如果网络不稳定导致会漏字的情况

  • 解决了新生成的对话最后两条不能删除问题

  • 授权全面升级、新的授权将绑定域名、单授权码同时仅支持一个域名或IP

  • 修复上下文设置错误导致的假死或无响应问题

  • 修复邀请人的显示错误问题、仅显示自己问题

  • 修复推广链接在微信无法被识别问题

🔨 Improvement

  • 重新发送最近两条消息时会删除当前两条内容继续上次的内容进行对话而不是新打开一行重复问!

  • 对话流输出速度控制、匀速输出、感官更流畅!

  • 用户端消息加载、对话组加载新增loading骨架屏!

  • 翻译联想不准确的问题、部分场景无法正常翻译和联想!

  • 管理端模型允许设置为0系统自动处理上下文、防止填过大token造成的假死和无响应问题!

  • 移除掉九宫格、改为随机应用推荐!

  • 移除全局模型配置、防止部分人不理解混淆、全部模型在添加key的时候配置代理地址!

  • 由于提议、移除掉公众号ai自动回复、暂时关闭此功能!

  • ui美化、移动端适配、针对聊天窗口的美化

  • 对话组配置修改统一到弹窗、可同时修改多项配置信息

五、部署教程(Node.js + PM2 部署)

这里使用标准Node.js + PM2 部署项目,系统提供Docker快速部署教程

当你进入这个栏目的时候说明你已经想要使用宝塔面板部署了、如果你不知道什么是宝塔、那么请前往宝塔官网进行简单的了解、我们默认你已经安装了宝塔面板、这是最基础的需要。

5.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一键环境套件

​​

5.2 Node版本选择

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

  • 切换Node版本为:大于等于v16.14.1(这里为v16.19.1为例)

​​

5.3 安装pnpm模块

如果安装不上pnpm,是宝塔默认淘宝源已经无法使用,打开命令控制台,切换为官方源,单独安装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 显示以下页面,则成功安装

5.4 安装Redis

5.5 部署跑起来

5.5.1 新建站点

宝塔 - 网站 - 添加站点

​​

5.5.2 配置SSL证书

如果自己没用商业SSL证书,就使用宝塔免费证书,申请 Let's Encrypt 证书

​​

开启强制HTTPS并保存

​​

5.5.3 上传SparkAi系统源码

进入网站站点根目录

​​

删除新建站点生成默认文件

​​

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

​​​

5.5.4 配置.env文件

复制一份.env.example文件,并重命名为 .env 文件

​​

修改.env 配置文件为自己站点信息​

  • 其中mysql为必配项目、redis服务必须安装 否则无法启动项目
  • jwt token 必须修改为自己个人的密钥(再原有基础上再加一点随机英文即可)

5.5.5 启动项目

5.5.5.1 开启端口

宝塔面板安全开启9520端口(如果在配置文件自定义了其他端口,开启对应端口即可,不要和系统一些端口冲突,建议默认9520端口)

​​

5.5.5.2 安装依赖

直接在网站根目录打开ssh终端

​​

如果打开不在网站根目录请切换为网站根目录

cd /www/wwwroot/你的网站目录

宝塔默认为淘宝旧源,请切换淘宝最新源:

npm config set registry https://registry.npmmirror.com

使用 pnpm i 命令 回车 安装依赖

pnpm i

使用 pnpm start 命令启动项目

pnpm start

5.5.5.3 查看启动日志

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

pm2 log

​​

初始化创建super用户成功、用户名为[super]、初始密码为[sparkai]

5.5.6 添加反向代理

添加站点 9520 端口,宝塔安全需要开启该端口,不然无法访问

目标url:http://127.0.0.1:9520

​​

5.5.7 搭建完成

搭建完成,访问域名,输入域名授权码即可

5.6 授权激活系统

访问你自己的系统前台域名

5.6.1 未授权激活

​​

5.6.2 激活成功示例

相关文章:

最新AI智能聊天对话问答系统源码(详细图文搭建部署教程)+AI绘画系统(Midjourney),DALL-E3文生图,TTS语音识别输入,文档分析

一、文章前言 随着人工智能技术的持续进步,AI绘画已经发展成为一个日益成熟的领域。越来越多的人开始尝试使用AI绘画软件来创作艺术作品。尽管这些AI绘画软件对绘画领域产生了显著影响,但它们并不会完全取代画师。与传统手绘不同,AI绘画可以…...

项目四 OpenStack身份管理

任务一 理解身份服务 1.1 •Keystone的基本概念 • 认证 ( Authentication ) —— 确认 用户身份的过程,又称身份验证 。 • 凭证 ( Credentials ) —— 又 称凭据,是用于确认用户身份的数据 。 • 令牌 …...

【后端】websocket学习笔记

文章目录 1. 消息推送常见方式1.1 轮询 VS 长轮询1.2 SSE(server-sent event)服务器发送事件 2. websocket介绍2.1 介绍2.2 原理2.3 websoket API2.3.1 客户端【浏览器】API2.3.2 服务端API 3. 代码实现3.1 流程分析3.2 pom依赖3.3 配置类3.4 消息格式3.5 消息类 4.…...

DataWhale - 吃瓜教程学习笔记(一)

学习视频:第1章-绪论_哔哩哔哩_bilibili 西瓜书对应章节: 第一章 & 第二章 文章目录 机器学习三观What:什么是机器学习?Why: 为什么要学机器学习?1. 机器学习理论研究2. 机器学习系统开发3. 机器学习算法迁移 &…...

Attention Is All You Need论文地址

论文地址 点击即可...

如何优雅的一键下载OpenHarmony活跃分支代码?请关注【itopen: ohos_download】

itopen组织:1、提供OpenHarmony优雅实用的小工具2、手把手适配riscv qemu linux的三方库移植3、未来计划riscv qemu ohos的三方库移植 小程序开发4、一切拥抱开源,拥抱国产化 一、概述 为方便大家每次下载OpenHarmony不同分支/tag代码&#xff0c…...

torch.topk用法

torch.topk用法 介绍使用示例 介绍 官网介绍:https://pytorch.org/docs/stable/generated/torch.topk.html 在指定维度选取k个最大(最小)的值。 使用示例 values torch.tensor([[2, 1, 3], [1, 2, 3]]) # values # tensor([[2, 1, 3], #…...

终极版本的Typora上传到博客园和csdn

激活插件 下载网址是这个: https://codeload.github.com/obgnail/typora_plugin/zip/refs/tags/1.9.4 解压之后这样的: 解压之后将plugin,复制到自己的安装目录下的resources 点击安装即可: 更改配置文件 "dependencies&q…...

洛谷:P5707【深基2.例12】上学迟到

1. 题目链接 https://www.luogu.com.cn/problem/P5707 【深基2.例12】上学迟到 2. 题目描述 学校和y的家距离s米,s以v的速度去学校,8点之前到,y出门前要打扫10分钟卫生,求s最晚的出门时间 输入:两个正整数路程s&…...

数据治理:数据提取过程中的合规性与安全性

数据治理:数据提取过程中的合规性与安全性 随着数字化时代的到来,数据已经成为企业运营和决策的核心驱动力。然而,在数据提取的过程中,确保数据的合规性和安全性成为了企业面临的重要挑战。数据治理作为一种系统的方法&#xff0…...

24计算机应届生的活路是什么

不够大胆❗ 很多小伙伴在找工作时觉得自己没有竞争力,很没有自信,以至于很害怕找工作面试,被人否定的感觉很不好受。 其实很多工作并没有想象中的高大上,不要害怕,计算机就业的方向是真的广,不要走窄了&…...

HTML页面布局-使用div示例

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body><!--text-align:center 文字水平居中line-height&#xff1a;200px; 文字垂直居中,行高设置跟高…...

怎么把webp文件转换为jpg?快来试试这四种转换方法!

怎么把webp文件转换为jpg&#xff1f;Webp是一种不常见的图片格式&#xff0c;这种格式在使用过程中有很多缺点&#xff0c;首先它的浏览器兼容性不是很强&#xff0c;这就代表大家无法随意进行网络传输&#xff0c;可能需要准备特定的操作才能进行&#xff0c;然后编辑webp的工…...

计算机网络(7) 错误检测

一.校验和 使用补码计算校验和是一种常见的错误检测方法&#xff0c;应用于网络协议如IP和TCP。补码是二进制数的一种表示方法&#xff0c;可以有效地处理符号位和进位。下面是如何利用补码计算校验和的详细步骤和算数例子。 ### 计算步骤 1. **将数据分块**&#xff1a;将数…...

实体类status属性使用枚举类型的步骤

1. 问题引出 当实体类的状态属性为Integer类型时&#xff0c;容易写错 2. 初步修改 把状态属性强制为某个类型&#xff0c;并且自定义一些可供选择的常量。 public class LessonStatus {public static final LessonStatus NOT_LEARNED new LessonStatus(0,"未学习"…...

pytorch基础【4】梯度计算、链式法则、梯度清零

文章目录 梯度计算计算图&#xff08;Computational Graph&#xff09;梯度求导&#xff08;Gradient Computation&#xff09;函数与概念 示例代码更多细节梯度求导的过程梯度求导的基本步骤示例代码注意事项总结 链式法则是什么&#xff1f;链式法则的数学定义链式法则在深度…...

mapreduce综合应用案例 — 招聘数据清洗

MapReduce是一个编程模型和处理大数据集的框架&#xff0c;它由Google开发并广泛使用于分布式计算环境中。MapReduce模型包含两个主要的函数&#xff1a;Map和Reduce。Map函数用于处理输入的键值对生成中间键值对&#xff0c;Reduce函数则用于合并Map函数输出的具有相同键的中间…...

发力采销,京东的“用户关系学”

作者 | 曾响铃 文 | 响铃说 40多岁打扮精致的城市女性&#xff0c;在西藏那曲的偏远农村&#xff0c;坐着藏民的摩托车&#xff0c;行驶在悬崖边的烂泥路上&#xff0c;只因为受顾客的“委托”&#xff0c;要寻找最原生态的藏区某款产品。 30多岁的憨厚中年男性&#xff0c;…...

期望23K,go高级社招面试复盘

面经哥只做互联网社招面试经历分享&#xff0c;关注我&#xff0c;每日推送精选面经&#xff0c;面试前&#xff0c;先找面经哥 我最终还是上岸了&#xff0c;花了一周总结了3万字的go社招高级面试知识体系思维导图&#xff0c;分享出来希望能帮助有缘人吧&#xff0c;以下只是…...

电感(线圈)具有哪些基本特性

首先&#xff0c;电感&#xff08;线圈&#xff09;具有以下基本特性&#xff0c;称之为“电感的感性电抗” ?①直流基本上直接流过。 ?②对于交流&#xff0c;起到类似电阻的作用。 ?③频率越高越难通过。 下面是表示电感的频率和阻抗特性的示意图。 在理想电感器中&#…...

tkinter实现一个GUI界面-快速入手

目录 一个简单界面输出效果其他功能插入进度条文本框内容输入和删除标签内容显示和删除 一个简单界面 含插入文本、文本框、按钮、按钮调用函数 # -*- coding: UTF-8 -*-import tkinter as tk from tkinter import END from tkinter import filedialog from tkinter impor…...

Top10在线音频剪辑软件,你了解几款?(免费分享)

多年来&#xff0c;随着音乐制作人和音频工程师的需求不断增长&#xff0c;音频剪辑软件领域经历了巨大的发展。最新的音频剪辑软件提供了从基本录制到最终发布所需的一切功能。其中一些软件专为播客设计&#xff0c;一些软件是免费的&#xff0c;并且一些软件提供了出色的音效…...

mysql报错:You can‘t specify target table ‘Person‘ for update in FROM clause

背景 在做leetcode里数据库的196题删除重复数据时&#xff0c;我参考评论区大佬的方法先用group by找到每个分组里的最小的id的那条记录&#xff0c;然后删掉原表中id不在其中的记录&#xff0c;然后就报了如题所示的错误。 我的写法如下&#xff1a; DELETE FROMPerson WHER…...

Python sorted()方法

sorted() 是Python中的一个内置函数&#xff0c;用于对可迭代对象进行排序。它返回一个新的已排序的列表&#xff0c;而不会修改原始的可迭代对象。sorted() 函数的基本语法如下&#xff1a; sorted(iterable, keyNone, reverseFalse)参数解释&#xff1a; iterable&#xff…...

云上宝库:三大厂商对象存储安全性及差异性比较

前言 看了几家云厂商的对象存储&#xff0c;使用上有相似也有差异&#xff0c;聊聊阿里云、腾讯云、京东云三家对象存储在使用中存在的风险以及防护措施。 0x01 云存储命名 阿里云对象存储OSS(Object Storage Service)&#xff0c;新用户免费试用三个月&#xff0c;存储包容…...

【计算机网络体系结构】计算机网络体系结构实验-www实验

二、www实验 1. 添加网站 2. 浏览器打开...

Windows下MySQL数据库定期备份SQL文件与删除历史备份文件.bat脚本

目录 一、功能需求 二、解决方案 (1)新建文件夹及批处理文件 (2)编写备份脚本 ①完整脚本 ②参数修改 (3)编写定期删除备份脚本 ①根据文件名识别日期进行删除 ② 根据文件的修改日期删除 (4)设置定时器 (5)常见报错与处理 一、功能需求 在Windows系统下…...

electron基础使用

安装以及运行 当前node版本18&#xff0c;按照官网提供操作&#xff0c;npm init进行初始化操作&#xff0c;将index.js修改为main.js&#xff0c;执行npm install --save-dev electron。&#xff08;这里我挂梯子下载成功了。&#xff09;&#xff0c;添加如下代码至package.…...

9.华为交换机telnet远程管理配置aaa认证

目的&#xff1a;telnet远程管理设备 LSW1配置 [Huawei]int Vlanif 1 [Huawei-Vlanif1]ip add 1.1.1.1 24 [Huawei-Vlanif1]q [Huawei]user-interface vty 0 4 [Huawei-ui-vty0-4]authentication-mode aaa [Huawei-ui-vty0-4]q [Huawei]aaa [Huawei-aaa]local-user admin pass…...

xcode报错合集,你都遇到过哪些跳不过的坑

1.报错Consecutive declarations on a line must be separated by ; 其实我这里是用因为创建了一个结构体&#xff0c;然后在没有使用State的情况下&#xff0c;修改它的属性了 当然加上State依然报错&#xff1a; 应该在UI事件中修改&#xff1a;...

公司做网站入什么科目/外贸seo推广

在8086处理器上&#xff0c;如果要用寄存器来提供偏移地址&#xff0c;只能使用BX,SI,DI,BP。段寄存器&#xff1a;BX段寄存器&#xff1a;SI段寄存器&#xff1a;DI段寄存器&#xff1a;BP不能使用其他寄存器&#xff0c;比如SP、IP、AX、CX、DX。这是一种硬性规定&#xff0c…...

手机网站特效/seo公司品牌哪家好

1、使用adb 打印log日志并输出的命令行 adb logcat -s ReactNative:V ReactNativeJS:V > E:/ADBLG/log.txt 2、检查电脑是否链接到设备 abd device...

电子商务网站成功的关键是/谷歌独立站

子曰&#xff1a;溫故而知新&#xff0c;能够為師矣。《論語》 学习技术也一样&#xff0c;对于技术文档或者经典的技术书籍来说&#xff0c;指望看一遍就全然掌握&#xff0c;那基本不大可能&#xff0c;所以我们须要常常回过头再细致研读几遍&#xff0c;以领悟到作者的思想精…...

松江做移动网站/衡阳百度推广

2019独角兽企业重金招聘Python工程师标准>>> 在Shell中输入hql"select * from b_table"; hive -e $hql; 提示执行失败&#xff0c;逐步排查发现hql变量中的“*”已经被替换成一串字符串&#xff0c;该字符串正是当前目录下的一系列文件名。由此可以联想到…...

住房和城乡建设部干部学院网站/搜外网

Rayeager PX2开发板具有非常强大的多媒体处理能力&#xff0c;如果需要调用硬件加速针对普通媒体文件/码流进行解码&#xff0c;只需按照安卓标准调用多媒体相关接口即可。针对一些行业用户的特殊需求&#xff0c;Rayeager PX2实际上也开放了接口可以对H.264等裸码流进行解码。…...

站长工具seo综合查询工具/seo是什么意思知乎

Redis 3.0.0 RC2 发布下载&#xff0c;稳定版最晚三周后发布&#xff0c;相对于这个版本不会有太大改进。那为什么这个不是 Redis 3.0.0 的最终版本呢&#xff0c;主要是因为 RC2 相对于 RC1 改进太大&#xff0c;而且各种文档都不完善。此版本主要是改进了 Redis Cluster。此版…...