在企业数字化越来越深入的今天,我们面临一个普遍问题:数据很多,但理解很少;系统很全,但联动很难。传统系统擅长存储数据,但不擅长理解业务;AI 擅长生成内容,但不理解企业结构、权限、关系与规则。于是我基于Ontology-Augmented Generation(OAG)搭建了一套从数据库自动建模 → 知识图谱 → 权限治理 → Agent 决策的完整平台。它不只是一个问答系统,而是一个真正能理解业务、能推理、能执行、能管控的决策中枢。
一、什么是 OAG?为什么它比 RAG 更适合企业?
大家都知道 RAG:检索增强生成。但 RAG 有个天然短板:返回的是文本片段,不是业务实体;模型看到的是文字,不是结构。
在企业里,真正重要的不是 “一段话”,而是:
- 这是什么对象
- 它和谁有关系
- 能对它做什么动作
- 谁能看、谁能改、谁能审批
OAG(本体增强生成)就是为了解决这个问题而来。
OAG = 本体建模 + 图推理 + 权限约束 + 可执行动作它让 AI 不再基于碎片文本回答,而是基于业务语义世界进行推理。
二、平台整体架构
整个平台分为三层:
1. 语义层(业务世界的名词)
定义:
- 对象(Object):用户、订单、设备、服务、资源
- 关系(Link):拥有、依赖、部署、关联、告警
- 动作(Action):启动、停止、扩容、切换、通知
语义层统一全系统词汇,解决多系统语义不一致问题。
2. 数据流层(从数据库自动生成本体)
不需要人工画模型!平台自动做三件事:
- 读取数据库表结构
- 自动推断对象、关系、动作
- 输出候选本体 → 人工审核 → 正式上线
3. 智能决策层(Agent + Skill + 权限)
- 理解用户意图
- 匹配业务技能(Skill)
- 执行图推理 + 向量检索
- 权限过滤 + 审批流
- 输出可执行决策
三、核心技术栈
- PostgreSQL(底座)
- Apache AGE(图引擎)
- pgvector(向量检索)
- LLM(自动建模 + 意图理解)
- ACR 权限体系(对象 / 属性 / 关系 / 动作四级管控)
- Skill 体系(声明式业务技能)
四、核心的实现思路
1. 数据库自动内省(从库结构生成本体)
这是平台最关键的能力:自动读取数据库结构,生成对象与关系。
Schema 内省是整个自动建模的入口,它的任务是不依赖人工配置,自动读懂数据库。
核心做三件事:
introspect_tables(conn)查询information_schema.columns,获取所有业务表的字段名、类型、是否可空、默认值,并自动过滤向量、审计等非业务表。
introspect_foreign_keys(conn)通过三表关联(table_constraints + key_column_usage + constraint_column_usage),自动提取外键依赖关系,知道 “哪一列指向哪一张表”。
introspect_schema(conn)将表结构与外键关系合并,输出一份完整的 schema 快照,作为 LLM 的输入。
核心 SQL(内省模块真实执行逻辑)
-- 读取业务表结构 SELECT table_name, column_name, data_type, is_nullable, column_default FROM information_schema.columns WHERE table_schema = 'public' AND table_name NOT IN ('node_embeddings', 'audit_log') ORDER BY table_name, ordinal_position;-- 读取外键关系(自动推导对象关联) SELECT tc.table_name AS source_table, kcu.column_name AS source_column, ccu.table_name AS target_table, ccu.column_name AS target_column FROM information_schema.table_constraints tc JOIN information_schema.key_column_usage kcu ON tc.constraint_name = kcu.constraint_name JOIN information_schema.constraint_column_usage ccu ON tc.constraint_name = ccu.constraint_name WHERE tc.constraint_type = 'FOREIGN KEY';2. 权限治理:ACR 权限模型
企业级 AI 必须可控,所以权限不是附加功能,而是核心。
角色层级: admin > manager > auditor > user 权限范围: 对象级 → 属性级 → 关系级 → 动作级 遍历规则: 查询时自动剪枝不可见节点3. Skill 体系:本体 → 业务技能
Skill 是本体与 Agent 之间的桥梁。一个 Skill 就是一段声明式规则:
意图:查询服务依赖链 步骤: 1. 根据服务名定位节点 2. 遍历它依赖的所有下层资源 3. 检查状态是否正常 4. 输出拓扑与风险 输出:结构化报告Agent 不需要理解业务,只需要执行 Skill。
五、端到端工作流程(最清晰的企业级闭环)
1. 现有数据库接入 2. 自动内省表结构 → LLM 生成本体草案 3. 人工审核 → 正式构建知识图谱 4. 构建向量索引 5. 用户提问 → 意图识别 6. 匹配 Skill 7. 混合检索(向量 + 图推理) 8. 权限过滤 9. 规则推理 → 生成结论 10. 动作执行/审批 → 状态回写 → 审计日志六、OAG 相比 RAG 的真正优势
- RAG:检索文本 → 拼接 → 生成
- OAG:检索实体 → 推理关系 → 权限约束 → 执行动作 → 审计追溯
OAG 解决了企业最痛的几个问题:
- 语义不统一
- AI 幻觉
- 不可解释
- 不可管控
- 不可执行
- 权限不可控
七、适合落地的场景
- IT 运维诊断
- 供应链智能分析
- 配置风险管理
- 服务依赖梳理
- 设备故障定位
- 业务流程自动化
- 企业知识库 2.0
- 决策支持系统
八、总结
这套基于OAG 的本体智能平台,不是为了做一个 “能聊天的 AI”,而是为了让企业系统从:
数据存储 → 业务理解 → 知识推理 → 决策执行
它用最简单的架构:PostgreSQL + AGE + pgvector + LLM实现了一个轻量、可落地、可管控、可扩展的企业级智能中枢。
未来的企业系统,一定是本体驱动的。