agentleFS
svngokusvngoku/coding-agents-skills/skills/unsloth-hf-jobs/SKILL.md

unsloth-hf-jobs

Skill12 starsChanged 26 days agoMITView on GitHub

Fine-tune LLMs and VLMs using Unsloth on HF Jobs (Hugging Face on-demand cloud GPUs). Use when users want to fine-tune language models, train VLMs (Vision Language Models), do continued pretraining, domain adaptation, or run UV scripts on HF Jobs. Triggers on requests involving Unsloth training, HF Jobs GPU training, Qwen3-VL fine-tuning, Gemma VLM training, or LoRA fine-tuning on cloud GPUs.

  • Pipes a download into a shell

The file

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 0 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Add --trackio-space <username>/trackio to any command for live monitoring.

    line 80
  2. Very specific:

    Verify setup with --max-steps 10 before full runs

    line 100
  3. Very specific:

    Use --eval-split 0.1 to detect overfitting

    line 101
  4. Very specific:

    Check GPU pricing: hf jobs hardware (A100-large ~$2.50/hr, L40S ~$1.80/hr)

    line 102

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Unsloth Training on HF Jobs

Fine-tune LLMs and VLMs using Unsloth on HF Jobs with UV scripts that handle dependencies automatically.

Prerequisites

  • Hugging Face account with token
  • HF CLI: curl -LsSf https://hf.co/cli/install.sh | bash
  • Dataset on the Hub (see data formats below)

Available Scripts

ScriptBase ModelTask
scripts/sft-qwen3-vl.pyQwen3-VL-8BVLM fine-tuning
scripts/sft-gemma3-vlm.pyGemma 3 4BVLM fine-tuning (smaller)
scripts/continued-pretraining.pyQwen3-0.6BDomain adaptation

Remote URL (for HF Jobs): https://huggingface.co/datasets/uv-scripts/unsloth-jobs/raw/main/

Data Formats

VLM Fine-tuning

Requires images and messages columns:

{
    "images": [<PIL.Image>],
    "messages": [
        {"role": "user", "content": [{"type": "image"}, {"type": "text", "text": "What's in this image?"}]},
        {"role": "assistant", "content": [{"type": "text", "text": "A golden retriever playing fetch."}]}
    ]
}

Example dataset: davanstrien/iconclass-vlm-sft

Continued Pretraining

Any dataset with a text column (use --text-column if named differently):

{"text": "Your domain-specific text here..."}

Usage Patterns

VLM Fine-tuning

hf jobs uv run \
  https://huggingface.co/datasets/uv-scripts/unsloth-jobs/raw/main/sft-qwen3-vl.py \
  --flavor a100-large --secrets HF_TOKEN --timeout 4h \
  -- --dataset <username>/<dataset> \
     --num-epochs 1 \
     --eval-split 0.2 \
     --output-repo <username>/<model-name>

Continued Pretraining

hf jobs uv run \
  https://huggingface.co/datasets/uv-scripts/unsloth-jobs/raw/main/continued-pretraining.py \
  --flavor a100-large --secrets HF_TOKEN \
  -- --dataset <username>/<dataset> \
     --text-column content \
     --max-steps 1000 \
     --output-repo <username>/<model-name>

With Trackio Monitoring

Add --trackio-space <username>/trackio to any command for live monitoring.

Common Options

OptionDescriptionDefault
--datasetHF dataset IDrequired
--output-repoWhere to save trained modelrequired
--max-stepsTraining steps500
--num-epochsTrain for N epochs (overrides steps)-
--eval-splitFraction for evaluation0
--batch-sizePer-device batch size2
--gradient-accumulationAccumulation steps4
--lora-rLoRA rank16
--learning-rateLearning rate2e-4
--merge-modelUpload merged model (not just adapter)false
--streamingStream large datasetsfalse

Quick Tips

  • Verify setup with --max-steps 10 before full runs
  • Use --eval-split 0.1 to detect overfitting
  • Check GPU pricing: hf jobs hardware (A100-large ~$2.50/hr, L40S ~$1.80/hr)
  • First step may take minutes (CUDA kernel compilation)
  • View script options: uv run <script-url> --help

Anti-Patterns to Avoid

  • Skipping the smoke test — always verify setup with --max-steps 10 before a full run; config errors cost GPU hours
  • Wrong data format for VLMs — VLM fine-tuning requires images + messages columns with image + text content parts; plain text datasets silently fail or train nonsense
  • Forgetting --secrets HF_TOKEN — the job fails at model download/login; pass the secret explicitly
  • Batch size 1 without gradient accumulation — on A100 with 4-bit LoRA you can afford larger batches; accumulation of 1 wastes throughput
  • Uploading only the adapter when you need a merged model — set --merge-model if the target is deployment, not another fine-tuning pass
  • Training without --eval-split — you cannot detect overfitting or pick a checkpoint without a held-out split
  • Ignoring --streaming on huge datasets — disk may fill up; stream when the dataset doesn't fit locally

When to Use / Not Use

Use this skill when:

  • Fine-tuning LLMs or VLMs with Unsloth on HF on-demand cloud GPUs
  • Doing LoRA/QLoRA fine-tuning, continued pretraining, or domain adaptation via UV scripts
  • You have no local GPU or want ephemeral, pay-per-hour training

Do NOT use this skill when:

  • You have local GPUs and prefer on-premises training — use the unsloth skill directly
  • The model works with prompting/RAG and doesn't need fine-tuning at all
  • You need full control over a custom training stack (TRL, custom loops) — this skill is scoped to the provided UV scripts

Resources

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.