EASH 本体类梳理方法论

咨询顾问的现场指南:类从哪来、怎么分、和 CMDB 台账分类有何不同。配套 产品培训导览产品原型 使用。

CQ 是什么?
项目内容
英文全称Competency Questions(本体工程标准术语;文档中亦写作 Capability Questions)
中文名称能力问题
一句话智能体在这个场景里必须能回答的问题,用来验收本体是否够用。
举例CQ-01:给定告警 ID,它挂在哪个 CI 上?
CQ-04:过去 24h 该服务链路上有哪些变更?
谁定客户业务方 + SRE 在工作坊签字确认(教辅-02)
和评测的关系每条必要 CQ → 至少 1 条评测 case;考不过 = 本体/映射/协议有缺口

出处:docs/teaching-kit/教辅-02-工作坊模板与能力问题.md · 华东金融云样例 CQ-01~CQ-10。

梳理本体的视角:站在「办成这件事需要什么」
你的理解正确。不是先问「公司有哪些资产类型」(CMDB 思维),而是先定场景,再问:智能体要办成这件事,必须能回答哪些问题(CQ)?沿证据链需要哪些名词(类)、动词(关系)、字段(属性)、硬规则(规程)?
flowchart TB
  SCENE[先定场景
如:故障根因 / 资产问数] CQ[列出能力问题 CQ
智能体必须能答什么] STORY[画一条真实故事
ALERT-991 证据链] NEED[反推需要什么] CLASS[类 · 关系 · 属性] RULE[办事规程] PACK[写入 Pack 本体构建] SCENE --> CQ --> STORY --> NEED NEED --> CLASS NEED --> RULE CLASS --> PACK RULE --> PACK
故障根因场景举例:要回答「跟昨晚变更有关吗?」→ 需要 Alert、Pod、技术服务、变更单、supports/targets 关系、变更状态属性、R04/R05 规程。不需要先把全公司打印机类型建进本体。
本期要做的场景(文档 SSOT)

docs/planning/产品编码启动计划-2026-06-23.md §四 与 consulting-kit/00-咨询交付包总导航.md 为准:

P0 · 首期必须验收(8~12 周)

编号场景用户典型问法智能体咨询样例
S1告警详情查询「ALERT-991 什么情况?」告警查询场景 A 入口
S2故障根因分析「是不是跟昨晚变更有关?」支付网关根因分析场景 A 主路径
S3配置项/业务影响面「pay-gw-03 影响哪些业务?」影响面查询场景 A 扩展 / CQ-06
场景 B资产与依赖问数「支付网关用了哪些资源?拓扑?」资产与依赖查询场景 B(与 S2/S3 共用本体)

P1 · 第二期(根因跑通后)

编号场景用户典型问法备注
S4指标查询「支付成功率 P99 最近 1 小时」需 Prometheus;映射 Elastic 未完成会卡评测
S5日志查询「网关过去 15 分钟错误日志」需 Elastic/Loki;本体主要用 Event + 现场查
S6按业务查关联全景「在线支付关联哪些 CI 和近期告警」图谱多跳;复用现有类

P2 · 第三期(路线图,本期不做)

S7 定时巡检 · S8 变更评审 · S9 告警自动分诊 · S10 受控处置

顾问现场第一步:不要一上来建 22 类。先和客户确认 P0 四条场景(S1/S2/S3 + 场景 B) 哪些「必要」,再写出 8~12 条 CQ,最后反推类表。
场景 × 四层 × 22 类:能否覆盖?能否复用?
结论:22 类是为 P0 场景 MVO 设计的「并集」,场景 A/B/S1~S3 共用同一套本体,不另建。P1 场景大多复用现有类,只加映射或现场查源。
语义四层类(22 类代表)S1 告警S2 根因S3 影响面场景 B 问数P1 指标/日志
结构层
资源/部署物
Pod, Node, LB, DB, NetworkDevice, ConfigurationItem●●
结构层Location, Team
功能层
服务怎么看
TechnicalService, BusinessService●●●●●●
功能层Application
动态层
发生了什么
Alert●●●●
动态层Metric●● S4
动态层Event, Incident, Problem● S5
规程层
怎么合法地做
ChangeRequest●●
规程层RemediationAction, MaintenanceWindow, Runbook
规程层办事规程 R01~R05●●

图例:● 主用 · ●● 核心 · ○ 可选/后期

