Skip to content

知识点体系

知识点体系是按学科组织的树形知识结构,用于给题目打上知识点标签,并支撑 AI 的知识点推荐(RAG)。

结构

  • 树形:通过 parent_id 建立父子层级,可多级嵌套。
  • 按学科:每个知识点属于某个学科。
  • 唯一标识(subject_id, slug) 组合唯一,slug 为 URL 友好标识。

字段:名称 name、标识 slug、父节点 parent_id、所属学科 subject_id、创建 / 更新人。

管理操作

  • 查看某学科的完整知识点树
  • 新建根节点或子节点
  • 重命名 / 修改 slug
  • 删除(级联删除子节点)

级联删除

删除一个知识点会连带删除其所有子节点,请谨慎操作。

与题目关联

题目与知识点是多对多关系,可在题目上关联一个或多个知识点,并用知识点作为题库筛选条件。

向量化与 RAG

知识点会被向量化写入 ChromaDB,用于语义检索:

  • AI 对话 中,AI 可检索相关知识点 / 题目作为上下文。
  • 智能导入时,AI 可将推荐的知识点映射到你的标准体系。

当在 系统参数 中更新 Embedding 模型AI_EMBEDDING_MODEL_ID)后,已有知识点的向量不会自动重建。此时知识点树顶部会出现"重建向量索引"提示,点击即可按新模型重新向量化。

需要 Embedding 模型

RAG 依赖 Embedding 模型。请在 AI 供应商与模型 中添加并激活一个用于向量化的模型。

延迟向量化

未配置 Embedding 模型时,新增 / 修改知识点不会触发向量更新(也不会报错)。待你配置好模型后,再到知识点树点击 重建向量索引 一键补齐即可。

批量导入

管理员可在知识点树界面下载 Excel 模板、填写后批量导入,无需命令行。

操作步骤

  1. 打开知识点管理页面,选择目标学科。
  2. 点击 批量导入 → 在对话框中点击 下载 Excel 模板
  3. 按模板填写:学科名称(必填)、一级目录(必填)、二级~八级目录(可选)。同一行从左到右构成一条父子链,空白的中间层级会自动跳过。
  4. 上传填好的 .xlsx 文件(≤ 5MB),选择导入模式并确认。

两种导入模式

模式行为对题目关联的影响
增量新增(推荐)已存在的知识点(相同学科、父节点、名称)跳过,仅创建新节点✅ 不影响已有题目的知识点关联
清空重建先删除文件涉及学科的全部知识点,再导入⚠️ 关联题目会失去知识点标签(题目本身保留),需输入学科名二次确认

幂等性

增量新增可安全地多次导入同一份文件:重复节点会被跳过,不会产生重复数据。

清空重建不可撤销

清空重建会级联删除子节点并解除题目关联,操作前对话框会显示受影响的知识点与题目数量,请谨慎确认。

导入完成后,若已配置 Embedding 模型,新知识点会自动向量化;否则可稍后在知识点树点击 重建向量索引 补齐。

命令行脚本(可选)

仓库仍保留脚本用于开发 / 部署侧的批量操作:scripts/import_math_knowledge_points.pyscripts/sync_knowledge_points.py,服务器版可通过 docker compose exec backend uv run python scripts/<脚本名>.py 运行。

基于 AGPL-3.0 许可发布