收藏自 微博看原文评论 ↗
本文为个人存档,版权归原作者所有;评论请点上方按钮前往原文查看。

https://weibo.com/1932835417/Qz7VyjXdU#repost

这是我最近做的一个个人项目,用AI的方法把史记变成知识库。文章是前几天写的,现在skill的数量已经涨到了77个。

我做这件事的初衷只是想做一个容易读一点的阅读器。作为一个老码农,习惯了程序的语法高亮,每次读“正常”文字,都想,为什么自然文本不能语法加亮呢?为什么不能让机器自动帮我把我平常自己要用笔加的下划线帮我做了呢?为啥不能让AI帮我把长段落切分呢?为啥不能把韵文自动回车对齐呢?

这个事我想了很多年,突然有一天我忍不住了,我干嘛不自己做一个?于是就有了史记知识库。

我自己是做知识工程出身的,所以知道语法加亮本质上是一个把文本结构化的过程。于是就开始对《史记》做结构语义分析,实体语义分析,关系语义分析等。

其实第一版的语法高亮版《史记》两天就做出来了。但是作为玩票和作为认真做的东西,还需要真的做好质量控制。于是我就开始做质量控制的各种agent设计。

BTW,从开始我就没有自己写代码,是用Claude Code写的所有的东西。

从让CC帮我写lint脚本开始,很快各种任务越来越多。在每一条工序后面,都要做质控:分段,段落编号,实体抽取,事件,时间识别,关系识别……有了越来越多的质控脚本。

然后我就被迫开始用机器来帮我写脚本。我开始写质控的SKILL。

然后一个SKILL变成了5个,5个变成了10个,然后20个……我写介绍文章的时候变成了40个,现在是77+14个。

这有点像,你在化学实验室里实验了一个反应方程式,很简单。但是你要把这个反应方程式变成化工生产线的时候,就要加庞大的工艺设备支持,才能让这件事能大规模地和自动化地的去做。

然后我发现这件事变得越来越有趣,我是在做一个完整的古籍->知识的生产线,包括
\* 怎么校勘,各种“小学”的东西,多版本校对,表格校勘,句读,繁体简体转化,正音和拼音,训诂和三家注
\* 结构分析:章节切分,编号,区块(如对话),韵文,文本统计和标注(词性),表格结构识别,词表构建……
\* 实体构建:人名、地名、生物、时间、官职、制度……一共有18种实体,要按类型反思,反章反思,一层层识别错误、消除错误
\* 事件构建:正文中事件抽取,表格中事件抽取,年代推断,年份消歧,时间的审查、质控、反思
\* 关系构建:人物关系(如亲属、即位),事件关系,战争事件……
\* 本体构造:如实体的分类,规则
\* 逻辑推理:如姓氏推理(因为先秦的人姓和氏不一样)、溯源、真实性、人物生卒年

等等,想构造一个好的知识库,需要的是一个完整的“化工厂”。核心是质控。后来这套东西这个月有了个新名字叫“Harness”(管控、管驭),包括知识库本身的Harness(如颗粒度管理、覆盖度管理、成本监控和节约、正确性评估)和开发过程的Harness(SKILL的自动化提炼、任务管理和自动化、版本管理等等)

为了让“化工厂”本身的设计也能自动化,我又被迫开始制造一个建设化工厂设备的“化工设备工厂”,这就是一组“元技能”(meta skill),一共写了14个,包括:如何在每一步工序反思,如何建立迭代工作流,如何无样本冷启动,如何混合多种算法(“柳叶刀”方法),如何全流程提高可读性,培养数据体感,如何设计标注体系,agent提示词设计,设计SKILL和优化,如何做数据融合,迁移技能,等等。

最后,我又被迫为设计“元技能”写了一本《化工设备设计原理》,这就是文档 “skills/00-META-00\_好东西都是总结出来的.md”。这基本上概括了我入行20多年来最核心的一个“元元技能”(meta-meta-skill):好东西都是总结出来的。

其实这个和毛主席说的“实践出真知”和精益创业学派的“Build-Measure-Learn”讲的本质上就是一回事:不要凭空设计,分解任务,小步快跑,分析中间结果,及时调整,时时总结。一切都可以无中生有。

做这些东西让我很快乐。在没有agent的时候,做这些事情很难。我年轻的时候做知识工程,一切都是“古法”,每一条三元组都需要手工撸。现在享受到agent的服务,那种快乐就是美梦成真。我和每个老同行都说,我们(知识工程)历史上所有的问题都解决了,再也没有我们解决不了的问题。

有个老同志问我,这个很好,可是有什么用呢?

很显然一个更好的阅读器还打动不了他们。

我就开始捉摸还有什么其他的用处。我们是搞推理出身的,那就试试能推理出什么来吧。于是我开始设计推理的skill。

这是第一次,AI真的教会我一些我不知道的知识了!

