Skip to content

baojie/shiji-kb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

602 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

史记知识库 - 让两千年的文字活过来

两千年来我们读《史记》,现在让机器帮我们"看见"隐藏的知识网络。

在线阅读: https://baojie.github.io/shiji-kb | 报告问题: 提交Issue (推荐截屏+paste) 许可证: CC BY-NC-SA 4.0

学术文献请引用:鲍捷,史记知识库,2026,在线发布于https://github.com/baojie/shiji-kb


这是什么?

一句话介绍:用AI将《史记》57万字转化为可交互、可探索的知识图谱,让两千年前的文字像代码一样可以语法高亮、跳转、搜索、推理。

核心成果(2026-04-18 v4.0):

  • 15,331 个实体126,101 次标注(18 类名词 + 4 类动词)
  • 3,198 个历史事件,98.7% 标注公元纪年
  • 7,652 条事件关系(9 种类型)
  • 130条交互式时间线("史记地铁图")
  • 2本PDF方法论书籍(425页元技能+438页管线技能)

适合谁?

  • 📖 历史爱好者:语法高亮阅读、一键跳转、人物关系图谱
  • 🎓 学术研究者:矛盾检测、史料溯源、系统化推理
  • 🎮 内容创作者:历史素材引擎、二次创作工具库
  • 🤖 AI工程师:古籍知识工程方法论、Agent工作流参考

快速体验

在线阅读器

首页: https://baojie.github.io/shiji-kb | 报告问题: 提交Issue (推荐截屏+paste)

精选章节:

核心功能

  • 22 类实体语法高亮:18 类名词(人名/地名/官职/身份/时间/邦国/氏族/名物/族群/器物/天文/神话/生物/数量/典籍/礼仪/刑法/思想)+ 4 类动词(军事/刑罚/政治/经济)
  • 语法高亮开关:右上角齿轮按钮,可关闭高亮专注阅读(持久化保存偏好)
  • 知识索引跳转15,331 个实体词条(126,101 次标注),别名合并 595 条,语义消歧 644 处
  • Purple Numbers段落编号:每个段落可精确引用和分享(致敬Doug Engelbart)
  • 史记地铁图:130条线路×3,197站点,支持缩放/拖拽/搜索/时间线 (app/metro)

阅读器演进五层次

从原始文本到全功能知识库:

原文 → 专名标注 → 语法高亮 → 语义排版 → 关系连线

查看完整演进过程 | 语义排版技术细节


三大突破

🎯 Agentic Ontology:AI时代的知识工程新范式

传统本体构建(2001) Agentic Ontology(2026)
起点 专家在Protégé中从空白开始 AI从原始文本中提取
方向 自上而下设计 自下而上涌现
规模 数十个类、数百个实例 数千个类、数万个实例
迭代速度 数周一轮 数小时一轮
核心瓶颈 2001: 设计 2026: 反思/进化

核心转变:2001年的难点是"设计本体",2026年的难点是"反思/进化AI提取的本体"。本体不再是专家预先设计的蓝图,而是从数据中生长出来、由人类修剪和校准的有机结构。

详见方法论对标文档:Agentic Ontology 101(英文,对标Noy & McGuinness 2001经典)

📚 可复用方法论:从一部书到整个文库

总控SKILL - 完整管线操作指南

14个元技能(Meta-Skills) - 通用知识工程方法论

  • OTF+JIT+Bootstrap、反思循环、冷启动、柳叶刀方法、质量控制、SKILL优化与演化……
  • 下载PDF合集(发布日期:2026-03-18,425页,2.35MB,包含14个元技能)

77个管线技能(Pipeline Skills) - 古籍处理完整技术栈

  • 校勘→结构分析→实体构建→事件构建→关系构建→本体构建→逻辑推理→知识库管驭→应用→项目管理
  • 下载PDF合集(发布日期:2026-03-19,438页,3.01MB,包含40个管线SKILL)
  • 注:当前SKILL体系已扩展至77个,PDF为2026-03-19版本快照

技术文章 - 方法论实战解读

  • 《从历史书中探索知识图谱》(2026-03-19):项目缘起、核心成果、技术架构、元技能体系的完整呈现
  • 下载PDF(14页,1.5MB)

为什么是SKILL而非代码?

