AI 模式生成 - Entity Enricher 文档

AI 模式生成

使用 AI 从示例数据生成结构化 JSON 模式,并进行自动自我校正和智能后处理。

工作原理

Schema 生成会将原始实体数据转换为带类型和注释的 JSON Schema,精确定义在数据丰富过程中要提取哪些信息。您无需手动编写 Schema,只需粘贴示例 JSON,让 AI 分析结构、推断类型、分配专业领域并提出改进建议。

生成流水线

  1. 输入预处理——系统会分析你的示例 JSON。本地化对象(如 {"en": "...", "fr": "..."})会被折叠为单个值,属性数量决定允许多少个专长领域。
  2. Prompt 构建 — 系统会根据你数据的复杂度构建自适应的系统 prompt:是否包含嵌套对象、包含多少属性,以及是否检测到多语言字段。
  3. 带自我纠正的 LLM 生成——由 AI 生成 schema。如果8 条验证规则中任何一条未通过,错误会返回给 AI 进行纠正——总共最多 6 次尝试。
  4. 后处理 — 确定性规则会优化 schema:标记可为空的字段、清除空的搜索键,并收集专业领域元数据。
  5. 自动保存 — 生成的 schema 会自动保存并使用内容哈希去重,因此相同的 schema 不会重复。

自我纠错循环

自我修正循环是让 schema 生成变得可靠的关键。在 AI 生成 schema 后,它会经过一个校验器,检查涵盖类型正确性、expertise 分配、引用完整性和数据完整性的 8 条规则。如果任何规则未通过,具体的错误信息会被发送回 AI,以便它在下一次尝试中修复问题。

自我纠正示例

第 1 次尝试AI 生成模式。验证器检测到:revenue:类型不匹配——输入为数字,但模式要求为 'string'
重试错误会连同出错原因的上下文一起被返回给 AI。
第 2 次尝试AI 将类型修正为 number。全部 8 条规则通过。架构被接受。

这种方法远比在 prompt 中要求 AI“注意类型”更可靠。校验器会捕获具体错误,并向 AI 提供精确反馈以便修正。在校验规则指南中详细了解每条规则。

schema 包含哪些内容

生成的 schema 不仅仅是简单的类型定义。每个属性都包含指导扩充过程的元数据:

类型

JSON Schema 类型(string、number、integer、boolean、array、object)

描述

告诉 AI 要查找哪些信息的上下文描述

专业领域

由哪个专家领域(财务、监管等)提供该值

搜索键

该字段用于标识实体(搜索)还是对数组去重(合并)

可为 Null

字段是否可为 null,以避免对可选数据进行不必要的重试

多语言

该字段是否应跨多种语言进行富集

保留

是否在富集过程中保持原始值不变

示例

引导 AI 采用正确格式的真实示例值

专业领域检测

AI 会根据语义含义将 schema 属性归类到不同的专业领域。例如,一个制药公司的 schema 可能包含“财务分析师”“监管专家”和“公司信息”等领域。多专业策略会利用这些领域并行运行专门的 LLM 调用,以获得更深入的结果。

领域数量限制

专业领域的数量会根据你数据的属性数量自动限制,以防止过度碎片化:

5 个属性
1 个领域
12 个属性
2 个领域
30 个属性
5 个领域
60 个属性
10 个领域

后处理

AI 生成有效架构后,会有三个确定性的后处理步骤,根据你的实际输入数据对其进行优化:

可为 Null 检测

输入中值为 null 的字段会自动标记为可为空,因此 AI 不会浪费重试去尝试填充它们。

清除空搜索键

对于值为空(null、空字符串、零)的字段,会移除其搜索键标记,因为它们无法帮助识别实体。

专业领域集合

系统会从 schema 中收集所有唯一的专业领域,用于指标统计和策略配置。

AI 模式编辑

生成后,你可以使用自然语言指令修改架构。输入命令,AI 会在保留现有架构结构的同时应用更改。每次编辑还会生成 5 条进一步改进的建议。

编辑命令示例

添加一个 employee_count 整数字段
创建包含城市和国家/地区的嵌套地址对象
为所有文本字段添加法语描述
使用 $defs 定义母公司引用
将 website 字段标记为可为空

AI 编辑会使用生成规则的一个子集(类型检查、引用完整性、专业领域一致性)进行验证,但不会与输入数据进行比较,因为你可能有意添加或删除字段。

AI 建议

模式生成和 AI 编辑都会生成 5 条针对性建议,覆盖不同的改进类别:

数据完整性可用于丰富实体的缺失字段
数据质量验证模式、格式约束
关系嵌套结构,通过 $defs 引用 entity
国际化多语言翻译、区域设置支持
业务上下文特定领域的字段与专长领域分组

建议会以可点击的标签形式显示在 Schema 编辑器 中——点击其中一个即可自动填入 AI 编辑输入框并应用。

后续步骤