Diffusers documentation
Устаревшие контрольные точки
Устаревшие контрольные точки
Эти настройки в основном применяются к более ранним чекпоинтам семейства Stable Diffusion.
Проверщик безопасности
Diffusers предоставляет проверщик безопасности для старых контрольных точек Stable Diffusion, чтобы предотвратить генерацию вредоносного контента. Он проверяет сгенерированный вывод на соответствие набору заранее заданных вредоносных концепций. Более новые модели, такие как Qwen-Image, не имеют такого проверщика.
Если вы хотите отключить проверку безопасности, передайте safety_checker=None в from_pretrained(), как показано ниже.
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"stable-diffusion-v1-5/stable-diffusion-v1-5", safety_checker=None
)
"""
You have disabled the safety checker for <class 'diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline'> by passing `safety_checker=None`. Ensure that you abide by the conditions of the Stable Diffusion license and do not expose unfiltered results in services or applications open to the public. Both the diffusers team and Hugging Face strongly recommend keeping the safety filter enabled in all public-facing circumstances, disabling it only for use cases that involve analyzing network behavior or auditing its results. For more information, please have a look at https://github.com/huggingface/diffusers/pull/254 .
"""Масштабирование расписаний
Денойзинг начинается с чистого шума, поэтому отношение сигнал/шум (SNR) изначально равно нулю. Некоторые модели на самом деле не начинают с чистого шума, из-за чего трудно генерировать яркие и тёмные крайности.
Обучите собственную модель с
v_prediction, добавив флаг--prediction_type="v_prediction"в скрипт обучения. Также можно найти существующие модели, обученные сv_prediction.
Для модели v_prediction включите эти аргументы планировщика.
- Установите
rescale_betas_zero_snr=True, чтобы пересчитать расписание шума для последнего шага с точно нулевым SNR - Установите
timestep_spacing="trailing", чтобы принудительно выполнять выборку из последнего временного шага с чистым шумом
from diffusers import DiffusionPipeline, DDIMScheduler
pipeline = DiffusionPipeline.from_pretrained("ptx0/pseudo-journey-v2", device_map="cuda") # or "mps", "xpu", "cpu"
pipeline.scheduler = DDIMScheduler.from_config(
pipeline.scheduler.config, rescale_betas_zero_snr=True, timestep_spacing="trailing"
)Установите guidance_rescale в пайплайне, чтобы избежать пересвеченных изображений. Более низкое значение повышает яркость, но некоторые детали могут выглядеть вымытыми.
prompt = """
cinematic photo of a snowy mountain at night with the northern lights aurora borealis
overhead, 35mm photograph, film, professional, 4k, highly detailed
"""
image = pipeline(prompt, guidance_rescale=0.7).images[0]