◈本体论工程手册
第八章 · 开源生态地图

8.7 索引之外的十九个系统

趋势章节提到、却不在主索引里的项目

一份索引的边界往往由作者的关键词决定,而趋势论证又常常引用索引之外的项目。这一格把缺口补齐:一个 OBDA 实现、一个国产图引擎、一个带版本控制的图库、三个记忆层、四个本体工程工具、七个「本体优先」实验、两个代码图谱。

为什么值得单列:这批项目的星数比主索引高一个数量级,如果只看主索引,会严重低估「结构热」的规模。

Ontop

A
★ 1,0052013-07-22JavaApache-2.0
虚拟知识图(OBDA)最长寿的实现:关系库不动,用 mapping 把表解释成本体,SPARQL 查询实时重写成 SQL 下推。数据不搬家是它唯一但足够大的卖点。
何时采纳已有关系库、不想为语义层重建数据资产时,先验方言兼容性。

OpenSPG

A
★ 2,2852023-10-23JavaApache-2.0
蚂蚁与 OpenKG 的知识图引擎,核心是 SPG 框架:把属性图的结构与 RDF 的语义缝起来。README 的判词很硬——「RDF/OWL 的语义复杂度无法工业化落地」。配套 KGDSL 用领域语言写规则。
何时采纳需要在「属性图好落地」与「RDF 有语义」之间找折中时。

TerminusDB

A
★ 3,4642019-07-23PrologApache-2.0
把 git 语义做进图库内核:每次更新是一个 commit,commit 之间可 diff / patch,支持 branch 与 time-travel 查询,自我定位是 system of record。核心用 Prolog 写。
何时采纳需要「任意时点可查 + 变更可 diff」的存储形态时。

Graphiti

A
★ 32,3672024-08-08PythonApache-2.0
面向 Agent 的时序上下文图:每条事实带有效期窗口,矛盾以「失效」而非「覆盖」处理,全部派生事实可追回原始 episode。区分「预声明类型」与「从数据学出的类型」两种本体。
何时采纳设计双时态与溯源时,直接抄它的数据模型。

Cognee

B
★ 32,9262023-08-16PythonApache-2.0
把记忆抽象成四个动词:remember / recall / improve / forget,并用 session distillation 把被接受的经验沉淀成永久记忆。可在无 LLM 模式下本地运行,也能整套跑在 Postgres 上。
何时采纳设计「经验如何变成规则」的沉淀机制时。

Mem0

B
★ 68,1052023-06-20PythonApache-2.0
Agent 记忆层的事实标准,drop-in 的 add / search,自动抽取事实、去重、更新。它是对话场景的产物:没有类型系统、没有约束、不保证可复现。
何时采纳做对话型助手、需要长期记忆时。

Oxigraph

B
★ 2,0132018-05-16RustApache-2.0
基于 RocksDB 的 Rust SPARQL 存储,四种形态:Rust 库、Python 绑定 pyoxigraph、JS/WASM、CLI + HTTP 服务。覆盖 RDF 规范化。作者自述查询求值尚未优化。
何时采纳Python 项目里需要一个可持久化的本地 RDF 库时。

ROBOT

A
★ 3292015-01-31JavaBSD-3-Clause
OBO 社区的本体命令行工具:diff、merge、reason、report、extract、convert、query。架构上把纯逻辑的 Operations 与负责 IO 的 Commands 分开,这个切分值得抄。
何时采纳要列「本体 CI 该跑哪几步」时,拿它的命令清单当底稿。

OnToology

B
★ 1162015-03-11PythonApache-2.0
把本体仓库接上 GitHub:每次 push 自动生成文档(Widoco)、类图(AR2DTool)、质量扫描(OOPS!)。产出物不写回源文件,流水线由一个配置文件声明。
何时采纳要给本体挂自动文档与质量报告时。

DeepOnto

B
★ 3282021-11-21PythonApache-2.0
牛津 KRR 的本体处理库,底座是 OWLAPI。六个子模块里最有用的是 Verbaliser:把复杂类表达式翻成自然语言句子;以及 Pruner:抽取子本体用于发布。
何时采纳需要把约束或公理翻译成人话时。

OntoEKG

B
★ 792025-12-31Jupyter NotebookMIT
LLM 驱动的企业本体构建,两阶段:先抽类与属性,再推断 subClassOf 层次并序列化成标准 RDF。论文覆盖数据、金融、物流三个领域。
何时采纳研究「从企业文本抽本体」的流程骨架时。

myKG

B
★ 802026-05-27PythonMIT
知识图引擎,顺序与多数项目相反:先从文档诱导出全局 schema,再按 schema 抽实例。有 CI 与覆盖率门禁,支持多家模型服务。
何时采纳需要「先定 schema 再抽」的工程样例时。

OntoRAG

C
★ 332025-12-31PythonApache-2.0
以「Retrieve meaning, not paragraphs」为口号的 CLI 与核心库,星数很低,是「本体优先」这一提法的早期样本。
何时采纳只在追踪该口号来源时。

OntoKG

C
★ 112025-09-13PythonMIT
把属性按「查表能拿到的」与「必须走关系的」提前分类(intrinsic-relational routing)。这个分类在建模阶段做,能省掉后期大量返工。
何时采纳设计属性表结构、需要区分固有属性与关系属性时。

LLM4VKG

C
★ 252025-05-09PLpgSQL—
让 LLM 读表结构、生成 OBDA mapping,方向对准「已有数据库」而非新建图。风险是 mapping 错了不报错、只静默返回错数据。
何时采纳探索「mapping 自动化」时,作为问题清单。

OntoLearner

C
★ 1242025-01-08PythonMIT
本体学习的模块化库:术语抽取、概念形成、层次构建、关系抽取各成模块,服务 LLMs4OL 类评测。
何时采纳做本体学习实验、需要可替换模块时。

OntoAligner

C
★ 982024-10-01PythonApache-2.0
本体对齐工具箱,内置多种匹配器,用于找两个本体之间等价的类与属性。输出仍需人工复核。
何时采纳要把外部词表映射到自有词表时。

Understand Anything

B
★ 89,0162026-03-15TypeScriptMIT
把代码库、知识库、文档变成可交互知识图的插件,支持主流编码 Agent。偏「给人看」的理解工具,不承诺类型系统。
何时采纳需要向非工程角色解释代码结构时。

CodeGraph

B
★ 75,9832026-01-18TypeScriptMIT
Rust 内核的语义代码智能 CLI:预索引、增量同步、100% 本地,为编码 Agent 提供「外科手术式上下文」。
何时采纳团队重度使用编码 Agent、想降低上下文成本时。