Enum Value Normalizer 插件是一个枚举值规范化工具。它可以把用户或模型提供的自由文本,与一组预先给定的允许值进行匹配,并返回其中最合适的标准枚举值。它适合 API、表单、数据库和自动化工作流中需要固定取值的字段。

枚举(Enumeration,简称 Enum)用于表示一组预先定义的有限取值。例如,订单状态只能是 pending、paid 或 cancelled。输入值若在大小写、空格或连接符方面不一致,就可能无法通过接口校验。

一、Enum Value Normalizer 能做什么

打开网易新闻 查看精彩图片

图 1:Enum Value Normalizer 规范化枚举值的基本流程

1、接收原始值

插件首先接收一个需要规范化的原始值,例如:

In Progress

in-progress

IN_PROGRESS

in progress

这些写法可能表达相同状态,但字符形式并不一致。

2、接收允许值列表

用户必须同时提供一组固定的允许值,例如:

pending、in_progress、completed

允许值列表决定了规范化结果的范围。插件不会自行设计、补充或推断新的枚举值。

3、处理格式差异

插件可以识别常见的形式差异,例如:

大小写不同;

多余空格;

下划线与连字符不同;

单词间距不同;

输入形式接近标准值。

例如,可以把 IN-PROGRESS 映射为允许列表中的 in_progress。

4、判断是否受支持

当原始值能够可靠对应某个允许值时,插件返回规范化结果。

若输入与所有允许值都不匹配,则应返回“不支持”或错误状态,而不是凭空创建新值。这样可以防止无效数据进入接口或数据库。

5、返回结构化结果

公开的工具说明表明,其结果可以包含:

规范化后的值;

是否受支持;

匹配置信度;

处理状态;

必要的错误信息。

该插件只负责读取和转换输入,不会修改外部系统或直接写入数据。

二、怎样把任务说清楚

使用 Enum Value Normalizer 时,必须明确提供原始值和允许值列表。

可以使用下面的模板:

请使用 Enum Value Normalizer 规范化以下枚举值。

字段名称:[字段]

原始值:[待处理内容]

允许值

[允许值 1]

[允许值 2]

[允许值 3]

请返回:规范化结果、是否受支持、匹配状态、置信度和错误信息。

例如:

字段名称:订单状态

原始值:In-Progress

允许值:pending、in_progress、completed

期望结果:in_progress

三、场景示例

示例 1:统一订单状态

将 Paid、PAID 和 paid 统一为接口规定的 paid。

示例 2:整理表单数据

把用户填写的 Full Time 映射为系统允许的 full_time。

示例 3:清洗导入数据

在导入 CSV 数据前,将不同来源中的地区、级别或状态名称转换为统一值。

示例 4:修正 AI 输出

当 Codex 生成的 JSON 使用了 high priority,而接口只允许 high_priority 时,先进行规范化再提交。

示例 5:验证工作流参数

检查任务状态、审批结果或部署环境等字段能否映射到工作流规定的枚举值。

四、使用时要注意

1、必须提供允许值

插件不能在缺少允许值列表时自行判断合法取值,也不负责设计枚举结构。

2、一次处理一个原始值

其公开工具说明主要面向一个原始值与一组允许值的匹配。批量数据可以逐项处理,但应由外部流程负责遍历。

3、格式相似不等于含义相同

inactive 与 disabled 可能在某些系统中相近,也可能代表不同业务状态。插件不负责解释业务含义或作业务决策。

4、低置信度结果应人工确认

若多个允许值都与输入相近,应保留原始值并交由开发者或业务人员确认。

5、规范化后仍需接口校验

格式匹配成功,不代表该状态在当前业务阶段一定允许。字段关系、权限和状态转换规则仍需由业务系统验证。

小结

Enum Value Normalizer 插件可以把大小写、空格、下划线和连字符不一致的输入,映射为预先规定的标准枚举值。明确提供原始值和允许值列表,并对低置信度结果进行确认,才能保证数据规范化的可靠性。

点赞有美意,赞赏是鼓励