littlebot
Published on 2025-04-08 / 1 Visits
0

【源码】基于Spring Boot和React的AI智能数据分析平台

项目简介

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调用次数信息。
  • 文本记录表:存储文本记录相关信息。
  • 文本任务表:存储文本任务相关信息。

安装使用步骤

环境准备

  1. 安装JDK 1.8或更高版本。
  2. 安装并配置MySQL数据库。
  3. 安装并启动Redis服务。
  4. 安装并启动RabbitMQ服务。
  5. 安装Node.js和npm。

后端项目配置

  1. 复制项目。
  2. 用IDE(如IntelliJ IDEA)导入项目。
  3. application.yml中配置MySQL数据库连接信息。
  4. application.yml中配置Redis连接信息。
  5. application.yml中配置RabbitMQ连接信息。
  6. 运行AiPlotsApplication.java启动Spring Boot应用。

前端项目配置

  1. 复制项目。
  2. 安装依赖: bash cd ai-plots-frontend npm install
  3. 启动项目: bash npm start

访问项目

  1. 前端地址:http://localhost:3000
  2. 后端地址:http://localhost:8080

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】