22 类是怎么凑出来的?

  1. P0 四条场景(S1/S2/S3 + 场景 B)逐条画证据链/资产链
  2. 链上出现的名词 → 候选类(Pod、Alert、支付网关…)
  3. 把候选类归入四层贴标签;合并同义项(如 runs_on 与 deployed_on 留一)
  4. 对照 CQ-01~CQ-10:每条必要 CQ 必须在图上有路径,否则补类或补关系
  5. 控制在 15~25 类 MVO;华东金融云定稿 22 类(教辅-04 / consulting-kit)

Incident、Problem 等类为工单扩展预留,P0 可不灌实例;Team 可合并为属性。

五步构建 vs 四层语义:别混
本页「四层」(结构/功能/动态/规程)= 本体怎么分类,不是 Pack 构建有几步。
产品原型领域包 = 五步(①②③④⑤)+ 可选 ③½ AI 接口适配助手。与 培训导览 · 产品运行逻辑 一致。
叫什么干什么存哪
本体模型 TBox类、属性、关系、办事规程(咨询工作坊产出)Pack 配置
映射与归一字段映射 + 归一词典 + 连接器规则(接哪些系统、怎么取字段)Pack 配置 + 管理端「业务系统连接」
图谱实例 ABox运行结果:ETL/Webhook 把真实对象写入 Neo4j(非手工在本体里逐条录入)Neo4j
③½AI 接口适配助手可选:无完整 OpenAPI 时对话生成工具草稿辅助写入④
可调用工具声明 tool_id、参数 schema、关联连接器(办事动作清单)Pack tools
智能体编排 + 评测发布每步从④绑定可调用工具;评测通过后值班员可用Pack protocols + 运行时

③ 不是「又做一遍对接」。对接配置在②(规则)+ 管理端连接器(地址密钥);③ 是同步跑完以后在「图谱实例」页验收:pay-gw-03、ALERT-991 是否已入图。

到「图谱实例」③,数据构建都完成了吗?
不完全是。①②③ 完成的是「语义 + 对接规则 + 场景实例入图」——智能体办事的数据地基。要让智能体上线,还需要 ④ 可调用工具 → ⑤ 编排与评测。
flowchart LR
  S1[① 本体模型 TBox]
  S2[② 映射与归一]
  S3[③ 图谱实例 ABox]
  S35[③½ AI适配助手
可选] S4[④ 可调用工具] S5[⑤ 编排+评测] S6[连接器持续同步] S1 --> S2 --> S3 S2 --> S6 --> S3 S3 --> S35 --> S4 --> S5 style S3 fill:#e3f2fd style S35 fill:#f3e5f5 style S4 fill:#e8f5e9 style S5 fill:#fff3e0
阶段完成了什么还没完成什么
① 本体类/属性/关系/规程定义
② 映射+归一数据源、字段规则、身份对照、连接器配置映射 100%、新源持续维护
③ 图谱实例场景子图写入 Neo4j(如 15 节点)全公司 CI 不会一次入图;需持续 ETL
④ 可调用工具声明 get_alert、trace_ci 等;关联连接器 handler
⑤ 编排+评测诊断步骤绑定可调用工具、评测通过、发布

所以:③ 是「数据能支撑场景查询」的里程碑,不是 Pack 交付终点。咨询验收通常按「场景 A/B 智能体考过 + 图谱可查」一起签。