比如,鸿门宴里,我以前知道,故事是樊哙的子孙传下来的。但是樊哙是饭吃到一半才进去的,那前面一半的细节是谁传下来的呢?AI推理说,前面一半在场的人里,最有可能的是项伯,他后来投降了刘邦,从动机和利益的角度,他最可能传播这一半的故事。

又比如说赵高和李斯在沙丘秘密,这种密室对话是怎么传出来的呢?我让AI把李开元的几本书提炼成了SKILL,然后按破案的逻辑去推理,AI开了一个脑洞我觉得非常合理:赵高和身边的几个宦官后来被子婴抓住了,抓住之前被审问,讲了这些故事,然后子婴投降刘邦的时候,把这个细节和刘邦说了。

还有冯谖帮孟尝君在薛邑做债务重组。我让AI用《安史之乱》的逻辑去分析,它就认认真真去算账,做经济学分析,孟尝君每年挣多少钱,花多少钱,他要怎么平债务。这就帮我跳出传统的分析框架,从更底层的逻辑去理解事情了。

我把“荆轲刺秦”的一个分析结果分享出去了,其中从各个角度分析夏无且把这个故事传播出去的可能性和动机,有个网友就把这个做成了播客。这个博客真的好有意思,因为它和一般的讲故事的博客不一样,它有“洞见”(insight)。

所以《史记》知识库最大的价值,是它能帮我们大规模的用一个“化工厂”来生产洞见。历史的事实就像一个个珍珠,一次洞见的产生就是把珍珠串起来的过程。史记中大概有10万个基础事实(facts),但是这些事实被组合串起来有多少种选择?至少是几千万种。这些有逻辑的组合的过程,就是推理。推理产生洞见。洞见产生有价值的故事。

基于这个知识库,我们可以二次创造出无穷数量的故事,无论是用播客、小说、短视频、漫画、游戏、电影,还是其他的载体形式。我相信AI可以帮助我们爆发出无穷的智慧。日本的半部战国史就催生了几十年的大河剧,如果我们能把《史记》+AI来创造,那能创作出多少真的“有故事”(而不仅仅是视觉效果)的电影和小说来啊!

如果我们不仅仅知识库化这一本书呢?《史记》和《左传》、《汉书》有很多交叉的事件,如果我们把这些书都结构化了,便趁能够更容易让AI理解的知识,那又会挖掘出什么来呢?我收集了20亿字的古籍,如果都按这个方法论处理完了,会得到什么呢?我相信,一定会发现出无数的以前从来没有历史学家发现过的新的知识和规律。

以前,研究者要皓首穷经,比记忆力和洞察力。现在AI可以让一个普通人,也马上拥有这些能力。AI可能比不上顶尖的研究人员,但是它可以让研究能力平权,让大量的数据和定量的分析来做很多有趣的研究。我相信,就和维基百科一样,AI早期的分析是不够专业的,会有很多错误,但是假以时日,它会越来越好,会让越来越多的人有能力来分析。知识是有网络效应的,当知识形成一个网络,复利效应就会越来越强。

我做了一个定量研究,“太史公是怎么知道的”,系统分析史记中每一个事件的历史传播链。在史记中,有15%的事件是司马迁亲历或者口述访谈得到的,有13%是他从家族(比如司马谈)哪里得到的,有58%应该是他从书里读来的,7%是各种传闻故事,7%是官方propaganda。这种定量分析,以前应该还没有人做过,非常有意思。比如两千年来我们一直说《史记》是“成一家之言”,那它和其他正史的区别在哪里呢?核心就应该在这15+13+7% = 35% 的“口述历史”中。以后再也没有一本历史书有这么高比例的个性化史料来源,也就没有史记这种强烈个人属性和鲜活性。

我相信,这样的定量研究还可以做无数种。我们会发现,一本我们以为已经很熟悉的《史记》里,还有那么多我们不知道、没有注意的有趣的东西。

我把这个知识库开源在了github上,分享了这个故事出去。我本来以为这是个很小众的东西,结果足足有3000多人来加了我的读者群。我自己都震惊了!原来喜欢历史+AI的人很多,而且开源的那套SKILL真的对很多人都用。

《史记》是中华民族的初恋情人日记。她是“汉人”在刚刚形成的时候,心中还有很多梦想,还有无穷的创造力和浪漫情怀。那时候,一切都有可能,我们相信自己的力量。我们还是有血有肉的人,没有被驯化,没有被纲常束缚。那时候我们这个民族记录了自己的恋爱的故事。现在过了两千多年,翻开这本书,我们还能感受到这个民族少年时候的勃勃朝气,那种一往无前的精神。

今天,AI也在她刚刚形成的时候。这时候,一切都有可能,有无穷的梦想,有无穷的创造力。我相信未来的有一天,有个agent翻开了这个知识库,她可能会说,哦,原来这就是故事开始的时候的样子啊!

仓库链接:0网页链接

————————

『一个开源的AI《史记》知识库与26个可复用构造知识库Skill,57万字史记,10万个实体、3185个事件、7652条关系全部结构化』0网页链接收起