本体(Ontology):从语义网到Agent时代的「第一公民」——HaishanDB团队技术调研

📅 2026/7/22 2:02:18 👁️ 阅读次数 📝 编程学习
本体(Ontology):从语义网到Agent时代的「第一公民」——HaishanDB团队技术调研

在语义网的元老们眼中,本体(Ontology)曾是个略显古典的词——它属于哲学,属于知识工程,属于上一代 AI 的雄心。可在 Agent 时代,它正悄然回到舞台中央,成为一项绕不开的基础设施。

本文分四步展开:

先厘清本体究竟是什么;

再用一个高风险的真实场景,论证它对 Agent 的必要性与充分性;

继而回溯它背后那条延续了半个多世纪的理论血统;

最后回答一个更尖锐的问题——这套“老理论”,对今天的 Agent 还意味着什么。

01 本体是什么:

从哲学到机器可计算本体(Ontology)一词源自哲学,研究的是“存在”本身:世界由哪些基本范畴构成,它们之间又是什么关系。计算机科学借走了这个词的内核,却为它套上了一层工程化的规范,好让机器也能理解和操作。

被引用得最多的定义,来自 1993 年的 Tom Gruber:本体是对一个概念化(Conceptualization)的显式规范(Explicit Specification)落到计算机与信息科学的语境里,本体就是一组“机器可理解、可计算的表示性原语”,用来为某类知识或事实建模——也就是“知识表示”。这些原语通常包括:类(Classes)、属性(Attributes)、关系(Relations)、约束(Constraints)、规则(Rule)与动作(Action)。

它的精髓,全压在“显式”这两个字上:知识不能只待在人脑里、埋在代码里,而必须被形式化成可复用、可校验、可执行的具体制品。正是这份“显式且可执行”的特性,构成了它在 Agent 时代价值的源头。但抽象的定义总是难以服人,不如直接看一个把必要性与充分性都摊在台面上的场景——银行的“制裁 / 受益所有权穿透 + 实时冻结”。它恰好同时踩中“价值方程”的三个分子:跨域协同、回写动作、强治理。

02 本体在Agent时代的必要性与充分性

场景设定某银行收到一条监管更新:自然人X 被列入制裁名单。合规部门必须在数小时内完成这样一连串动作——找出 X 直接或间接控制的所有账户(哪怕中间隔着 5 层壳公司),逐一冻结,并上报 SAR(可疑活动报告);与此同时,整个过程要留痕、可审计、权限受控。

这里的关键约束是:所谓“间接控制”,通常被定义为穿透后实益持股 > 25%(受益所有权规则)。

必要性:为什么"够用的简单方案"全都不够1.只有关系表 + SQL—— 死在"递归 + 业务语义"上 控制关系是任意深度的图(X → A 公司 → B 公司 → …→ 账户)。用 SQL 只能写递归 CTE,每多一种持股结构就得改一次查询。 更致命的是 ">25% 实益持股"这条语义不在表里。表只有 ownership(holder, company, pct),而“什么才算受控”写在合规手册里、散落在工程师的脑子里——换一个分析师,就可能换一套口径。表能存事实,但存不住"意义和规则",每次都靠人脑补。

2.加一个知识图 —— 能连,不能判 图谱确实能画出 X→A→B→账户的连线,但它只告诉你"有连接",不告诉你"这条连接是否构成受控"。 ">25% 穿透实益所有权"是一条需要沿路径累乘、再按阈值判定的推理规则。缺了本体里的类定义(UltimateBeneficialOwner)和约束公理,图谱不过是“一张巨大的节点边网络,却没人说得清连接为什么重要”——这正是所谓的“有连接而无意义”。

3.LLM + R —— 会"自信地"算错且不敢落地 穿透持股要的是确定性的数值累乘与阈值判定,让模型“自由发挥”几乎必然产生幻觉:把 24% 说成受控,把一层壳公司漏掉。 退一步说,就算它算对了,“冻结账户”是写回核心系统的高风险动作。没有权限校验、没有提交条件,谁敢让一个聊天框直接冻结真实账户?递归图结构、业务语义规则、高风险回写动作、强治理——这四样能力,任何单一的轻方案都至少缺其一。缺一项,闭环就断。这正是本体被“逼出来”的地方:它的回报,恰恰与跨域协同、回写动作的需要、以及高治理要求正相关。充分性:三层本体补齐缺口本体的三层结提供闭环所需的要件:从输入“制裁更新”,到“账户真被冻结、SAR 已上报、全程可审计”这个现实结果,全链路所需的每一项能力,都被这三层本体覆盖了,无需再外挂别的范式来补漏。这正是本体的独特之 —— 把“数据模型 + 业务逻辑 + 治理”熔成了一个可执行的单一制品。价值方程Value ≈ 跨域协同 × 回写动作深度 × 治理强度 ÷ 建模成本 跨域协同:合规、风控、核心账户系统、KYC 共享同一套对象 → 高 回写动作深度:直接冻结真实账户、生成监管报告→ 高 治理强度:误冻/漏报的代价是监管处罚 → 极高 分子三项全部远离 0 → 本体在这里几乎是刚需。如果需求只是“做一张统计制裁命中数量的只读看板”(不回写、不穿透推理、无高风险动作),那直接上 SQL 或语义层就够,根本不必动用本体——这恰恰从反面印证了上面那份“必要性”的成色。