问题二:本体类的视角 vs CMDB 管理对象分类
CMDB 常见做法EASH 本体类梳理
分类视角物理/组织世界分:基础设施 → 网络设备 → 交换机 → 路由器…智能体场景证据链分:告警要能追到谁、服务、变更、规程
起点「公司有哪些资产类型?」「这个场景要回答哪些能力问题 CQ?」
树有多深常 3~5 层 CI 类型树四层语义 + 结构层仅 1 层父类(ConfigurationItem),不建深树
验收台账覆盖率、字段完整率每条必要 CQ 在图上有路径;评测 case 通过
flowchart TB
  subgraph CMDB["CMDB · 按管理对象 / 物理世界"]
    direction TB
    R[根]
    R --> I[基础设施]
    R --> A[应用软件]
    R --> B[业务系统]
  I --> N[网络设备]
  N --> SW[交换机]
  N --> RT[路由器]
  end

  subgraph EASH["EASH 本体 · 按场景证据链 + 四层"]
    direction LR
    CQ[能力问题 CQ
告警根因? 影响面?] CQ --> ST[结构层
Pod Node LB…] CQ --> FN[功能层
技术服务 业务服务] CQ --> DY[动态层
Alert 变更单] CQ --> RG[规程层
办事规程 Runbook] ST --- FN --- DY --- RG end
不要做的事:把 CMDB 整棵 CI 类型树原样搬进本体。要做的事:用一条真实故障故事(如 ALERT-991)画出证据链,链上出现的名词 → 变成类;链上需要的动词 → 变成关系。
「四层」是谁定义的?和「资源 / 怎么做」什么关系?
是 EASH ops-pack 的标准语义框架(产品预定义),不是客户现场从零发明。 参考运维本体实践(含 Orange NORIA 四层模型)+ OASHP 教辅沉淀;FDE 到现场按场景裁剪类表,但四层标签不变
四层回答的问题和你说的「办成事」的对应典型类
结构层有哪些资源/部署物办事链路上涉及的「东西」Pod, Node, LB, DB, 交换机
功能层业务/运维怎么看服务影响面、支撑关系落在哪技术服务, 业务服务
动态层发生了什么告警、指标、工单等时序信号Alert, Metric, Incident
规程层怎么合法地做智能体建议能不能执行、变更是否合规ChangeRequest, Runbook, R01~R05

所以:四层不是 CMDB 的「基础设施/应用/人员」分类,而是智能体办事时需要的四类语义——既有「资源」(结构层),也有「发生了什么」(动态层)和「怎么做才合法」(规程层)。

结构层

资源 / 部署物

功能层

服务视角

动态层

发生了什么

规程层

怎么合法地做

出处:docs/teaching-kit/教辅-04 类清单「层级」列 · docs/marketing/agentic-aiops-benti-zhishitupu-luodi.md · ops-pack 模板 packs/ops/

有没有二三级子类?
有,但很浅。只有结构层用父类 ConfigurationItem 收拢 Pod/Node/LB…(相当于 CMDB 的「配置项」抽象)。不做「网络设备 → 交换机 → 核心交换机」这种深树。
层级类型例子深度
语义四层结构 / 功能 / 动态 / 规程固定 4 层(横向分类)
父类继承ConfigurationItem ← Pod, Node, LB…通常 1 层父类
CMDB 式深树基础设施→网络→交换机→型号不采用;型号等放属性

路由器 vs 交换机:在本体是同一个类 NetworkDevice,用属性 device_role 区分,而不是再建 RouterClass / SwitchClass 两级子类——除非场景 CQ 明确要区分且智能体要分别遍历。

咨询顾问到现场:推荐开工顺序(4~6 小时工作坊)
  1. 对齐场景与 CQ(30min)— 念 8~12 条能力问题,客户签字「必要 / 可选 / 不做」
  2. 画故障/办事故事(60min)— 用 ALERT-991 等真实案例,从左到右画 Alert→CI→服务→业务→变更
  3. 拆运维六块积木(60min)— 对象、关系、属性、规程、动作、事件 → 便签出类名与关系名
  4. 贴四层标签(30min)— 每个类便签标:结构/功能/动态/规程
  5. 对齐数据源(60min)— 每类写:CMDB 哪张表、监控哪个字段(映射草稿)
  6. 规程与争议(30min)— R01~R05 便签;命名不一致进归一清单
flowchart LR
  CQ[能力问题 CQ] --> STORY[故障故事白板]
  STORY --> CLASS[类便签 15-22个]
  STORY --> REL[关系便签 20+]
  CLASS --> LAYER[标四层]
  CLASS --> MAP[映射草稿]
  REL --> MAP
  LAYER --> PACK[导入 Pack / 本体构建]
  MAP --> PACK
          

产出物对齐:teaching-kit/教辅-02 工作坊 · 教辅-04 22 类清单 · consulting-kit 华东金融云样例。

「六块积木」提问卡(主持人用)
问什么产出
① 对象(类)告警挂在什么上?影响业务落到哪层对象?Pod、Alert、TechnicalService…
② 链接(关系)Pod 和 Node?服务与业务?变更动了谁?runs_on、supports、targets…
③ 属性做根因必须有哪几个字段?severity、is_critical、status…
④ 逻辑(规程)什么条件必须 CAB?能否建议重启?R01~R05
⑤ 动作智能体允许哪些只读工具?get_alert、trace_ci…
⑥ 事件告警和工单怎么关联?Incident、related_to…