
大家好,我是人月聊IT。
最近我一直在表达我的一个重要观点,就是在AI大模型时代,一定要抛弃传统的本体建模实践方法,或者说不要简单的去生搬硬套传统本体建模实践。而是应该去探索一种更好的本体模型和AI大模型融合的思路。充分发挥本体模型在AI时代的更大价值。
所谓传统实践,大家应该都熟悉——用 OWL2、SWRL、SHACL 把业务语义和规则一条条标注成形式化文件,再按场景实例化成 RDF,灌进图数据库,然后挂上规则引擎去做推理。
在这套链路里,AI 干的活其实很尴尬:它要么只是帮你生成几个 OWL,SHACL 文件,要么就是帮我把整个建模推理的过程串接起来,仅仅是已经明确的过程步骤的简单粘合。而大模型最核心的动态推理能力,底色的思维链和深度思考能力,根本就没有用上。
对于这个判断我现在依然坚持,但坦白讲,我最初论证它的方式不太完善,因此今天再写一篇文章对里面的关键点进行说明和阐述。
注意,实际我最早一个观点就是对于OWL传统本体建模无法处理复杂业务规则。特别是跨对象的组合约束、场景化的关系、事件联动。
但是实际上随着OWL2和各种规则建模语义定义的推出,已经很好的解决了复杂规则定义这个问题。比如OWL 2 早就分出了 EL、QL、RL 三个 profile,其中 RL 本来就是面向规则式实现设计的;2017 年的 SHACL 又补上了封闭世界的约束校验、跨对象约束,配合 SHACL-SPARQL 连跨属性的算术和时间比较都能做。换句话说,我当年那些"OWL 装不下"的例子,用 RDF 加 SHACL 大多能表达出来。
但是大家也可以看到在传统的本体建模里面,OWL2,SWRL,SHACL各处都存在规则的定义,而是相互之间都是独立的。包括还存在DL,SPARQL,图数据库推理引擎等各种推理机制。规则相当分散,而且没有融为一个整体。
那么这样定义出来的规则本身并不是给大模型用的,而是给传统的SPARQL,传统的各种规则引擎和推理机用的。
所以问题的关键已经不是复杂规则能否定义出来的问题。而是在AI大模型时代,我们更加需要一套方便AI大模型使用的完整规则语义定义方式。包括是否可以用一套完整的规则建模语义来覆盖传统的各种规则语义定义。这些都是值得思考的关键问题。

把这件事讲透,需要先承认一个长期被默认、却很少被点破的前提:传统本体的"推理",是交给一台确定性的机器去做的。描述逻辑推理器负责分类和一致性检查,规则引擎负责条件触发。整套形式化体系——类、公理、约束——本质上都是为这台机器优化的。
可一旦本体的消费者从推理机换成了大模型,一切就变了。
大模型读东西,是把它当成上下文去理解的,它要的是语义清晰、覆盖充分、消歧到位的自然语言定义,而不是为推理机优化过的 Turtle 语法和 DL 公理。对于传统的形式化本体编写维护成本高、演进缓慢,还得养一批专门的知识工程师;而它在大模型眼里,反倒成了一段又冗长又别扭的输入。更要命的是"完备"这个词都换了含义——推理机要的完备是"逻辑可判定",大模型要的完备是"语义说清楚了、不用猜",这是两回事。
所以我的主张其实很简单,可以浓缩成一句话:
本体只负责"定义",真正的推理,交还给大模型自己。
本体把对象、关系、行为、规则用清楚无歧义的方式声明出来;面对具体情境时,由大模型去匹配场景、挑出相关的规则、灵活地组装成一条推理链,给出结论和建议。至少在这类需要灵活组装、动态推理的场景里,我不引入 DL 推理器,也不引入规则引擎。
这跟"把规则一股脑塞进 prompt 让大模型自由发挥"是两码事。区别在于:我给的是结构化的定义,要的是显式的套用轨迹。
我们再回顾下传统本体建模的推理。这种推理更多还是基于知识图谱或图数据库的推理,因为更加方便基于知识图谱的连接关系来快速的构建实现多跳推理。这个是传统本体推理的一个关键优势。这个是我们在新的引入大模型推理后仍然可以保留的一个地方。
但是大家要注意。当前的本体应用场景,真正的推理是相当复杂的。
首先,这个复杂性体现在所有的推理不都是是通过实例化后的知识图谱网络进行的推理。有些推理不是基于知识图谱的,是基于传统的逻辑,算法步骤的推理,而这个推理能力不需要知识图谱支撑。
其次,复杂场景下的推理更多是一种精确算法+动态模糊两种推理的融合。我们需要的是大模型结合本体模型的业务语义知识,在充分理解了问题了,能够真正的拆分问题形成多个步骤后,不同的步骤该精确算法的就用精确算法代码,该模糊推理的就用允许置信度的融合推理,最终形成一个完整的推理链并得出推理结论。这个是传统的单一类似SWRL,SHACL推理无法完成的。
当然大模型推理本身也不是说完全没有毛病。但是结合本体模型和相关技术应用,这些问题都可以更好地解决。
比如多跳复合推理一长就丢条件,那就把规则写得原子化、局部化,一条规则只管一跳,复合效果由大模型把多条原子规则串起来——推理链是组装出来的,不是藏在单条规则里的。
再比如当拉取大数据量数据的时候AI动态推理可能超过上下文和记忆能力。那么这个时候仍然是进行分层处理,类似我前面讲的知识萃取一样的道理。一个是分层,一个是分步骤,达到多批次小批量处理的效果。
所以结合大模型的融合推理,它不该只是知识图谱里的多跳推理,而是大模型这个总指挥,去调度确定性算法、图谱检索和它自己的链式推理——谁擅长什么就用谁,由它来组装。

