Buckets:

hf-doc-build/doc / diffusers /main /ru /quicktour.md
mishig's picture
|
download
raw
9.54 kB
# Быстрый старт
Diffusers — это библиотека для разработчиков и исследователей, которая предоставляет простой API для вывода, генерирующего изображения, видео и аудио, а также строительные блоки для реализации новых рабочих процессов.
Diffusers предоставляет множество оптимизаций из коробки, что позволяет загружать и запускать большие модели на конфигурациях с ограниченной памятью или ускорять инференс.
В этом быстром руководстве вы познакомитесь с Diffusers и начнёте генерировать изображения в кратчайшие сроки.
> [!TIP]
> Прежде чем начать, убедитесь, что у вас есть [аккаунт](https://huggingface.co/join) Hugging Face для использования моделей с ограниченным доступом, таких как [Flux](https://huggingface.co/black-forest-labs/FLUX.1-dev). Хотите создать собственный пайплайн? Ознакомьтесь с [быстрым стартом Modular Diffusers](./modular_diffusers/quickstart) и [обзором](./modular_diffusers/overview).
Следуйте [инструкции по установке](./installation), чтобы установить Diffusers, если он ещё не установлен.
## Промпт агента
Вставьте это в вашего агента для программирования, чтобы настроить Diffusers для инференса.
```text
Help me get set up with Hugging Face Diffusers for inference.
1. Install Diffusers for my environment with `uv pip install "diffusers[torch]"`.
2. If I need gated Hub models, help me authenticate to the Hugging Face Hub.
3. Install Diffusers coding agent skills with `diffusers-cli skills add diffusers-cli`. Pass `--cursor`, `--claude`, or `--codex` if auto-detect fails. Optionally pass `--all` to install every skill in the registry.
4. Run a first text-to-image with DiffusionPipeline or `diffusers-cli run`, using a small or current Quickstart model and the right `device_map` for my machine.
5. Ask what I want next and point me at the matching docs.
```
## DiffusionPipeline
[DiffusionPipeline](/docs/diffusers/main/ru/api/pipelines/overview#diffusers.DiffusionPipeline) packages the pieces of a diffusion model (text encoder, scheduler, UNet or DiT, and VAE) into one class for inference. Load with [from_pretrained()](/docs/diffusers/main/ru/api/pipelines/overview#diffusers.DiffusionPipeline.from_pretrained), then call the pipeline.
Аргументы `__call__()`, такие как `num_inference_steps`, влияют на качество и скорость. Подробности о загрузке и комбинации компонентов см. в разделе [Загрузка пайплайнов](./using-diffusers/loading). Чтобы заменить планировщик, см. раздел [Планировщики](./using-diffusers/schedulers).
Приведённые ниже примеры используют значения аргументов по умолчанию.
Используйте `.images[0]` для доступа к сгенерированному изображению.
```py
import torch
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image", dtype=torch.bfloat16, device_map="cuda" # or "mps", "xpu", "cpu"
)
prompt = """
cinematic film still of a cat sipping a margarita in a pool in Palm Springs, California
highly detailed, high budget hollywood movie, cinemascope, moody, epic, gorgeous, film grain
"""
pipeline(prompt).images[0]
```
Используйте `.frames[0]` для доступа к сгенерированному видео и [export_to_video()](/docs/diffusers/main/ru/api/utilities#diffusers.utils.export_to_video) для сохранения файла.
```py
import torch
from diffusers import AutoencoderKLWan, DiffusionPipeline
from diffusers.utils import export_to_video
vae = AutoencoderKLWan.from_pretrained(
"Wan-AI/Wan2.2-T2V-A14B-Diffusers",
subfolder="vae",
dtype=torch.float32
)
pipeline = DiffusionPipeline.from_pretrained(
"Wan-AI/Wan2.2-T2V-A14B-Diffusers",
vae=vae,
dtype=torch.bfloat16,
device_map="cuda" # or "mps", "xpu", "cpu"
)
prompt = """
Cinematic video of a sleek cat lounging on a colorful inflatable in a crystal-clear turquoise pool in Palm Springs,
sipping a salt-rimmed margarita through a straw. Golden-hour sunlight glows over mid-century modern homes and swaying palms.
Shot in rich Sony a7S III: with moody, glamorous color grading, subtle lens flares, and soft vintage film grain.
Ripples shimmer as a warm desert breeze stirs the water, blending luxury and playful charm in an epic, gorgeously composed frame.
"""
video = pipeline(prompt=prompt, num_frames=81, num_inference_steps=40).frames[0]
export_to_video(video, "output.mp4", fps=16)
```
## LoRA
[LoRA](./tutorials/using_peft_for_inference)-адаптеры добавляют небольшой чекпоинт стиля или объекта поверх базового пайплайна. Загрузите один из них с помощью [load_lora_weights()](/docs/diffusers/main/ru/api/loaders/lora#diffusers.loaders.QwenImageLoraLoaderMixin.load_lora_weights). Некоторые LoRA требуют триггерную фразу. Проверьте карточку модели LoRA.
```py
import torch
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image", dtype=torch.bfloat16, device_map="cuda" # or "mps", "xpu", "cpu"
)
pipeline.load_lora_weights(
"threecrowco/VolkClipartQwen",
weight_name="pytorch_lora_weights.safetensors",
)
prompt = """
Volk clipart style drawing of a cat sipping a margarita in a pool in Palm Springs, California, flat colors, bold outlines, simple shapes
"""
pipeline(prompt).images[0]
```
## Квантование и оптимизации
Крупные модели часто требуют меньше памяти или большей скорости. Используйте [квантование](./quantization/overview), чтобы уменьшить размер весов в памяти, и [compile_repeated_blocks()](/docs/diffusers/main/ru/api/models/overview#diffusers.ModelMixin.compile_repeated_blocks), чтобы ускорить последующие генерации. Для [выгрузки модели](./optimization/memory#model-offloading) и других вариантов см. [Оптимизация и масштабирование](./optimization/overview).
Чтобы использовать меньше памяти, загружайте модель в 4-битном формате с помощью bitsandbytes.
```py
import torch
from diffusers import DiffusionPipeline
from diffusers.quantizers import PipelineQuantizationConfig
quant_config = PipelineQuantizationConfig(
quant_backend="bitsandbytes_4bit",
quant_kwargs={"load_in_4bit": True, "bnb_4bit_quant_type": "nf4", "bnb_4bit_compute_dtype": torch.bfloat16},
components_to_quantize=["transformer", "text_encoder"],
)
pipeline = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image",
dtype=torch.bfloat16,
quantization_config=quant_config,
device_map="cuda" # or "mps", "xpu", "cpu"
)
prompt = """
cinematic film still of a cat sipping a margarita in a pool in Palm Springs, California
highly detailed, high budget hollywood movie, cinemascope, moody, epic, gorgeous, film grain
"""
pipeline(prompt).images[0]
```
Для ускорения последующих запусков скомпилируйте повторяющиеся блоки трансформера. Первый вызов generate после компиляции является холодным стартом и выполняется медленно. Последующие вызовы generate работают быстрее.
```py
import torch
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image", dtype=torch.bfloat16, device_map="cuda" # or "mps", "xpu", "cpu"
)
pipeline.transformer.compile_repeated_blocks(fullgraph=True)
prompt = """
cinematic film still of a cat sipping a margarita in a pool in Palm Springs, California
highly detailed, high budget hollywood movie, cinemascope, moody, epic, gorgeous, film grain
"""
pipeline(prompt).images[0]
```
## Дальнейшие шаги
- [Вывод](./using-diffusers/loading) — конвейеры, промпты и адаптеры
- [Оптимизация и масштабирование](./optimization/overview) — память, скорость, квантование и обслуживание
- [Modular Diffusers](./modular_diffusers/overview) — настраиваемые блоки и пользовательские конвейеры
- [Обучение и дообучение](./training/overview) — скрипты обучения и адаптеры
- [CLI](./using-diffusers/cli) — генерация из командной строки

Xet Storage Details

Size:
9.54 kB
·
Xet hash:
c3aae28ab3022fd7d371d25df5e3b44af7548b605a74e2f9bd8980800430ac2a

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.