ERDL —— AI 时代的确定性规则语义
把规则交给 ERDL,1 分钟帮你审查 10 万+的报告
🇪🇺 EU AI Act 🇨🇳 GB/Z 185 🇺🇸 NIST AI RMF 🇸🇬 Singapore AI Gov ISO/IEC 42001 OWASP Top 10
声明式 AI 规则语义规范
一个规范、一棵规范树、一个哈希——同一条规则、同一个输入,在任何符合规范实现上产生字节级一致的结果与哈希,可被任何独立第三方验证。
模型推理,规则决策。
AI 时代需要 ERDL
问题已经变了:2016 年我们问「微服务下谁有权访问什么资源」;2026 年我们问「当 LLM 参与决策链,如何保证每一步可验证、可追责、可重算」。
| 设计假设 | Rego / Cedar | ERDL |
|---|---|---|
| 规则由谁写 | 工程师 | 人(自然语言)→ LLM 翻译 |
| 消费者 | 系统 | 人 + LLM + 系统 + 审计 |
| 确定性来源 | 单一实现(OPA / Rust) | 语义内核 + 跨实现逐字节验证 |
| 决策可哈希、可重算 | ❌ | ✅ canonical_tree + SHA-256 |
| 人工审批 / 升级内建 | ❌ | ✅ REQUEST_HUMAN / ESCALATE |
| 形式化验证 | 无 / 算法层 | ✅ Z3 SMT(规范层) |
AI 协同能力
| 能力 | REGO | CEDAR | ERDL |
|---|---|---|---|
| LLM 作为一等公民 | ❌ | ❌ | ✅ |
| 自然语言 → 规则 | ❌ | ❌ | ✅ |
| 规则 → 自然语言回读(Gloss) | ❌ | ❌ | ✅ |
| 对话界面即入口 | ❌ | ❌ | ✅ |
| 四方语义层(人 / LLM / 系统 / 审计) | ❌ | ❌ | ✅ |
确定性保证
| 能力 | REGO | CEDAR | ERDL |
|---|---|---|---|
| 跨实现逐字节一致 | ❌(仅 OPA) | ❌(仅 Rust) | ✅(Go + Python,107 字节) |
| 决策可哈希 | ❌ | ❌ | ✅ |
| 可独立重算 | ❌ | ❌ | ✅(canonical_tree 快照) |
| 语义原语形式化验证 | ❌ | 部分(Lean,算法层) | ✅(Z3,64 原语语义层) |
| 第三方独立审计 | ❌ | ❌ | ✅(多轮) |
Rego / Cedar 是第一个问题(系统权限)的优秀答案;ERDL 是第二个问题(AI 行为边界)的答案。不是替代,是补位——它们可以共存。
10 分钟学会写业务规则
一条规则,就是一个「当……时,就……」的句子。不用学编程,业务人员也能读懂、也能写。四条典型规则,每条都配了「出处原文」和「解说」:
业务规则 · 大额退款需人工审批
rules:
- name: "大额退款需人工审批"
when:
conditions:
- field: "tool.args.amount" operator: gt value: 5000
then: REQUEST_HUMAN
message: "退款金额超过 5000 元,需人工审批"出处原文:企业退款制度「单笔退款金额超过 5000 元,须转人工审批」。
解说:制度里的一句话,直接就是一条规则——金额 > 5000是条件,REQUEST_HUMAN是「转人工」。
法规合规 · 高风险决策保留人类监督
rules:
- name: "高风险决策保留人类监督"
when:
conditions:
- field: "risk.level" operator: eq value: "high"
then: REQUEST_HUMAN
message: "高风险 AI 决策需人工复核"出处原文:EU AI Act 第 14 条(人类监督)——「高风险 AI 系统的设计和开发,应确保在使用期间能被自然人有效监督」。
解说:法规要求「高风险必须有人监督」,翻译成规则就是「风险 = 高 → 请求人工审批」。
数据标准 · 禁止外发个人身份信息
rules:
- name: "禁止外发个人身份信息"
when:
conditions:
- field: "content.has_pii" operator: eq value: true
then: DENY
message: "检测到个人身份信息,已拦截"出处原文:OWASP Top 10 for Agentic Applications — A03 Data Leakage(数据泄露)。
解说:标准要求「阻止个人身份信息外泄」,翻译成规则就是「内容含 PII → 拒绝」。
大文档审查 · 合同缺失关键条款即退回
rules:
- name: "合同缺失关键条款即退回"
when:
conditions:
- field: "doc.missing_clause" operator: eq value: "违约责任"
then: CORRECT
message: "合同缺失违约责任条款,需补充"出处原文:合同审查制度(业务场景)——「合同必须包含违约责任条款」。
解说:把「缺什么条款」写成规则,引擎逐条比对——「缺违约责任」→CORRECT纠正补全。这就是「1 分钟审查 10 万字报告」的底层逻辑。
规则 = 政策的结构化重写——读规则,就是读政策。法规、标准、合同、制度,都是一条条「当……就……」。
技术体系 · 7 层
- 1
语义规范 — ERDL 规范 v2.1(34 节点内核 + 求值语义 + 13 决策类型)
- 2
确定性引擎 — 纯函数求值器,同输入必同输出
- 3
证据链 — 决策对象 + 密码学审计链(JCS + SHA-256,可独立重算)
- 4
形式化验证 — Z3 SMT,34 节点全覆盖
- 5
验证向量 — 318 条跨实现一致性
- 6
护栏 — 确定性规则拦截,替代概率性 Prompt 护栏
- 7
运行时框架 — 全栈装配式 Agent 运行时
上层品类:职业化AI员工
这套技术体系服务的是一个品类——职业化AI员工(PAE):AI + 人 = 最小员工单元,人是责任主体,AI 是能力组成。六要素准入门槛、三支柱评估框架、七阶段生命周期。见 职业化AI员工
互操作:兼容任何 Agent 框架
确定性,被三个独立系统验证
确定性不是一句口号,而是逐层钉死:
@openoba/erdl,规范经多轮独立审阅。一句话:确定性,从声明 → 测量 → 证明。
快速开始(30 秒)
# 安装
$ npm install @openoba/erdl 关于
OpenOBA 致力于 AI 语义层的研发与应用落地——把「制度、法规、标准」变成 AI 可理解、可执行、可审计的确定性规则。 ERDL(Entity-Rule Definition Language,实体规则定义语言) 是这一语义层的原生规范:它为 AI 时代而生,以「一个规范、一棵规范树、一个哈希」让规则语义可验证、可重算、可追溯。
OpenOBA 的愿景,是让每一个企业都拥有自己的 AI 执行官——而 ERDL,就是它理解规则、执行规则、证明规则的语义底座。