# edu-Agent-Pro-backend **Repository Path**: NBz/edu-Agent-Pro-backend ## Basic Information - **Project Name**: edu-Agent-Pro-backend - **Description**: 本项目旨在解决高校实训教学中的“三高三低”问题,通过开源大模型技术,打造一个名为EduAgent-Pro的智能教学实训平台。该平台不依赖本地部署,而是采用轻量化、零运维的API+微服务架构,使高校无需GPU服务器即可接入DeepSeek、OpenAI、Qwen等开放大模型接口,实现智能化教学升级。平台已在校级试点中取得显著成效,包括备课时间减少75%,批改时间减少100%,学生二次正确 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-04-15 - **Last Updated**: 2026-04-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # edu-Agent-Pro-backend #### 介绍 本项目旨在解决高校实训教学中的"三高三低"问题,通过开源大模型技术,打造一个名为EduAgent-Pro的智能教学实训平台。该平台不依赖本地部署,而是采用轻量化、零运维的API+微服务架构,使高校无需GPU服务器即可接入DeepSeek、OpenAI、Qwen等开放大模型接口,实现智能化教学升级。平台已在校级试点中取得显著成效,包括备课时间减少75%,批改时间减少100%,学生二次正确率提高42%。 尽管如此,项目仍面临学科覆盖不足、个性化路径颗粒度不够、校本知识库冷启动耗时等局限。为此,我们计划开发一个轻量化的SaaS平台和手机小程序,集成智能备课、实时问答、自适应练习与学情大屏四大核心模块,并与教务系统、实训平台及企业案例库打通,利用大模型与大数据技术提供精准教学服务。 通过该平台,教师能够一键生成实验任务包、自动批阅报告;学生则可在任何时间上传代码或提问,获得即时反馈与资源推荐。平台将持续沉淀校本知识图谱,实时更新产业任务库,实现模型、数据、场景闭环优化。最终目标是构建一个综合教学生态,实现智慧备课、实训、评估和成长,提升高校实训教学的可及性、个性化与高效能水平,为培养高素质应用型人才提供数字化支持。 | 类型 | 链接 | 备注 | |------|--------------------------------------------------|----| | 前端源码 | https://gitee.com/csyuwen/edu-Agent-Pro-frontend | | | 后端源码 | https://gitee.com/csyuwen/edu-Agent-Pro-backend | | #### 软件架构 表1 前端技术栈及版本 | 组件 | 技术方案 | 版本 | |-------|---------------|--------| | Web框架 | Vue + Vite | 3.5.12 | | UI库 | AntDesign | 4.2.6 | | 图表库 | ECharts | 5.6.0 | | Md编辑器 | md-editor-v3 | 5.6.1 | | 代码编辑器 | monaco-editor | 0.52.2 | 表2 后端技术栈及版本 | 服务类型 | 技术方案 | 版本 | |-------|-------------|--------| | 服务框架 | SpringBoot | 0.85.0 | | AI框架 | Spring AI | 1.0.0 | | ORM服务 | MybatisPlus | 4.9 | | 消息队列 | RabbitMQ | 4.11 | 表3 大模型选型及特点 | 维度 | Qwen3-235b-a22b | Qwen-Plus | Spark4.0 Ultra | |------|---------------------------|------------------------|----------------------| | 语义理解 | 235B MoE结构,C-Eval F1=89.7 | HumanEval Pass\@1=72.4 | 短文本ROUGE-L=52.1 | | 上下文 | 原生32K(全课程大纲+多模态) | 4K覆盖90%实验场景 | 2K轻任务优化 | | 响应速度 | P95延迟2.8s | P95延迟0.9s | 首Token<120ms, QPS>1k | | 成本效率 | ¥0.12/1K tokens | ¥0.035/1K tokens | ¥0.009/1K tokens | 采用 Spring Boot + Spring AI Alibaba 完成整个项目的后端,其中 Spring Boot 是由Pivotal 团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程,而 Spring AI Alibaba 开源项目基于 Spring AI 构建,是阿里云通义系列模型及服务在 Java AI 应用开发领域的最佳实践,提供高层次的 AI API 抽象与云原生基础设施集成方案,帮助开发者快速构建 AI 应用。在高并发的情况下通过由 Caffeine 本地缓存和 Redis 分布式缓存后成的多级缓存来提高数据传输速率,MySQL 数据库进行数据存储,RabbitMQ消息队列对长时间等待的任务请求进行异步处理以此来提高用户体验。 系统架构图如图所示。 ![输入图片说明](https://foruda.gitee.com/images/1760276155961269515/e2a21a21_15010033.png "项目架构图.png") #### 安装教程 由于教育平台的特殊性,严禁将源码用于木马、病毒、色情、赌博、诈骗等违反国家法律法规的行业,以及从事违法犯罪活动,如发现有使用本软件进行非法活动,将向有关部门举报和协助相关行政执法机关清查! > 本安装教程主要是服务端的安装,请认真仔细按照安装教程来,不要自作主张根据自己的想法来。请结合各个项目中根目录的项目说明文件`README.md`进行相应端的开发和发布。 > 安装程序需要有一定的java开发经验和服务器运维经验,如果没有请加入交流群联系作者,作者提供付费部署服务! #### 准备工作 需要先安装好运行环境,推荐使用宝塔服务器【服务器最低配置2核2G】,安装LNMP的架构,建议使用nginx作为服务器,不建议使用apache。需要安装以下软件: | 所需环境 | 版本 | 备注 | 推荐版本 | |-------|---------|-----------|------| | linux | >= 7.0 | 以下的版本未做测试 | 7.9 | | nginx | >= 1.17 | | 最新的 | | java | >= 21 | | 21 | | mysql | >= 5.7 | 必须要5.7及以上 | 5.7 | | redis | >= 5.0 | | 7.0 | **重要操作** >使用宝塔面板更易安装 #### 源码下载 下载发行版【推荐】 - 【推荐使用】下载完整源码放到自己的服务器上。请注意看gitee项目主页顶部右侧 `https://gitee.com/csyuwen/edu-Agent-Pro-backend ` ,请在发行版中下载最新发布的版本。 #### 开始安装 1. 把代码上传至服务器,将整个目录权限给 `www` 用户,并赋予 `755`权限,创建网站,把网站的运行目录指向项目根目录下的 `public` 目录,运行目录一定要是这个。 2. 设置伪静态和反向代理,下面只展示nginx的伪静态和反向代理配置,apache的请自行百度或者使用chatGPT转换。【直接复制下面全部代码到伪静态中即可】 ``` #伪静态配置 location ~* (runtime|application)/{ return 403; } location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } } #反向代理配置,如果有修改端口,需要替换下方的8282端口 location /wss { proxy_pass http://127.0.0.1:8282; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header X-Real-IP $remote_addr; } ``` 3. 如果有域名并且要使用音视频通话、语音消息等服务还需要配置证书来开启HTTPS,可以使用免费的 `Let's Encrypt` 证书,如果不需要这些服务,可以直接使用HTTP协议和IP地址访问,但是功能会受限。 4. 访问你的ip或者域名即可进入自定义安装向导,如果访问出错,就是自己的准备工作没有按照要求进行,请检查。 5. 部署完成之后管理员账号密码为:`administrator` `123456`,管理入口在聊天界面的左下角。 #### 功能模块 ### 1. 智能备课模块 **功能描述**: - 教师可根据课程大纲一键生成实验任务包 - 支持智能PPT生成,自动整理教学内容 - 提供备课内容编辑和管理功能 - 支持知识图谱构建和展示 **使用流程**: 1. 教师登录系统,进入"备课与设计"模块 2. 选择或输入课程大纲和教学目标 3. 系统自动生成实验任务包和教学PPT 4. 教师可对生成内容进行编辑和调整 5. 保存并发布备课内容,学生可查看学习 ### 2. 实时问答模块 **功能描述**: - 结合教学内容解答学生问题 - 支持RAG对话和文档总结 - 提供智能问答系统 - 支持多轮对话和上下文理解 **使用流程**: 1. 学生进入"学习助手"模块 2. 输入问题或上传学习资料 3. 系统基于教学内容和知识库生成回答 4. 学生可对回答进行评价和追问 5. 系统记录问答历史,形成个性化学习路径 ### 3. 自适应练习模块 **功能描述**: - 根据学生学习情况生成个性化练习题 - 支持在线编程练习和评测 - 提供编程刷题功能 - 自动收集和管理错题集 **使用流程**: 1. 学生进入"实时练习评测助手"模块 2. 系统根据学习进度推荐练习题 3. 学生完成练习并提交 4. 系统自动评测并给出反馈 5. 错题自动加入错题集,供后续复习 ### 4. 学情大屏模块 **功能描述**: - 提供系统数据大屏展示 - 实时监控学生学习情况 - 分析教学效果和学生学习进度 - 支持多维度数据统计和可视化 **使用流程**: 1. 管理员或教师进入"大屏概览"模块 2. 查看系统整体运行情况 3. 分析学生学习数据和教学效果 4. 根据数据调整教学策略 5. 生成学情分析报告 #### 业务流程 ### 1. 教师使用流程 ``` 1. 登录系统 ↓ 2. 进入备课模块 ↓ 3. 输入课程大纲和教学目标 ↓ 4. 系统生成实验任务包和PPT ↓ 5. 编辑和调整教学内容 ↓ 6. 发布备课内容 ↓ 7. 监控学生学习进度 ↓ 8. 分析学情数据 ↓ 9. 调整教学策略 ``` ### 2. 学生使用流程 ``` 1. 登录系统 ↓ 2. 查看教师发布的课程内容 ↓ 3. 学习课程内容 ↓ 4. 遇到问题时进入问答模块提问 ↓ 5. 系统解答问题 ↓ 6. 进入练习模块完成练习 ↓ 7. 查看练习结果和反馈 ↓ 8. 复习错题集 ↓ 9. 完成学习任务 ``` ### 3. 管理员使用流程 ``` 1. 登录系统 ↓ 2. 进入系统管理模块 ↓ 3. 管理用户和权限 ↓ 4. 监控系统运行状态 ↓ 5. 查看学情大屏数据 ↓ 6. 分析系统使用情况 ↓ 7. 优化系统配置 ↓ 8. 生成系统报告 ``` #### 使用说明 ### 1. 系统登录 - **管理员**:使用管理员账号登录,拥有系统所有权限 - **教师**:使用教师账号登录,可使用备课、学情分析等功能 - **学生**:使用学生账号登录,可使用学习助手、练习评测等功能 ### 2. 角色权限说明 - **管理员**:拥有系统所有权限,包括用户管理、资源管理、系统配置等 - **教师**:拥有备课、学情分析、考核内容生成等教学相关功能权限 - **学生**:拥有学习助手、练习评测、错题集等学习相关功能权限 - **默认用户**:拥有基本功能权限,可查看公开内容 ### 3. 主要功能使用指南 #### 3.1 智能备课功能 1. 进入"备课与设计"模块 2. 点击"新建备课"按钮 3. 填写课程名称、教学目标、课程大纲等信息 4. 点击"生成备课内容"按钮 5. 系统自动生成实验任务包和PPT 6. 对生成内容进行编辑和调整 7. 点击"保存并发布"完成备课 #### 3.2 学习助手功能 1. 进入"学习助手"模块 2. 在输入框中输入问题或上传学习资料 3. 点击"发送"按钮 4. 系统基于教学内容和知识库生成回答 5. 可对回答进行评价和追问 6. 查看历史问答记录 #### 3.3 练习评测功能 1. 进入"实时练习评测助手"模块 2. 选择练习类型和难度 3. 系统推荐练习题 4. 完成练习并提交 5. 查看评测结果和反馈 6. 查看错题集并进行复习 #### 3.4 学情分析功能 1. 进入"大屏概览"模块 2. 查看系统整体运行情况 3. 选择不同的数据维度进行分析 4. 查看学生学习进度和效果 5. 生成学情分析报告 ### 4. 常见问题解答 #### 4.1 如何重置密码? 1. 在登录页面点击"忘记密码"链接 2. 输入注册邮箱或手机号 3. 系统发送验证码 4. 输入验证码并设置新密码 #### 4.2 如何联系技术支持? 1. 登录系统后,点击右下角的"帮助"按钮 2. 选择"联系技术支持" 3. 填写问题描述并提交 4. 技术支持人员将在24小时内回复 #### 4.3 如何导出学习数据? 1. 进入"用户中心"模块 2. 点击"学习数据"选项 3. 选择需要导出的数据范围 4. 点击"导出"按钮 5. 系统生成Excel文件并下载 ## 免责声明 ### 1. 基本声明 本软件作为开源项目提供,在法律允许的最大范围内,开发者不对软件的功能性、安全性或适用性作出任何形式的保证,无论是明示的还是暗示的。 ### 2. 使用风险声明 2.1 本软件按"现状"提供,使用者需自行承担使用本软件的全部风险。 2.2 开发者不对软件的运行可靠性、适用性或与特定需求的兼容性提供任何保证。 2.3 使用者应在充分评估风险的基础上决定是否使用本软件。 ### 3. 责任限制与豁免 在任何情况下,开发者及其关联方均不对因使用或无法使用本软件而导致的任何损失或损害承担责任,包括但不限于: - 数据丢失或泄露 - 利润损失 - 系统中断 - 商业机会损失 - 其他直接、间接或衍生性损失 ### 4. 用户义务与责任 4.1 使用者应确保其对本软件的使用符合所有适用的法律法规要求。 4.2 对本软件进行修改、分发或二次开发的使用者,需自行承担由此产生的全部责任,包括但不限于: - 法律风险 - 知识产权风险 - 安全风险 - 数据保护责任 ### 5. 开发者权利 5.1 开发者保留对本软件进行更新、修改、调整或停止维护的权利。 5.2 开发者可能在不事先通知的情况下修改本软件或相关服务。 5.3 开发者保留对本免责声明进行修改的权利。 ### 6. 其他条款 6.1 本免责声明的任何部分被认定为无效或不可执行时,其余部分仍然有效。 6.2 本免责声明的最终解释权归开发者所有。