03 形式化知识表示的血统

史前:语义网络与框架(给了“结构”,但没给意义)1960 年代诞生的语义网络(Semantic Networks),用“节点 + 带标签的边”来表示概念及其关联,是“用图表示知识”的最早范式。但它没有形式语义——同一张图,不同系统可以解释出不同的意思,自然也就无法做可靠推理。1975 年,Minsky 在《A Framework for Representing Knowledge》中提出框架(Frames),用“框架(对象)+ 槽位(属性)+ 填充值”组织知识,引入了默认值、继承等思想,几乎勾勒出了后来“类 / 属性 / 继承”的雏形;可它同样缺乏精确语义,连“继承到底意味着什么”都说不清楚。语义网络与框架贡献了直觉和结构(概念、关系、继承),却都栽在同一道坎上——“没有可计算、无歧义的语义”。而这道坎,正是后续所有工作的出发点。关键转折:KL-ONE(描述逻辑的“亚当”)1985 年,Brachman 和 Schmolze 发表《An Overview of the KL-ONE Knowledge Representation System》,提出了 KL-ONE。作为整条血统中最关键的一篇工作,它完成了几件奠基性的事: 把框架/语义网络的“结构”赋予了形式语义——结构化继承网络(Structured Inheritance Networks)第一次有了精确含义。 区分了概念(Concepts,即类)与角色(Roles,即关系),并把“一个概念是另外一个概念的特例”形式化为可计算的包含或归类(Subsumption / Classification)。 奠定了后来描述逻辑里TBox(术语层:概念定义)和Abox(断言层:实例事实)的二分。可以说,OWL里“类、属性、子类、自动分类推理”这套核心机制,源头就在KL-ONE。变成科学:描述逻辑(Description Logics,DL)KL-ONE 的思想被系统化、数学化,凝结成了描述逻辑这一族逻辑。这一阶段最核心的成果,是把“表达能力”与“计算可行性”之间的取舍,变成了一门精确的科学。 Brachman 与 Levesque(1984)在《The Tractability of Subsumption in Frame-Based Description Language》中确立了整个领域的“中心张力”:语言表达力越强,推理就越可能变得不可计算 / 不可判定。OWL 后来分成 Lite / DL / Full 几档工程实现,根本动机正是这条权衡曲线——想要可判定的推理,就得给表达力划下边界。 Schmidt 与 Smolka(1991)在《Attributive Concept Descriptions with Complements》中定义了带否定的属性概念逻辑(ALC),它成为描述逻辑的“标准基准语言”——概念可以由“AND / OR / EXIST / ANY”等逻辑符号自由组合。此后所有 DL,都是在 ALC 上加减特性而来。 Schild(1991)论证了 ALC 与一阶逻辑 / 模态逻辑的关系,证明它本质上是多模态逻辑 K 的记号变体,并明确指出描述逻辑是一阶逻辑的可判定子集——这给“本体的表达力接近一阶逻辑”一句话,下了精确的注脚。 Horrocks、Sattler、Tobies 等人(1999–2006)通过给 ALC 逐步叠加特性(角色层级 H、传递角色 S、逆角色 I、基数限制 Q、标称 O……),得到一系列愈发强大的 DL。其中 Horrocks、Kutz 与 Sattler 于 2006 年的《The Even More Irresistible SROIQ》,正是 OWL 2 DL(2009)的底座。 与此同时,Horrocks 和 Sattler 等人发展出的 tableau 判定算法,让这些逻辑真正“算得动”,催生了 FaCT、RACER、Pellet、HermiT 等推理机,也为 OWL 的自动推理、一致性检查、隐含知识显式化等能力落地,打下了工程基础。嫁接到Web:从DL到OWL最后一步,是把成熟的知识表示理论,工程化成 Web 上可推理的本体语言。 Heflin和Hendler在1996-2000年间最早尝试在网页里嵌入本体标记,设计了SHOE(Simple HTML Ontology Extensions)。 Fensel等于2000年提出了OIL(Ontology Inference Layer),将DL语义带到了Web,同时DAML(DARPA Agent Markup Language)并行推进。 两者于2001年合流为DAML+OIL,几乎就是OWL的直接前身。W3C在此基础上标准化出OWL(2004),再于OWL 2(2009)升级到SPOIQ。

