预检 Classification - Entity Enricher 文档

预检 classification

预检 classification 会在 enrichment 开始前验证 entity 是否与预期的 schema 类型匹配。当 entity 与你的 schema 不匹配时,这一可选步骤可防止幻觉并避免浪费 token。

为何要先分类再富集?

LLM 总是急于提供帮助。当被要求依据 schema 富集某个实体时,即使该实体与 schema 类型完全不匹配,它们也会生成结构化输出。这会导致看似合理却完全错误的幻觉数据。

幻觉问题
不使用 classification

Schema:“Planet” — Entity:“Titan”

LLM 将 Titan 当作一颗行星,并编造数据:轨道周期、大气成分、卫星数量——看起来都很合理,但都是错的。Titan 实际上是土星的一颗卫星。

启用分类

分类检测到:“不匹配——泰坦是卫星,而非行星”

丰富化模型会接收此上下文,将不相关的字段设为 null,并仅填写真正适用于该实体的属性。

工作原理

分类会在任何丰富化模型开始之前作为一次快速的 LLM 调用运行。它使用廉价、快速的模型(例如 Claude Haiku 或 GPT-4o Mini)以最大限度降低成本。

1
发送 schema 类型和 entity 数据
分类模型会接收 schema 名称、描述和实体数据(为降低成本截断为 3,000 个字符)。
2
接收结构化分类
模型返回结构化响应,包含状态(match、mismatch、unknown 或 ambiguous)、对实体实际情况的描述、置信度和推理。
3
将上下文注入增强
分类结果会作为“预检分类”部分添加到每个丰富化提示词的开头。这为丰富化模型提供了关于实体类型的关键上下文。

四种 classification 状态

匹配

该实体与 schema 类型匹配。丰富化将以高置信度进行。

提示词效果
确认实体类型,并为扩充模型提供额外的上下文。
示例
Schema “Pharmaceutical Company”,实体 “Sanofi”——已确认为一家制药公司。
不匹配

该实体的类型与 schema 预期的不同。分类会说明该实体实际是什么。

提示词效果
提醒增强模型该实体不匹配,并指示它们对无关字段使用 null。
示例
Schema “Planet”,实体 “Titan”——被识别为土星的卫星,而非行星。
未知

无法确定地识别该实体。LLM 没有足够的信息对其进行分类。

提示词效果
指示 enrichment 模型在不确定时使用 null,而非猜测。
示例
Schema “Pharmaceutical Company”,实体 “XYZ Corp”——信息不足,无法确定实体类型。
有歧义

存在多种有效的解读。此分类会列出各备选项。

提示词效果
列出可能的解释,并要求增强模型选择最可能的一个。
示例
Schema “Company”,实体 “Mercury”——可能是行星、化学元素或 Mercury Insurance。

键属性

非阻塞

分类纯属参考性质。如果分类调用因任何原因失败(模型错误、超时、速率限制),丰富化将在没有分类上下文的情况下正常进行。这确保了可选的分类步骤永远不会阻碍丰富化完成。

高性价比

分类设计为在快速、廉价的模型上运行。它发送极小的负载(模式名称、描述以及截断的实体数据),并期望获得小型的结构化响应。其典型成本只是丰富化本身的一小部分——非常值得换取准确性的提升。

实时反馈

界面通过 Server-Sent Events 实时显示 classification 进度。检查开始时触发 classification_started 事件,随后触发携带状态、置信度和 entity 描述的 classification_completed 事件。结果会以横幅形式显示在 model 结果上方。

可取消

如果您在分类阶段取消增强,任务将立即停止,不会启动任何增强模型。不会浪费多余的 token。

何时启用分类

推荐
  • 实体类型狭窄的 schema(例如“制药公司”)
  • 可能包含混合实体类型的输入数据
  • 使用来自不同来源的实体进行批量丰富化
  • 当使用高成本的富集模型且你希望避免浪费时
无需
  • 接受任何实体的通用模式(例如“Organization”)
  • 由你控制实体类型的精选输入数据
  • 在速度比准确性更重要的场景下快速迭代
  • 没有明确实体类型定义的 schema

如何启用

在 schema 编辑器或批量增强侧边栏中,找到“分类”下拉菜单。选择一个快速、低成本的模型(Claude Haiku、GPT-4o Mini 或类似模型)。在每个实体开始增强之前,分类会自动运行。

使用 REST API 时,在富集请求中包含 classification_model 字段,并填入模型的复合键(例如 anthropic::claude-haiku-4-5)。