SuperAPI AI 工具集

version-dataset

数据与分析

查看项目

更新于 10-15 16:51

技能介绍

用途:当需要证明某次分析确实运行在预期的数据版本上,或需要锁定数据集版本时使用。它通过记录确定性指纹来让运行间的数据漂移“可见”,而不是悄无声息地发生。

主要能力:为文件生成 SHA-256;对表格文件额外记录模式(schema)与逐列值哈希;除非显式传入,否则不记录时间戳。支持三种操作:生成清单(manifest)、按清单验证、以及对比两个清单的差异。验证支持 --strict,漂移时报 MANIFEST_DRIFT 并以退出码 1 结束。提供 --ignore-cols 排除易变列,--base 使清单键为相对路径。文件哈希仅用标准库,表格列哈希在存在 pandas 时使用 pandas。

使用方式(命令保持原样): python "${CLAUDE_SKILL_DIR}/scripts/version_dataset.py" manifest data.csv
--out manifest.json --seed 42 --provenance "KNHANES 2018 extract v1"

python "${CLAUDE_SKILL_DIR}/scripts/version_dataset.py" verify --manifest manifest.json --strict

python "${CLAUDE_SKILL_DIR}/scripts/version_dataset.py" diff --old v1.json --new v2.json

工作流程要点:数据冻结用于分析时建立清单,先与用户确认种子与来源说明再锁定;每次重跑分析或 CI 前先 verify --strict;报漂移时停止并原样展示漂移报告,未获用户明确确认不得在变动数据上继续;数据集有意更新时用 diff 展示增删改列与行数变化,用户批准后再重新锁定。CSV/TSV 按逻辑内容比较,重新引号、重排列或忽略易变列不会误报漂移;Parquet/Stata/SAS/Excel 等二进制表格文件也做字节级检查。

限制与注意:该技能从不修改数据,清单只保存哈希而非数据本身。不要对 PPTX/DOCX 或图形二进制做严格字节验证,它们会因时间戳或渲染元数据在每次构建时变化;只清单确定性输入与表格输出,或用 --ignore-cols 处理易变列。共享清单前先运行 /deidentify,因为来源说明可能携带上下文。清洗、剖析或去标识化应使用 /clean-data、/generate-codebook、/deidentify。来源说明为用户文本,不得编造;清单模式详见 references/manifest_schema.md。