语义层与工作流

第 5 课 · 共 6 课 约 9 分钟

ERP 永远只读;数据源写在对象类型的定义里;写入走受控、留痕的 Action;工作流是 Semantic 的自动化。

本课目标

读完这一课,你将能够

  • 说出语义层的三个概念:对象类型、链接、Action
  • 解释数据为什么只从数据源单向流进来、数据源为什么写在对象类型的定义里,改数据为什么只走 Action
  • 描述工作流(Semantic 的自动化)如何把各部门已发布应用的能力组合成一条流程

ERP 永远只读

应用和智能体不直连 ERP。数据源旁边装一个发布端,只读地把变化推上来,成为一条数据流。这条数据流接到哪个对象类型、哪一列对哪个属性,写在对象类型的定义里(datasources)。应用和智能体读的是语义层,改的也是语义层。

  1. 01数据源ERP、MES 等,只被读取
  2. 02发布端装在数据源旁边,有变化才推送
  3. 03数据流按序落账;接到哪个对象类型,写在定义里
  4. 04语义层应用与智能体在这里读写

发布端手里只有一把只能往一条数据流发布的 Key,永远不会写回数据源。改数据源就是改本体:开发者直接定义;智能体在分支上改、开提案,由人审核合并。人在语义层做的修改单独存放,数据源下一次同步只更新自己那一层,不会冲掉人改过的值。

aidc semantic datasource set production.work_order --stream wo-progress --map order_no=order_no --map line_code=line
aidc semantic datasource list

对象、链接、Action

OBJECT

对象类型

一类业务对象,例如工单:主键加属性。属性带显示名、单位和同义词,要么从数据源同步而来,要么只在语义层维护,例如备注、负责人。

LINK

链接

对象之间的关系,例如工单指向它所在的产线。最常见的写法,是一个属性引用另一类对象的主键。

ACTION

Action

受控的写操作:参数怎么校验、改哪些属性、谁能做,以及记进日志的一句话。

改数据只走 Action:校验、权限与留痕都由平台来做,应用和智能体都一样。旧的数据 SDK 可以直接改对象,这条路只留给开发者做管理,新的 SDK 和文档里不再有它。改动都落在语义层。

语义层还会生成一份给大模型读的说明书:有哪些对象、属性叫什么、能做哪些 Action。智能体先读它再干活。定义本身就是 JSON,用命令行提交,先加 --dry-run 检查引用是否闭合。

aidc semantic describe --markdown
aidc semantic define ontology/ --dry-run
aidc semantic act production.flag_issue --object "WO-1001|L05" --param issue="material late"

Action:受控、留痕的写

  • 参数先校验:不合法直接拒绝,并写明是哪一项。
  • 谁能做,看两处:应用清单登记了这个 Action,访客的角色也在 Action 允许的角色里。只读访客永远不能写。
  • 不怕同时改:带上对象当前的修订号,别人刚改过就会冲突,刷新后再改。
  • 可以预演:只校验并返回计划,不真的写入。
  • 每次执行都进日志:参数、改前改后和一句话摘要,事后查得到。

工作流:Semantic 的自动化

工作流就是 Semantic 的自动化(Automate):一组条件加一组效果。条件是对象新建或修改、到了时间,或者有人手动运行;效果是执行 Action、做模型分析、发通知。触发读的是 Semantic 的变化记录,不轮询、不写 cron。

每个部门的应用发布之后,就成了公司能力目录里的一组能力:它愿意对外提供的查询、读取、聚合或 Action。能力可以在清单的 exports 里写明;没写的,也会按登记的类型和 Action 自动提取。工作流把这些能力、计算和 AI 分析连成一条流程。

以报价为例:营业询价、设计出材料清单、采购给行情与物流、制造给工艺、财务核价,然后 AI 分析,最后生成报价草稿。每一步用了谁的能力、产出了什么,画布上都看得见。

  • 正式运行:Action 真的写进语义层。
  • 预演:读取、计算、AI 分析都真的跑,Action 只返回将要写入的计划。
  • 数据一变自动运行:语义层里某类对象新建或修改时触发,发布到正式通道后生效。
aidc semantic automate capabilities
aidc app deploy quote-workflow --dry-run
aidc semantic automate run quote-workflow --param rfq_no=RFQ-001 --preview

要点

  • ERP 永远只读:发布端只读地推送变化,数据源写在对象类型的定义里,应用与智能体只读写语义层。
  • 语义层有三个概念:对象类型、链接、Action。
  • 改数据只走 Action,校验、权限、留痕由平台做;人改过的值不会被同步冲掉。
  • 工作流是 Semantic 的自动化:把已发布应用的能力、计算与 AI 分析连成流程,可以正式运行、预演,或在数据一变时自动运行。

练一练

从一张单据到一条流程

用你熟悉的业务,把这节课的概念落一遍。

运行 aidc semantic describe --markdown,找一个对象类型,记下它的属性、同义词和可以执行的 Action;再用 aidc semantic datasource list 看它的数据来自哪条数据流。

小测

选一个答案,马上看解析。

Q1应用里的一位成员要把一张工单标成「异常」,正确的做法是?

Q2智能体想把一条新的数据流接到「工单」对象类型上,正确的做法是?

Q3工作流里的一步用了采购部应用的能力,它以什么身份执行?

延伸阅读