首页/AI/提示词工程速查/字段级校验规则(枚举/范围/正则)
任务型写法50 条

字段级校验规则(枚举/范围/正则)

在提示里内联校验规则:枚举取值、数字范围、字符串正则与长度;模型先自检再输出,程序侧再做同样校验。

提示词工程速查AI更新于 2026-10-13

字段级校验规则

把校验规则内联写进提示:枚举取值、数值范围、字符串正则与长度。模型在输出前逐字段自检,程序侧再独立执行一遍同样的规则。两处必须对齐——提示里写的是「11 位数字」,程序里就该是同一套正则,规则不一致时模型照做也会被打回,反复重试消耗配额。

基本信息

校验维度枚举 / 范围 / 正则 / 长度 / 必填
执行位置提示内自检 + 程序侧独立校验
无法修正输出 null 并在 notes 说明原因
对称要求提示与代码里的规则逐条对应

典型使用场景

  • 工单结构化:状态字段只能取固定枚举值
  • 进度上报:数值限定在 0-100 的整数区间
  • 联系方式抽取:按固定格式写入,便于后续外呼
  • 批量入库前的门禁:字段级规则统一在提示和代码里各写一遍
  • 多语言输出:语言码限定在固定集合内

内联校验条款

内联校验条款
输出前逐字段自检,不符合则先修正再输出:

- status:必须是 open / closed / pending 之一
- progress:0 到 100 的整数,不加百分号
- phone:11 位数字,用连字符分隔,如 138-0000-0000
- due_date:YYYY-MM-DD 格式,无法确定时输出 null

无法修正的字段输出 null,并在 notes 里说明原值形态。
自检通过后再输出完整结果,不要输出自检过程。

校验维度与写法

维度提示中的写法程序侧的对应实现
枚举列出全部允许取值集合成员判断(同一份取值列表)
范围写明上下界与是否含端点数值比较,注意端点开闭一致
正则给出示例值而非只有文字描述与示例一致的正则表达式
长度按字符数还是字节数要写明与提示口径一致的计数方式
必填说明缺失时的输出形态非空校验 + null 白名单
要求模型输出自检过程会把推理噪声带进结果,通常只要结果不要过程。自检作为提示内部的执行步骤存在,不必体现在输出里。
规则只写在代码里、没写进提示,是常见的返工来源:模型按自己的习惯输出格式,程序逐条打回,重试率升高但没人知道为什么。两边同时更新才有效。

易错点

  • 规则只写在程序侧而提示里没有,模型按自己的格式习惯输出后被反复打回,重试率虚高
  • 提示里的文字描述与代码里的正则不一致(例如位数写错),模型照提示执行仍被判不合格
  • 正则只给文字描述不给示例值,模型对格式的理解与实现方存在偏差
  • 不约定无法修正时的输出形态,模型会硬凑一个值,把校验失败伪装成合法输出

数据来源与参考

  • OpenAI Structured Outputs 文档:枚举与格式约束示例
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