项目简介
AI Plots是一个基于AIGC的智能数据分析平台,专注于图表分析、文本分析和问题分析,能为用户提供轻松、快速、智能化的数据分析体验。用户只需导入原始数据集,系统便会根据分析诉求自动生成可视化图表并给出分析结论,无需手动控制,提升了大数据工作人员的工作效率与准确性。
项目的主要特性和功能
主要业务架构
- 图表分析:上传数据集后自动生成可视化图表及分析结论。
- 文本分析:支持对文本数据进行分析,生成文本内容和分析结果。
- 问题分析:用户提问,系统通过AI生成答案和分析。
技术选型
前端
- React 18:构建用户界面的JavaScript库。
- Ant Design Pro:基于Ant Design的脚手架,提供丰富UI组件。
- Umi:构建企业级应用的前端框架。
- Echarts:数据可视化图表库。
后端
- Java Spring Boot:构建后端服务的框架。
- MySQL:关系型数据库,用于数据存储。
- Mybatis - Plus:MyBatis增强工具,简化数据库操作。
- Redis + Redisson:用于缓存和分布式限流。
- RabbitMQ:消息队列,用于异步任务处理。
- JDK线程池及异步化:用于并发执行和异步化处理。
主要工作
- 分布式限流:基于Redisson的RateLimiter控制单用户访问频率。
- 并发执行和异步化:用自定义线程池和RabbitMQ实现AIGC并发执行和异步化,减轻系统压力。
- 应用解耦:通过RabbitMQ接受任务、持久化保存并转发给AI生成模块,提高系统可靠性。
项目演示
- 登录注册页:用户可登录和注册。
- 主页:展示用户分析的所有图表。
- 智能图表分析:提供同步和异步方法,提升用户体验。
- 我的图表:展示用户分析的所有图表。
- 图表详情页:查看原始数据、图表信息、分析结论。
- 个人中心:展示和修改用户信息,可签到领调用次数。
- 用户管理页(仅管理员可见):管理员可修改、删除用户账户。
数据库设计
- 用户表:存储用户基本信息。
- 图表信息表:存储图表相关信息。
- AI问答信息表:存储AI问答相关信息。
- AI调用次数表:存储用户AI调用次数信息。
- 文本记录表:存储文本记录相关信息。
- 文本任务表:存储文本任务相关信息。
安装使用步骤
环境准备
- 安装JDK 1.8或更高版本。
- 安装并配置MySQL数据库。
- 安装并启动Redis服务。
- 安装并启动RabbitMQ服务。
- 安装Node.js和npm。
后端项目配置
- 复制项目。
- 用IDE(如IntelliJ IDEA)导入项目。
- 在
application.yml
中配置MySQL数据库连接信息。 - 在
application.yml
中配置Redis连接信息。 - 在
application.yml
中配置RabbitMQ连接信息。 - 运行
AiPlotsApplication.java
启动Spring Boot应用。
前端项目配置
- 复制项目。
- 安装依赖:
bash cd ai-plots-frontend npm install
- 启动项目:
bash npm start
访问项目
- 前端地址:
http://localhost:3000
。 - 后端地址:
http://localhost:8080
。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】