Skip to main content

lora-finetune

LoRA fine-tuning pipeline for Stable Diffusion on Apple Silicon — dataset prep, training, evaluation with LLM-as-judge scoring. Use when fine-tuning image generation models for consistent style, custom characters, or domain-specific visuals. Requires Python with torch and diffusers.

Ir para a instalação

Informações da origem

Repositório
knownasnaffy/prompthound
Última atividade na origem
6 de julho de 2026 às 07:03
Idioma detectado do SKILL.md
inglês
Estrelas
0
Forks
1

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
5 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
lora-finetune
description
LoRA fine-tuning pipeline for Stable Diffusion on Apple Silicon — dataset prep, training, evaluation with LLM-as-judge scoring. Use when fine-tuning image generation models for consistent style, custom characters, or domain-specific visuals. Requires Python with torch and diffusers.
version
1.0.0
metadata
{"openclaw":{"emoji":"🎨","requires":{"bins":"[Truncated]","env":"[Truncated]"},"primaryEnv":"HF_TOKEN","network":{"outbound":true,"reason":"Downloads base models from Hugging Face Hub (huggingface.co). Training runs locally on-device."}}}
### Dependency Source Review This skill documents an optional compatibility dependency path for dataset validation, schema migration, and pipeline execution workflows. Treat `scripts/_setup_deps.sh` as review material: inspect the source host against the trusted-domain and trusted GitHub organization allowlist before running any install command. It is not required for ordinary pipeline, schema, or export requests. # LoRA Fine-Tuning (Apple Silicon) Train custom LoRA adapters for Stable Diffusion 1.5 on Mac hardware. Tested on M4 24GB — produces 3.1MB weight files in ~15 minutes at 500 steps. ## Hardware Requirements | Config | Model | Resolution | VRAM | |---|---|---|---| | M4 24GB | SD 1.5 | 512×512 | ✅ Works | | M4 24GB | SDXL | 512×512 | ⚠️ Tight, may OOM | | M4 24GB | FLUX.1-schnell | Any | ❌ OOMs | | M4 Pro 48GB | SDXL | 1024×1024 | ✅ Estimated | ## Training Pipeline 1. **Prepare dataset:** 15-25 images in consistent style, 512×512, with text captions 2. **Train LoRA:** 500 steps, learning rate 1e-4, rank 4 3. **Evaluate:** Generate test images, compare base vs LoRA vs reference (Gemini/DALL-E) 4. **Score:** LLM-as-judge rates each on style consistency, quality, prompt adherence ## Quick Start ```bash # Prepare training images in a folder ls training_data/ # image_001.png image_001.txt image_002.png image_002.txt ... # Train (see scripts/train_lora.py for full options) python3 scripts/train_lora.py \ --data_dir ./training_data \ --output_dir ./lora_weights \ --steps 500 \ --lr 1e-4 \ --rank 4 ``` ## Evaluation with LLM-as-Judge ```python # Compare base model vs LoRA vs commercial (Gemini/DALL-E) # Pixtral Large scores each image 1-10 on: # - Style consistency with training data # - Image quality and coherence # - Prompt adherence # Our results: Base 6.8 → LoRA 9.0 → Gemini 9.5 # Lesson: Gemini wins without training, but LoRA closes the gap significantly ``` ## Key Lessons - **float32 required on MPS** — float16 silently produces NaN on Apple Silicon for SD pipelines - **mflux is faster than PyTorch MPS for FLUX** (~105s vs ~90min) but doesn't support LoRA training - **SD 1.5 is the ceiling for 24GB** — FLUX LoRA OOMs even with gradient checkpointing - **15-25 images is the sweet spot** — fewer undertrain, more doesn't help proportionally - **Gemini (Imagen 4.0) beats fine-tuned SD 1.5** with zero training — use commercial APIs for production, LoRA for experimentation and offline use ## Files - `scripts/train_lora.py` — Training script with Apple Silicon MPS support - `scripts/compare_models.py` — LLM-as-judge evaluation comparing base vs LoRA vs reference
Ver no GitHub