当然并不是说的本体模型推理都能够基于动态推理机制来做,这样考虑的话往往又太理想化。
真正的分界线,我认为不是"场景变不变",而是置信度和容忍度。有些业务,对错误零容忍、要求结果可复现、还得能审计追溯——医疗诊断、金融合规、合同审核都是这种。这类场景,让一个概率模型每次给出可能漂移的结论,是灾难。它更适合让大模型负责理解和编排,而把最终的确定性判定,仍然交给形式化的规则去执行,对于这类场景仍然是传统本体建模和本体推理的主战场。反过来,那些语义模糊、快速变化、错一点也没关系的领域——用户偏好、市场趋势、内容推荐——才是大模型动态推理真正的主场。
因此别指望一个万能的统一架构,更现实的是按风险分级——可解释性本就该和风险挂钩。低风险的推荐排序,大模型黑箱出结果、记一笔就行;高风险的诊断审批,才需要完整推理链加交叉验证。
大家可以回顾下我前面实践的几个例子。一个是基于本体的供应链智能计划预测,这是实际是精确算法为主,动态模糊推理为辅的融合;而对于后面的电商数据分析例子实际则是以大模型动态模糊推理为主,算法只负责拉取数据的模式。所以不同的场景需求,实际如何结合融合都存在差异。
回过头看,传统本体论最大的价值,从来不是它那套符号形式,而是它背后承载的、人类对"确定性"的执念,以及一套让一个团队对"客户到底指谁"达成共识的契约。这部分不能丢——大模型再聪明,也保证不了一个业务团队内部对同一个术语理解一致,所以人对关键术语定义的否决权、对语义漂移的审计,反而比优化推理算法更重要。
但承载这份价值的形态,是可以换的。有人打过一个我很喜欢的比方:OWL 就像底层的汇编语言,大模型则是那个高级语言的编译器——我们早就不再为每台机器手写汇编,但机器指令并没有消失,只是被隐藏在了编译器之下。本体论大概也正在经历它自己的"编译器时代"。还有一个说法是从"写本体"转向"演本体"。不要去追求一开始就全部写死的本体模型文件,而是要通过不断的场景实践来持续进化和优化本体模型。
这些比喻都挺动人,但我想把调子收得务实一点。知识工程的终极目的,不是攒出一个逻辑完美的知识库,而是帮人做出更好的业务决策。所以与其耗着去画一张更精密、却很快就过时的图纸,不如老老实实地为大模型重做一套"够用、好读、可按场景组装"的业务语义定义,把推理这件事干脆交还给大模型,再用评测、可追溯和风险分级把不确定性圈在可控的范围里。
再次推荐下马运老师的《本体驱动的AI数据管理》这本书,看了这本书后会对传统的数据管理和数据治理如何更好的融入本体模型和AI大模型有更加清楚的理解和认识。
今天的分享就到这里,希望对大家有所启发。