本技能负责对 Excel 中的数据进行标注校验。根据用户提供的数据字段和结果字段,逐行判断结果字段的值是否准确,直接在结果字段的 cell 上进行标注,不新增任何列:
输出文件保存在原文件夹,命名为 原文件名-标注版.xlsx,不覆盖原文件。
收到用户请求后,确认以下信息:
若用户未明确指定数据字段和结果字段,主动询问确认后再开始校验。
scripts/validate_data.py 读取 Excel 文件全部内容⚠️ 此步骤是标注准确性的关键,必须严格执行以下推理流程。
对每一行数据,必须在内部完成以下 四步推理,不可跳步:
Step 1 — 原文理解:
\n,那是真实的换行,文本是连续的Step 2 — 独立判断:
Step 3 — 比对分析:
Step 4 — 复核确认(防止误判的关键步骤):
判定"准确"的条件(宽松判准,严格判错):
判定"错误"的条件(必须高度确信):
判定"待确认"的条件(有疑就标待确认):
语音转写文本:
长文本/多段信息:
枚举/分类标签:
以下是历史上常见的错误判定模式,必须避免:
| 错误模式 | 描述 | 正确做法 |
|---|---|---|
| --------- | ------ | --------- |
| 字面匹配陷阱 | 只匹配关键词而不理解语境 | 理解完整语义后再判断 |
| 截断阅读 | 长文本只看开头就下结论 | 通读全文再判断 |
| 噪声误判 | 因为错别字/口语化就判定数据无法校验 | 还原说话人的真实意图 |
| 标签体系错位 | 用自己的分类体系替代实际标签体系 | 始终使用数据中存在的标签集合 |
| 连续惯性 | 前几行标了"准确",后面行降低审查标准 | 每行独立推理,不受前序结果影响 |
| 过度自信 | 不一致就直接判"错误",不做复核 | 不一致时必须走 Step 4 复核流程 |
| 批量疲劳 | 处理到后半段时推理质量下降 | 严格分批,每批不超过 20 行 |
不新增任何列,直接在结果字段的 cell 上进行标注:
原文件名-标注版.xlsx,保存在原文件所在目录输出文件命名示例:
数据.xlsx → 输出 数据-标注版.xlsxtest_results.xlsx → 输出 test_results-标注版.xlsx5.1 自检(在汇报前执行):
完成所有行的校验后,必须抽检至少 5 行判定为"错误"的数据(如果错误行不足 5 行则全部复查):
5.2 汇报:
向用户输出校验摘要,包括:
使用 scripts/validate_data.py 脚本处理 Excel 的读取和写入操作:
# 读取 Excel 并输出 JSON 格式数据
python3 scripts/validate_data.py read <excel_path> [--sheet <sheet_name>] [--limit <n>]
# 分析数据特征和标签分布(在校验前必须执行,用于理解数据)
python3 scripts/validate_data.py analyze <excel_path> --data-fields <field1,field2,...> --result-fields <field1,field2,...> [--sheet <sheet_name>]
# 一次性写入所有字段的校验结果(推荐,避免多次加载导致标注覆盖)
python3 scripts/validate_data.py write-batch <excel_path> <output_path> --all-results <json_results>
# 写入单个字段的校验结果(仅适用于只有一个结果字段的场景)
python3 scripts/validate_data.py write <excel_path> <output_path> --result-field <field> --results <json_results>
analyze 命令参数说明(校验前必须执行):
excel_path:Excel 文件路径--data-fields:数据字段名,多个字段用逗号分隔--result-fields:结果字段名,多个字段用逗号分隔write-batch 命令参数说明(推荐):
excel_path:原始 Excel 文件路径output_path:输出路径,格式为 原目录/原文件名-标注版.xlsx--all-results:JSON 字符串,格式为 {"字段名1": [{"校验结果": "准确/错误/待确认", "批示": "原因说明"}, ...], "字段名2": [...], ...}write 命令参数说明(单字段,仅适用于只有一个结果字段的场景):
excel_path:原始 Excel 文件路径output_path:输出路径,格式为 原目录/原文件名-标注版.xlsx--result-field:结果字段名(需要标色和添加批注的列)--results:JSON 字符串,格式为 [{"校验结果": "准确/错误/待确认", "批示": "原因说明"}, ...]⚠️ 重要:当有多个结果字段时,必须使用 write-batch 命令一次性写入所有字段的校验结果。不要对每个字段单独调用 write 命令,因为每次 write 都会从原始 Excel 重新加载,导致之前字段的标注被覆盖丢失。
标注方式:
| 校验结果 | 结果字段 cell 颜色 | 结果字段 cell 批注 |
|---|---|---|
| --------- | ------------------ | ------------------ |
| 准确 | 无特殊颜色 | 无批注 |
| 错误 | 红色背景 + 白色加粗 | 添加批注,说明错误原因及正确答案 |
| 待确认 | 黄色背景 + 加粗 | 添加批注,说明不确定原因 |
注意:执行脚本前先检测系统可用的 Python 命令(python 或 python3),使用可用版本执行。
详细的校验逻辑和常见场景处理方式,参见 references/validation_rules.md。
原文件名-标注版.xlsx,保存在原文件同目录共 1 个版本