四个关键原因:

  1. 灵活性:每个研究问题都不同。传统代码需要重写,SKILL只需调整提示词。当发现新的错误模式(如"单锚点塌缩"),直接写入SKILL文档,所有后续章节自动获益——无需修改代码逻辑。

  2. 可读性:学者能直接阅读和验证方法论。事件年代反思的26条错误模式、12条推理逻辑,用自然语言表达比正则表达式或if-else分支更清晰。史学研究者可以挑战、改进这些规则,而不需要懂编程。

  3. 普适性:同一套SKILL架构可直接迁移。《史记》的实体标注SKILL稍作调整即可用于《汉书》《资治通鉴》;年代推断SKILL可复用到任何编年史料。代码往往与具体数据格式强耦合。

  4. 可演进性:知识工程本身可以自举。系统从李开元《秦崩》学会30+种史源溯源方法 → 提炼成SKILL → 用这个SKILL分析新案例 → 发现8种新方法 → 更新SKILL。这个闭环用传统代码难以实现。

这套管线的执行,没有人从头写过一行传统程序。每一步对应一份SKILL文档——用结构化自然语言写清楚:输入是什么、处理逻辑是什么、输出是什么、怎么验证。AI读SKILL,执行SKILL,产出结果。

🔍 从数据中涌现的洞见

语法高亮是认知辅助的第一步。更深层的突破是:当实体、事件、关系被结构化后,机器能发现人力不可能完成的模式——跨130篇的矛盾检测、跨越2600年的规律归纳、从57万字中自动推断治乱兴衰的深层逻辑。

