# SmartKBS 智慧教学平台 **Repository Path**: shinebug/smartkbs ## Basic Information - **Project Name**: SmartKBS 智慧教学平台 - **Description**: 全学段全学科通用 AI 智慧教学平台。AI 对话与智能学伴、智能题库与组卷导出 Word、在线考试自动批改、课堂互动抢答闯关、分组讨论 AI 助教、学情分析与成长档案、积分称号激励,50+ 功能模块。FastAPI + React 构建,深度集成通义千问与 DeepSeek,支持私有化部署。 - **Primary Language**: Python - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: http://youufis.oicp.net:8086 - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 39 - **Created**: 2026-10-10 - **Last Updated**: 2026-10-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SmartKBS — 智慧教学平台 > **🌐 [中文](README.md) | [English](README.en.md)** > > **面向小学、初中、高中三个学段的 AI 智慧教学平台** — 学科、年级、班级均由配置驱动,**不限定任何一门学科**。 > > 覆盖 **教 · 学 · 练 · 评 · 管** 五条主线,46 个功能分区按主线归为六章,共 50+ 功能点: > > - 🏠 **入口 · 首页与待办** — 智能仪表盘、学生待办清单 > - 🧑‍🏫 **教 · 教学与资源** — 课程大纲、AI 教学助手、智能题库、在线考试、智能组卷与 Word 导出、AI 资源推荐、AI 生成 HTML 资源、资源中心与管理、文件中心 > - 🎓 **学 · 学习与练习** — AI 对话(知识问答)、AI 学伴、课程练习、同步练习、错题巩固、每日精选与热点新闻、代码练习 > - 🎪 **练 · 课堂活动** — 随堂测验、课堂投票、提问管理、知识抢答、分组讨论、协作白板、智能点名与考勤、知识闯关、对话作业 > - 📊 **评 · 学情分析与激励** — AI 学情分析、AI 课堂总结、进度与活动监控、数据导出、成长档案、12 级称号与成就徽章、自动积分奖励 > - ⚙️ **管 · 系统管理** — 用户与权限、系统公告、通知中心、技能管理、系统配置、AI 自我画像、在线增量升级、多主题外观 > > 基于 **FastAPI + React** 构建,接入阿里云 DashScope(通义千问 / 通义万相)与 DeepSeek;SSE 流式输出与 WebSocket 实时链路支撑课堂并发,数据全部落在本地 SQLite 与本地目录,可完全离线部署。 ![版本](https://img.shields.io/badge/版本-8.6.0-blue) ![后端](https://img.shields.io/badge/后端-FastAPI-green) ![前端](https://img.shields.io/badge/前端-React%2019%20%2B%20TypeScript-blue) ![AI](https://img.shields.io/badge/AI-DashScope%20%7C%20DeepSeek-orange) ![许可证](https://img.shields.io/badge/许可证-AGPL--3.0-red) --- ## 目录 - 📋 [项目简介](#intro) · 💡 [核心设计理念](#philosophy) · 🎮 [演示环境](#demo) · ✨ [功能总览](#overview) - 📦 [更新日志](#changelog) · 🚢 [部署安装指引](#deployment) · 🚀 [快速开始](#quickstart) · 📁 [项目结构](#structure) - 💾 [数据存储](#storage) · 👥 [权限总览](#permissions) · 🔧 [技术栈](#tech-stack) · 📄 [许可证](#license) · ❓ [常见问题](#faq) · 📬 [关于](#about) **功能分章**:[首页与待办](#ch-home) · [教学与资源](#ch-teach) · [学习与练习](#ch-learn) · [课堂活动](#ch-practice) · [学情分析与激励](#ch-assess) · [系统管理](#ch-manage) --- > 📌 **V8.6.0 更新亮点**(2026-10-05 ~ 10-09) > > - 🔊 **语音合成与点名播报落地**:音色清单只保留实测可发声的项,多音姓氏自动校正,关闭即零计费、不新增依赖 > - 🧭 **配置不再靠猜**:模型候选集中维护、配置页改下拉,生图与语音各加自检按钮,尺寸按实测边界过滤,配错在保存时即拦下 > - 🧱 **题目入库只留一道关口**:原先 9 处各写各的落库路径合并成一个出口(体检 → 查重 → 单事务 → 连知识点边),不合格题与重复题不再进库 > - 🔁 **凑题只留一份策略**:题库优先 → 缺口交 AI → AI 题必须入库才返回;抢答不再凑重复题,组卷可勾选「缺口补差」(默认关) > - 📏 **题量说话算数**:随堂测验与页面出题的题量都成为真实入参,越界报错而不是偷偷改数 > - 🎨 **协作白板可用性与实时链路重做**:连不上会说清原因、结束可重开、慢学生不再拖住全班、断线自动重连 > - ⏱ **AI 出题不再一口气赌满超时**:输出上限按题量给,超时预算按接入地址分段重试,超时报错会说清等了多久、试过哪个域名 > - 📊 **看板观感与统计口径** + 📱 **手机适配落地** + 🖼 **配图链路治理** + 🏆 **积分防刷** + 🛡 **运维与配置体验** --- ## 项目简介 **SmartKBS** 把备课出题、课堂互动、练习考试、学情分析、荣誉激励和系统运维收敛在同一套账号体系与数据链路里,供一所学校、一个教研组或一位任课老师直接使用,无需拼装多个工具。 系统**不限定学科**。学科清单、年级、班级、题型、称号、AI 模型与提示词模板全部来自配置(`backend/system_config.json` 与数据库主数据表),切换课程体系只改配置、不改代码。平台自身就是从「人工智能」一门课起步、再泛化为多学科通用版式,因此「零学科硬编码」是落地结论而非宣传语。 系统内置**小学、初中、高中**三个学段的年级与班级主数据(一年级 ~ 高三,共 12 个预置年级),教师可持有「高一|高二」这样的多年级任教范围,所有数据读写按任教范围收口。幼儿与高校场景没有内置学段规则,需自行扩展年级主数据。 AI 能力经统一调用服务接入,支持三种模式,并按优先级自动接管、逐级降级: 1. **知识库检索增强(RAG)** — 知识库就绪时接管整条 AI 链路:先检索(百炼知识库,或本地题库与课程大纲),再基于命中文本生成,界面标注引用来源;检索失败自动降级到下一级 2. **百炼智能体应用** — 直接调用配置好的智能体应用 3. **直接调用大模型** — 兜底路径,兼容 DashScope 与 DeepSeek > 📦 **三种部署方式**:Windows 桌面版一键安装(零环境,不需要 Python / Node.js)· 源码包部署 · Git 克隆部署(支持在线增量升级)。详见[部署安装指引](#deployment)。 ## 核心设计理念 - **🧠 AI 原生,但题库优先** AI 嵌在出题、批改、答疑、分析、板书的具体环节里,而不是外挂一个聊天框;同时能靠已有数据解决的绝不重复调用模型——出题与组卷一律「题库优先 → 缺口交 AI → AI 生成的题必须入库留用」,让每一次算力消耗都沉淀成可复用的资产。 - **🎯 因材施教 · 千人千面** 学生端 AI 学伴按自选人格(鼓励型 / 严谨型 / 幽默型)、连续出错的薄弱知识点与学习画像调整回答风格和推荐内容;教师端 AI 助手按任教范围与学科给出备课辅助与学情洞察。 - **🔄 教学闭环 · 数据飞轮** 学习行为采集 → AI 分析 → 个性化反馈 → 行为改善构成闭环:考试、练习、对话、点名的数据回流成学生画像,画像再反哺下一轮的 AI 决策与推荐。 - **⚡ 按需调用,无人使用零消耗** 所有 AI 调用按需触发:精选池用完才补、热点新闻缓存懒加载、AI 摘要不访问不生成、语音合成关闭即零计费。不为闲置算力付费。 **产品特性** | 特性 | 落地方式 | | --- | --- | | 👥 三层角色,各配其 AI | 学生用 AI 学伴陪伴式学习,教师用 AI 助手减负增效,管理员掌握配置与督导,互不干扰 | | 🏆 游戏化激励 | 12 级称号 + 成就徽章 + 自动积分奖励引擎,把外部压力换成持续正反馈 | | 🌐 配置驱动 · 学科无关 | 换学科只改配置与提示词模板,无需修改代码 | | 🔒 本地化优先 | 双 SQLite 库 + 本地目录存数据,可完全离线部署;AI 走国内可达通道,pip 有镜像方案,学生数据不出校 | | 📱 零安装多端 | 手机浏览器直接访问,无需 App、无需额外部署 | | 🖥️ 桌面版一键装 | Electron 壳 + 内置后端与前端产物,目标机器不需要 Python / Node.js | | ⬆️ 在线增量升级 | Git 部署可站内完成拉取、迁移、依赖安装、重启,失败自动回滚 | ## 演示环境 | 用途 | 地址 | | --- | --- | | 开发环境 | [http://youufis.oicp.net:8086](http://youufis.oicp.net:8086) · [https://youufis.oicp.net:8085](https://youufis.oicp.net:8085) | | 部署环境 | [http://183.239.51.37:8086](http://183.239.51.37:8086) · [https://183.239.51.37:8085](https://183.239.51.37:8085) | **测试账号** | 角色 | 用户名 | 密码 | | --- | --- | --- | | 教师 | `youufis` | `ultraultra` | | 学生 | `s11001` ~ `s11009` | `123456` | | 学生 | `s18001` ~ `s19009` | `123456` | > ⚠️ **共享演示环境**:所有访客共用同一个数据库,里面是测试数据,且他人可见你的操作痕迹。请勿填入真实学生姓名、真实成绩或学校涉密资料。 ## 功能总览 六章各对应一条主线,前言里的六行与本表逐条对应(🏠 入口是跨主线的聚合层): | 主线 | 章 | 覆盖的分区 | 数量 | | --- | --- | --- | :---: | | 🏠 入口 | [首页与待办](#ch-home) | 智能仪表盘、学生待办清单 | 2 | | 🧑‍🏫 教 | [教学与资源](#ch-teach) | 课程大纲、AI 教学助手、试题管理、考试发布、智能组卷与 Word 导出、AI 教学资源推荐、AI 生成 HTML 资源、资源中心、资源管理、文件中心 | 10 | | 🎓 学 | [学习与练习](#ch-learn) | AI 对话、AI 学伴、课程练习、同步练习、错题巩固、每日精选与热点新闻、编程实践 | 7 | | 🎪 练 | [课堂活动](#ch-practice) | 课堂互动工具(随堂测验、投票、提问)、知识抢答、分组讨论、协作白板、考勤与点名、对话作业、知识闯关 | 7 | | 📊 评 | [学情分析与激励](#ch-assess) | AI 学情分析、AI 课堂总结、进度详情、活动监控、资源浏览统计、数据导出、积分奖励、课堂积分、荣耀殿堂、成长档案 | 10 | | ⚙️ 管 | [系统管理](#ch-manage) | 用户管理、系统公告、系统配置、技能管理、通知中心、AI 自我画像、在线升级、关于系统、其他系统服务 | 9 | > 各节末尾的 **权限提示**(如「所有用户可用」)标出该功能的可访问角色;完整的角色矩阵见[权限总览](#permissions)。 ### 手机访问 平台可直接用手机浏览器访问,**无需安装 App**。手机端定位是「学生练与查、教师看与批」,管理型重页面保持电脑端专属。 #### 手机已开放的页面 | 角色 | 数量 | 页面 | | --- | --- | --- | | 学生 | 27 | 首页、AI 学伴、错题巩固、每日精选、热点新闻、通知中心、系统公告、课堂提问、知识抢答、待办清单、对话作业、积分称号、考试与成绩、AI 周画像、学伴设置、知识闯关、同步练习、课堂互动、课堂投票、分组讨论与讨论室、文件中心、成长档案、风采展示、我的资源、资源中心、关于系统 | | 教师 / 管理员 | 22 | 首页、AI 助手、通知中心、系统公告、提问管理、AI 课堂总结、学情分析、对话作业批改确认、课堂积分、AI 周画像、分组讨论与讨论监控、闯关记录查看、汇总统计导出、文件中心、成长档案、风采展示、我的资源、资源中心、资源管理、关于系统 | #### 手机端怎么用 - 底部标签栏固定 5 格:首页 / 学伴(教师为助手)/ 错题(教师为提问)/ 通知 / **菜单**,「菜单」打开当前角色全部可用功能 - 未适配的功能在手机端不显示入口;直接输入地址会看到「此功能请在电脑端使用」,可一键返回上一页 - 考试作答、抢答答题、闯关战斗是独立全屏页,选项按钮按触屏放大,倒计时与进度常驻顶部 - 列表类数据(通知、公告、考试、抢答记录、作业、资源)在窄屏自动改为卡片或可横向滚动,标题不会被压成竖排 #### 保持电脑端专属 试题管理与智能组卷、题库维护、用户管理、系统配置、点名管理、活动监控、汇总导出、课程大纲维护、知识闯关管理、代码练习、协作白板、管理控制台 ## 首页与待办 登录后的第一眼:按角色聚合的智能仪表盘与学生待办,是五条主线的统一入口。 ### 系统首页(仪表盘) 登录后默认进入智能首页仪表盘,按角色聚合展示关键数据: **学生端:** - 📋 待完成考试数、已完成考试数 - 🏆 累计课堂积分与班级排名 - ✅ 活跃任务数与本周对话次数 - 📝 待答随堂测验数、已参与投票数 - 📅 待参加的考试列表(一键开始) - 📈 近期考试成绩(得分/是否通过) - 📢 系统公告滚动展示 - ⏱️ 最近活动动态时间线 - 🚀 快速入口(知识问答/考试中心/积分/互动) **教师/管理员端:** - 📊 考试概览(总数/草稿/已发布/已结束) - 📋 任务提交总数与活跃任务数 - 👥 学生总数、教师总数、任教学科 - 🎯 本周点名次数 - 📝 随堂测验总数与进行中数量 - 📊 活跃投票数与回应人数 - 💬 今日对话数 - 🚀 快速入口(AI 对话/考试发布/点名/用户管理/互动) > **所有登录用户可用** --- ### 待办事项(学生任务聚合) 学生端专属任务聚合看板: - 📊 按分类聚合待办事项(考核测评、课程学习、互动课堂、共享资源、系统服务) - 🔴 即将截止高亮提醒 - 🚀 一键跳转到对应功能页面 - 📈 完成进度统计 > **学生可用** --- ## 教学与资源 教师侧从备课到资源沉淀的完整链路:课程大纲、出题组卷、考试发布、AI 生成与共享资源。 ### 课程大纲(课程导学) 课程 → 章 → 节 → 知识点四级树形结构: - **🤖 AI 智能生成**:粘贴文本或上传文件(txt/md/pdf/docx),AI 自动提取课程结构 - **✏️ 手动管理**:添加、编辑、删除课程/章节/知识点 - **🔀 拖拽排序**:同级和跨层级拖拽排序,灵活组织 - **🔗 资源绑定**:为知识点绑定 7 类资源(HTML 课件、下载文件、试题、考试、讨论、随堂测验、任务) - **✅ 学习进度追踪**:学生逐知识点学习,标记完成状态,实时进度条 - **📊 课程进度总览(教师)**:全班学生知识点完成进度矩阵,按年级/班级筛选 - **🏋️ 课程练习**:教师一键为知识点生成 10 道单选题,学生在线作答 > **管理员/教师可管理;学生可查看并标记进度** --- ### 教学助手(教师/管理员专属) 为教师和管理员提供的 AI 教学工具型助手: - **📝 智能备课**:根据课题自动生成完整教案(教学目标、教学过程、课堂活动、作业设计) - **📄 自动出卷**:按知识点/题型/难度生成试卷和随堂测验 - **📊 学情分析**:分析班级或学生个人成绩数据,指出薄弱点和进步空间 - **🎯 活动策划**:设计课堂互动方案(小组讨论、抢答、随堂测验等) - **📋 教学数据侧栏**:实时显示学生人数、考试统计、提交任务、课堂互动等教学概览 - **🎨 视觉差异化**:青绿助手风格气泡与头像 > **教师/管理员可用(智答页面顶部切换)** --- ### 试题管理(智能题库) AI 智能试题管理系统,支持多种题型和多媒体: - **🤖 AI 一键生成**:按科目、题型、知识点、难度和数量自动生成试题 - **📤 智能提取**:支持粘贴文本或上传 .docx/JSON 文件,自动识别题型、选项和答案 - **🧱 入库统一出口**:AI 出题、智能提取与各练习 / 测验补题都走同一道关口(体检 → 查重 → 事务 → 连知识点边),不合格与重复的题不再进库。同一道题只有一条写入路径,判分、查重、选题口径从源头对齐 - **📋 题型支持**:单选题、多选题、判断题、简答题、填空题、作文、主观题 - **📐 公式支持**:全面支持 LaTeX 公式($...$)渲染显示 - **🖼️ 配图系统**: - SVG 绘制技术图示 - 通义万相生成实物图片 - 支持图片生成、预览、删除,并发生成优化 - 图片占位符管理 - **📂 题库管理**:分类筛选、搜索、编辑、删除 - **🔄 AI 生图**:自动为主观题 SVG/图片占位符生成配图 > **管理员和教师可用** --- ### 考试发布(在线考试系统) 完整的在线考试管理系统: - **⚙️ 创建配置**:标题、科目、时长、总分、及格分、题目/选项乱序、答题次数、时间范围 - **📋 组卷方式**: - **智能选题**:按题型/难度/知识点等条件组合筛选,AI 辅助 - **手动选题**:从题库逐题挑选 - **📋 考试流程**:发布 → 学生在线答题(实时倒计时) → 客观题自动批改 → 成绩查看 - **📊 成绩统计**:得分/总分/百分比/是否通过/排名 - **📤 数据导出**:成绩导出为 Excel - **🔔 消息通知**:发布/取消/修改/提前结束时自动通知 > **管理员/教师可创建管理;学生可参加已发布的考试** --- ### 智能组卷 & Word 导出 分步引导式组卷向导,支持智能选题与专业文档导出: - **📋 配置向导**:题型题量配置、难度分布、知识点范围筛选 - **🤖 AI 智能选题**:按知识点智能匹配 - **🔌 缺口补差**:默认只报缺口;勾选后题库不足的部分由 AI 出题补齐并入库 - **📊 规则选题**:按难度比例随机抽取 - **📊 组卷统计面板**:实时题型/难度分布、总分,支持手动移除题目 - **📄 Word 导出**(三份文档): - **试卷**:学生用,含答题线 - **答案卷**:红色标注答案 + 蓝色解析 - **答题卡**:标准答题卡格式 - **📐 LaTeX 公式渲染**:matplotlib 渲染为图片嵌入 - **🖼️ SVG 自动转 PNG**:确保 Word 兼容性 - **📦 题型排序**:单选题 → 多选题 → 判断题 → 填空题 → 简答题 → 作文 → 主观题 > **管理员和教师可用** --- ### AI 教学资源推荐 根据知识点内容智能推荐教学资源: - **🔍 智能分析**:AI 分析知识点内容自动推荐关联资源 - **📋 推荐类型**:HTML 课件、考试试卷、课堂讨论、随堂测验、任务 - **🔗 一键绑定**:推荐资源可直接绑定到知识点 - **📄 AI 生成课件**:AI 可根据知识点自动生成完整 HTML 课件 > **管理员和教师可用** --- ### AI 生成 HTML 资源 在资源中心直接使用 AI 生成 HTML 教学资源: - **📄 5 种资源类型**: - 🎬 **动画讲解**:3D 视差、粒子动画等技术生动讲解知识 - ✍️ **互动答题**:卡片式交互答题,含选择题和即时反馈 - 📝 **章节练习**:结构化习题,含题号导航和提交按钮 - 🧪 **实验交互**:算法可视化、数理化实验、AI 交互仿真 - 🎨 **自定义 HTML**:自由输入主题,按需生成任意 HTML - **🎭 主题选择**:每种类型提供多套预设主题 - 动画 17 种、答题 20 种、练习 10 种、实验 12 种 - **📚 题库 + AI 混合出题**:自动匹配题库题目,不足由 AI 补充;题目数量可在生成前指定 - **💾 AI 新题自动入库**:AI 生成的题目自动保存到题库 - **🔗 学科/年级智能关联**:根据学科和年级获取对应题库 #### 实验交互资源详情 覆盖 **9 大学科分类**: - 🔬 **算法与编程**:排序/搜索可视化、数据结构、编译原理 - 📐 **数学**:函数曲线调参、几何证明、概率统计、微积分 - ⚡ **物理**:力学仿真、电路模拟、光学实验、热力学循环 - 🧪 **化学**:分子结构、化学反应、元素周期表、滴定实验 - 🧬 **生物**:细胞结构、DNA 复制、生态系统、遗传杂交 - 🌍 **地理与天文**:地图投影、气候模拟、太阳系模型、板块运动 - 🏛️ **人文与社会**:历史年表、经济模型、语法分析、配色实验 - 🤖 **人工智能**:CNN 可视化、图像分类、Transformer 注意力机制 - 🎯 **通用交互**:拖拽点击、图表联动、自定义仿真 **多文件子目录结构**(复杂资源) **配图增强**:AI 自动规划并生成 SVG 教育示意图 + 通义万相实景配图 > **管理员和教师可用** --- ### 资源中心(共享中心) 以卡片网格展示 HTML 教学资源文件: - **👁️ 卡片浏览**:缩略图 + 文件名称 - **🔗 共享操作**: - **管理员共享**:可选择「所有人」「指定教师」「指定年级/班级」 - **教师共享**:选择「管理员和教师」+「自己的班级」 - **🔍 搜索筛选**:按文件名搜索 - **🗂️ 统一浏览器**:学生端「共享资源」、教师端「共享给我的」与学生端「共享文件」共用同一套浏览界面(未看·时间·类型·课程·共享者·范围六维分类 + 网格/列表双视图 + 偏好记忆) - **🔗 直达定位**:任务清单与共享通知点进去直接落到对应标签页,不会先跳回默认页再让人自己找 - **🤖 AI 生成**:5 种资源类型(动画讲解、互动答题、章节练习、实验互动、自定义 HTML) - **👁️ 资源浏览统计**:自动记录学生查看行为 > **所有登录用户可用;学生仅查看共享资源** --- ### 资源管理 上传/删除/重命名教学资源文件: - 📤 上传文件、目录(HTML/CSS/JS/图片/文档等) - 🗑️ 删除与重命名 - 📁 每位教师拥有独立资源目录 - 🔗 文件共享操作(同资源中心共享) - 📊 配额管理 > **管理员和教师可用** --- ### 文件中心 下载目录文件管理: - 📤 上传 / 📥 下载 / 🗑️ 删除 - 📊 配额管理(按教师独立配额) - 📁 子目录支持 - 🔗 目录共享(整个目录自动继承权限;接收方显示为「文件夹」条目,内含文件数与总大小一目了然) - 🗂️ 统一资源浏览器:与「共享资源」共用分类侧栏 / 统计条 / 网格·列表双视图 / 搜索排序分页与偏好记忆 - 👁️ 学生可查看共享文件,并记录未看·已看与浏览量(首次浏览奖励 1 分) > **管理员和教师可用;学生可查看共享文件** --- ## 学习与练习 学生侧的答疑与练笔:知识问答、AI 学伴、知识点练习与定向练习、错题巩固、视野拓展与编程实践。 ### AI 对话(知识问答) 核心智能问答界面,基于 SSE 流式传输,提供流畅的 AI 对话体验: - **⚡ 流式对话**:AI 实时逐字输出回复,即时反馈 - **📎 文件上传**:支持图片(JPG/PNG/GIF)和文档(PDF/Word/Excel/PPT/TXT/MD 等) - **👁️ 图像理解**:上传图片调用视觉模型识别分析 - **🖼️ 多模态对话**:启用多模态后支持图片+文本同时输入,由多模态模型直接理解,无需文件摘要 - **📄 文件摘要增强**:自动对上传文档进行摘要,增强 AI 对话上下文 - **🔍 RAG 知识增强**:从试题库和课程大纲中检索相关知识,提升回答准确性 - **📜 历史记录**:自动保存并按会话标题显示,今天/昨天/按月分组,支持标题与正文搜索、悬浮预览、重命名与下载 - **👁️ HTML 预览**:对话中 HTML 代码块可一键预览 - **📋 示例提示词**:内置多个教学场景示例,一键填充 - **🎭 三种模式**:智答模式 / 学伴模式(学生)/ 助手模式(教师/管理员) - **🎤 语音输入**:支持麦克风语音转文字输入 - **📷 拍照上传**:支持摄像头拍照直接上传 > **所有登录用户可用** --- ### AI 学伴(学生专属) AI 对话的智能升级模式,为学生提供个性化的学习陪伴体验: - **👤 专属学习伙伴**:AI 学伴知道学生的姓名、年级、学习进度和薄弱知识点 - **🔄 三种人格切换**: - 🌟 **鼓励型**:温暖热情,充满正能量,多用鼓励用语 - 📐 **严谨型**:严谨细致,注重分析「为什么错」「怎么改」,举一反三 - 😄 **幽默型**:风趣幽默,适度用梗和调侃让学习不枯燥 - **📊 学习画像侧栏**:实时显示称号、积分、薄弱知识点、考试趋势、连续学习天数 - **🔔 主动推送**:早安问候、考试结果分析、称号升级祝贺、学习提醒 - **💾 对话历史统一管理**:与智答模式共用聊天历史系统 - **⚙️ 自定义设置**:可自定义学伴名称、人格、开关学伴、每日唤醒时间 - **🎨 视觉差异化**:紫色学伴风格气泡与头像 > **学生可用(智答页面顶部切换)** --- ### 课程练习(知识点练习) 基于课程大纲知识点的 AI 练习系统: - **🤖 AI 自动出题**:教师为知识点一键生成 10 道单选题 - AI 从题库智能搜索合并匹配题目 - 差额由 AI 补全新题 - 新题自动入库 - **✍️ 学生在线作答**:在课程学习页面点击知识点直接练习 - **🏆 自动积分奖励**: - 参与基础分:2 分 - 优秀(≥90%):+15 分 - 良好(≥75%):+10 分 - 及格(≥60%):+5 分 - **📊 数据展示**:首页看板展示完成数与平均正确率 - **📋 成长档案集成**:个人档案页集成练习明细 > **管理员/教师可出题;学生可参与练习** --- ### 同步练习(AI 定向出题) 教师从错题本或知识点生成针对性练习题,推送至班级或指定学生: - **🤖 AI 出题**:从错题本或知识点自动生成针对性练习题 - **📤 定向推送**:推送至班级或指定学生 - **✍️ 学生作答**:在线答题,支持选择题和简答题 - **🤖 AI 自动批改**:简答题自动批阅 - **⚡ 异步出题**:不阻塞界面,支持后台生成 - **📊 练习记录**:历史练习查看与成绩统计 > **管理员/教师可出题;学生可参与** --- ### 错题巩固 自动归集学生错题,AI 辅助复习: - **📋 错题归集**:按考试归类展示错题 - **✅ 自主标记已掌握**:每道题可标为「已掌握」也随时取消,配合待掌握/已掌握/全部三档筛选,学生自己决定还要不要继续练 - **📐 多媒体展示**:支持 LaTeX 公式和配图显示 - **🤖 AI 复习计划**:一键生成个性化复习报告(错题分析、知识点复习建议、针对性练习题) - **👁️ 三级联动查看(教师)**:按年级 → 班级 → 学生逐级筛选 - **📊 错题统计**:各科错题数和正确率 > **学生查看自己;教师/管理员可查看全班学生** --- ### 每日精选 & 热点新闻 知识拓展双模块,让学生在学习之余轻松拓宽视野: - **📖 每日精选**:AI 趣味知识卡片池,每人随机抽取 6 张, 7 天去重窗口,支持收藏与手动刷新。智能知识池按需补充, 无人用时不消耗 AI,浏览可获积分与徽章。 - **📰 热点新闻**:RSS 聚合多个主流新闻源(中新网、IT之家等), AI 按需摘要 + 学科关联,支持今日简报、收藏与分页浏览(不再只能看到前 20 条)。 2h 缓存懒加载,72h 滚动清理,无人访问零抓取;源清单可在系统配置中修改,单源失效自动熔断并切备用源。 > **所有用户可用** --- ### 编程实践(代码练习) 在线编程练习与自动评分系统: - **教师端**: - 创建编程题目(题目描述、测试用例、示例代码) - AI 代码审查 - 查看提交统计和学生代码 - **学生端**: - 在线编码(语法高亮,支持 Python) - 运行调试(自定义输入) - 提交评分 - **🤖 自动评分引擎**: - AST 静态分析 + 沙箱执行 - 逐用例比较输出 - 支持 Python - 超时控制(10秒) - **🔒 安全沙箱**: - 危险模块黑名单 - 危险函数拦截 - 临时目录隔离 > **所有登录用户可用** --- ## 课堂活动 一节 40 分钟课里的实时互动与组织工具:测验、投票、提问、抢答、讨论、白板、点名、闯关与对话作业。 ### 课堂互动工具 #### 随堂测验 课堂即时测验系统: - ✏️ 可视化编辑器创建(单选/多选/判断) - 🤖 AI 一键生成(指定主题/题型/数量):题库优先,缺口由 AI 补题并入库复用 - 📊 自动评分与结果统计 - 📐 支持 LaTeX 公式和配图 - 📤 数据导出 #### 课堂投票 课堂即时投票系统: - 📋 单选/多选模式 - 🤖 AI 自动生成投票主题 - 📊 实时柱状图统计结果 - 👥 参与人数实时显示 #### 提问管理 学生提问与教师审批一体化管理: - 🙋 **学生提问**:学生发起提问(支持匿名) - 🤖 **AI 辅助回答**:AI 自动生成建议回答,教师可修改后发布 - 👨‍🏫 **教师回答**:教师直接回答或审批通过学生的回答 - ✅ **审批机制**:教师可标记学生回答为「已通过」或「未通过」 - 🔒 **权限控制**:仅本班学生和教师可见 > **学生可提问;教师可管理回答与审批** --- ### 知识抢答活动 实时多人在线抢答竞赛系统: - **教师端**: - 创建抢答房间(设置限时、题目数量、科目) - 题目来源:题库优先,缺口由 AI 补题并入库;AI 也拿不到题时才用内置题,且不重复凑数 - 控制抢答进程(开始/下一题/结束) - 查看实时排行榜 - **学生端**: - 输入 6 位房间码加入 - 限时作答(速度递减计分) - 连击加分(连对 5 题 2 倍得分) - 实时排名 - **计分规则**: - 速度计分:0-3 秒 100 分,3-7 秒 70 分,7-11 秒 40 分,11+ 秒 20 分 - 连击倍率:连对 2 题 1.2x,3 题 1.5x,4 题 1.8x,5+ 题 2.0x - 连续答错 3 题扣 10 分 - 全对额外 1.2x 奖励 - 📊 **活动回顾**:排行榜、每题正确率统计 > **管理员/教师可创建管理;学生可参与抢答** --- ### 分组讨论(AI 助教) AI 助教辅助的课堂分组讨论系统: - **创建讨论**: - 分组模式:不分组(自由讨论区)/ 自动分组 / 随机分组 - AI 助教角色:旁观者 / 引导者 / 主动参与 / 辩论裁判 / **综合角色(智能切换)** - AI 智能生成讨论方案(支持 Markdown 格式标题与说明) - **参与讨论**: - 学生进入讨论室实时聊天,可展开查看讨论主题说明 - AI 助教根据角色自动参与 - 实时消息推送(WebSocket) - **讨论管理**: - 👁️ **监控面板**:教师实时查看所有分组动态 - 🛡️ **内容审核**:自动检测不当发言,违规扣分 - ⏹️ **结束讨论**:AI 自动生成结构化总结报告 - 📄 **Word 导出**:AI 总结可导出为 Word 文档 - 📊 **总结报告**:关键观点、AI 评价、小组评分 > **管理员/教师可创建管理;学生可参与本班讨论** --- ### 协作白板(AI 白板助手) 基于 TLDraw 的实时协作白板系统,内置 AI 白板助手侧栏: - **三种教学模式**: - 📺 **演示模式**:教师展示,学生仅观看 - 🤝 **互动模式**:教师授权后学生可操作 - 📝 **自习模式**:学生独立操作 - **🔗 房间系统**:教师创建房间(支持班级/课程/临时类型),学生输入 6 位房间码加入 - **👥 实时成员管理**:在线成员列表,显示当前在线的学生 - **🎨 白板工具**:画笔、形状(矩形/椭圆/菱形/箭头)、文本、便签、图片、激光笔 - **📄 多页面支持**:支持多页白板,缩略图导航 - **🤖 AI 白板助手**(教师专属): - 💬 **流式对话**:AI 结合白板当前内容进行上下文问答,支持视觉增强理解 - 🖼️ **生成图示**:根据描述自动生成教学图示(SVG 优先) - 📝 **一键板书**:根据知识点自动生成结构化板书内容 - ✨ **美化排版**:对白板上杂乱内容重新排版为清晰美观的板书 - 🏷️ **智能批注**:对选中内容自动分析并给出标注建议 - 🌳 **思维导图**:根据板书内容自动生成结构化思维导图 - 🌐 **中英双语**:将板书内容一键转换为中英对照双语版 - 💡 **教学建议**:根据当前白板内容推荐下一步教学思路 - ❓ **随堂提问**:根据板书自动生成课堂练习题 - 🔍 **解答题目**:识别白板中图片上的题目并进行解析 - 👁️ **视觉理解**:切换视觉模式,通过多模态模型看懂白板图片内容 - 📄 **导出总结**:AI 生成结构化课堂总结并导出为 Word 文档 > **管理员/教师可创建管理;学生可参与** --- ### 考勤与点名管理 智能点名 + 考勤统计一体化管理: - **🎲 权重随机点名**:每个学生具有动态权重,被点到后权重衰减, 覆盖超过 60% 学生后自动重置权重,保证公平 - **🗣 点名语音播报**:点到谁就念出谁的姓名(多音姓氏自动校正读法),由管理员在系统配置中启用 - **✅ 点名记录**:标记正确/错误,查看历史记录与统计 - **📊 点名统计**:按人统计被点次数与正确率 - **📝 考勤记录**:自动记录每次登录的时间、IP、浏览器信息 - **📅 历史追踪**:完整的历史登录记录 - **👁️ 权限控制**:教师仅查看本班,管理员可查看全部 > **管理员/教师可用** --- ### 对话作业 教师布置一个主题,学生与 AI 对话完成学习后把对话记录提交上来,教师逐个批改: - **教师端**: - 创建作业(名称/要求/面向范围),或点「AI 创建作业」把一句话想法变成可编辑草稿 - 作业要求即批改依据:AI 先拆成 3-5 条要求点,再逐条对照对话找证据评分 - AI 智能批改(三维度:完成度、理解深度、表达质量):可一次批完全班(含全班总结与各要求点达成情况),也可在学生行上只批某一个人 - 每个作业标出待批改份数,可一键「只看待批改」(首页待办徽标直达此筛选) - 查看详情逐个阅读学生提交的对话与要求原文,撤销提交、结束作业 - **学生端**: - 查看进行中的作业与完整作业要求 - 在「知识问答」里聊完后一键提交当前对话 - 查看 AI 评分、要求点达成情况与评语建议 - **📖 使用说明**:标题旁「使用说明」按钮,学生端与教师端各一套分步指引 - **🧮 公式渲染**:对话内容与作业要求中的公式都能正常显示,写在文字同一行的也可以 > **所有用户可用,按角色功能区分** --- ### 知识闯关 AI 即时出题的百科答题挑战: - **🎯 闯关规则**:限时答题(每题 30 秒),答错即终止,最多 15 题 - **🤖 AI 出题**:由 AI 即时生成百科题目(支持题库模式) - **💡 三种锦囊**(每局限用一次): - 🎯 去伪存真:排除一个错误选项 - 📞 远程连线:AI 给出提示 - 👥 群策群力:AI 模拟投票结果 - **📊 计分规则**:阶梯计分(第 1 题 10 分 → 第 15 题 50 分),锦囊折减 - **🏆 成就徽章**:初出茅庐 / 闯关新秀 / 闯关达人 / 闯关大师 / 闯关传奇 / 一站到底 / 十连斩 - **📊 教师管理**:查看学生闯关记录、闯关题库管理、AI 批量生题 - **📋 闯关历史**:统计总次数、最高正确数、总分 > **学生可参与;教师/管理员可管理题库和查看记录** --- ## 学情分析与激励 行为数据回流成画像,画像反哺教学,再以积分、称号与荣誉形成持续正反馈。 ### AI 智能学情分析 利用 AI 对教学数据进行深度分析: - **📊 班级学情报告**: - 整体评价 - 学习亮点 - 薄弱环节分析 - 教学改进建议 - 支持 Word 导出 - **📋 考试分析报告**: - 分数分布统计 - 逐题正确率分析 - 班级对比 - 教学改进建议 - **📤 数据导出**:支持导出为 Word > **教师和管理员可用** --- ### AI 课堂总结 AI 对课堂互动数据进行综合分析: - **🤖 智能分析**:AI 分析随堂测验、投票、提问等互动数据 - **📋 总结报告**:总体情况、参与度分析、知识点掌握度、教学建议 - **📄 Word 导出**:支持导出为 Word 文档 - **📊 班级筛选**:按年级/班级选择分析范围 > **教师和管理员可用** --- ### 进度详情 课程进度与学习进度综合分析: - **📖 课程进度**:按课程查看全班学生的章节/知识点完成情况,展开可看明细 - **📊 学习进度**:按班级查看学生综合统计(课程进度/完成率/正确率/连续学习天数),支持筛选单个学生 - **🔍 权限控制**:教师仅见自己班级,管理员可见全部 > **教师和管理员可用**** --- ### 活动监控(教学督导) 教师查看各类教学活动的完成情况: - **📋 活动类型**:考试、智能练习、知识抢答、任务、随堂测验、代码练习、分组讨论、投票、课程练习 - **👥 完成状态**:已完成 / 未完成学生列表 - **📊 成绩概览**:简要成绩和统计数据 - **🔍 多维筛选**:按活动名称、年级、班级筛选 - **📥 数据导出** #### 活动数据重置(清参与数据、留活动内容) 9 类活动(考试 / 智能练习 / 知识抢答 / 在线任务 / 随堂测验 / 代码练习 / 分组讨论 / 快速投票 / 课程练习)均提供「重置」入口: - **🧹 清什么**:学生参与产生的数据(答卷、提交、投票、发言、组员与小组报告、AI 批改结果、资源浏览与学习进度),以及派生数据(积分流水、活动关联通知、错题本条目) - **📦 留什么**:活动内容本身全部保留 —— 题目与选项、试卷结构与分值、代码题面与测试用例、讨论配置、房间码、任务 ID 等;被删除的参与记录不可恢复 - **🔎 先看后删**:弹窗内先做干跑预览,逐条列出将清理的数据项与条数;调整勾选项即时重算,看到的数字就是会删除的数字(预览与执行同一份口径) - **🔁 状态回滚**:可选把活动状态退回「可重新参与」(如考试 已结束 → 已发布、知识抢答 进行中 → 等待中),不清内容 - **⌨️ 二次确认**:须原样输入活动名称;口令由服务端校验,直接调用接口也无法绕过 - **📩 学生告知**:可向受影响学生推送回执,回执按界面语言渲染(英文界面不残留中文) - **🧮 积分口径**:回收该活动积分流水后立即重算受影响学生总分,与每日对账同口径,不做升级判定 - **🛡️ 权限**:管理员可重置全部(重置他人活动会在审计中标记为代操作);教师仅能重置本人创建的活动,课程练习按「资源共享人 + 本人任教年级」双重判定;学生界面无入口且接口一律拒绝 - **📝 审计留痕**:每次重置都留下完整审计记录:操作者与角色、活动标识与名称、勾选项、删除明细与行数、回收积分、影响人数、通知人数、时间 > 所有活动类型共用同一套重置流程(选范围 → 预览 → 确认 → 审计留痕),新增活动类型自动获得同样的能力。 --- ### 资源浏览统计 追踪学生查看 HTML 和下载资源的行为: - **📊 统计概览**:活跃学生数、总浏览数、已浏览资源数 - **📋 资源明细**:每份资源的浏览人数、浏览时间 - **👤 学生明细**:每位学生的资源浏览详情 - **📚 知识点绑定**:按课程知识点查看资源查看情况 - **🏆 积分奖励**:首次浏览共享资源自动奖励 1 分 > **教师和管理员可用** --- ### 数据导出 支持将各类数据导出为 Excel/CSV: - 📊 考试成绩导出 - 📊 跨活动成绩汇总导出:各类活动得分与完成情况按年级/班级/学生/活动类型/时间筛选,导出多表 Excel 或 CSV - 📊 点名记录导出 - 📊 课堂互动数据导出 - 📊 活动监控数据导出 - 📊 资源浏览统计导出 > **教师和管理员可用** --- ### 积分奖励体系(自动奖励引擎) 全自动积分激励机制,覆盖所有课堂活动: - **参与活动自动获分**: | 活动类型 | 基础分 | 等级奖励 | | --- | :---: | :---: | | 随堂测验 | 2 | ✅ | | 快速投票 | 2 | ❌ | | 课堂提问 | 2 | ✅ | | 考试 | 2 | ✅ | | 同步练习 | 2 | ✅ | | 分组讨论 | 2 | ✅ | | 点名签到 | 2 | ❌ | | AI 对话 | 2 | ❌ | | 任务 | 2 | ✅ | | 学习进度 | 2 | ❌ | | 每日登录 | 1 | ❌ | | 代码练习 | 2 | ✅ | | 知识闯关 | 1 | ✅ | | 知识抢答 | 2 | ✅ | | 课程练习 | 2 | ✅ | | 资源浏览 | 1 | ❌ | | 每日精选 | 1 | ❌ | | 热点新闻 | 1 | ❌ | - **等级奖励**:优秀(≥90%)+15 / 良好(≥75%)+10 / 及格(≥60%)+5 - **🏅 12 级称号系统**:初窥门径 → 筑基学徒 → 勤学新人 → 知识猎人 → 解题能手 → 逻辑新星 → 学业先锋 → 班级学霸 → 创新领袖 → 全能学神 → 传奇大师 → 至高贤者 - **🎖️ 成就徽章**:崭露头角、满分达人、学习之星、刷题达人、全能选手、AI 探索者、讨论之星、准时达人、点名达人、全勤标兵、闯关系列徽章等 - **🏫 班级排名**:总积分排名 - **📊 积分规则页**:展示所有积分来源和规则 > **管理员/教师可用;学生可查看** --- ### 课堂积分(班级管理) 课堂积分激励系统: - ⭐ 每位教师独立管理积分 - 📊 积分排行榜(班级内排名) - 👥 学生管理(加减分操作) - 💾 数据持久化至数据库 - 📤 支持导入/导出 > **管理员/教师可用;学生可查看** --- ### 荣耀殿堂(学生荣誉展示墙) 学生成就集成展示页,汇聚积分、称号、徽章等荣誉于一墙: - **🎴 卡片展示**:每位学生一张荣誉卡片,展示称号横幅、积分星级、徽章墙、学科称号 - **🎨 10 套渐变主题皮肤**:金色荣耀、深海探秘、森林物语、落樱缤纷、极光幻境、日落余晖、星际漫游、玉瓷雅韵、烈焰斗志、极简素白 - **🔄 主题自适应**:12 级称号自动映射主题,支持手动切换(🎨 调色板按钮) - **❤️ 点赞互动**:卡片点赞 + 粒子动画效果,浏览记录统计 - **🔍 多维筛选**:按年级/班级/姓名搜索,支持多维度排序(积分/称号等级/点赞数/浏览数) - **👨‍🏫 教师管理**:按任教年级/班级控制权限,支持批量生成/刷新/删除 - **🔄 自动同步**:每次生成自动拉取最新积分、称号、徽章数据 > **所有用户可查看;教师/管理员可管理** --- ### 学生成长档案 全维度学习数据聚合画像: - **📋 综合摘要**:AI 生成的个性化学习评价 - **📊 五维统计**:考试、积分、点名、任务、对话 - **📈 成绩走势图**:各次考试成绩变化趋势 - **🏆 积分趋势图**:积分累积变化曲线 - **⏱️ 成长时间轴**:所有学习活动按时间线展示 - **📄 Word 学习报告导出** - **👁️ 权限控制**:学生查看自己,教师/管理员可查看任何学生 - **📊 课程练习集成**:练习统计与明细 > **所有登录用户可用** --- ## 系统管理 账号、配置、AI 技能、通知、升级与运维。 ### 用户管理 完整的账号管理体系: - **📝 注册用户**:支持管理员/教师/学生三种角色 - **✏️ 信息更新**:修改用户名、班级、年级、姓名、性别、角色、任教学科 - **🔑 修改密码**:所有用户可修改自己的密码;管理员可重置他人密码 - **🗑️ 删除用户**:逐条或批量删除 - **📤 CSV 导入**:批量导入用户 - **🔍 筛选搜索**:按角色/年级/班级筛选,按用户名/姓名搜索 - **🏫 教师任教管理**:设置教师任教年级班级学科 - **🧩 班级维护**:查看各班在读人数与任教安排,可清理无人的空壳班级(仅管理员) - **📊 批量升/降年级**:一键预览并执行,智能同步积分和点名数据 - **🔒 安全设置**:密保问题(忘记密码自助找回) - **🔐 单点登录**:Token 版本控制,异地登录踢出 > **管理员和教师可用;学生仅改密** --- ### 系统公告 发布和管理系统公告: - **📝 发布公告**:标题、内容、优先级(普通/重要/紧急) - **📌 置顶功能**:重要公告置顶显示 - **👥 可见范围**:按角色(学生/教师/管理员)、年级、班级限定 - **📋 公告列表**:分页展示,按优先级排序 - **✏️ 编辑/删除**:管理已发布的公告 > **所有用户可查看;管理员和教师可发布** --- ### 系统配置 集中管理系统所有配置参数: - **🏷️ 品牌信息**:平台版本名称、单位名称 - **🔑 API 密钥**:DashScope API Key - **🤖 模型配置**:APPID、API 地址、默认对话模型、长文本模型、视觉模型、多模态开关(模型均为下拉可选) - **💬 AI 对话设置**:对话权限角色、每日请求限额(启用开关 + 上限次数) - **⚙️ 系统限制**:文件大小限制、Token 有效期、在线超时、IP 防护与登录闸门 - **🔊 语音合成**:启用开关、合成模型(两代可选)、音色(按模型分组的实测音色下拉,换模型自动跟随)、语速、音量、合成自检 - **📚 课程设置**:课程名称列表、试题题型 - **🔔 消息通知**:启用的通知类型 - **📁 文件类型白名单**:图片/文档扩展名 - **🎨 图片生成**:生图开关、模型(下拉,两代通道自动分派)、尺寸(默认自动,档位随模型)、单题自动配图上限、生图自检 - **⚡ 闯关挑战**:出题模式(题库/AI) > **仅管理员可用** --- ### 技能管理 模块化 AI 技能文档系统,通过 YAML + Markdown 定义每个技能的行为,按场景自动注入到 AI 调用: - **🧩 20 个预置技能**:8 个通用核心 + 12 个领域专精 - **🎯 按场景注入**:控制技能只注入匹配的场景 - **⚡ 质量三阶增强**:深度分析 → 结构化输出 → 自我审查 - **📋 可视化管理**:列表搜索、类型筛选、分页、全部开启/关闭 - **🔍 详情预览**:查看技能文档原始内容、版本、标签、优先级 - **🛡️ 安全降级**:技能出错时自动跳过,不影响原有功能 > **仅管理员可用** --- ### 通知中心 实时消息通知系统: - 🔔 顶栏铃铛实时显示未读通知数量 - 📋 通知列表(全部/未读筛选) - ✅ 标记已读 / 全部已读 - 🗑️ 删除通知 - 🔄 自动触发场景: - 考试发布/变更/结束 - 资源共享 - 版本更新通知 - 提交批改完成 - ⚙️ 通知类型可在系统配置中启用/关闭 > **所有登录用户可用** --- ### AI 自我画像 基于通义万相模型生成的个性化 AI 画像: - **🤖 AI 生图**:根据用户平台数据(积分、称号、学习/教学数据)生成专属画像 - **🎭 15 种创意风格**: 🔮 魔法学院 | 💻 赛博学霸 | 🖌️ 国风墨韵 | 🚀 星际探险 | 💥 热血漫画 🧚 童话精灵 | ⚙️ 蒸汽朋克 | 🎮 像素世界 | 🎭 敦煌飞天 | 🌌 极光幻境 🦸 超级英雄 | ⚔️ 圣殿骑士 | 🦋 赛博精灵 | 🐚 海洋探险 | ⏳ 时光旅者 - **📝 创意寄语**:大模型根据用户数据自动生成风格各异的寄语(武侠、星际、古风等体裁) - **👤 角色感知**:根据学生/教师/管理员自动调整画像身份和寄语语气 - **♀️♂️ 性别精准**:读取用户性别信息,确保画像性别正确 - **🖼️ 个人画展**:历史画像按时间线展示 - **🌐 分享画廊**: - 全校画廊 / 本班画廊 / 热门推荐 - 点赞互动 - 三种隐私范围:公开 / 本班可见 / 私密 - **⏰ 生成限制**:每周一次 > **所有登录用户可用** --- ### 在线升级系统(版本管理) 基于 Git 的在线增量升级系统: - **🔍 检测更新**:自动对比 GitHub 最新版本 - **📥 增量升级**:自动执行 git fetch → git reset → 数据库迁移 → pip 安装 → 重启 - **📊 进度可视化**:实时进度条和日志输出 - **⏪ 一键回滚**:升级失败自动回滚,也可手动回滚 - **📋 升级历史**:完整记录每次升级详情(时间、版本、变更文件列表) - **🔧 环境诊断**:自动检测 Git 安装、.git 目录、远程配置、网络连通性 - **🤖 后台自动检测**:每 6 小时自动轮询,发现新版本通知管理员 - **🔒 文件锁**:防止多 IIS Worker 并发升级 > **仅管理员可用** --- ### 关于系统 | 功能 | 说明 | | --- | --- | | ❓ **关于系统** | 查看说明文档 | --- ### 其他系统服务 | 功能 | 说明 | | --- | --- | | 🔑 **修改密码** | 所有用户可修改自己的密码 | | 🔐 **忘记密码** | 通过密保问题自助找回密码 | | 🗑️ **临时文件清理** | 自动清理超过 24 小时的临时上传文件 | ## 更新日志 当前版本 **8.6.0**(2026-10-05 ~ 10-09)。按版本列出读者可感知的变化,逐条实现细节见提交记录。 ### v8.6.0(2026-10-05 ~ 10-09) - 🔊 语音合成与智能点名播报落地,多音姓氏自动校正,关闭即零计费 - 🧭 模型候选集中维护、配置页改下拉、生图与语音加自检,配置错误在保存时拦下;入口页不再被缓存;新增登录页访问统计 - 🧱 题目入库合并成一个出口:不合格题拒收、重复题判重回填、AI 题当天进选题引擎、配图统一清洗 - 🔁 凑题策略统一到「题库优先 → 缺口交 AI → AI 题入库才返回」;抢答不再凑重复题;组卷可选「缺口补差」(默认关) - 📏 随堂测验与页面出题的题量成为真实入参,越界直接报错;异步生成路径与同步路径行为一致 - 🧮 卷面分值口径、选题引擎、导出显示、拖拽排序与按学生乱序一批收口;AI 生成改后台任务 - 🎨 协作白板可用性与实时链路重做(连不上有原因、结束可重开、慢学生不拖全班、断线自动重连) - ⏱ AI 出题按题量给输出上限,超时预算按接入地址分段重试,超时报错说清等待时长与试过的域名 - 📊 看板观感与图表重做、最近动态降噪,并尊重系统「减弱动态效果」 - 🧪 回归测试新增 134 条,全量 802 通过 1 跳过 - ⚠️ **破坏性变更**:无。题量越界由静默改数变为报错;白板与出题这两批改动需重启后端才生效;换接入地址重试时同一条提示词可能被计费两次 ### v8.5.0(2026-10-03 ~ 10-04) - 🧮 卷面分值成为硬不变量,配平与卷面体检默认只试算、确认才执行 - 🔒 在途答卷锁卷:有人作答时拒绝改题并说明是谁还在答 - 🎯 选题三套引擎并成一套;题目拖拽排序与按学生确定性乱序真正生效 - 🔢 导出显示修复(中文配图、公式、填空位);抬头随考试落库 - 📱 手机适配落地;🖼 配图链路治理;🏆 积分防刷与荣誉收口 - 🔐 管理员登录历史与三个登录开关;🧠 技能注入按场景白名单收口;🧪 新增 130+ 条回归测试 - ⚠️ **破坏性变更**:无(历史卷子已有重复题时,唯一约束降级为普通索引并记日志,不删数据) ### v8.0 – v8.4 (2026-09-05 ~ 2026-09-29) - 🔒 **鉴权与越权收口**:逐功能体检 16 轮,收紧匿名读取与跨教师写入;活动与资源限本人任教班级,密钥掩码回显 - ⏱️ **AI 调用全面异步化**:批改移出请求线程、交卷加幂等回执、长任务各自配超时,流式输出修复并加启动自检 - 🎯 **课堂活动稳定性**:抢答全员答完自动推进、重置后可安全重开;闯关开局即返回、余题后台补货;编程题归口「代码练习」 - 🧮 **积分与数据口径**:9 类活动支持「清参与数据、留活动内容」的重置(干跑预览 + 二次确认 + 可回滚 + 全程审计),删改后立即重算总分 - 📝 **教学主流程**:「任务管理」升级为「对话作业」按教师要求逐条找证据;公式渲染统一 23 处;历史记录按会话分组可搜可改名;四表成绩一键导出 - 📚 **知识库接管 AI 链路**:出题 / 教案 / 批改 / 学情 / 白板统一「先检索再生成」,失败自动降级并展示引用来源 - 📰 **资讯与看板重构**:RSS 换源校验 + 熔断 + 备用源池,今日简报冷启动 57.2s → 6.6s;教师端改为待办驱动 - ⚠️ **破坏性变更**:点名写接口需登录且限任教范围;测验 / 投票仅面向本人任教班级;「任务管理」更名「对话作业」 ### v7.x 及更早(2026 上半年) - 🎯 **AI 技能体系与国际化**:20 个技能按场景自动注入 40+ 路由,全站中英一键切换 - 🏆 **荣耀殿堂与全站 UI**:荣誉展示墙、10 套主题、70+ 页面容器规范统一 - 📰 **知识拓展与教学互动**:每日精选卡片池 + RSS 热点与今日简报、AI 学伴三种人格、智能备课出卷、协作白板、练习自动批改 - 🧱 **平台化重构**:去掉学科硬编码做到全学段全学科通用,批量导入与升年级、学情分析与成长档案、智能组卷与 Word 导出、全面安全审计 --- ## 部署安装指引 ### 方式一:一键部署 · SmartKBS 桌面版(零环境,最省事) 不想装 Python 和 Node.js,就用桌面版安装包 —— 双击装完就能用。 1. 下载最新安装包:[SmartKBS 最新版下载](https://github.com/youufis/SmartKBS/releases/latest)(自动跳最新 Release) (安装包命名形如 `SmartKBS-Setup-版本号.exe`,约 120 MB,**仅 Windows x64**) 2. 双击安装:简体中文向导,可自选安装目录,自动创建桌面与开始菜单快捷方式 3. 启动 SmartKBS:桌面版自动拉起内置后端,等 `8086` 就绪后自动打开应用窗口 4. 本机访问 `http://127.0.0.1:8086`;同一局域网内的学生访问 `http://本机局域网IP:8086`(如 `http://192.168.1.100:8086`) (首次启动请在 Windows 防火墙弹窗中选「允许访问」,否则其他设备连不上) | 项目 | 说明 | | --- | --- | | 运行依赖 | 无。目标机器不需要 Python / Node.js(Electron 壳 + PyInstaller 后端 + Vite 前端) | | 数据存放 | `%APPDATA%\SmartKBS\`(数据库、上传文件、日志都在此),**卸载重装不丢数据** | | 升级方式 | 下载新版安装包直接覆盖安装;桌面版不走「在线增量升级」(那是 Git 部署专属) | | 端口 | 固定 `8086`。若这台机器已用 IIS 跑着 Web 版,先停掉,否则桌面版起不来 | | 支持平台 | 目前只发布 Windows x64 安装包;macOS / Linux 的打包配置已就绪但暂未出包 | ### 方式二:下载源码包部署(需 Python 环境) 1. 从 GitHub 下载最新源码 ZIP:[youufis/SmartKBS](https://github.com/youufis/SmartKBS) 2. 解压到服务器目录(如 `D:\SmartKBS`) 3. 安装 Python 依赖: ```bash pip install -r requirements.txt ``` 4. 启动服务: ```bash python backend/main.py ``` ### 方式三:Git 克隆部署(推荐学校机房,支持在线升级) ```bash git clone https://github.com/youufis/SmartKBS.git cd SmartKBS pip install -r requirements.txt python backend/main.py ``` ### 在线升级系统(Git 部署专属) 如果通过 `git clone` 部署,系统升级全自动完成: 1. 管理员登录 → 系统配置 → **版本管理** 2. 点击「检测更新」,系统自动对比 GitHub 最新版本 3. 点击「增量升级」,自动执行: ```text git fetch(增量拉取差异代码)→ git reset(同步文件) → 数据库迁移 → pip 增量安装 → 重启服务 ``` 4. 升级失败自动回滚,进度实时显示 > **💡** 首次点击「增量升级」时,系统会自动执行 `git init` + `git remote add` 初始化本地仓库,无需手动配置即可享受在线升级。 ### PIP 国内镜像加速 ```bash pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ ``` **可选增强依赖** | 依赖 | 作用 | 缺少时 | | --- | --- | --- | | `matplotlib` | 试卷与讲义中的 LaTeX 公式渲染为图片 | 公式降级为 Unicode 文本,不影响其他功能 | | `cairosvg` | SVG 配图栅格化 | 自动降级到 svglib,中文标注与渐变还原度下降 | 两者都按需用 `pip install matplotlib` 单独安装即可,未列入 `requirements.txt` 以免拖慢基础安装。 --- [object Object] --- ## 快速开始 **环境要求** - Python **3.11+**(开发与打包实测版本 3.11.9) - Node.js 仅在需要开发前端时安装;桌面版已内置全部运行时 ### 步骤 1:启动后端服务 ```bash # 方式一:直接启动 python backend/main.py # 方式二:使用 Uvicorn 启动(开发模式,热重载) python -m uvicorn backend.main:app --host 0.0.0.0 --port 8086 --reload ``` 后端默认运行在 `http://localhost:8086`,并自动托管 `frontend/dist` 的前端产物,无需额外配置。 ### 步骤 2:启动前端开发服务器(仅开发前端时需要) ```bash cd frontend npm install npm run dev ``` 前端开发模式默认运行在 `http://localhost:5173`,接口请求代理到后端。 ### 步骤 3:以默认管理员登录 | 用户名 | 密码 | | --- | --- | | `root` | `root` | > 🔑 首次登录后请立即修改密码并设置密保问题,避免默认凭据留在生产环境。 ### 步骤 4:配置 AI 服务 进入「系统配置」填写 DashScope API Key(及可选的百炼知识库 / 智能体应用配置、DeepSeek Key)。配置页内置模型清单与连通性自检按钮,填完当场知道对不对。 未配置 AI 服务时,题库、考试、点名、资源、积分等主流程功能仍可使用,仅 AI 相关入口会给出明确提示。 --- ## 项目结构 **随源码分发(入库内容)** ```text SmartKBS/ ├── backend/ # FastAPI 后端 │ ├── main.py # 入口:路由挂载、静态文件托管 │ ├── config.py # 全局配置常量 │ ├── database.py # 业务库 smartkb.db + 年级/班级主数据 │ ├── question_db.py # 试题库 questions.db │ ├── auth.py # JWT 认证 · bcrypt · Token 版本 SSO │ ├── middleware.py # 认证中间件与角色校正 │ ├── permission_service.py # 统一年级班级权限服务 │ ├── rag.py # 检索增强(题库 + 课程大纲) │ ├── bailian_kb.py # 百炼知识库检索 │ ├── ai_task_manager.py # AI 异步任务管理 │ ├── question_fill.py # 凑题策略(题库优先 → AI 补差) │ ├── question_select.py # 选题引擎 │ ├── paper_compose.py # 组卷与卷面分值配平 │ ├── paper_generator.py # Word 试卷生成(python-docx) │ ├── reward_engine.py # 积分奖励引擎 │ ├── title_system.py # 12 级称号 + 成就徽章 │ ├── companion_*.py # AI 学伴:记忆 / 配置 / 主动推送 │ ├── code_grader.py # 代码自动评分 │ ├── code_runner.py # 代码沙箱执行 │ ├── whiteboard_ws.py # 白板 WebSocket 管理 │ ├── ws_manager.py # 讨论 WebSocket 管理 │ ├── tts_service.py # 语音合成(点名播报) │ ├── model_catalog.py # 模型候选清单与能力边界 │ ├── skill_engine.py # AI 技能注入引擎 │ ├── api/ # 48 个模块:各业务路由 + AI 调用与生图服务 │ │ ├── ai_service.py # AI 统一调用(三模式自动接管) │ │ ├── image_gen_service.py # 通义万相图片生成 │ │ └── *_router.py # 考试 / 题库 / 互动 / 学情 / 白板 … │ ├── prompts/ # AI 提示词模板(按场景分组) │ ├── skills/ # 20 个技能:core 8 + domain 12(*.skill.md) │ ├── locales/ # 后端文案 zh-CN / en │ └── migrations/ # 数据库迁移脚本 ├── frontend/ # React + Vite + TypeScript 前端 │ ├── src/ │ │ ├── api/ # 接口封装 │ │ ├── components/ # 公共组件 │ │ ├── pages/ # 页面 │ │ ├── stores/ # Zustand 状态 │ │ ├── hooks/ # 自定义 Hooks │ │ ├── types/ # 类型定义 │ │ ├── i18n.ts # 中英切换入口 │ │ └── styles/ # 主题与外观 │ └── dist/ # 预编译产物(后端直接托管) ├── requirements.txt # Python 依赖 ├── version.json # 当前版本与更新日志(在线升级读取) ├── LICENSE # AGPL-3.0 ├── README.md · README.en.md # 中英文文档 └── .markdownlint.json # 文档规则 ``` **运行时生成,不随源码分发**(首次启动自动创建,也是备份时应保留的内容) | 目录 / 文件 | 内容 | | --- | --- | | `backend/smartkb.db` | 用户、积分、点名、任务、通知等业务数据 | | `backend/questions.db` | 试题库与考试数据 | | `backend/system_config.json` | 运行时配置(学科、模型、API Key 等),含密钥故不入版本库 | | `root/`、`stu/` | 管理员与各学生的数据目录(对话历史、教学资源 HTML、画像等) | | `question_media/` | 试题配图,按题目 ID 分目录 | | `temp_uploads/` | 临时上传文件,超 24 小时自动清理 | | `LogFiles/`、`backend/logs/` | 运行日志 | | `db_backups/`、`.upgrade_backups/` | 数据库备份与升级回滚快照 | > 🖥️ 桌面版(Electron + PyInstaller)为本地构建产物,工程目录未随源码分发;发行安装包通过 GitHub Releases 提供,数据存放于 `%APPDATA%\SmartKBS\`。 --- ## 数据存储 | 数据类型 | 存储位置 | | --- | --- | | 用户/积分/点名/任务/通知等核心业务数据 | `backend/smartkb.db`(SQLite) | | 试题库与考试数据 | `backend/questions.db`(SQLite) | | 对话历史 | `<用户目录>/ChatHistory/` 按日期分目录 | | 教学资源 | `<用户目录>/html/` 各账号独立 | | 系统配置 | `backend/system_config.json` | | 用户 API Key | 环境变量 `DASHSCOPE_API_KEY` / 系统配置 | | 试题配图 | `question_media/` 按题目 ID 分目录 | | 临时上传文件 | `temp_uploads/`(自动清理超 24 小时) | | 自我画像 | `<用户目录>/portraits/` | | 白板快照 | 数据库 `whiteboard_pages` 表 | --- > 💾 **备份清单**:迁移或升级前,保留 `backend/smartkb.db`、`backend/questions.db`、`backend/system_config.json` 与 `root/`、`stu/`、`question_media/` 三个内容目录即可完整还原;桌面版对应 `%APPDATA%\SmartKBS\` 整个目录。 --- ## 权限总览 | 页面/功能 | 学生 | 教师 | 管理员 | | --- | :---: | :---: | :---: | | 系统首页仪表盘 | ✅ | ✅ | ✅ | | AI 对话(智答模式) | ✅ | ✅ | ✅ | | AI 学伴模式 | ✅ | ❌ | ❌ | | AI 教学助手模式 | ❌ | ✅ | ✅ | | 课程大纲(学习) | ✅ 查看/练习 | ✅ 管理 | ✅ 管理 | | 课程进度追踪 | ❌ | ✅ 自己班级 | ✅ 全部 | | 试题管理 | ❌ | ✅ | ✅ | | 考试中心(参加) | ✅ | ✅ 管理 | ✅ 管理 | | 智能组卷 & Word 导出 | ❌ | ✅ | ✅ | | 同步练习 | ✅ 参与 | ✅ 出题 | ✅ 出题 | | 课程练习 | ✅ 练习 | ✅ 出题 | ✅ 出题 | | 每日精选 | ✅ | ✅ | ✅ | | 热点新闻 | ✅ | ✅ | ✅ | | 对话作业 | ✅ 提交 | ✅ 管理 | ✅ 管理 | | 待办事项 | ✅ | ❌ | ❌ | | 资源中心(浏览共享) | ✅ | ✅ | ✅ | | 资源管理 | ❌ | ✅ | ✅ | | 资源分类导航 | ✅ | ✅ | ✅ | | 文件中心 | ✅ 共享文件 | ✅ | ✅ | | 课堂积分 | ✅ 查看 | ✅ 自己班级 | ✅ 全部 | | 积分奖励体系 | ✅ 查看 | ✅ 自己班级 | ✅ 全部 | | 点名管理 | ❌ | ✅ 自己班级 | ✅ 全部 | | 考勤统计 | ❌ | ✅ 自己班级 | ✅ 全部 | | 随堂测验 | ✅ 答题 | ✅ 创建 | ✅ 创建 | | 课堂投票 | ✅ 投票 | ✅ 创建 | ✅ 创建 | | 提问管理 | ✅ 提问 | ✅ 审批 | ✅ 管理 | | 分组讨论 | ✅ 参与 | ✅ 管理 | ✅ 管理 | | 知识抢答 | ✅ 参与 | ✅ 管理 | ✅ 管理 | | 知识闯关 | ✅ 闯关 | ✅ 管理 | ✅ 管理 | | 代码练习 | ✅ | ✅ | ✅ | | 错题巩固 | ✅ 自己 | ✅ 全班 | ✅ 全班 | | 学情分析 | ❌ | ✅ 自己班级 | ✅ 全部 | | 进度详情 | ❌ | ✅ 自己班级 | ✅ 全部 | | 成长档案 | ✅ 自己 | ✅ 全班 | ✅ 全班 | | AI 课堂总结 | ❌ | ✅ | ✅ | | AI 自我画像 | ✅ | ✅ | ✅ | | 协作白板 | ✅ 参与 | ✅ 创建 | ✅ 创建 | | 活动监控 | ❌ | ✅ | ✅ | | 活动数据重置 | ❌ | ✅(仅本人活动) | ✅(全部活动) | | 资源浏览统计 | ❌ | ✅ | ✅ | | AI 资源推荐 | ❌ | ✅ | ✅ | | AI 生成 HTML 资源 | ❌ | ✅ | ✅ | | 数据导出 | ❌ | ✅ | ✅ | | 用户管理 | 仅改密 | ✅ 部分 | ✅ 全部 | | 系统公告 | ✅ 查看 | ✅ 发布 | ✅ 发布 | | 通知中心 | ✅ | ✅ | ✅ | | 系统配置 | ❌ | ❌ | ✅ | | 在线升级(版本管理) | ❌ | ❌ | ✅ | | 多主题系统 | ✅ | ✅ | ✅ | | 关于系统 | ✅ | ✅ | ✅ | --- ## 技术栈 | 层级 | 技术 | | --- | --- | | 后端框架 | Python 3.11+ · FastAPI · Uvicorn | | 前端框架 | React 19 · TypeScript · Vite 8 | | UI 组件库 | Ant Design 6 | | 图表 | Recharts | | Markdown 与公式 | react-markdown · KaTeX | | 代码编辑器 | Monaco Editor(代码练习页) | | 白板引擎 | tldraw 5 | | 状态管理 · 路由 | Zustand · React Router 7 | | 国际化 | i18next(全站中英切换,前后端各有文案包) | | 数据库 | SQLite 双库(业务库 + 试题库),无外部数据库依赖 | | 认证 | JWT(bcrypt 哈希 + PyJWT),Token 版本实现单点登录 | | AI 模型 | 通义千问 DashScope(Qwen)· DeepSeek | | AI 调用模式 | 知识库检索增强 / 百炼智能体应用 / 直接调用大模型,按优先级自动接管并逐级降级 | | 图片生成 | 通义万相(wanx2.1 / wanx2.2) | | 语音合成 | DashScope TTS(点名播报,可选) | | 流式与实时 | Server-Sent Events(AI 流式)· WebSocket(白板 / 分组讨论 / 抢答) | | 文档导出 | python-docx(Word)· openpyxl(Excel) | | 公式出图 | matplotlib(可选增强,缺失时降级为 Unicode 文本) | | 代码沙箱 | AST 静态分析 + subprocess 隔离 | | 桌面版 | Electron + PyInstaller + Vite 产物(仅发布 Windows x64 安装包) | --- ## 许可证 本项目以 **AGPL-3.0** 开源,完整条款见 [LICENSE](LICENSE)。 - ✅ 可自由使用、修改、分发,校内直接部署不受限制; - ⚠️ 若修改本系统后**通过网络对外提供服务**,须以相同许可证公开你的修改源码; - ℹ️ 独立于本项目、仅通过接口通信的自有系统不受此约束。 Copyright © 2026 youufis (UNET) --- ## 常见问题 - **忘记密码怎么办?** 设置了密保问题的账号,可在登录页点「忘记密码」自助找回;否则联系管理员在「用户管理」中重置。 - **AI 对话没有回复?** 先在「系统配置」确认 API Key 已填写且余额充足,再用配置页的连通性自检按钮验证;自检报错会指明是模型、知识库还是智能体应用的问题。 - **文件上传失败?** 文档上限 10 MB、图片上限 5 MB(图片上限可在系统配置中调整),并需符合扩展名与内容白名单。 - **AI 学伴 / 教学助手打不开?** 学伴仅学生可用,助手仅教师与管理员可用,先确认登录角色;教师还需在「用户管理」里配置任教年级与班级,否则AI 助手取不到教学范围。 - **考试无法提交?** 检查当前时间是否在考试有效期内、答题次数是否已用完;卷面处于「有人在作答」状态时教师改题会被拒绝,这是锁卷保护。 - **课堂积分没增加?** 只有支持积分的活动类型会在完成后自动发放,且设有每日封顶(可在系统配置调整);教师与管理员不参与积分与榜单。等级奖励需要达到相应成绩百分比。 - **改了代码或升级后界面没变化?** 先硬刷新(Ctrl+F5);涉及 WebSocket、语音合成、AI 超时策略的改动需要**重启后端**才生效。 - **如何升级系统?** 1. Git 部署:管理员登录后进入「系统配置 → 版本管理」,点「检测更新」再「增量升级」,失败会自动回滚; 2. 源码包部署:下载最新 ZIP 覆盖原目录,保留 `backend/system_config.json` 与两个 `.db` 文件后重启; 3. 桌面版:下载新版安装包直接覆盖安装,数据在 `%APPDATA%\SmartKBS\` 不会丢。 - **新机器装完起不来?** 先确认 Python 为 3.11+,再核对依赖是否装全(`pip install -r requirements.txt`);报错提示缺少模块时,优先检查该模块是否已在 requirements.txt 中。 --- ## 关于 **SmartKBS** — 面向小学、初中、高中学段的 AI 智慧教学平台,学科与年级班级配置驱动。 - 👨‍💻 **作者:** youufis (UNET) - 📧 **联系:** [youufis@sina.com](mailto:youufis@sina.com) - 💬 **微信:** UNET-WX - 📄 **许可证:** [AGPL-3.0](LICENSE) 项目由个人独立开发维护,迭代以真实课堂反馈为驱动 —— 版本节奏、功能取舍、乃至「按需调用不烧钱」这类设计,都来自一线使用中的问题。遇到 bug 或有想加的功能,欢迎开 Issue 或邮件联系。