最近一直在研究语义层 / 本体 / Data Agent 相关的技术,也写了一系列文章向大家分享,但我发现讲得再多,都是冷冰冰的文字,始终少一个东西能让读者"上手摸一摸"的练习场。
直到我挖到微软开源的 Ontology-Playground[1]。

第一次打开它我是有点惊喜的:
本体画成交互式图谱:点实体看属性、点连线看基数和方向,动态交互,清晰可见; 可视化设计器:画"客户下单 → 订单 → 门店"这种模型,所见即所得,属性自己定义; 本体课堂 70+ 个官方/社区本体:零售、金融 FIBO、医疗、制造、教育……随便挑一个就能研究真实模型长什么样; 几十篇文章 + 互动测验 + 任务闯关:能把一个纯新手从"什么是 RDF"带到"自己上手建模"; 零后端、免费、纯静态:不需要装数据库、不需要配服务端,浏览器打开就能玩。
🔗 项目地址:microsoft.github.io/Ontology-Playground(GitHub:[2],MIT License)
但玩着玩着,我遇到了两件事,决定动手二开
第一件:全英文,对国内读者不友好
界面、文章、测验全是英文。不是看不懂——是每个词都要先在脑子里翻一遍,学习的那个"心流"就断了。
第二件:跟我们面向 Data Agent 定义的"本体",差着关键信息
如果你看过作者之前那套语义层 / Data Agent 文章,会发现我定义的本体是三层:
💡 对象(是什么)→ 指标(怎么算)→ 关系(怎么连),再落到"谁的表、哪一列"的数据源信息。
而微软这个项目里的"本体",主要是 实体 + 属性 + 关系。也就是说:
❌ 没有独立的指标层:下单金额、客单价这种"口径怎么算、不算什么、能按哪些维度切"完全表达不出来; ❌ 没有数据源表信息:业务属性 → 物理列、分层 DWD/DIM、粒度、权威度、必带过滤——没有落点; ❌ 没有 OAG 检索过程的可视化:"自然语言 → 理解 → 本体检索 → MQL → SQL"四阶段,没法让读者亲眼看它怎么一步步把问题变成 SQL。
于是我决定二开,于是有了这个项目:
🔗 项目地址:github.com/zao-sheng/Ontology-Playground-zh-dev(MIT License)

二开版视频演示:
二开版做了下面几件事
① OAG 四阶段可视化(最值的一件事)
这是我觉得最值得体验的:面板里输入一句人话,它一步步给你看怎么变成 SQL。
② 本体增加指标层,本体设计器也同步更新。


③ 增加数据源映射,跟以前文章里的模型对齐,便于实现 nl2sql。

④ 首页三分类浏览器:实体 / 关系 / 指标一眼看全
主页右侧把本体核心分成三大 Tab:
实体(对象):属性作为子项展开,能看到类型 / 单位 / 值域 / 外键引用 关系:带基数与 JOIN 键 指标:公式 / 口径 / do_not
点谁选谁,图谱和检查器联动。
⑥ 双语学堂 + "认识指标"任务
学习内容全部中英双语:
除原版课程外,新增《指标与数据源》等语义层课程 场景课都补了"看透事实、维度与指标"小节 任务系统新增"认识指标":引导你点开对象、去检查器里读指标的公式和口径,把"指标是独立一层"变成手上动作
一分钟跑起来
git clone https://github.com/zao-sheng/Ontology-Playground-zh-devcd Ontology-Playground-zh-dev 2. 装依赖 npm install 3. 跑起来(端口固定 5174) npm run dev 浏览器打开 http://localhost:5174 即可如果提示"端口被占用":npm run dev:clean
写在最后
这个工具把"本体建模"变成了能报错、能回放、能导出的实操和动态展示,并且能定义指标和源表、还能把 OAG 检索过程一步步放给你看。
