Skip to content
Back to skills

Diffusion Engineering

ASecurity

Практическая инженерия диффузионных моделей: архитектуры, обучение, инференс, оптимизация памяти. Использовать при любых задачах с диффузионными моделями: проектирование или модификация архитектуры (UNet/DiT/Flow/Flux), выбор и настройка schedulers/samplers, дообучение (LoRA/DreamBooth/full fine-tune), оптимизация памяти (AMP/checkpointing/ZeRO/FSDP/quantization), замена или fusion текст-энкодеров (CLIP/Qwen), работа с Diffusers, отладка диффузионных пайплайнов, оценка качества (FID/CLIPScore...

  • 154 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 8, 2026
ai-agentsgo

Works with

  • cli

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned October 8, 2026

npx -y skills add AnastasiyaW/codex-claude-code-config --skill diffusion-engineering --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Diffusion Engineering?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Diffusion Engineering
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/anastasiyaw-diffusion-engineering/badge)](https://www.skillsdirectory.com/skills/anastasiyaw-diffusion-engineering)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: diffusion-engineering
description: >
  Практическая инженерия диффузионных моделей: архитектуры, обучение, инференс,
  оптимизация памяти. Использовать при любых задачах с диффузионными моделями:
  проектирование или модификация архитектуры (UNet/DiT/Flow/Flux), выбор и настройка
  schedulers/samplers, дообучение (LoRA/DreamBooth/full fine-tune), оптимизация памяти
  (AMP/checkpointing/ZeRO/FSDP/quantization), замена или fusion текст-энкодеров (CLIP/Qwen),
  работа с Diffusers, отладка диффузионных пайплайнов, оценка качества (FID/CLIPScore/LPIPS),
  latent diffusion, VAE, guidance/CFG, rectified flow, Stable Diffusion, SDXL, Flux.
  Также применять при вопросах про GPU-память при обучении генеративных моделей,
  text-to-image пайплайны, ControlNet, multi-encoder fusion, WebDataset.
  Do NOT use for writing FLUX.2 Klein generation prompts (use flux2-klein-prompting)
  или для FLUX.2 Klein / Qwen-Edit LoRA-тренинга и edit-LoRA (use flux2-lora-training);
  это общая диффузионная инженерия, не специфика FLUX.2 Klein.
---

# Diffusion Engineering Skill

## Быстрая ориентация

Три инженерных решения, которые больше всего влияют на качество/скорость/стоимость:

1. **Где идёт диффузия** → пиксели (дорого) или латентное пространство (LDM/SD-семейство — практично)
2. **Backbone денойзера** → UNet (классика, проще) или Transformer/DiT/Flow (масштабируется лучше)
3. **Управление сэмплингом** → scheduler, число шагов, guidance_scale — часто дают больше, чем правка сети

---

## Reference files — читать по задаче

| Тема | Файл | Когда читать |
|---|---|---|
| Архитектуры и data flow | `references/architectures.md` | DDPM/SDE/LDM/DiT/Flux/VAE/SDXL, схема пайплайна |
| Schedulers и guidance | `references/samplers.md` | DDIM/Euler/Heun/DPM-Solver/PNDM, CFG, prediction_type |
| Обучение и дообучение | `references/training.md` | Loss/цели, LoRA/DreamBooth/full FT, гиперпараметры |
| Память и распределённость | `references/memory.md` | AMP, checkpointing, ZeRO, FSDP, quantization, FP8 |
| Текст-энкодеры и данные | `references/encoders-data.md` | CLIP/Qwen/multi-encoder, токенизация, data pipeline |
| Оценка и траблшутинг | `references/eval-debug.md` | FID/CLIPScore/LPIPS, типовые поломки и фиксы, лицензии |

---

## Быстрый чеклист «я строю/модифицирую diffusion»

- [ ] **Backbone:** UNet (проще) или DiT/Flow (масштабирование)?
- [ ] **Модули зафиксированы:** tokenizer → text encoder → `encoder_hidden_states` → denoiser → VAE decode
- [ ] **Scheduler выбран:** DDIM / Euler / DPM-Solver — A/B на фиксированных seed
- [ ] **Дообучение:** начинать с LoRA, в full fine-tune только при необходимости
- [ ] **Память:** AMP включён, при необходимости checkpointing, при масштабе ZeRO/FSDP
- [ ] **Данные:** стриминг/шардинг (HF streaming, WebDataset), валидировать throughput dataloader
- [ ] **Оценка:** выбрать метрики под требуемый результат и доступные данные, а не обязательный набор FID/CLIPScore/LPIPS. Для парной ретуши проверять сохранность личности/геометрии/цвета и целевое изменение на фиксированном наборе; FID не заменяет эти проверки. См. `references/eval-debug.md`.

---

## Trade-offs на один экран

| Ручка | Увеличить | Уменьшить |
|---|---|---|
| `num_inference_steps` | ↑ время; качество проверять для данной модели | ↓ время; качество проверять, особенно у distilled моделей |
| `guidance_scale` (CFG) | ↑ adherence к промпту, риск «пережога» | ↑ разнообразие |
| LoRA rank | ↑ выразительность | ↑ параметры, риск overfitting |
| Шаги дообучения | ↑ адаптация | ↑ риск catastrophic forgetting |
| Batch size | ↑ стабильность градиентов | ↑ VRAM |

---

## Мини-рецепты по бюджету GPU

| Бюджет | Что делать |
|---|---|
| **8–16 GB (1 GPU)** | LoRA вместо full FT; grad accumulation; BF16/FP16; xFormers/SDPA; 8-bit оптимизатор |
| **24–48 GB (1–4 GPU)** | LoRA или partial FT; иногда FSDP; большее разрешение |
| **8+ GPU, H100** | Full FT, ZeRO-3/FSDP, float8, WebDataset стриминг, масштабный датапайплайн |

## Gotchas

- Универсальный набор метрик превращал малую парную edit-задачу в ненужный сбор тысяч генераций. Метрика должна проверять конкретное требование; численный балл не заменяет визуальную приёмку.
- Число workers и оптимизации памяти — кандидаты для замера на данном runtime, не обязательная лестница. Больше workers может замедлить Windows-пайплайн или дублировать iterable-данные.

## Troubleshooting

| Симптом | Проверка | Действие |
|---|---|---|
| Оценка не отвечает, исправлена ли ретушь | Связать каждую метрику с требованием и эталонной парой | Заменить нерелевантную метрику проверкой нужного свойства; сохранить визуальный контроль |
| Загрузка данных медленнее после настройки | Сравнить throughput, память и уникальность данных с `num_workers=0` | Оставить измеренно подходящие параметры; шардировать iterable dataset при нескольких workers |

Files in this skill

  • SKILL.md6.9 KB
  • references/architectures.md8 KB
  • references/encoders-data.md11.6 KB
  • references/eval-debug.md14.2 KB
  • references/memory.md8.4 KB
  • references/samplers.md7 KB
  • references/training.md9.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.