AI 模式生成 - Entity Enricher

AI 模式生成

粘贴任意 JSON 数据样本,让 AI 生成完全类型化的增强 schema —— 包含专长领域、搜索键、多语言字段检测和校验规则。生成过程包含最多 6 次自我纠正尝试,确保 schema 在你看到之前就已有效。

Schema 生成流水线

第 1 步

粘贴 JSON 样本

任何表示实体数据的 JSON 对象或数组

第 2 步

AI 生成模式

LLM 分析数据类型、嵌套结构、命名模式和专业领域

第 3 步

8 条规则校验

1.类型正确性
2.$ref 目标有效性
3.专业领域分配
4.专业领域数量限制
5.搜索键有效性
6.属性命名
7.嵌套结构深度
8.必填字段约束

如果验证失败,错误会被发送回 LLM 进行自我纠正(最多重试 6 次)

第 4 步

后处理

可为 Null 检测、搜索键降级、expertise domain 收集

输出

已验证的富集 schema

已准备好进行增强,包含类型化属性、专业领域和搜索键

通过 ModelRetry 实现自我纠错

LLM 偶尔会生成带有结构性问题的 schema——schema 与输入数据之间的类型不匹配、$ref 指向不存在的定义,或专业领域过多。Entity Enricher 使用 Pydantic-AI 的 ModelRetry 机制来发现这些问题,并在同一次生成运行中将其反馈给 LLM 进行修正。

这一过程是透明进行的。系统会依据 8 条规则校验 LLM 输出,若任何规则未通过,就会将具体错误连同修正说明返回给 model。此重试循环最多运行 6 次,无需人工干预即可实现近乎 100% 的有效 schema 输出。

已应用的验证规则

类型正确性

Schema 属性类型必须与输入 JSON 中观察到的数据类型匹配。

$ref 完整性

所有 $ref 指针都必须引用 $defs 部分中定义的实体。

专业领域分配

每个属性都必须归属于一个有效的专业领域。

专业领域数量

专业领域总数必须保持在可配置的限制范围内。

搜索键有效性

搜索键必须引用值非空的现有属性。

属性命名

属性名称必须遵循 snake_case 命名约定。

结构深度

嵌套深度必须保持在限制范围内(默认 10 层)。

字段约束

会校验必填字段、最小/最大值以及枚举约束。

智能后处理

LLM 生成并自我修正架构后,还会应用其他数据驱动的转换:

可为 Null 检测

如果输入数据的某个字段为 null 值,则该 schema 属性会自动标记为可为 null。这允许 LLM 在数据不可用的字段返回 null,而不是强行生成幻觉值。

搜索键降级

在输入数据中被标记为搜索键但值为空的字段,会被移除其搜索键标志。这可防止空的搜索键分散增强 prompt 的关注重点。

专业领域集合

所有专业领域都会从嵌套属性中收集到一个顶层列表中,让你一眼即可了解 schema 的领域覆盖情况。

使用自然语言编辑 schema

生成架构后,你可以使用自然语言指令对其进行修改。输入类似“添加一个包含 name 和 ownership_percentage 的 parent_company 引用”的内容,AI 便会应用该结构性更改,同时保留所有验证规则和专业领域分配。

每次 AI 编辑还会生成 5 条改进建议——例如添加缺失字段、优化描述或重新组织专业领域。你只需单击即可应用这些建议。

若需直接控制,可视化 schema 编辑器提供拖放式属性排序、内联字段编辑、键盘导航以及完整的撤销/重做支持。详情请参阅 schema 编辑器文档

从 schema 到类型安全的输出

Entity Enricher 不只是生成一份 JSON 模式文档——它会在运行时将您的模式转换为动态 Pydantic 模型。该模型随后被用作 Pydantic-AI 智能体的结构化输出类型,这意味着 LLM 输出会在类型层面根据您的模式进行验证。无效输出会触发自动重试。

此方法将用户自定义 schema 的灵活性与已编译模型的类型安全相结合。你可两全其美:定义任意想要的结构,系统会自动强制执行。

生成您的第一个模式

粘贴 JSON 样本,选择模型,几秒内即可获得经过校验的增强 schema。然后用自然语言或可视化编辑器进行优化。

免费开始使用