AI 生成的数据质量规则怎么验收?把建议写成可执行断言与反例

AI 提出的数据质量规则只有转成确定性的断言并用反例试验,才能纳入数据流水线。示例把金额为正、编号非空且唯一三项建议转成代码。

让 AI 帮忙列数据质量规则很方便,但“订单数据应合理”不能直接验收。规则必须有准确条件、可测反例和失败后动作,才能进入自动化流程。本文用订单金额与编号演示:先把自然语言拆成三条断言,再故意输入错误样本看能否被拒绝。

从建议中提炼可判定条件

人工构造的建议是“订单金额必须为正,订单编号不能为空且不得重复”。代码将其拆为 positive_amount、id_present 和 id_unique。空字符串与真正的缺失值都视为没有编号;金额 0 也不满足“为正”。

AI 生成的数据质量规则怎么验收?把建议写成可执行断言与反例

这些规则适用于本教学场景,不表示所有订单业务都不能出现零元订单。若有试用、赠品或退款,先找业务方确定例外条件和状态,再写代码;让 AI 猜政策会导致误杀数据。

同时运行正例和反例

安装 pandas,将代码保存为 rules_as_tests.py 并运行。valid 应通过;zero_amount 只触发金额规则;duplicate_id 只触发唯一性规则。如果一个反例没有被挡住,规则还不能上线。

import pandas as pd

# “AI建议”是人工构造的候选文本,需转成明确断言后才可使用。
suggestion='订单金额必须为正,订单编号不能为空且不得重复'
def validate(frame):
    return {'positive_amount':bool(frame['amount'].gt(0).all()),
            'id_present':bool(frame['id'].notna().all() and frame['id'].astype(str).str.strip().ne('').all()),
            'id_unique':bool(frame['id'].is_unique)}
good=pd.DataFrame({'id':['a','b'],'amount':[2,3]})
bad_amount=pd.DataFrame({'id':['a','b'],'amount':[2,0]})
bad_duplicate=pd.DataFrame({'id':['a','a'],'amount':[2,3]})
for name,frame in [('valid',good),('zero_amount',bad_amount),('duplicate_id',bad_duplicate)]:
    result=validate(frame)
    print(name,result,'accepted=',all(result.values()))
print('source_suggestion=',suggestion)

看测试结果而不是看 AI 的解释

结果中正常表 accepted=True,两种坏样本均为 False,且失败项与预期一致。下一步把企业真实字段、金额类型及订单状态加入固定测试集;每次改规则都重跑正例和反例,尤其检查以前可接受的边界样本是否被误拒。

valid {'positive_amount': True, 'id_present': True, 'id_unique': True} accepted= True
zero_amount {'positive_amount': False, 'id_present': True, 'id_unique': True} accepted= False
duplicate_id {'positive_amount': True, 'id_present': True, 'id_unique': False} accepted= False
source_suggestion= 订单金额必须为正,订单编号不能为空且不得重复

Python unittest 官方文档给出了将这些断言组织成可重复测试的方式;pandas 重复行文档说明重复检查可针对指定字段或整行,本例要求订单编号唯一。

规则落地前还有哪些缺口

真实流水线应为失败行保存编号、规则版本和原值,阻止错误批次进入下游,并给出修复入口。本例不处理并发写入和跨文件重复;若编号唯一性跨多个批次,应在持久存储层再设唯一约束。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/31709.html

赞 (0)
AI小管家的头像AI小管家
数据标注智能体的结果能直接入库吗?隔离低置信样本并保留复核队列
上一篇 2小时前
表格分析智能体先看什么?生成字段概况、空值率和唯一值检查表
下一篇 2小时前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部