一、项目背景
随着人工智能技术的快速发展,特别是大语言模型的广泛普及,对Python编程 与AI技术 的复合型人才需求日益增长。然而,传统编程学习平台普遍存在交互性不足、实践环境搭建复杂、缺乏智能化辅导等问题。本实训旨在开发一个集学习、实践、评测与教学管理于一体的Python大模型智能学习平台。
二、平台核心目标
-
零环境门槛:浏览器直接运行 Python,预装 numpy/pandas/matplotlib 等科学计算库;
-
AI 全流程辅助:实时对话答疑、自动生成章节习题、个性化学习报告;
-
教师教学工作台:班级创建、邀请码入班、实时群聊、公告发布、实验下发批改、学情数据分析;
-
游戏化学习激励:星级评分、经验等级、30 天学习热力图、知识雷达图;
-
数据双通道持久化:本地缓存 + MySQL 云端存储,支持多设备同步学习进度。

三、技术栈
| 分层 | 技术选型 | 核心作用 |
|---|---|---|
| 前端框架 | Vue3 + TypeScript + Vite | Composition API + script setup,类型安全,极速热更新 |
| 浏览器 Python 运行 | Pyodide(WASM) | 前端本地执行 Python,内置数据分析库 |
| AI 能力 | deepseek API | 后端代理转发,SSE 流式输出对话 |
| 后端框架 | Express(Node.js) | RESTful 接口、模块化路由、中间件鉴权 |
| 数据库 | MySQL8.0(utf8mb4) | 支持表情存储,外键级联删除保证数据一致性 |
四、系统架构
平台整体架构如下图:

4.1 核心模块
- 学习地图:卡片式展示 12 阶递进教学章节,展示星级与完成状态,作为平台首页;
- AI 学习视图:三合一布局,集成 Markdown 教程、在线代码编辑器、AI 对话面板;
- 教师管理后台:五大功能入口(班级、实验、学情、用户、资源管理);
- 个人中心:学习仪表盘、学习记录、错题本、我的班级。
五、核心功能模块详细实现
5.1 AI 小智对话模块

5.2 AI 智能出题模块(自动生成章节练习)
平台可一键生成两类习题:
- 客观选择题:考察函数、语法、库基础用法(如 np.zeros 创建数组);
- 实操编程题:完整业务流程代码任务(矩阵运算、数据读取、线性回归训练)。
缓存优化机制
- 同一章节出题结果存入后端缓存,重复访问直接读取,减少大模型 API 调用成本;


5.3 班级与实验教学模块
教师创建班级自动生成邀请码,学生凭码加入;内置班级群聊、公告发布功能。教师可下发绑定章节的实验任务,学生在线编码提交,教师后台统一查看代码、打分填写评语,形成完整实训批改闭环。


六、数据库整体建模设计
6.1 数据库设计思路
- 采用关系型 MySQL,使用外键建立实体关联,
ON DELETE CASCADE级联删除,自动清理冗余脏数据; - 区分基础实体表、多对多关联表、业务记录表;
- 动态数据(错题、答题记录)使用 JSON 字段存储,避免建立大量细分小表;
- 字符集统一
utf8mb4,支持表情、特殊代码字符存储。
6.2 核心数据表设计逻辑
users用户主实体:存储账号、角色(学生 / 教师 /admin)、加密密码,所有业务关联的根表classes班级实体:教师创建班级,存储班级名称、唯一 6 位邀请码、归属教师 IDclass_members多对多关联表:用户与班级绑定,区分学生 / 助教身份,解决一个教师管理多个班级、一个学生加入多个班级experiments实验任务表:教师下发的实训任务,关联班级、所属章节、截止时间experiment_submissions实验提交表:学生提交代码、教师批改分数评语,关联用户与实验learning_progress学生学习进度主表:按用户 + 章节维度存储完成状态、错题集合、AI 生成学习报告learning_activities行为记录表:记录每日学习操作,为热力图、活跃度统计提供数据源class_announcements班级公告表:教师发布通知,绑定对应班级class_chat_messages班级群聊表:存储班级实时聊天记录
七、前后端工程化分层设计
7.1 前端 Vue3 工程设计
- 组件分层设计
- 全局布局组件:统一顶部导航、侧边栏;
- 页面根组件:学习地图、AI 学习视图、教师工作台、个人中心;
- 通用业务子组件:代码编辑器、AI 对话框、实验卡片、统计仪表盘;
- 状态分层
- authStore:登录、token、用户角色全局状态;
- progressStore:学习进度、星级、热力图数据;
- resourceStore:代码文件、实验资源管理;
- 路由设计:路由懒加载拆分打包体积,全局路由守卫统一鉴权拦截未登录访问;
- 接口层统一封装:独立 apiService 模块,自动携带 JWT 请求头,统一捕获异常弹窗。
7.2 后端 Express 路由模块化设计
按业务领域拆分 5 个独立路由模块:
auth.js:账号注册、登录、用户角色查询;teacher.js:班级、群聊、公告、实验、学情统计;progress.js:学习进度 CRUD、仪表盘聚合数据;messages.js:章节留言、敏感词过滤;ai-proxy.js:SSE 流式对话、AI 出题、大模型请求中转。
中间件分层设计
- 一级中间件
authMiddleware:解析请求头 JWT,挂载 userId、role 到请求对象; - 二级中间件
requireTeacher:校验角色,拦截普通学生访问教师专属接口。
八、界面设计效果
整体采用扁平化简约设计风格,视觉统一干净:
九、平台拓展性
本平台在课程内容管理、AI模型适配、学习数据分析、教学功能深化和终端适配五个方面具备可扩展能力,具体如下:
(一)课程内容可动态扩展。 目前平台涵盖12个章节,后续可根据教学需要动态增删章节内容,无需修改前端代码。章节数据由后端统一管理,新增章节自动出现在学习地图和进度追踪中,平台具备良好的课程内容扩展能力。
(二)AI模型可灵活切换。 当前平台已适配DeepSeek大模型接口,具备模型切换的基础。后续可进一步引入模型路由机制,根据不同提问类型自动选择最优模型,亦可接入开源模型实现本地化部署,降低对云端API的依赖。
(三)个性化学习推荐。 随着平台上积累的学生学习行为数据不断增多,后续可引入学习分析技术,构建学生知识图谱,实现学习路径的智能推荐。例如,当系统识别到某学生在"列表推导式"知识点上反复出错时,可自动推荐相关章节的补充练习,实现真正的个性化学习。
(四)教学管理功能深化。 教师工作台目前提供了班级管理和学情分析的基础功能,后续可进一步拓展小组协作学习、互评机制、课堂互动等功能模块,使平台从"作业管理"向"课堂生态"延伸。
(五)多端适配延伸。 平台采用前后端分离架构,各模块耦合度低,便于横向扩展。当前平台以Web端为主,后续可基于现有API服务开发移动端小程序或App,方便学生利用碎片化时间学习。
十、网页视频展示
十一、总结
本平台采用分层前后端分离架构,围绕学生、教师角色完成全流程功能设计,配套规范化数据库模型与五大核心业务流程。针对在线编程、AI 交互、班级教学 等核心场景定制专属实现方案,并从前、后端、数据库、AI、代码运行五层做性能优化,解决传统教学平台环境难搭、管理薄弱、性能卡顿等问题,整套设计完整可落地。