AI创作系统ChatGPT源码+AI绘画系统+支持OpenAI DALL-E3文生图,可直接对话文生图

一、AI创作系统

SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型+国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。新增支持最新GPT-4多模态模型、OpenAI GPT-4-Turbo-With-Vision-128K模型,新增支持OpenAI DALL-E3文生图插件,可直接对话文生图。那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧!已支持OpenAI GPT全模型+国内AI全模型+Midjourney绘画池系统!

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

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

AI模型提问

AI绘画

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

DALL-E3文生图

新增支持OpenAI DALL-E3文生图插件,可直接对话文生图

二、程序核心功能

2.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. 其他核心功能

2.2 更新日志

SparkAi最近大版本更新日志:

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

SparkAi【V3.2.0】版本已上线!
【V3.2.0】更新功能(2023.11.13更新)
1.新增支持最新GPT-4多模态模型、OpenAI GPT-4-Turbo-With-Vision-128K模型(后续支持对话识图功能)
2.新增支持最新OpenAI GPT-3.5-Turbo-1106、GPT-4-1106-Preview模型
3.新增支持对话插件系统,后续逐步增加插件功能,扩展AI能力
4.新增支持OpenAI DALL-E3文生图插件,可直接对话文生图,搭配GPT4-Turbo使用(官网20231107发布)
5.新增KEY支持单独配置消耗费率,比如GPT4-32K比GPT4成本更高应该消耗更多的额度次数
6.新增后台配置指定用户端默认使用大模型

三、系统演示

演示系统

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

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

测试账号:admin、123456

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

四、搭建部署教程

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

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=
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版本:>=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 搭建完成

bed50f3d47a54c5eaa5061972410741f.png

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

8.1 后台配置

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

https://www.idcyli.com

8.2 系统版本更新

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

java中常见的设计模式

最早概念是在建筑领域产生的,后来被引入到软件开发领域。 模式是解决一类问题的固定写法,一个模式用来解决一种问题,经过反复优化,最终得出来的。之前的程序员们,在工作中对某一类问题解决方式进行总结归纳&#xff0…

【java学习—十四】Class类(2)

文章目录 1. Class类2. Class类的常用方法3. 实例化Class类对象(四种方法) 1. Class类 在 Object 类中定义了以下的方法,此方法将被所有子类继承: public final Class getClass() 以上的方法返回值的类型是一个 Class 类&#xf…

负载均衡原理

负载均衡原理是什么? 负载均衡Load Balance)是高可用网络基础架构的关键组件,通常用于将工作负载分布到多个服务器来提高网站、应用、数据库或其他服务的性能和可靠性。负载均衡,其核心就是网络流量分发,分很多维度。 …

修炼k8s+flink+hdfs+dlink(七:flinkcdc)

一 :flinkcdc官网链接。 https://ververica.github.io/flink-cdc-connectors/release-2.1/content/about.html 二:在flink中添加jar包。 在flink lib目录下增加你所需要的包。 https://kdocs.cn/join/gv467qi?f101 邀请你加入共享群「工作使用重要工具…

RobotFramework常见问题如何解决 ?

附加-问题解决 1. 执行robot用例的时候提示WebDriverException: Message: invalid argument: cant kill an exited process 查看驱动的log是否是提示 如果是的话,参照第七步安装图形界面 2. jenkins启动后发现打不开jenkins页面的问题解决 打开jenkins页面提…

CNN进展:AlexNet、VGGNet、ResNet 和 Inception

一、说明 对于初学者来说,神经网络进展的历程有无概念?该文综合叙述了深度神经网络的革命性突破,从AlexNet开始,然后深度VGG的改进,然后是残差网络ResNet和 Inception,如果能讲出各种特色改进点的和改进理由…

Springboot监控

1. 监控的理解 什么是监控?就是通过软件的方式展示另一个软件的运行情况,运行的情况则通过各种各样的指标数据反馈给监控人员。例如网络是否顺畅、服务器是否在运行、程序的功能是否能够整百分百运行成功,内存是否够用,等等等等。…

Jordan 引理

See https://wuli.wiki/online/JdLem.html#ex_JdLem_1

嵌入式工作岗位未来会不会越来越少?