知识图谱在构建过程中发现了20+个跨章洞见(详见 eureka.md):

  • 征服-治理倒转:打天下的手段恰恰是治天下的障碍
  • 边缘优势:成功王朝一致从边缘地区起源
  • 宽恕悖论:对下属的宽恕创造忠诚,对敌国的宽恕制造灾难
  • 冯谖烧券买义的经济学:首次用现代财政分析解读战国债务免除——年利率推算、债务规模估算、免除成本效益分析,揭示孟尝君如何通过3000金换取薛地民心,开创战国贵族财政史研究(详见案例12
  • 沙丘之谋的四层传播链:追溯"赵高-李斯-胡亥密谋"故事从前210年到司马迁时代的百年传播路径,揭示官方史料、野史传说、儒家叙事如何层层叠加,最终形成《史记》版本(详见案例04

这证明:当知识被充分结构化后,机器辅助的推理能发现人类难以通过线性阅读察觉的深层模式


🎨 应用与实验

史记是个巨大的宝库,知识图谱是产生创见的浓缩咖啡。 它能让我们更快、更自动化地创作出更多更好的播客、短视频、小说、电影、游戏。当然,也能帮我们发现历史真相,进行学术研究。

最新好玩的实验(都是刚刚开始的在进行中的半成品):

  • 太史公曰 - AI学太史公写作:三层SKILL架构,把乔布斯、葛底斯堡演说改写成《史记》文风
  • 太史公怎么知道 ✨NEW - 史源溯源与历史推理:整合李开元30+种方法 + 《安史之乱》8种新方法,12个深度案例(107,000字)
    • 案例11:长平之战财政计算,揭示赵王换将真因
    • 案例12:冯谖烧券买义经济学分析,开创战国贵族财政史研究
  • 矛盾分析 - 130篇里谁说了假话:AI跨篇章矛盾检测,基于史记常识库发现10个反常案例
  • 史记常识库 - 10大类普适性规律知识(108+条目),支持反常检测与真实性推理,首轮反思迭代提取8个高质量常识
  • 语义排版 - 文本也能像代码一样高亮:句间关系可视化

→ 更多实验见 labs/ 目录

应用场景

详见:史记阅读器重构与语义排版

  • 文艺二次创造:历史小说/电影/短剧素材引擎,快速检索人物关系、事件脉络、场景细节
  • 游戏化:SKU→技能卡,事件→剧情,实体→角色。一个知识库支撑一百款不同游戏
  • 历史探案:年龄/婚姻/家庭一致性自动检验,矛盾自动浮现
  • 学术研究:矛盾检测、史料溯源、系统化推理(详见北大考古学生反馈
  • 跨语言历史:波斯文/蒙古文/阿拉伯文史料融合中文知识图谱,边疆史多视角呈现
  • 考古应用:16万份甲骨拓片系统性分析,单字研究逻辑并行化

核心数据

类别 规模 亮点
文本标注 130 篇,57.7 万字 22 类实体(18 类名词 + 4 类动词),126,101 次标注
实体 15,331 词条 / 126,101 次标注 4 轮按章反思,累计修正 ~20,000 处
知识索引 18 类名词 + 4 类动词 + 3 类语义关系 别名合并 595 条,语义消歧 644 处
事件 3,198 个,11 类事件类型 98.7% 已标注公元纪年
事件关系 7,652 条,9 种类型 4 种自动计算 + 5 种 LLM 推断,1,876 个跨章换乘
知识单元 434 事实 + 241 技能 7,497 个实体关联
方法论 14 元技能 + 56 管线技能 2 本 PDF 合集(共 863 页)
技术文章 1 篇,14 页 PDF 《从历史书中探索知识图谱》(2026-03-19)

标注质量里程碑

事件时间反思(5轮Agent迭代,累计修正~2,100处):

  • 第1轮:1,010处(消除系统性错误,建立26条错误模式)
  • 第2轮:431处(精细调校,确定性升级)
  • 第3轮:465处(收敛验证,格式清理)
  • 第4轮:167处(终态验证,仅9%为实质性年份修正)
  • 第5轮:21处(跨章节交叉验证,强收敛)

实体标注反思(4 轮按章审查,累计修正 ~20,000 处):

  • 第 1 轮(2026-03-15):~1,913 处(类型边界修正,官职→身份等 650+ 处)
  • 第 2 轮(2026-03-17):~9,955 处(刑法、礼仪等遗漏补充)
  • 第 3 轮(2026-03-21):~890 处(时长消歧 A8 批量 770+,A70 动词格式红线封堵)
  • 第 4 轮(2026-04-16 至 04-18):~8,684 处(B7 邦国+人名总则批量升级、A110 主人公消歧无豁免、E3 半角引号全库扫描)
  • 规律库:134 条(A 类型判断 116 + B 邦国氏族 7 + C 单字消歧 5 + D 领域专项 15 + E 格式残留 5)

其他质量保障

  • ✅ CSS渲染升级v5.4:身份标注符号语义修复(8,774处)
  • ✅ 文本完整性验证:原文与标注文件逐字相同,100%通过
  • 📊 详见 doc/events/ | doc/entities/ | CSS版本历史

技术架构

四层语义递进模型

结构语义 → 图谱语义 → 知识语义 → 应用语义

每一层回答不同的问题,严格递进:

  1. 结构语义(第1层):文本怎么组织的?句子间什么关系?

    • 校勘、切分、编号、句间关系识别、三家注对齐
  2. 图谱语义(第2层):谁做了什么?在哪里?什么时候?

    • 实体标注、事件提取、关系发现、年代推断
  3. 知识语义(第3层):怎么分类?遵循什么规律?

    • 本体构建、逻辑推理、知识单元化、模式识别
  4. 应用语义(第4层):历史真相是什么?有哪些矛盾?能发现什么规律?

    • 矛盾检测、规律归纳、交互式探索、洞见挖掘

详见:研究方法总则 | 项目初衷、愿景与未来方向

九步管线(Agent驱动,可并行)

01 校勘 → 02 结构分析 → 03 实体构建
  → [04 事件 / 05 关系 / 06 本体 并行]
  → 07 逻辑推理 → 08 SKU构造 → 09 应用构造
  • 校勘:多版本比对,生成定本 (SKILL 01)
  • 结构分析:章节切分、Purple Numbers编号、句间语义关系、三家注对齐 (SKILL 02)
  • 实体构建:18类NER标注、别名消歧、多轮反思审查 (SKILL 03)
  • 事件构建:结构化事件提取、公元纪年推断、十轮反思校正 (SKILL 04)
  • 关系构建:9种关系类型、SPO三元组、事件链路 (SKILL 05)
  • 本体构建:实体词表→分类树→OWL/RDF (SKILL 06)
  • 逻辑推理:矛盾检测、生卒年推断、姓氏推理 (SKILL 07)
  • SKU构造:知识单元化(Factual/Procedural/Relational) (SKILL 08)
  • 应用构造:阅读器、地铁图、游戏化、问答 (SKILL 09)

详见:管线总览 | 完整SKILL索引


路线图

近期:深化《史记》(2026 Q2-Q3)

  • 十表交互式查看器:将年表从静态HTML转为可筛选、可排序的动态表格
  • 社会网络分析:基于3,797个人名和已有关系数据,构建跨朝代人物网络
  • 时空分析:对接CHGIS(中国历史地理信息系统),构建可按朝代切换底图的交互式历史地图
  • 系统化矛盾检测:跨章交叉验证(如007项羽本纪 vs 008高祖本纪的死伤数矛盾)
  • Neo4j图数据库:导入知识图谱,支持Cypher查询和图算法分析

近期规划:3月完成史记,4月处理汉书和左传,5月完成通鉴。

中期:扩展到26史+资治通鉴(2026-2027)

项目的方法论(管线架构、SKILL文档、Agent工作流)设计之初就考虑了可移植性:

目标 规模 成本估算 适配要点
二十六史 ~4,000万字 优化后~5-10万元 实体类型扩展、朝代特有制度
资治通鉴系列 ~600-700万字 优化后~1-2万元 编年体结构、与纪传体互参
先秦诸子 ~100万字 优化后~2千元 思想概念为核心实体、论证结构分析

关键:不是重复劳动,而是复用已验证的SKILL,让每一部新古籍的处理成本递减

史记一共60万字,处理成本约千元级别(含试错和方法论探索)。优化后,每10万字成本可降至百元级别。

远期:30亿字级古籍数字化基础设施(2028+)

  • 四库全书、佛道经典:总规模约30亿字
  • Agent驱动、Skills可复用:方法论本身成为可分发的知识资产
  • 从文献到知识到发现:机器不只是帮助阅读,而是帮助发现——跨文献的交叉验证、矛盾识别、规律归纳
  • 开放协作:代码和方法论开源,数据以CC BY-NC-SA 4.0发布

最终愿景:建立一个由AI Agent维护和持续进化的中国古典文献知识网络,让任何人都能以问答、可视化、推理的方式探索数千年的历史智慧。


质量保障

为什么会有错误?

这是一个人+AI协作的大规模知识工程项目。57.7 万字、15,331 个实体(18 类名词 + 4 类动词)、3,198 个事件,全部由 AI Agent 在有限提示词指导下自动提取。错误不仅不可避免,而且预期之内

错误的三个主要来源

1. AI理解偏差

  • 古文歧义性:同一个字在不同语境下可能是人名、地名或普通词汇(如"齐"可以是齐国、齐桓公,也可以表示"相同")
  • 多义实体:历史上有多个同名人物(如张良、李斯跨朝代同名)
  • 隐性指代:史记中大量使用"公""侯""王"等称谓,需要结合上下文推断具体是谁

2. 标注规范的动态演进

  • 项目初期规范不完善,随着数据积累逐步细化
  • 例如:身份标注符号语义在v5.4版本才系统修复(8,774处调整)
  • 跨章一致性问题:不同章节标注时段不同,规范认知有差异

3. 复杂推理的边界

  • 年代推断:史记使用在位纪年,转换到公元年需要多步推理(君主在位年表→在位年数→公元映射)
  • 事件关系:因果关系、时序关系等语义判断,AI准确率约85-92%
  • 消歧决策:判断两个"韩信"是否是同一人,需要综合地理、时间、职位等多维信息

我们怎么修正?

结构化反思循环(Agent-driven Quality Loop)

[AI初始标注] → [规则校验] → [Agent反思] → [批量修正] → [人工抽检] → [规范迭代]
     ↑                                                               ↓
     └─────────────────────── 下一轮反思 ←──────────────────────────┘

实证:事件年代审查的质量收敛

轮次 修正数 涉及章节 错误率下降
第1轮 1,010 118/130 初始基线
第2轮 431 105/130 ↓ 57%
第3轮 465 70/130 ↓ 8% (新类型错误)
第4轮 167 68/130 ↓ 64%
第5轮 46 28/130 ↓ 72%

关键洞察:90%准确率的AI标注 + 5轮反思,总耗时5天,成本约200元。人工从零标注57万字,估计需要6-12个月。速度提升100倍的代价是接受初始错误并系统性迭代修正

多层质量保障机制

1. 自动校验工具链

  • 原文完整性检验:100%验证标注后字符数与原文匹配
  • 符号对称性检验〖@人名〗 开合标签必须配对
  • 实体类型约束:18类实体的合法性检查
  • 跨文件引用检查:事件中引用的人名/地名必须存在于知识索引

2. Agent反思审查

  • 第一轮实体反思(2026-03-17):130章系统审查,修正1,913处标注错误
  • 事件年代审查:5轮迭代,修正2,119处年代推断错误
  • 别名消歧:595条别名合并,644处同名消歧

3. 人工抽查与规范修订

  • 每完成一批反思,人工抽检5-10%结果
  • 根据发现的系统性问题修订SKILL文档
  • 重新运行受影响章节的标注

已知问题清单

详见 Issues,当前主要问题类型:

  • 实体边界模糊:复合词如"汉中王"应该标注为"汉中(地名)+王(身份)"还是整体标注为"职位"?
  • 事件粒度不一致:部分章节事件切分过细(一句话多个事件),部分过粗(一段只有一个事件)
  • 关系推断过度:某些因果关系是AI过度推理,史记原文未明确表达
  • 年代推断空缺:约1.3%的事件无法推断具体公元年(如神话时期、记载过于模糊的事件)

如何报告错误?

我们非常欢迎社区帮助发现和修正错误!

GitHub Issues: https://github.com/baojie/shiji-kb/issues

报告方式:最简单的方式是直接截图上传,配一句话说明问题即可。我们会从截图中定位章节和具体位置。

我们会怎么处理?

  1. 48小时内响应:标记issue类型、优先级
  2. 批量修正:累积同类错误,用Agent批量修正而非逐个手工改
  3. 规范更新:如果是系统性问题,更新SKILL文档并重新运行相关章节
  4. 贡献者致谢:在commit message和更新日志中致谢报告者

长期愿景:众包质量迭代

未来计划:

  • 公开质量看板:实时展示各章节各类标注的置信度分数
  • 众包审校系统:社区成员可以在线提交修正建议,自动生成PR
  • 置信度标注:给每个实体/事件/关系标注AI的置信度,低置信度项优先人工复核
  • 对抗性验证:用不同模型独立标注同一文本,差异处自动标记为待审查

核心理念不追求一次性完美,追求可观测、可迭代的渐进完善。开放数据+开放流程+社区协作,让知识库像开源软件一样持续演化。


参与贡献

贡献方式

欢迎各种形式的贡献:

  • 知识图谱完善(实体标注修正、事件关系补充)
  • 代码改进(渲染器优化、新功能开发)
  • 学术讨论(方法论反馈、应用场景探索)
  • 可视化设计(阅读器UI改进、数据可视化)
  • Bug报告和功能建议

参与指南: resources/help/CONTRIBUTING.md - 详细的贡献流程和规范

GitHub Issues: https://github.com/baojie/shiji-kb/issues

社区反馈

2026-03-30: 北京大学考古学生试用反馈 (#85)

在赵冬梅教授的《中国史学史》课堂上,学生们试用了史记知识库并提出了6点建议:

  1. 开关面板 - 已实现语法高亮开关 (#17)
  2. 📋 文本版本体系 - 版本信息、注释、异文集成展示 (#87)
  3. 📋 图文对照 - 原始典籍页面与数字文本并列展示 (#88)
  4. 📋 模糊搜索改进 - 扩展至地名、官职、典故等 (#41)
  5. 📋 官制词典 - 辅助理解复杂官制体系 (#89)
  6. 📋 问题驱动数据库 - 史料溯源、作者意图分析 (#60)

详细反馈: resources/community/2026-03-30_北大考古学生反馈_issue85.md

这些来自历史学、考古学专业视角的建议,为项目的学术化方向提供了重要指引。


快速开始

# 1. 克隆项目
git clone https://github.com/baojie/shiji-kb.git
cd shiji-kb

# 2. 安装依赖
pip install -r requirements.txt

# 3. 生成HTML(单章或全部)
python render_shiji_html.py chapter_md/001_五帝本纪.tagged.md
python generate_all_chapters.py

# 4. 查看结果
# 在线:https://baojie.github.io/shiji-kb
# 本地:打开 docs/chapters/ 下的HTML文件

目录结构: PROJECT_STRUCTURE.md


作者与致谢

创建者

鲍捷 (baojie)

AI协作者

Claude Code (Anthropic)

  • 主力模型:Claude Sonnet 4.5 / Opus 4.6
  • 累计消耗:~55亿tokens,约120小时人机协作(截至2026-04-02)
  • 分工:AI负责大规模标注、代码开发、文档生成;人负责愿景、审美、质量把控、任务调度

致谢

  • 原始文本维基文库《史记》
  • 底层AI基础设施:Claude Code、Claude Sonnet 4.5、Claude Opus 4.6 (Anthropic)
  • 灵感来源:Doug Engelbart(Purple Numbers)、Noy & McGuinness(Ontology Development 101)

许可证

  • 标注数据CC BY-NC-SA 4.0 - 署名-非商业性使用-相同方式共享(可自由用于学术研究和非商业项目,需注明出处,衍生作品需使用相同许可;商业使用请联系作者获取授权)
  • 分析脚本:MIT License - 自由使用、修改、分发
  • 《史记》原文:公有领域作品

免责声明:本项目由AI辅助生成,标注和知识提取中不可避免地存在错误和疏漏。我们正在与AI一起持续修正和完善。本知识库严格局限于《史记》本身的文本内容,不涉及史实考证。


项目维护者baojie (上海 / San Jose)· 最后更新:2026-03-30

赞助一杯咖啡

如果你觉得这个项目有意义,欢迎支持我继续做下去。数额随意,不用超过一杯咖啡钱。

赞助一杯咖啡

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages