第一篇和第二篇讲了古希腊哲学如何催生了Ontology这个概念,然后直接跳到了计算机科学。中间两千多年的哲学史被略过了。有读者留言说,海德格尔把哲学从"认识论框架"拽回了"生存论框架",而这个系列没有提到在黑格尔之后海德格尔在Ontology上作出的重要转折。说得对。从亚里士多德到Gruber 1993年的定义,本体论经历了几次重大转向,而这些转向恰好能解释为什么计算机Ontology和Palantir的Ontology会走向不同的方向。
这篇试着用最简洁的方式把这条线串起来。不是做哲学科普——而是让管理者和工程师看到,那些看似遥远的哲学争论,其实在直接塑造今天每一个数据建模项目的底层假设。
第一篇讲过,亚里士多德追问的是"是者之为是者"——一切事物之所以能够"是"的普遍条件。他的方法是分类:实体、性质、数量、关系、时间、地点……十个范畴。他关心的核心问题是"什么东西存在,它们有什么属性,它们之间什么关系"。
这套框架的影响力延续了两千年。后来所有讨论Ontology的人,不管赞成还是反对,都绑定在亚里士多德设定的议题上——列举存在者、给存在者分类。
托马斯·阿奎那把亚里士多德的范畴体系嫁接到基督教神学上。"什么东西存在"这个问题的最终答案变成了"上帝是最高的存在者"。本体论变成了证明上帝存在的工具。但这个阶段确立了一个影响深远的建模范式:从最高共相(最普遍的概念)向下派生具体实体,层层细分,形成严格的属种层级。这套"顶层核心概念统摄下层细分实体"的逻辑,后来直接遗传给了计算机Ontology——OWL里的rdfs:subClassOf、RDF的类层级,骨子里就是经院哲学的属种二分法。
"Ontology"这个词其实不是亚里士多德发明的。它在1613年才由德国哲学家Goclenius首次使用,沃尔夫在1730年把它系统化为一门独立学科——研究"一般存在的性质"。
然后康德给了它第一次重击——不是彻底废除本体论,而是推翻了独断论式的本体论。康德说:你没办法直接认识"事物本身"(Ding an sich,也就是脱离人的观察、纯粹客观存在的那个真实面目),你能认识的只是"事物向你呈现的样子"。也就是说,你以为自己在研究"什么东西存在",其实你研究的是"你的认知结构允许你看到什么"。康德保留了"先验范畴"作为认知框架——人的理性本身有一套预装的组织方式——但他否定了那种不经验证就直接宣称"世界本质是什么"的独断论本体论。
这是第一次有人指出:你看到的世界结构,不完全是世界本身的结构,而是你的认知方式强加给世界的结构。翻译成企业数字化的语言:不存在一个"绝对客观的企业数据模型",你能对接的永远不是"企业实体的真实面目",而是"被业务逻辑、指标口径和部门视角清洗过的数据"。那些试图脱离具体业务场景去建一个"包罗万象的企业主数据模型"的架构师,犯的恰好就是康德所批判的错误——以为自己能直接触碰"物自体"。第三篇说"Ontology不是数字孪生,是认知眼镜",本质上就是康德的立场。
康德停留在"人只能看见主观现象"。黑格尔往前推了一步——现象不是静止的碎片,事物会在矛盾中持续变化、迭代生成。他说存在不是一组静态的范畴,而是一个辩证展开的过程——从最空洞的"纯存在"出发,经过"扬弃"(保留合理部分、淘汰矛盾部分、在更高层面重新整合),逐步展开出整个概念体系。亚里士多德的范畴是静态共存的——实体、性质、数量同时摆在那里。黑格尔的概念是时间性递进的——每一个范畴都是从前一个范畴的矛盾中生长出来的。
这个转向跟我们第四篇讲的"数字孪生三层能力"有呼应——好的数字孪生不只是反映当下的静态状态,还要能追踪变化、预测演化。但黑格尔体系的问题在于,他认为这个辩证过程最终会收敛到"绝对精神"的完满自我认知——简单说,黑格尔认为人类可以通过辩证法穷尽世界所有运行逻辑,达到终极完整认知。虽然过程是动态的,终点却是一个封闭的、声称已经捕获了一切存在逻辑的体系。动态的过程,静态的终局——这个矛盾也是为什么后来的哲学家(包括海德格尔)要对他反叛。
海德格尔是Ontology历史上最激进的转向。他说从亚里士多德到黑格尔,两千年的本体论都犯了同一个错误——他叫它"存在者遗忘"(Seinsvergessenheit)。说白了就是:两千年来所有人都在忙着罗列"世间万物有哪些"(存在者),没人停下来思考"这些万物的意义来自哪里"(存在本身)。
换一个更直觉的说法:传统本体论像是在编一本百科全书——列举世界上有什么东西、它们有什么属性、它们怎么分类。但它从来没有问过一个更基本的问题:这些东西对谁有意义?在什么情境中有意义?为了什么目的有意义?
海德格尔的回答是:存在不是一个抽象概念,它只能通过"此在"(Dasein——不是玄学术语,就是指处在具体场景中、带着实际关切做判断的人)来显现。你不能脱离"谁在问""在什么处境中问""为了什么关切在问"来讨论存在。一把锤子的"存在"不是它的物理属性(重量、材质、形状),而是你在钉钉子时对它的使用——海德格尔管这叫"上手状态"(工具融入行动,使用者只关注目标,忽略工具本身)。你用锤子的时候根本不会注意到锤子本身,你关注的是钉子和墙。只有当锤子坏了,它才进入"在手状态"(工具被单独拎出来审视、分类、登记)。
这个区分极其重要。传统Ontology——包括后来的计算机Ontology——把所有东西都当成"需要审视的对象":静态的、可分类的、可列举属性的。做IT的人可以这样理解:一个标准的CMDB(配置管理数据库)或主数据管理系统,里面躺着几万个资产标签,整齐划一,但没人用它来打仗——这就是"在手的"。而一个报警弹窗加一键切流按钮,工具和数据已经融化在操作流程中,你甚至意识不到它们的存在——这就是"上手的"。好的工具在使用时应该是无感的——你通过它做事,而不是停下来研究它本身。
1993年,Gruber定义了计算机科学中的Ontology——"对概念化的一个显式规约"。如果你熟悉前面的哲学线索,会发现这个定义本质上是回到了亚里士多德:列举一个领域中有什么东西(类)、它们有什么属性(属性)、它们之间什么关系(关系)。
OWL、RDF、斯坦福七步法,都在做同样的事——给存在者分类、建分类树、定义属性约束。这就是两千年来"存在者之学"在数字时代的延续。海德格尔和康德的批判被完全绕过了——计算机科学家不关心"存在对谁有意义"或者"认知结构是否扭曲了对象",他们只关心"怎么把领域知识形式化"。
这不是计算机科学家的错。他们面对的是工程问题,不是哲学问题。但这个选择的代价是:计算机Ontology天然倾向于"全量建模"(番外八批评的那个倾向)和"静态分类"(番外五批评的斯坦福七步法),因为它的哲学基因就是亚里士多德式的——相信存在一个客观的、可穷尽的领域知识结构,你只要足够仔细就能把它完整描述出来。
Palantir的创始人Karp是哲学博士,但他的导师是哈贝马斯,不是海德格尔。这两个人在哲学上几乎完全对立:海德格尔认为意义来自个体在具体处境中的直接体验——你站在雨里觉得冷,不需要开会讨论才知道自己需要避雨;哈贝马斯认为意义来自人与人之间的理性对话和共识——什么算公平、什么算正确,需要各方坐下来辩论才能确定。
Karp受的是哈贝马斯的训练,但Palantir的实践却暗合了海德格尔。为什么?因为Palantir的第一批客户是情报分析师——一个人坐在屏幕前,面对十几个系统中的碎片化数据,试图在压力下判断"这个信号是威胁还是噪音"。这个场景天然是海德格尔式的:一个具体的人,在具体的处境中,带着具体的关切,独自做出判断。FDE的工作模式也一样——一两个人驻扎在客户现场,在实际业务中感受什么是重要的、什么可以忽略。Ontology不是靠一群人开会讨论出来的共识,而是靠身处现场的人在实践中"看见"的结构。这跟海德格尔说的"存在在此在的关切中显现"是同一回事,只是Karp可能从来没有这样描述过自己在做的事。
第一,范畴在关切中显现,不是预先存在的。Palantir不预设一个"客观的企业知识结构"然后去描述它。它从决策者的具体关切出发——"你要做什么决策、你现在看不见什么"——然后范畴从这个关切中浮现出来。供应商交付周期、安全库存水位、备选供应商——这些范畴不是客观存在于"企业世界"中等着被发现的,而是因为"三周后会不会断货"这个决策关切才变得重要。换一个决策问题,同样的企业里会浮现出完全不同的范畴。
第二,追求"上手"而非"在手"。传统计算机Ontology把实体当成"在手的"——静态的、可审视的分类标本,像CMDB里的资产台账。Palantir追求的是让实体"上手"——成为决策者可以直接操作的工具。Action Types、Write-back、动态层,这些设计的本质就是让Ontology里的对象变成无感的——你通过它做决策,而不是停下来审视它的分类属性。好的Ontology在使用时应该像好的锤子在钉钉子时一样,你感觉不到它的存在。
第三,拒绝"一切存在者的完整清单"。海德格尔批评传统Ontology试图给出一个"存在者的总目录"。Palantir用奥卡姆剃刀砍掉一切跟决策无关的实体——这不只是工程效率的考量,是认识论层面的立场:不存在一个"企业世界的完整描述",只存在"对特定决策有用的局部视角"。对比传统数仓的建模路径——先建表、再清洗、后探索,希望把所有数据都整理好再去找用途。Palantir的路径是反过来的——先有决策痛点,再按需链接实体。这就是海德格尔和亚里士多德的区别在工程层面的投射。
但这里有一个需要说清楚的张力。这个系列从第一篇开始就讲,古希腊人面对万物流变,追问"变化背后不变的结构是什么"。第二篇讲了Palantir继承了两条古希腊遗产:相信不变的结构存在、先定义再处理。这听上去完全是亚里士多德的立场,跟海德格尔的"意义来自此在的关切"不是矛盾吗?
不矛盾。Palantir继承了亚里士多德的信念——混沌背后存在可把握的结构,但放弃了亚里士多德的方法——这个结构不是预先存在的永恒范畴,而是需要在具体场景中被构建出来的认知框架。更关键的是,第二篇已经点明了Palantir做的一条改造:放弃"绝对不变"。范畴框架是可演进的——第四篇讲的数字孪生第三层能力就是"重构范畴"。
所以Palantir的位置不是在亚里士多德和海德格尔之间选边站,而是做了一个工程化的综合:从亚里士多德那里继承了"结构存在"的信念(否则就不需要建Ontology了),从海德格尔那里继承了"结构由实践关切决定"的方法(否则就会滑向全量建模)。信念来自亚里士多德,方法暗合海德格尔。
亚里士多德:什么是真正的存在?(追问存在的本质,建立范畴体系)
中世纪:上帝是最高存在者。(分类树的顶端)
近代沃尔夫:系统化地研究一般存在的性质。(Ontology成为独立学科)
康德:你看到的世界结构是你的认知方式强加的。(第一次质疑)
黑格尔:存在是辩证展开的动态过程。(从静态到动态)
海德格尔:别再列举存在者了,追问存在对谁有意义。(根本性转向)
Gruber/计算机科学:回到亚里士多德,列举领域中的类和关系。(工程化)
Palantir:从决策关切出发构建范畴,追求可执行而非可描述。(暗合海德格尔)
这条线索解释了一件事:为什么计算机Ontology和Palantir的Ontology表面上都叫Ontology,骨子里却完全不同。前者继承了亚里士多德的方法——范畴分类——但丢掉了他追问"什么是真正的存在"的深度,退化成了对领域概念的列举和描述。后者暗合的是海德格尔的"此在分析"——范畴在决策者的关切中显现,服务于行动而非认知。
番外五用Gruber定义和Palantir官方文档做了概念层面的区分。这篇从哲学史的角度解释了为什么会有这个区分——两千多年的本体论不是一条直线,中间经历了多次转向,计算机科学和Palantir各自继承了不同的哲学遗产。
简言之:传统计算机Ontology是静态认知型本体——追求完整描述世界。Palantir的Ontology是动态行动型本体——追求在具体场景中驱动决策。