基于AI大模型api实现的ChatGPT服务,支持一键切换ChatGPT(3.5、4.0)模型,月之暗面(Kimi)、文心一言(支持Stable-Diffusion-XL作图)、通义千问、讯飞星火、智谱清言(ChatGLM)等主流模型
基于AI大模型api实现的ChatGPT服务,支持一键切换ChatGPT(3.5、4.0)模型,月之暗面(Kimi)、文心一言(支持Stable-Diffusion-XL作图)、通义千问、讯飞星火、智谱清言(ChatGLM)等主流模型,支出同步响应及流式响应,完美呈现打印机效果
声明:免费且作为开源学习使用,禁止转卖、谨防受骗。如需商用必须保留版权信息,请自觉遵守。确保合法合规使用,在运营过程中产生的一切任何后果自负,与作者无关。
项目简介
基于AI大模型api实现的自建后端Chat服务,支出同步响应及流式响应,完美呈现打印机效果。支持一键切换ChatGPT(3.5、4.0)模型、月之暗面(Kimi)、文心一言(支持Stable-Diffusion-XL作图)、通义千问、讯飞星火、智谱清言(ChatGLM)等主流模型,后续模型持续对接中。 项目包含java服务端、网页端、移动端及管理后台配置。
支持月之暗面(Kimi)模型,支持文心一言Stable-Diffusion-XL作图功能
万花筒信息可关注公众号扫码获取获取,内置了各种assistant模版,按指定prompt输出,也可后台创建assistant模版
支持切换不同模型及不同版本进行对话聊天,保存对话记录及根据上下文输出
管理端端采用Vue2、Element UI,Chat网页端使用Vue3、TypeScript、NaiveUI进行开发
服务端采用Spring Boot、Spring Security + JWT、Mybatis-Plus、Lombok、 Mysql & Redis,代码通俗易懂,上手即用
完善的权限控制,权限认证使用Jwt,支持多终端认证系统
已实现功能
- 多模型多版本对话,支持ChatGPT(3.5、4.0)、月之暗面(Kimi)、文心一言(支持Stable-Diffusion-XL作图)、通义千问、讯飞星火、智谱清言(ChatGLM)
- 支持后台配置及使用assistant模版,按指定prompt输出,存储历史对话及聊天内容,可开启/关闭根据上下文输出
- 支持vip及svip功能,支持兑换码、分享功能及个人信息修改
- 支持按使用次数或者开通会员使用,也可全局判断不校验使用次数及会员,电量赠送次数或者不校验电量可在chat-master-admin中进行配置
- 移动端websocket支持
待实现功能
- 文档对话、国内模型绘画
- 知识库
- MJ/SD
- 分销
模型功能对比
[td]
模型 | 是否支持System | 天气查询 | 绘画 |
ChatGPT | 支持 | 不支持 | 支持 |
文心一言 | 不支持(传递会报错) | 可以回复(不准) | 使用Stable-Diffusion-XL |
通义千问 | 支持 | 支持(效果没讯飞好) | 未接入 |
讯飞星火 | 支持 | 支持(准) | 不支持 |
智谱清言 | 支持 | 不支持 | 支持(API待接入目前有点贵) |
月之暗面 | 支持 | 不支持 | 支持文档问答 |
内置功能
- 工作台:集成多个应用和功能的系统页面,该页面主要为用户提供快速访问、信息聚会、个性化等功能。
- 数据中心:用于管理和分析系统数据的功能,向用户提供直观和易懂的信息,方便使用者快速了解系统数据。
- 任务中心:可以后台查看模型聊天对话记录及绘画任务记录。
- 订单管理:查看开通会员订单信息及退款操作。
- 会员中心:查看所有用户信息,及开通模型次数及消耗电量统计功能。
- 模型管理:配置Assistant分类及prompt信息。
- 助手中心:配置Assistant分类及prompt信息。
- 配置中心:配置系统信息及移动端信息,配置oss、sms密钥,配置微信支付、小程序和公众号密钥等。
- 系统管理:对系统中基础业务进行管理维护。
环境搭建/运行&提示
初始化sql已去除sys.date默认数据,如需统计功能可执行doc/sql/sys_date.sql。ChatGPT需要在后台配置管理中进行站点配置或加入微信群咨询。
1、idea导入chat-master项目,请更换spring.profiles.active为dev2、执行doc/sql/chat_gpt全量sql文件,在gpt_model配置可运行模型信息,在gpt_openkey配置模型密钥信息3、版本更新时候需执行doc/sql/update.sql4、更改application-dev中redis连接和mysql连接配置5、启动ChatApplication中main方法
- com.master.chat.api.base.config.InitBean 初始化模型
- com.master.chat.gpt.service.IGptService 接口调用
- com.master.chat.gpt.service.SseService sse调用
开发环境[td]
工具 | 版本号 | 下载 |
JDK | 1.8 | https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html |
Mysql | 5.7 | https://www.mysql.com/ |
Maven | 3.6.3 | https://maven.apache.org/ |
nginx | 1.10 | http://nginx.org/en/download.html | |
开发技术[td]
技术 | 说明 | 官网 |
Spring Boot | 容器+MVC框架 | https://spring.io/projects/spring-boot |
Spring Security Oauth2 | 认证和授权框架 | https://spring.io/projects/spring-security-oauth |
Lombok | 简化Java开发 | https://github.com/JourWon/test-lombok |
Netty | 网络通信框架 | https://github.com/JourWon/test-lombok |
JWT | JWT登录支持 | https://github.com/jwtk/jjwt |
MyBatis-plus | 代码生成、物理分页 | https://baomidou.com/ |
dynamic-datasource | 多数据源 | https://www.kancloud.cn/tracy5546/dynamic-datasource/2264611 |
Redis | 分布式缓存 | https://redis.io/ |
Druid | 数据库连接池 | https://github.com/alibaba/druid |
OSS | 对象存储 | https://github.com/aliyun/aliyun-oss-java-sdk |
quartz | 定时任务 | https://github.com/quartz-scheduler/quartz |
框架特点
- 使用@RepeatSubmit(interval = 1000)注解对接口进行重复提交限制,interval默认值为5s内,可以自定义时间范围。
- 使用@RateLimiter注解对接口进行限流。
- 使用@DataScope(deptAlias = “t1”, userAlias = “t2”)进行数据过滤。
- 使用@PreAuthorize(“hasAuthority(‘system:config:remove’)”)注解可以对接口进行权限校验。
- 使用@Log(value = “刷新系统配置缓存”, type = SysLogTypeConstant.CONFIG, businessType = BusinessTypeEnum.CLEAN) 注解进行系统日志存储。
- 使用@DS(“master”)切换数据源,优先方法高于类
- 引入阿里巴巴easy-excel框架,轻松编写导出、导入接口。
- 使用Lombok简化java代码,省略getter、setter方法。(@Accessors(chain = true)支持链式操作)
- 完善的自动生成代码功能,增加DTO、Command、VO类。
- 独立的定时任务列表管理功能。
- 支持多端登录或只能当前账号登录功能,需要后台配置。
- 使用阿里云、腾讯云对象存储及短信功能,支持本地存储。
后台界面:
前置要求Node
- node -v
复制代码
开发
- # 克隆项目
- git clone https://gitee.com/panday94/chat-master-admin
- # 进入项目目录
- cd chat-master-admin
- # 安装依赖
- npm install
- # 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
- npm install –registry=https://registry.npmmirror.com
- # 启动服务
- npm run dev
复制代码
浏览器访问 http://localhost:2345
发布
- # 构建测试环境
- npm run build:stage
- # 构建生产环境
- npm run build:prod
复制代码
附件中包含源码:管理端源码,网页端源码,服务端源码
1.本站资源都是白菜价出售,同样的东西,我们不卖几百,也不卖几十,甚至才卖几块钱,一个永久会员能下载全站100%源码了,所以单独购买也好,会员也好均不提供相关技术服务。
2.如果源码下载地址失效请联系站长QQ进行补发。
3.本站所有资源仅用于学习及研究使用,请必须在24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担。资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您权益请联系本站删除!
4.本站站内提供的所有可下载资源(软件等等)本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发);但本网站不能保证资源的准确性、安全性和完整性,由于源码具有复制性,一经售出,概不退换。用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug;同时本站用户必须明白,【安安资源网】对提供下载的软件等不拥有任何权利(本站原创和特约原创作者除外),其版权归该资源的合法拥有者所有。
5.请您认真阅读上述内容,购买即以为着您同意上述内容,由于源码具有复制性,一经售出,概不退换。
安安资源网 » 基于AI大模型api实现的ChatGPT服务,支持一键切换ChatGPT(3.5、4.0)模型,月之暗面(Kimi)、文心一言(支持Stable-Diffusion-XL作图)、通义千问、讯飞星火、智谱清言(ChatGLM)等主流模型