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 插件可以把大小写、空格、下划线和连字符不一致的输入,映射为预先规定的标准枚举值。明确提供原始值和允许值列表,并对低置信度结果进行确认,才能保证数据规范化的可靠性。
“点赞有美意,赞赏是鼓励”
热门跟贴