04 本体理论对Agent时代的价值和意义

这条从语义网络一路走到 OWL 的血统,最贵的从来不是某一种具体语言,而是一整套“如何让机器无歧义地表示与推理知识”的纪律。于是问题变得尖锐起来:这些理论成果,对今天的 Agent 还有借鉴意义吗?我的答案是:有,但要分清“哪一种有”。它不仅有强借鉴意义,而且 Agent 圈其实早已在“不自知地重新发明”这些东西——只是常常发明得更糙,丢掉了当年最贵的那部分纪律。 更耐人寻味的是,这甚至算不上“借鉴”,某种程度上是一次回归:语义网当年本就是为 Agent 而设计的(Berners-Lee 2001 那篇里的主角,正是在语义网上穿行、靠本体彼此协作的 agents)。所以今天发生的,更像是历史在押韵。映射表:每个本体理论成果,在 Agent 时代对应什么将可借鉴的内容分三类: 1. 元原理(思想可迁移)、2. 可复用制品(技术可直接用)、3. 前车之鉴(教训)。最值得展开的三条I. "表达力↔可判定性"是迁移性最强的元法则Brachman–Levesque 1984 年画下的那条曲线,搬到 Agent 上一字不改地成立:你给 Agent 越大的生成 / 工具自由度,它就越强,却也越不可控、不可验证。当下所有“约束解码 / 语法约束生成 / 结构化输出 / typed tool call”的努力,本质都是在这条曲线上重新寻找甜点——只是绝大多数工程师并不知道,四十年前 KR 圈早已把这条曲线画得清清楚楚。借鉴意义就在于:直接把“该砍掉哪类构造来换取可判定性”的方法论搬过来。II. Agent 用的是"坏掉的 OWA",而解药在 1998 年就有了OWL 选择开放世界假设(OWA),是因为“Web 上的知识天然不完整”。LLM Agent 同样活在不完整的信息里,但它的默认行为是一种坏掉的 OWA:遇到不知道的东西,不是标记“未知”,而是自信地编(也就是幻觉)。而认识论 DL 的 K 算子(Donini、Lenzerini 等)恰恰把“系统知道自己知道什么”形式化了——这正是今天我们想要的:让 Agent 识别知识缺口,该检索就检索,该弃答就弃答。可这条线索几乎没人接上:Agent 圈正用 confidence / uncertainty 这类粗糙手段重新发明它,却没回头去看 LCWA + 认识论算子那套更严谨的框架。III. 多Agent协作:最大的"既视感"盲区Gruber 说本体是“共享概念化”,目的就是让不同主体在同一意义系统上协作。而 1990 年代的 KQML / FIPA-ACL 多智能体通信语言,本就建立在共享本体之上。今天的 MCP / A2A / agent 协议,正在重新解决“两个 Agent 如何对同一个概念达成一致理解”这个老问题——但多数仍停在传递消息的语法层,缺了那一层共享语义。这是历史押韵得最响、也最该被借鉴的一处:多 Agent 互操作真正的难题不在协议格式,而在共享本体——而它恰恰是被跳过的那块。哪些重发明得好、哪些丢了重发明得不错的(那些“容易”的部分): 输出校验 / 结构化输出 ≈ SHACL,工程上已经很自觉。 把求解器当工具 ≈ 形式推理外置,神经符号路线正在走对的方向。 专精 Agent ≈ profile 哲学,正在自然收敛。丢掉了的(那些“难”的、当年最贵的纪律): 可判定性纪律——KR 圈是"先证明能算完,再用";Agent 圈是"先能跑,再补护栏"。前者的工程美德被丢了。 认识论自觉——"知道自己不知道"有现成形式化,却在用粗糙手段重造。 共享语义——多 Agent 在重发明 KQML,却没继承"必须共享本体"这一课。一句话收束:OWL 这条路上沉淀下来的本体理论,对今天的 Agent 而言,已经不是“要不要借鉴”的问题,而是“早已在无意识地重走、却把纪律丢在了半路”的问题。最高杠杆的三处借鉴是——把“表达力 ↔ 可判定性”当成显式的设计法则;把认识论算子接进 Agent 的知识边界自觉;把共享本体补回多 Agent 协作。 #HaishanDB #海山数据库 #He3DB #中国移动海山数据库 #中国移动HaishanDB