依据《课程个性化学习智能体_项目搭建方案_v7_20261008.docx》建设的独立项目。PLIAC 承担整个平台开发,原 learning-agent 作为其中的课程知识、资料建图与证据诊断模块继续使用。项目仓库:Southwall-Tester/PLIAC。
讲义现在逐节开放阅读:通过审校的首节可以先读,后续讲解、图谱和 PDF 在后台继续准备。审校保留正确内容、局部修正问题,并按章节难度分配模型思考强度;显式配置的模型档位仍然优先。
默认首页是温暖阅读风格的学习工作台。游客可以浏览课程书架、目录与讲解预览,点击“开始学习”后再登录,登录完成返回所选课程。账号首页展示真实的已学/已通过进度与“继续学习”,课程管理保留在独立入口。
登录后选择课程,知识点默认还没学过,用户只需勾选已有基础;系统用最多三道选择题核验这些内容,零基础直接安排学习路线。初始设置不要求填写学习目标,背景和兴趣是可选补充。起点评测、小节练习和讲义习题均提供答案选项,文字说明可选。规划期间显示真实处理阶段与耗时,学习片段自动准备讲义、图谱与习题。“课程全貌”保留目录与知识关系,“重新生成”按最新画像适配初学或期末复习。详见 个性化学习流程。
右侧学习助手可结合当前内容、账号画像和历史记忆答疑、分析理解卡点。长对话采用近期轮次、任务摘要与原话细节混合检索,点击“记忆”可查看依据、修正和删除。详见 学习助手与动态画像。
讲义准备显示读取资料、安排讲解、编写与检查、构建图谱、排版五个阶段,以及正在处理的小节、完成数量和用时。模型流式响应提供实时接收字符计数;整体百分比按实际工作完成推进,等待时间不折算为完成度。刷新会恢复当前进度。
已提供独立的 Linux 入门课程模板:8 个单元、46 个知识点、69 条有理由的关系, 附中文解释、操作例子、自检题、评分参考和来源定位。通过现有课程管理编辑, 保留教师审核与发布要求。装填命令、查看入口及验证方式见 Linux 课程说明。
已接入本机 LinuxLab 九关实训:在真实 Bash 中操作,同步中途错误、检查结果和提示记录, 关联图谱知识点,生成带证据引用、候选原因和核验题的诊断草稿。学习者解释与教师复核沿用共享证据存储。 入口及边界见 LinuxLab 接入与诊断说明。
双击「启动学习平台.cmd」,登录后选择课程,按学习路线进入当前片段。LearnMargin 自动读取该范围已有资料,准备知识图谱、详细讲解、例题和习题。图谱节点详情也可直接进入“单独学习这个知识点”。每个单元保留来源、上级入口与历次版本,不需要再次上传资料;需要调整内容时使用“重新生成”。
“单元练习”支持保存草稿、提交作答、查看提示和核对参考答案,记录按学习编号、单元及生成版本保存。PDF 下载按钮位于“完整讲义”的阅读区内。
图谱节点是讲义中的知识概念,关系带具体谓词和讲义段落依据;点击节点进入相应讲解,查看原材料后可返回阅读位置。生成沿用 config/models.json;未配置文件时使用 LearnMargin 的现有环境变量配置。密钥不进入课程或生成记录。接口和运行说明见 LearnMargin 课程接入。
原有课程练习、学习记录、教师复核与 Lab 保持原入口;Lab 由所属课程配置,不出现在平台通用导航。
预装示范和资料生成课程共用课程列表、卡片、阅读器、学习工作台及讲义生成管线。课程内容、练习和实验关联来自数据;新增课程不需要添加名称或 ID 分支。预装内容的版本与评分契约保持可追溯,见 统一课程数据契约。
从课程进入学习工作区:左侧选择小节,中间查看讲义或全课知识关系,右侧为常驻 AI 助手。基础讲义与生成后的 LearnMargin 讲义均使用单列正文,练习顺序放在正文下方。再次进入会恢复当前账号的小节和草稿。
讲义内的实验入口携带匿名编号与知识点;实验中的「返回讲义」恢复同一小节、草稿和提问记录。学习课程列表在 /courses,新建、导入和编辑课程在 /manage/courses。独立图谱入口 /knowledge 保留。
本节自由提问统一进入右侧学习助手,可结合当前课程材料、画像与历史记忆回答。旧版本节提问保留只读历史;用户原话、模型回复与诊断分别保存。
学习区左侧保留 10 个小节,中间使用 data/acceptance_concepts.json 中独立的 30 个概念、44 条具体语义关系。例如训练集、验证集、测试集各自成点,连线表达“用于拟合”“提供比较依据”“估计”等关系。概念包含定义、来源和多个相关讲义编号,章节筛选通过讲义映射选择概念。颜色表示知识分组,也可突出当前小节涉及的概念;右侧明确展示相关小节的记录,概念映射不生成额外掌握判断。
data/acceptance_knowledge.json 保留学习单元之间的关系与默认学习路线,用于原有任务编排;中间画布不再将这些单元当作概念节点。课程 v1 的节点内容、题目、记录编号和指纹沿用原值。完整图谱工作台保留课程层级,课程根节点在初次布局和主动整理时居中;计组等资料图谱从顶部「资料图谱」进入。
课程阅读区支持收起讲义后点选作答、记录把握与回看材料,个人解题卡在可选整理区保存;综合练习从课程导航单独打开,选择答案后即可提交,判断依据可选。到期复测默认收起讲义,并保留上次通过记录。
休息提示由内容负荷规划器安排:跨讲解、例题、练习或实操任务累计预计负荷,在完整内容边界选择停顿,课程阅读提示位于正文下方。用户自主选择休息或继续;Lab 保持原有五步实训主线。算法、估计依据、扩展格式与验证说明见 学习活动与休息规划。
双击「启动学习平台.cmd」,在课程首页打开 机器学习分类入门:从数据到可靠评估。课程已经配置好两章 10 节、20 道诊断 / 复测题、讲解算例、四级提示和章节规则。可直接走完答题、补学、换题复测、报告、知识手册及刷新续学,无需先建课。详见 逐步验收说明。
示范课使用客观题自动判定;正式课程通过教师审核发布和复核。
计组扫描图谱已放入 压力测试样本目录:500 个概念、2,000 条关系,加上章节投影为 727 个节点、5,074 条边;附原始 JSON、文件校验和真实浏览器压测命令。
讲义中的「进入相关实验」打开 /ml-lab。选择轨道站、海洋站或训练馆情境,按五步完成数据检查、数据划分、模型比较、方案选择、封存测试。每次运行由 scikit-learn 实际生成数据并训练决策树;页面展示样本数、重叠数、准确率、混淆矩阵和实验历史,支持下载 Python 复现代码。
情境文案与知识目标、实验规则分别保存。作答、实验结果、提示和验收记录沿用学习档案的原子版本存储;同一匿名编号可以在课程手册和教师复核中查看。实验结束后可导出完整记录,换一批数据完成迁移复测。操作与开发说明见 机器学习 Lab。
独立验证原图谱模块:检出分支 feat/knowledge-graph 或固定标签 knowledge-graph-v0.4.2。两者起点均为提交 02aacf1b8a442f168e146f83e0e72cb27f0033bb,不包含本轮学习工作台。完整检出与验证命令见 版本定位。
双击 启动学习平台.cmd,或执行 python scripts/run.py,打开 http://127.0.0.1:8010/。
- 登录账号后选择课程,勾选已经学过的知识点,背景和兴趣可选。正式学习使用已审核发布的课程;课程未发布时显示原因和教师入口。
- 「安排下一小节」沿先修关系选择当前可处理的节点,优先处理到期复习与已诊断的补学项。也可从路线选择节点预习,页面同时列出先修缺口。小节记录当时的状态依据、资料筛选结果和规则版本。
- 小节展示讲义、已审核资源和可点选答案的练习;可选择困惑类型标记段落,文字补充可选。作答草稿自动保存。逐级请求提示后,服务端记录提示等级;重进或给同一道题更换版本号不会把提示后作答改为独立作答。
- 提交原始作答后,在
/review选择证据、填写真实复核人和依据。复核后的掌握状态直接反映到原有知识图谱;提示后作答、自评、点击资源不能直接证明掌握。没有配置正式题目的节点只记录理解;教师可在本页「节点诊断任务」补充问题、参考答案、判据及四级提示。任务改动自动递增版本,并须重新审核节点后发布。 - 教师在复核页配置每章必达节点,保存到课程草稿并在图谱工作台发布。章节报告按指定节点是否均有当前有效的掌握证据判定达标,不使用任意统一分数;未配置时只汇总状态。到期、冲突和课程内容变化会重新进入待核验。
- 后台与教师页面保留诊断手册、原始证据和章节报告;学生页面呈现讲义、练习、实际学习进度与知识关系。再次进入同一账号和课程会恢复最近小节、草稿与提示记录。
平台编排在 src/pliac/,图谱和资料能力保留在 src/learning_agent/;learning_agent.main:app 继续兼容旧入口。当前本地目录名称仍为 learning-agent,不需要移动已有运行数据。新增工作台与原图谱共用学习记录的版本指针,每次提交同时保存会话和证据,写入中断或并发冲突不会覆盖已提交记录。具体结构、验收范围与后续工作见 平台接入说明。
当前小节采用规则选点和课程材料;正式课程任务判断仍需人工复核,内置示范课客观题由固定规则判定。旧版知识模块的功能与操作如下。
从「管理 → 课程管理 → 新建课程」输入课程名称,选择「手动建图」或「导入书籍」。手动建图从空图开始,用「添加知识点」「添加关系」编辑;导入书籍会进入资料库,生成后加入刚创建的课程。每门课程独立保存草稿、发布版本和学习记录,原有课程保留。课程名称和章节在「编辑图谱 → 课程与章节」修改。
从顶部「导入资料」进入 /documents,拖入 PDF、DOCX、TXT 或 Markdown,后台自动解析、分块、提取并生成资料图谱。可选择页码范围,扫描 PDF 自动调用中文 OCR;处理中可取消,重试沿用已完成的页和文本块。
图谱采用静止的全屏圆点网络,支持拖动、缩放、手动整理布局、深色、标签和邻域高亮。鼠标进入圆点后,高光、放大和邻域明暗平滑过渡;文字标签不触发悬停。课程按「课程—单元—概念」组织,资料按书内目录/标题分层;单击节点打开详情,右键菜单展开或收起下级,保持其他节点位置。点击概念或关系查看原文和页码。
资料图谱顶部的「章节子图」打开章节与小节列表。选择后显示该章节的后代和所属概念,支持继续搜索、折叠、导出子图与加入课程草稿。刷新会恢复当前章节,「返回全图」恢复完整图谱及原来的视角。子图沿用原始节点编号、来源与全图颜色;共享概念可同时出现在多个章节中。
绘制层使用本地打包的 PixiJS / WebGL,复用节点、连线和文字图元,整体移动与缩放画布;画面有变化时才绘制。大图按视口和文字重叠筛选标签,优先显示焦点及邻居,缩放后呈现更多关系文字。平行关系路径按结构变化缓存,保留方向、虚线及独立关系详情。静态布局与渲染分开,悬停不重算布局。渲染实现及 Molio 对照见 书籍建图方法。
颜色表示族群,同族群的母节点与后代同色;层级通过圆点大小表达。跨多个族群的共同根采用中性色,单族群的根继承该族群色。族群颜色取自完整资料,筛选和折叠不改变色号;共享概念按首次有族群的原文归属着色。
- 本地提取:无需模型配置,生成术语、显式包含关系和独立标记的共现关系。适合先浏览书籍结构、筛选候选。
- 模型提取:配置模型后,在上传前选择「模型提取」,逐块抽取四类课程关系,校验端点和逐字引用。该选项会将所选正文发送到配置的模型服务。
- 加入课程:选择概念加入草稿,同一本资料可以分批补入;保留出处和目录层级,沿用现有人工审核和版本机制。
箭头按关系含义显示:包含关系从上级/整体指向下级/具体内容,前置关系从先修知识指向后续知识。关联、易混淆、共现和未声明方向的原话表达显示无向连线;点击连线查看完整含义与依据。同一对节点的多种关系分开显示。滚轮每次输入的缩放幅度上限为 10%,小幅触控板输入按比例调整,缩放保持鼠标指向的位置。实现采用 G6 的 缩放配置 和 平行边处理。
方法参考、真实教材抽查和 Molio 交互/源码对照见 书籍建图方法。当前本地规则的共现边表示同句出现,语义关系质量需要分开评价;真实模型尚未配置验收。
- 教师工作台新增「图谱核查」:名称/别名冲突、关系语义、出处定位、孤立节点和先修间接路径。核查提示不自动合并概念、删边或通过审核。
- 资源推荐先定位当前可处理的先修节点,再按审核与前置要求过滤,并兼顾覆盖和材料形态;每轮最多 4 项,展示选入及排除理由。全部已掌握的目标不重复推荐补学资源。
- 每次教学建议保存完整知识状态快照、规则版本和筛选过程。人工诊断可关联此前建议,但必须使用动作之后的新任务证据;无后续证据保持等待,资料点击不代表掌握。
- 7 本书的选读章节与准确 PDF 页码在「图谱核查」中可查,也保存在 书籍设计依据。8 项课程背景出处补充了具体小节定位。书籍只用于设计参考,不替代教师课程审核。
新增 计算机组成与设计:全书大图示范,可从课程列表打开:513 页真实教材 OCR 快照、500 个候选术语、2,000 条历史候选关系,配有六章及附录导读、来源页跳转和自检。课程保留候选状态,不把共现关系作为先修关系;讲义及来源随项目离线打包。内容、实测结果与复测方式。
双击 启动课程图谱.cmd,自动打开课程列表。命令行入口:
python -m pip install -r requirements.txt
python scripts/run.py双击入口依次检查项目 .venv、当前 Python 和 PATH 中的其他 Python,使用依赖齐全的环境,并显示其路径。如果 PowerShell 的 (base) 中依赖已安装、双击却提示缺少依赖,启动器会自动尝试 PATH 中的 Anaconda Python。安装依赖时使用 python -m pip,确保安装和运行使用同一环境。
默认地址:
- 课程列表与新建:
http://127.0.0.1:8010/courses - 学习工作台:
http://127.0.0.1:8010/learn - 教师任务复核与章节规则:
http://127.0.0.1:8010/review - 原有课程编辑:
http://127.0.0.1:8010/author - 原有课程发布版:
http://127.0.0.1:8010/ - 资料图谱:
http://127.0.0.1:8010/documents - 接口说明:
http://127.0.0.1:8010/docs
启动器会复用已运行的同项目服务;端口被其他程序占用时尝试后续 9 个端口。服务监听本机回环地址。基础功能不依赖大模型。
扫描书籍安装 OCR 依赖后重启服务:pip install -r requirements-ocr.txt。本机已完成安装与中文扫描页验证。上传文件上限 512 MB;图谱保留最多 500 个概念、2000 条语义/共现关系,超出数量在任务结果中列出,分段候选仍保存在本地。
OCR 默认按逻辑处理器数量的四分之一分配计算线程,至少 1 个、最多 4 个,并关闭空闲线程自旋。可在启动前用 OCR_THREADS=1 至 4 调整。扫描页需要逐页识别,已完成页面会缓存,重试从检查点继续。线程配置依据 ONNX Runtime 线程管理。图谱首次布局与手动整理分片计算,静止后停止动画帧。
PDF 页码以及 Markdown、TXT、Word 的技术分块用于原文定位,图谱按真实主题目录组织;没有真实标题的内容直接归属资料根节点。PDF 沿用书内目录,缺少目录时从已缓存的正文或 OCR 文本识别带编号的章、节标题,并保留标题对应的页码、文本位置和原文证据。旧资料和已导入课程中的技术页、块节点在浏览时隐藏,原始页文本与引用继续保留。
Markdown 支持标准标题和独立加粗小标题;“通俗理解”等讲解标题保留在原文目录,不生成知识母节点。本地提取优先完整术语,过滤公式命令、英文释义碎片和泛词。
初始课程为未发布草稿。 可以在教师工作台浏览与编辑;正式课程在人工审核发布后才开放。当前没有伪造的教师审核、发布记录或真实学生记录。
- 监督分类主线:两个关联单元,40 节点、68 关系;训练/验证/测试、分类准确率、固定随机种子、分类树与复杂度实验。31 个核心节点,9 个拓展节点。
- 四类关系:前置、包含、关联、易混淆。只有前置关系用于学习顺序;易混淆关系独立显示。
- 草稿、审核、发布:知识点、关系与资源分别记录实际审核人、时间和依据。修改内容并沿用旧审核信息会退回草稿;保存草稿不修改已发布课程。
- 教学资产:4 项待审核资源候选、12 道带版本与判据的诊断题、3 份待审核统一实训骨架。资源有机构、链接、适用片段、节点、前置、形态与审核信息。教师页面可查看骨架的步骤、判定规格和错误类型。
- 证据 → 诊断 → 建议:原始证据、诊断、教学动作、资源选择与画像分别保存;掌握判断需要对应任务版本、独立作答和实际复核。实训证据还需骨架版本。
- 两类知识结构:课程参考结构与当前发布版本的对话表达结构分开。人工登记的表达关系必须有逐字原话;系统补全、模型推断使用独立标记与虚线,不复制课程关系充当学习者表现。
- 状态与复习:绿表示当前证据支持掌握,红表示需要补学,灰表示尚未涉及,黄表示证据不足、冲突、到期或课程内容变化后待核验。默认复习间隔为 1、7、30 天,可由课程规则配置;重复使用旧证据不能刷新掌握时间。
- 画像与位置恢复:匿名编号关联目标、背景、兴趣、当前位置及上下文引用;兴趣不参与掌握判断。选择正式课程节点后自动保存位置,重新进入可恢复。
学习端不展示诊断参考答案。提示程度以 0(独立完成)及 1—4 级保存;自评、提示后表现、系统补全、模型推断和技术异常不能独自证明掌握。建议记录触发原因、引用证据、后续核验重点及资源;资源前置未满足时优先处理相关缺口。
- 从
/courses新建课程,或打开已有课程的“编辑图谱”,逐项核对概念、先修与易混淆关系。 - 在“编辑图谱”维护知识点、关系、章节与资源。保存草稿和人工审核是两个明确动作;实际审核后填写审核人及依据。
- 阅读“实训骨架”中的待审资产,补充教师材料与课程参数。当前没有运行这些实训的按钮,因为执行环境与判定脚本尚未实现。
- 在“发布与版本”执行发布检查。存在未审核节点、关系或资源时,服务拒绝发布。
- 正式课程中加载稳定匿名编号,保存真实原话、作答与提示程度;需要表达关系时展开相应字段,填写原话中的概念关系。
- 人工复核选择原始证据、填写依据与复核人。存在历史判断冲突时明确说明并调和,不能直接用最后一次提交覆盖分歧。
- 从节点“下一步”查看相关先修、到期复测和审核资源;“学习画像与续学”保存目标和兴趣,“导出画像与证据引用”用于回查。
复制 config/models.example.json 为 config/models.json,填写兼容 Chat Completions 的服务地址、模型名与密钥。真实配置已被 .gitignore 排除。
模型用于课程材料候选抽取与书籍分块抽取。资料页面生成后可直接选择候选加入草稿;“编辑图谱—候选抽取”支持短文本导出。模型接口失败会显示任务错误并保留已完成片段,可修复配置后重试。
data/courses/ml_classification.json 只读课程种子
data/training_blueprints.json 统一实训骨架与错误库草稿
outputs/documents/<资料编号>/ 原文件、页文本、分段结果、目录、任务和图谱
outputs/course_graph/ 运行时草稿、发布快照与学习记录
draft.json 当前工作草稿
draft_history/ 保存前的草稿
published/vN.json 不可覆盖的课程版本
publication.json 当前发布指针
learners/<匿名编号-摘要>/
HEAD.json 当前学习记录版本指针
revisions/<版本>/
profile.json 画像、位置与版本
evidence.json 原始证据
diagnoses.json 诊断及引用
actions.json 教学动作及触发依据
resource_uses.json 实际资源选择
workspace.json 小节、提示、作答草稿、困惑和报告(旧版本可无此文件)
以原子版本指针提交一次完整学习记录,避免多个文件只写入一半。每次新版本保留原始历史;课程节点改变或删除后复用编号时,旧掌握记录需要重新核验。
pip install -r requirements-dev.txt
python -m playwright install chromium
python tests/test_course_graph.py
python tests/test_learning_workspace.py
python tests/test_ui_learning.py
python tests/test_graph_audit.py
python tests/test_recommendation.py
python tests/test_action_feedback.py
python tests/test_documents.py
python tests/test_ui_v7.py
python tests/test_ui_books.py
python tests/test_ui_network.py
python tests/test_ui_documents.py
python tests/test_ui_documents_performance.py
python tests/test_ui_gpu_graph.py
python tests/test_ui_courses.py
python tests/test_ui_text_hierarchy.py
python scripts/check_assets.py测试使用临时目录;截图与结果在 outputs/verification/,其中学习记录和审核为明确标注的合成数据,不属于真实学习者试跑。后端测试覆盖发布、审核失效、原始记录保留、提示及任务版本、冲突、间隔复测、节点版本连续性、资源前置、表达关系引用与并发/写入中断。
后续开发:对话初诊、模型讲解、编程实训与环境恢复、摄像头回看、账号权限和真实学习者试跑。
独立 Git 仓库关联到 PLIAC。课程源方案和参考书籍保留在本地,没有随代码分发;运行记录、配置密钥、迁移备份与书页截图也不进入版本库。具体对齐依据、当前验收边界及迁出记录见 v7 对齐说明;课程内容见 内容说明。