如何使用 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 环境变量。

你可能还需要

暂无推荐