如何使用 AI 在 Hugging Face 上创建与管理数据集
解决 AI 训练数据处理低效问题:通过集成 DuckDB SQL 查询和模板化管理工具,让 AI 能够快速在 Hugging Face Hub 上检索、清洗、转换并推送高质量的结构化数据集。
为什么需要这个技能
在构建 LLM 或微调模型时,数据的准备往往占据了 80% 的时间。传统的流程需要手动编写繁琐的 Python 脚本来下载、过滤和重新上传数据。
本技能通过引入 hf:// 协议和 SQL 引擎,允许用户像查询数据库一样操作远程数据集。无论是提取特定主题的样本、转换数据格式,还是构建复杂的对话训练集,都可以通过简单的命令快速完成,极大地缩短了从“数据发现”到“模型训练”的链路。
适用场景
- 数据集快速切片:从一个巨大的公共数据集中,用 SQL 过滤出特定领域(如医学、编程)的子集。
- 自动化训练集构建:利用预设模板(Chat, QA, 分类)快速生成并验证符合规范的训练 JSONL 文件。
- 数据质量审计:通过 SQL 聚合函数统计数据分布、检测空值或分析样本长度。
- 跨仓库数据迁移:将 A 数据集的查询结果直接推送至 B 仓库。
核心工作流
1. SQL 驱动的数据检索与转换
使用 sql_manager.py 配合 DuckDB,无需下载全量数据即可操作:
# 查询数据集并筛选特定主题的样本
uv run scripts/sql_manager.py query \
--dataset "cais/mmlu" \
--sql "SELECT * FROM data WHERE subject='nutrition' LIMIT 10"
# 将筛选后的结果直接推送至新仓库
uv run scripts/sql_manager.py query \
--dataset "cais/mmlu" \
--sql "SELECT * FROM data WHERE subject='nutrition'" \
--push-to "username/mmlu-nutrition-subset" \
--private
2. 模板化数据集创建
使用 dataset_manager.py 快速初始化并填充结构化数据:
- 初始化与配置:创建仓库并设定系统 Prompt。
- 模板填充:支持
chat(对话)、qa(问答)、classification(分类)等五种核心模板。
# 快速初始化一个分类任务数据集
uv run scripts/dataset_manager.py quick_setup \
--repo_id "your-username/dataset-name" \
--template classification
# 批量添加经过验证的 QA 数据
uv run scripts/dataset_manager.py add_rows \
--repo_id "your-username/dataset-name" \
--template qa \
--rows_json '[{"question": "什么是 AI?", "answer": "人工智能..."}]'
3. 质量验证与导出
利用 describe 查看 Schema,或将处理结果导出为 Parquet/JSONL 格式以便离线分析。
下载和安装
下载 hugging-face-datasets 中文版 Skill ZIP
解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。运行前请确保已安装 uv 并配置 HF_TOKEN 环境变量。
你可能还需要
暂无推荐