今日话题,嵌入式工作岗位未来会不会越来越少?未来的嵌入式岗位机会将会逐渐增多,因为嵌入式技术是万物互联的基础,从智能手表到智能汽车,嵌入式都扮演着关键角色。虽然相比计算机科学CS,嵌入式领域的天花板…

libgdx播放视频、libgdx播放MP4、libgdx播放动画(二十二)

libgdx播放视频、libgdx播放MP4、libgdx播放动画 转自:https://lingkang.top/archives/libgdx-bo-fang-shi-pin 转自:https://lingkang.top/archives/libgdx-bo-fang-shi-pin 转自:https://lingkang.top/archives/libgdx-bo-fang-shi-pin 最…

(C语言)编写程序将一个4×4的数组进行顺时针旋转90度后输出。

要求&#xff1a;原始数组的数据从键盘随机输入&#xff0c;新数组以4行4列的方式输出。 #include<stdio.h> int main() {int matrix[4][4],matrix2[4][4];int count;for(int i 0;i < 4;i )for(int j 0;j < 4;j )scanf("%d",&matrix[i][j]);for(i…

Day40 Advanced Docking System使用方法

1.ads简介 Qt自带的铆接部件是QDockWidget&#xff0c;也被称为浮动窗口部件。QDockWidget可以用来创建可停靠的面板&#xff0c;它能够与QMainWindow、QDialog或任何具有centralWidget的QMainWindow派生类进行连接。QDockWidget提供了一个框架&#xff0c;允许用户将内容面板放…

C 语言指针怎么理解?

今日话题&#xff0c;C 语言指针怎么理解&#xff1f;让我用更简洁的方式来表达这个内容&#xff1a;就像桌面上的快捷方式一样&#xff0c;指针也可以有多层引用。我们可以将指针比作快捷方式的图标&#xff0c;快捷方式可以指向游戏&#xff08;普通指针&#xff09;&#xf…

think5和fastadmin验证规则的使用

在fastadmin中使用验证规则只需要两步即可 第一步 首先在控制器中开启验证规则 protected $modelValidatetrue;//开启验证规则protected $modelSceneValidatetrue;//开启场景验证第二步 在 app\admin\validate 和控制器对应的 validate 中添加 验证规则以及场景验证 <?…

汽车SOA架构设计方法及关键技术

SOA概述 软件定义汽车时代&#xff0c;面向服务的软件架构&#xff08;Service Oriented Architecture, SOA&#xff09;为软件定义汽车提供了一套良好的解决方案。 Q&#xff1a;什么是SOA&#xff1f; SOA将车辆传统的面向信号的架构升级为面向服务的架构&#xff0c;面向…

Leetcode刷题详解——不同路径 III

1. 题目链接&#xff1a;980. 不同路径 III 2. 题目描述&#xff1a; 在二维网格 grid 上&#xff0c;有 4 种类型的方格&#xff1a; 1 表示起始方格。且只有一个起始方格。2 表示结束方格&#xff0c;且只有一个结束方格。0 表示我们可以走过的空方格。-1 表示我们无法跨越的…

主流接口测试框架对比,究竟哪个更好用

公司计划系统的开展接口自动化测试&#xff0c;需要我这边调研一下主流的接口测试框架给后端测试&#xff08;主要测试接口&#xff09;的同事介绍一下每个框架的特定和使用方式。后端同事根据他们接口的特点提出一下需求&#xff0c;看哪个框架更适合我们。 需求 1、接口编写…

Git 补丁使用

cmd进入到改目录 执行命令 比如tag1.11.4 到 tag 1.12.0 生成文件 the-patch.diff C:\code\Sandboxie>git diff v1.11.4 v1.12.0 -- > the-patch.diff 把这个the-patch.diff 拷贝到你的工程目录下 cmd到你的工程目录下 执行命令 git apply --reject the-patch.diff …

【溶解度工具】上海道宁为您带来了解溶解度、分散性、扩散、色谱等问题的强大而实用的软件集——HSPiP

高度参数化的UNIFAC技术 可以提供出色的预测 COSMO-RS方法的量子化学基础 可以在明确的公式中进行精确预测 Abraham参数和NRTL-SAC 也各有其独特的功能 优秀的配方师会使用 正确的工具来完成手头的工作 如果您必须只使用一种工具 那么它应该是 HSP 因为它可以很好地解…