Communitygithub.com

dhar174/Hugging Face 视觉模型训练器

使用 Hugging Face Transformers 在 Hugging Face Jobs 上训练和微调视觉模型,支持目标检测、图像分类和 SAM/SAM2 分割。

Hugging Face 视觉模型训练器 是什么?

该技能是一个基于 Hugging Face Transformers 的视觉模型训练与微调工具,专为开发者设计,可在 Hugging Face Jobs 上高效运行。它支持多种计算机视觉任务,包括目标检测(例如 D-FINE、RT-DETR v2、DETR、YOLOS)、图像分类(通过 timm 模型库如 MobileNetV3、MobileViT、ResNet、ViT/DINOv3,以及任何 Transformers 分类器),以及 SAM/SAM2 分割模型。其核心优势在于简化了训练流程,允许用户在 Hugging Face 的托管服务上直接提交作业,无需手动管理基础设施。开发者可以通过配置 JSON 参数或 YAML 文件来指定模型、数据集、超参数等,从而快速迭代实验。此技能特别适合需要在云端大规模训练视觉模型的 AI 代理或命令行工具用户,它封装了从数据加载到模型保存的完整流程,并自动处理检查点和日志记录。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/dhar174/DeskBuddy/tree/main/.agents/skills/hugging-face-vision-trainer

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Hugging Face 视觉模型训练器 是做什么的?

使用 Hugging Face Transformers 在 Hugging Face Jobs 上训练和微调视觉模型,支持目标检测(D-FINE、RT-DETR v2、DETR、YOLOS)、图像分类(timm 模型 — MobileNetV3、MobileViT、ResNet、ViT/DINOv3 — 以及任何 Transformers 分类器)和 SAM/SAM2 分割。

工作原理

该技能通过 Hugging Face Jobs API 提交训练作业。您需要准备一个包含训练配置的 JSON 或 YAML 文件,然后调用 submit_job 函数。

支持的平台

  • Hugging Face Jobs: 所有训练作业在 Hugging Face 的托管基础设施上运行。

先决条件

  • 一个 Hugging Face 令牌(HF_TOKEN 环境变量)。
  • 训练数据已上传到 Hugging Face 数据集或 Hub。

快速开始

  1. 克隆仓库:

    git clone https://huggingface.co/dhar174/hugging-face-vision-trainer
    cd hugging-face-vision-trainer
    
  2. 设置环境变量:

    export HF_TOKEN="your_hf_token_here"
    
  3. 创建配置文件 config.json:

    {
      "model_name": "hustvl/yolos-tiny",
      "task": "object-detection",
      "dataset_name": "my-dataset",
      "output_dir": "./output",
      "num_train_epochs": 3,
      "per_device_train_batch_size": 8
    }
    
  4. 提交作业:

    python submit_job.py config.json
    

配置参数

参数类型描述
model_name字符串来自 Hugging Face Hub 的模型 ID
task字符串视觉任务(object-detection、image-classification、segmentation)
dataset_name字符串数据集名称或路径
output_dir字符串模型保存目录
num_train_epochs整数训练轮数
per_device_train_batch_size整数每个设备的批次大小

示例

目标检测(使用 D-FINE)

{
  "model_name": "hf-tiny-model-private/tiny-random-dinov2-detr",
  "task": "object-detection",
  "dataset_name": "my-detection-dataset",
  "output_dir": "./detection-output"
}

图像分类(使用 timm 模型)

{
  "model_name": "timm/mobilenetv3_large_100",
  "task": "image-classification",
  "dataset_name": "my-classification-dataset",
  "num_train_epochs": 5
}

分割(SAM2)

{
  "model_name": "facebook/sam2-hiera-tiny",
  "task": "segmentation",
  "dataset_name": "my-segmentation-dataset"
}

故障排除

  • 认证错误: 确保 HF_TOKEN 环境变量已正确设置。
  • 数据集未找到: 验证数据集是否公开或您是否拥有访问权限。
  • 内存不足: 减少批量大小或使用更小的模型。

附加说明

  • 训练日志和检查点会自动保存到 output_dir。
  • 作业状态可通过 Hugging Face Jobs 仪表板监控。
  • 修改 config.json 中的 hyperparameters 字段可调整学习率等超参数。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相关技能