# 基于大模型智能学情诊断系统 **Repository Path**: jsq2021/large-model-intelligent-learning-situation ## Basic Information - **Project Name**: 基于大模型智能学情诊断系统 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-04-29 - **Last Updated**: 2026-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能学情诊断系统 一个基于 Python 的桌面应用程序,专为学校教务人员设计,提供考试成绩的可视化分析、AI 智能诊断报告和历次考试趋势对比,帮助教师快速洞察学情、辅助教学决策。 ## ✨ 主要功能 - **📊 多模式可视化分析** - 学校对比 / 班级对比:支持小提琴图、箱线图、柱状图、点估计图等多种图表 - 单班详情:展示成绩分布、箱线图、小提琴图 - 个人分析:多科柱形图、雷达图、单科位置图 - 学生对比:多人成绩雷达图、柱形图、单科位置对比 - **🤖 AI 智能诊断报告** - 对接多个大模型提供商(LongCat、通义千问、智谱、Kimi、DeepSeek 等) - 自动生成针对当前分析模式的教学诊断报告 - 支持生成全科目综合学情报告 - 自然语言指令快速切换分析目标 - **🔄 历次考试对比** - 支持导入多个考试批次(多个 Excel 文件或同一工作簿的多个 Sheet) - 学生成绩趋势追踪 - 班级趋势分析(均值、标准差、多指标、箱线图对比) - 学科纵览(热力图、排名变化图) - 优秀率趋势监控 - **🎯 便捷操作** - 拖拽或点击导入 Excel 数据 - 自然语言指令识别(如“分析8班和36班的数学成绩”) - 数据预览窗口,双击学生快速进入个人分析 - 图表一键保存为高分辨率 PNG - 记录考试批次,灵活管理 ## 📸 界面概览 image-20260429111244542 ## 🚀 快速开始 ### 环境要求 - Python 3.8 或更高版本 - 操作系统:Windows / macOS / Linux(需支持 Tkinter) ### 安装依赖 bash ``` pip install pandas matplotlib seaborn requests openpyxl pillow ``` > 注意:如果运行环境缺失中文字体,程序会自动检测并尝试使用 `SimHei`、`Microsoft YaHei` 等字体,确保图表中文正常显示。 ### 运行程序 bash ``` python app.py ``` ## 📖 使用指南 ### 1. 导入数据 - 点击 **“导入单次成绩”** 选择单个 Excel 文件(.xls 或 .xlsx),程序将自动识别班级列、学校列、学生姓名列和数值科目列。 - 点击 **“导入历次成绩”** 可将多个考试批次一次性导入,支持: - 一次性导入某个 Excel 的所有 Sheet - 手动选择多个 Excel 文件 ### 2. 可视化分析 在 **“📊 可视化分析”** 标签页中,你可以: 1. 从左侧列表勾选想要分析的科目。 2. 通过下拉框选择 **分析模式**: - 学校对比 / 班级对比 → 点击 “全选” 按钮选择参与对比的学校或班级 - 单班详情 → 在下拉框中选择具体班级 - 个人分析 → 点击按钮搜索学生姓名 - 学生对比 → 可选择多名学生进行横向对比 3. 选择合适的 **图表类型**,点击 **“绘制趋势图”** 即可在右侧显示图表。 4. 点击 **“保存图片”** 可将当前图表导出为 PNG 文件。 ### 3. AI 智能诊断 切换到 **“🤖 AI 智能诊断”** 标签页,展开配置面板: 1. 选择 **AI 提供商**,填写 **API Key**、**模型名称** 和 **Base URL**(根据提供商文档填写)。 2. 点击 **“保存配置”** 将配置加密存储到本地 `config.json`。 3. 生成报告: - **生成当前图表智能诊断报告**:基于当前可视化分析模式中的数据,调用大模型生成针对性的教学改进建议。 - **生成全科目综合报告**:对所有数值科目做整体学情分析。 4. 报告将显示在下方的文本框内,并自动保存到 `reports` 文件夹中,文件名为 `report_科目_时间戳.md` 等。 ### 4. 历次对比 在 **“🔄 历次对比”** 标签页: - 先通过“导入历次成绩”添加多个考试批次,批次列表会显示在左侧。 - 勾选需要对比的批次(支持多选)。 - 选择分析模式: - **学生追踪**:点击选择学生,然后绘图查看该生历次成绩变化。 - **班级趋势** / **优秀率趋势**:选择班级和学科,观察均值、标准差或优秀率的变化曲线。 - **学科纵览**:选择学科,生成班级平均分热力图或排名变化图。 - 支持生成此模式下的 AI 分析报告。 ### 5. 自然语言指令 在主界面顶部或 AI 标签页的命令输入框中,输入简单指令即可快速跳转分析。 示例: text ``` 分析8班和36班的数学成绩 对比张三和李四 查看5班的语文分布 ``` 程序将自动识别学生姓名、班级和学科,并切换至对应分析模式、绘制图表、生成报告。 ## ⚙️ 配置大模型 程序内置了以下提供商的默认配置,你也可以手动添加自定义配置: | 提供商 | 默认 Base URL | | :------------ | :----------------------------------------------------------- | | LongCat | `https://api.longcat.chat/openai/v1/chat/completions` | | 阿里通义千问 | `https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions` | | 智谱AI | `https://open.bigmodel.cn/api/paas/v4/chat/completions` | | 月之暗面 Kimi | `https://api.moonshot.cn/v1/chat/completions` | | DeepSeek | `https://api.deepseek.com/v1/chat/completions` | - 所有配置信息保存在 `config.json` 中,API Key 经过 Base64 编码存储。 - 选择 **“自定义”** 后可手动输入任意 OpenAI 兼容接口的 URL 和模型名。 ## 🗂️ 项目结构 text ``` ├── app.py # 主界面与事件处理 ├── ai_client.py # AI 接口调用与报告生成 ├── history.py # 历次考试管理与绘图 ├── plots.py # 各种可视化图表绘制函数 ├── report_builder.py # AI 报告 Prompt 构造 ├── stats_utils.py # 统计摘要生成 ├── data_utils.py # 列识别与数据提取 ├── dialogs.py # 多选/搜索对话框 ├── mode_controller.py # 分析模式切换逻辑 ├── nl_parser.py # 自然语言指令解析 ├── save_helpers.py # 图表保存与配置保存 ├── config.py # 配置文件读写 ├── font_utils.py # 中文字体自动查找 ├── constants.py # 全局常量 ├── utils.py # 向后兼容入口 ├── config.json # 配置文件(自动生成) ├── font_cache.json # 字体缓存 └── reports/ # 生成的 AI 报告存放目录 ``` ## 📄 许可 本项目采用 [MIT License](https://license/) 开源,欢迎自由使用和二次开发。 ## 🤝 贡献与反馈 如果你在使用中遇到问题,或有功能改进建议,欢迎提交 Issue 或 Pull Request。 联系邮箱:jsq_jxez@163.com --- **Copyright © 2026 莒县第二中学电教中心**