跳转到内容

知识库自动构建:从对话到结构化知识

知识库自动构建:从对话到结构化知识

概述

知识库自动构建是指 Agent 在对话过程中自动识别有价值的信息,将其整理为结构化的知识页面,并通过索引和图谱支持可视化浏览与检索的技术。

与记忆系统(按时间组织)不同,知识库按主题组织,类似于个人的 Markdown Wiki。

知识写入触发场景

场景知识路径示例
用户分享文章/链接/文档knowledge/sources/<slug>.md论文摘要、博客要点
深度讨论产生结论/方案knowledge/analysis/<slug>.md技术选型分析、方案设计
涉及重要实体(人物/公司/项目)knowledge/entities/<name>.md人物档案、项目介绍
讨论技术概念/方法论knowledge/concepts/<topic>.md概念解释、方法总结

知识目录结构

knowledge/
├── index.md # 全局索引(每次写入后必须更新)
├── log.md # 操作日志
├── concepts/ # 技术概念
│ ├── moe.md
│ └── rag.md
├── entities/ # 实体档案
│ ├── deepseek.md
│ └── anthropic.md
├── sources/ # 来源摘要
│ └── attention-is-all-you-need.md
└── analysis/ # 分析结论
└── model-comparison.md

写入流程

知识写入规则

强制写入(mandatory)

以下场景必须在回复的同时写入知识库,直接写入,不要询问用户

  1. 用户分享了文章/链接/文档 → 阅读理解后写入来源摘要
  2. 深度讨论产生了结论/方案 → 整理为分析页面
  3. 对话涉及重要实体 → 创建或更新实体页面
  4. 讨论了技术概念/方法论 → 整理为概念页面

写入原则

  • 每次写入知识页面后,必须同步更新 knowledge/index.md 添加一行索引
  • 不要问”要不要存到知识库”——符合场景就直接写入
  • 写入使用 edit 工具(追加模式或创建模式)

知识查询方式

方式适用场景
直接读取知识页面已知知识路径
浏览知识索引(index.md)了解已有知识范围
memory_search 语义检索知识已纳入向量索引
知识图谱可视化探索知识间的关联

知识图谱构建

知识图谱通过解析知识页面中的 Markdown 链接自动构建:

# MoE(Mixture of Experts)
MoE 是一种稀疏激活的模型架构,参见 [DeepSeek-V3 实体档案](../entities/deepseek.md)
与 [RAG](./rag.md) 不同,MoE 是模型内部的路由机制。

解析算法:

  1. 遍历所有知识页面的 Markdown 内容
  2. 提取 [...](../category/target.md) 格式的链接
  3. 构建节点(页面)和边(链接)的图结构
  4. 过滤掉无效链接(指向不存在的页面)
  5. 去重(无向边去重)

输出:

{
"nodes": [
{"id": "concepts/moe.md", "label": "MoE", "category": "concepts"}
],
"links": [
{"source": "concepts/moe.md", "target": "entities/deepseek.md"}
]
}

与记忆系统的关系

知识库与记忆系统是互补关系

维度记忆系统知识库
组织方式按时间按主题
内容类型事件、偏好、决策结构化知识、概念、实体
写入方式对话截断时自动对话中主动写入
检索方式向量 + 关键词 + 时间衰减直接读取 + 语义检索 + 图谱
更新频率高频(每次对话)低频(有价值的信息)

知识内容同时纳入向量索引,可通过 memory_search 统一检索。

陷阱与对策

陷阱对策
知识页面过度碎片化按主题分类归入子目录,避免根目录堆积
索引与页面不同步写入流程中强制要求先写页面后更新索引
知识路径穿越攻击写入时验证路径不超出 knowledge/ 根目录
重复知识页面写入前检查同名文件是否已存在
写入大量无价值内容通过 prompt 约束写入场景,仅符合明确条件时才写入

设计权衡

优势

  • 自动构建,无需人工整理
  • 按主题组织,便于长期积累和检索
  • 知识图谱提供可视化探索能力

代价

  • 每次写入消耗额外的 LLM 调用(萃取知识要点)
  • 知识质量依赖 LLM 的判断能力
  • 目录结构需要预设分类体系

替代方案

  • 仅用记忆系统(不单独维护知识库,所有信息写入 MEMORY.md)
  • 用户手动创建知识页面(质量可控但不自动)
  • 外部知识库集成(接入 Notion/Obsidian 等第三方工具)