Buckets:
Гиды
Guiders — это компоненты Modular Diffusers, которые управляют тем, как процесс диффузии направляется во время генерации. Они реализуют различные техники направленного управления для улучшения качества и контроля генерации.
BaseGuidance[[diffusers.BaseGuidance]]
diffusers.BaseGuidance[[diffusers.BaseGuidance]]
diffusers.BaseGuidance(start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Базовый класс, предоставляющий каркас для реализации методов направленного управления.
cleanup_models[[diffusers.BaseGuidance.cleanup_models]]
cleanup_models(denoiser: torch.nn.Module)
Очищает модели для техники guidance после обработки заданной партии данных. Этот метод следует переопределять в дочерних классах для реализации конкретной логики очистки моделей. Он полезен для удаления хуков или других модификаций состояния, внесённых во время prepare_models.
from_pretrained[[diffusers.BaseGuidance.from_pretrained]]
from_pretrained(pretrained_model_name_or_path: str | os.PathLike | None = None, subfolder: str | None = None, return_unused_kwargs = False, **kwargs)
Параметры:
pretrained_model_name_or_path (str или os.PathLike, необязательный) : Может быть одним из: - строка, идентификатор модели (например, google/ddpm-celebahq-256) предобученной модели, размещенной на Hub. - путь к каталогу (например, ./my_model_directory), содержащему конфигурацию guider, сохраненную с помощью save_pretrained().
subfolder (str, необязательный) : Путь к подпапке, содержащей файл модели в составе более крупного репозитория моделей на Hub или локально.
return_unused_kwargs (bool, необязательный, по умолчанию False) : Определяет, следует ли возвращать аргументы kwargs, не использованные Python-классом.
cache_dir (str | os.PathLike, необязательный) : Путь к каталогу, в котором кэшируется конфигурация загруженной предобученной модели, если стандартный кэш не используется.
force_download (bool, необязательный, по умолчанию False) : Указывает, следует ли принудительно (пере)скачивать веса модели и файлы конфигурации, заменяя кэшированные версии, если они существуют.
proxies (dict[str, str], необязательный) : Словарь прокси-серверов для использования по протоколу или конечной точке, например, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Прокси используются при каждом запросе.
output_loading_info(bool, необязательный, по умолчанию False) : Нужно ли также возвращать словарь, содержащий отсутствующие ключи, неожиданные ключи и сообщения об ошибках.
local_files_only(bool, необязательный, по умолчанию False) : Загружать только локальные веса модели и файлы конфигурации или нет. Если установлено в True, модель не будет скачана с Hub.
token (str или bool, необязательный) : Токен, используемый в качестве HTTP bearer-авторизации для удалённых файлов. Если True, используется токен, сгенерированный командой diffusers-cli login (сохранённый в ~/.huggingface).
revision (str, необязательный, по умолчанию "main") : Конкретная версия модели, которую следует использовать. Может быть именем ветки, именем тега, идентификатором коммита или любым другим идентификатором, поддерживаемым Git.
Создайте экземпляр guider из заранее определённого файла конфигурации JSON в локальном каталоге или репозитории Hub.
> Для использования частных или gated models выполните вход с помощью
hf > auth login. Вы также можете активировать специальный режим > "offline-mode", чтобы использовать этот метод в > среде с файрволом.
get_state[[diffusers.BaseGuidance.get_state]]
get_state()
Возвращает текущее состояние техники guidance в виде словаря. Переменные состояния будут включены в метод repr. Возвращает: dict[str, Any]: словарь, содержащий текущие переменные состояния, в том числе:
- step: текущий шаг инференса
- num_inference_steps: Общее количество шагов инференса
- timestep: текущий тензор шага
- count_prepared: количество вызовов prepare_models
- enabled: Включена ли подсказка
- num_conditions: количество условий
new[[diffusers.BaseGuidance.new]]
new(**kwargs)
Параметры:
- **kwargs : Параметры конфигурации для переопределения в новом экземпляре. Если параметры kwargs не указаны, возвращается точная копия с той же конфигурацией.
Возвращает:
Новый экземпляр guider с той же (или обновленной) конфигурацией.
Создаёт копию этого экземпляра guider, при необходимости с изменёнными параметрами конфигурации.
Пример:
# Create a CFG guider
guider = ClassifierFreeGuidance(guidance_scale=3.5)
# Create an exact copy
same_guider = guider.new()
# Create a copy with different start step, keeping other config the same
new_guider = guider.new(guidance_scale=5)
prepare_models[[diffusers.BaseGuidance.prepare_models]]
prepare_models(denoiser: torch.nn.Module)
Готовит модели для техники guidance на заданной партии данных. Этот метод следует переопределять в подклассах для реализации конкретной логики подготовки модели.
save_pretrained[[diffusers.BaseGuidance.save_pretrained]]
save_pretrained(save_directory: str | os.PathLike, push_to_hub: bool = False, **kwargs)
Параметры:
save_directory (str или os.PathLike) : Каталог, в котором будет сохранён файл конфигурации JSON (будет создан, если не существует).
push_to_hub (bool, необязательный, по умолчанию False) : Указывает, следует ли отправлять модель на Hugging Face Hub после её сохранения. Репозиторий, в который нужно отправить модель, можно указать с помощью repo_id (по умолчанию используется имя save_directory в вашем пространстве имён).
kwargs (dict[str, Any], необязательный) : Дополнительные именованные аргументы, передаваемые в метод push_to_hub().
Сохраните объект конфигурации guider в каталог, чтобы его можно было загрузить повторно с помощью метода класса from_pretrained().
ClassifierFreeGuidance[[diffusers.ClassifierFreeGuidance]]
diffusers.ClassifierFreeGuidance[[diffusers.ClassifierFreeGuidance]]
diffusers.ClassifierFreeGuidance(guidance_scale: float = 7.5, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : масштаб CFG, применяемый этим guider на этапе постобработки. Более высокие значения означают более сильное условие по промпту, но могут снизить качество. Типичный диапазон: 1.0-20.0.
guidance_rescale (float, defaults to 0.0) : Rescaling factor to prevent overexposure from high guidance scales. Based on Common Diffusion Noise Schedules and Sample Steps are Flawed. Range: 0.0 (no rescaling) to 1.0 (full rescaling).
use_original_formulation (bool, по умолчанию False) : Если True, используется исходная формулировка CFG из статьи. Если False (по умолчанию), используется собственная формулировка diffusers из статьи Imagen.
start (float, по умолчанию 0.0) : Доля шагов денойзинга (0.0–1.0), после которой включается CFG. Используйте значение > 0.0, чтобы отключить CFG на ранних шагах денойзинга.
stop (float, по умолчанию 1.0) : Доля шагов денойзинга (0.0–1.0), после которой CFG отключается. Используйте значение < 1.0, чтобы отключить CFG на поздних шагах денойзинга.
enabled (bool, по умолчанию True) : Включён ли CFG. Установите False, чтобы полностью отключить CFG (используются только условные предсказания).
Реализует Classifier-Free Guidance (CFG) для диффузионных моделей.
Ссылка: https://huggingface.co/papers/2207.12598
CFG повышает качество генерации и соответствие промпту, обучая модели совместно на условных и безусловных данных, а затем комбинируя предсказания на этапе инференса. Это позволяет находить баланс между качеством (высокое значение guidance) и разнообразием (низкое значение guidance).
Две формулировки CFG:
Исходная формулировка (из статьи):
x_pred = x_cond + guidance_scale * (x_cond - x_uncond)Увеличивает расстояние между условными и безусловными предсказаниями.
Формулировка, нативная для Diffusers (по умолчанию, из статьи Imagen):
x_pred = x_uncond + guidance_scale * (x_cond - x_uncond)Сдвигает безусловные предсказания в сторону условных, фактически подавляя негативные признаки (например, «плохое качество», «водяные знаки»). Теоретически эквивалентно, но более интуитивно понятно.
Используйте use_original_formulation=True, чтобы переключиться на исходную формулировку.
ClassifierFreeZeroStarGuidance[[diffusers.ClassifierFreeZeroStarGuidance]]
diffusers.ClassifierFreeZeroStarGuidance[[diffusers.ClassifierFreeZeroStarGuidance]]
diffusers.ClassifierFreeZeroStarGuidance(guidance_scale: float = 7.5, zero_init_steps: int = 1, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
zero_init_steps (int, по умолчанию 1) : Количество шагов инференса, для которых предсказания шума обнуляются (см. раздел 4.2).
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.01) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 0.2) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
Беспараметрический Zero* (CFG-Zero*): https://huggingface.co/papers/2503.18886
Это реализация техники Classifier-Free Zero* guidance, являющейся вариантом classifier-free guidance. Она предполагает нулевую инициализацию предсказаний шума для первых нескольких шагов диффузионного процесса, а также вводит оптимальный коэффициент масштабирования для предсказаний шума, что может помочь в улучшении качества генерируемых изображений.
Авторы статьи предлагают устанавливать нулевую инициализацию на первых 4% шагов инференса.
SkipLayerGuidance[[diffusers.SkipLayerGuidance]]
diffusers.SkipLayerGuidance[[diffusers.SkipLayerGuidance]]
diffusers.SkipLayerGuidance(guidance_scale: float = 7.5, skip_layer_guidance_scale: float = 2.8, skip_layer_guidance_start: float = 0.01, skip_layer_guidance_stop: float = 0.2, skip_layer_guidance_layers: int | list[int] | None = None, skip_layer_config: LayerSkipConfig | list[LayerSkipConfig] | dict[str, Any] = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
skip_layer_guidance_scale (float, по умолчанию 2.8) : Параметр масштаба для skip layer guidance. При более высоких значениях могут улучшаться анатомия и структурная согласованность, однако это также может привести к переэкспозиции и насыщению.
skip_layer_guidance_start (float, по умолчанию 0.01) : Доля от общего числа шагов денойзинга, после которой начинается skip layer guidance.
skip_layer_guidance_stop (float, по умолчанию 0.2) : Доля от общего числа шагов денойзинга, после которой прекращается применение skip layer guidance.
skip_layer_guidance_layers (int или list[int], необязательный) : Индексы слоёв, к которым применяется skip layer guidance. Может быть одним целым числом или списком целых чисел. Если не указано, необходимо предоставить skip_layer_config. Рекомендуемые значения — [7, 8, 9] для Stable Diffusion 3.5 Medium.
skip_layer_config (LayerSkipConfig или list[LayerSkipConfig], необязательно) : Конфигурация для направляющих пропускных слоёв. Может быть одним LayerSkipConfig или списком LayerSkipConfig. Если не указано, необходимо указать skip_layer_guidance_layers.
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.01) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 0.2) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
Skip Layer Guidance (SLG): https://github.com/Stability-AI/sd3.5
Пространственно-временное управление (STG): https://huggingface.co/papers/2411.18664
SLG был предложен StabilityAI для улучшения структуры и анатомической согласованности генерируемых изображений. Метод работает за счёт пропуска прямого прохода указанных блоков трансформера на этапе денойзинга для дополнительной условной партии данных, помимо уже используемых в CFG ([~guiders.classifier_free_guidance.ClassifierFreeGuidance]) условной и безусловной партий, а затем масштабирует и сдвигает предсказания CFG на основе разницы между предсказаниями условного прохода без пропусков и условного прохода с пропусками.
Интуиция, стоящая за SLG, может быть описана как смещение оценок распределения, предсказанных CFG, в сторону, противоположную худшим версиям оценок условного распределения (поскольку пропуск слоёв эквивалентен использованию худшей версии модели для условного предсказания).
STG представляет собой улучшение и продолжение работы, объединяющее идеи из SLG, PAG и аналогичных методов для повышения качества генерации в диффузионных моделях видео.
Дополнительная литература:
Значения для skip_layer_guidance_scale, skip_layer_guidance_start и skip_layer_guidance_stop по умолчанию соответствуют рекомендациям StabilityAI для Stable Diffusion 3.5 Medium.
SmoothedEnergyGuidance[[diffusers.SmoothedEnergyGuidance]]
diffusers.SmoothedEnergyGuidance[[diffusers.SmoothedEnergyGuidance]]
diffusers.SmoothedEnergyGuidance(guidance_scale: float = 7.5, seg_guidance_scale: float = 2.8, seg_blur_sigma: float = 9999999.0, seg_blur_threshold_inf: float = 9999.0, seg_guidance_start: float = 0.0, seg_guidance_stop: float = 1.0, seg_guidance_layers: int | list[int] | None = None, seg_guidance_config: SmoothedEnergyGuidanceConfig | list[SmoothedEnergyGuidanceConfig] = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
seg_guidance_scale (float, по умолчанию 3.0) : Параметр масштаба для сглаженного энергетического руководства. При более высоких значениях могут улучшаться анатомическая и структурная согласованность, однако это также может привести к переэкспозиции и насыщению.
seg_blur_sigma (float, по умолчанию 9999999.0) : Степень размытия весов внимания. Установка значения, превышающего 9999.0, приводит к бесконечному размытию, что означает равномерные запросы. Экспериментально доказано, что экспоненциальное управление этим параметром эффективно.
seg_blur_threshold_inf (float, по умолчанию 9999.0) : Порог, выше которого размытие считается бесконечным.
seg_guidance_start (float, по умолчанию 0.0) : Доля от общего числа шагов денойзинга, после которой начинается сглаженное энергетическое руководство.
seg_guidance_stop (float, по умолчанию 1.0) : Доля от общего числа шагов денойзинга, после которой останавливается сглаженное энергетическое руководство.
seg_guidance_layers (int или list[int], необязательный) : Индексы слоёв, к которым применяется сглаженное энергетическое руководство. Может быть одним целым числом или списком целых чисел. Если не указано, необходимо предоставить seg_guidance_config. Рекомендуемые значения — [7, 8, 9] для Stable Diffusion 3.5 Medium.
seg_guidance_config (SmoothedEnergyGuidanceConfig или list[SmoothedEnergyGuidanceConfig], необязательно) : Конфигурация для руководства по слоям сглаженной энергии. Может быть одним SmoothedEnergyGuidanceConfig или списком SmoothedEnergyGuidanceConfig. Если не указано, необходимо указать seg_guidance_layers.
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.01) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 0.2) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
Smoothed Energy Guidance (SEG): https://huggingface.co/papers/2408.00760
В настоящее время SEG поддерживается только как экспериментальная прототипная функция, поэтому реализация может быть изменена в будущем без предупреждения и без гарантии воспроизводимости. Данная реализация предполагает:
- Сгенерированные изображения имеют квадратную форму (высота == ширина)
- Модель не объединяет различные модальности (например, латентные потоки текста и изображений не объединяются, как в Flux).
PerturbedAttentionGuidance[[diffusers.PerturbedAttentionGuidance]]
diffusers.PerturbedAttentionGuidance[[diffusers.PerturbedAttentionGuidance]]
diffusers.PerturbedAttentionGuidance(guidance_scale: float = 7.5, perturbed_guidance_scale: float = 2.8, perturbed_guidance_start: float = 0.01, perturbed_guidance_stop: float = 0.2, perturbed_guidance_layers: int | list[int] | None = None, perturbed_guidance_config: LayerSkipConfig | list[LayerSkipConfig] | dict[str, Any] = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
perturbed_guidance_scale (float, по умолчанию 2.8) : Параметр масштаба для направленного внимания с возмущениями.
perturbed_guidance_start (float, по умолчанию 0.01) : Доля от общего числа шагов денойзинга, после которой начинается направляющее внимание с возмущениями.
perturbed_guidance_stop (float, по умолчанию 0.2) : Доля от общего числа шагов денойзинга, после которой прекращается применение направленного внимания с возмущениями.
perturbed_guidance_layers (int или list[int], необязательный) : Индексы слоев, к которым следует применять направляющее внимание с возмущениями. Может быть одним целым числом или списком целых чисел. Если не указано, необходимо указать perturbed_guidance_config.
perturbed_guidance_config (LayerSkipConfig или list[LayerSkipConfig], необязательно) : Конфигурация для направленного внимания с возмущениями. Может быть одним LayerSkipConfig или списком LayerSkipConfig. Если не указано, необходимо указать perturbed_guidance_layers.
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.01) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 0.2) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
Perturbed Attention Guidance (PAG): https://huggingface.co/papers/2403.17377
Интуиция, стоящая за PAG, заключается в том, чтобы сдвигать оценки предсказанного распределения CFG ещё дальше от худших версий оценок условного распределения. PAG стал одной из первых техник, введших идею использования худшей версии обученной модели для более эффективного управления самим процессом удаления шума. Метод возмущает оценки внимания в латентном потоке, заменяя матрицу оценок единичной матрицей для избранных слоёв.
Дополнительная литература:
PAG реализован по аналогии с SkipLayerGuidance из-за совпадения параметров конфигурации и деталей реализации.
AdaptiveProjectedGuidance[[diffusers.AdaptiveProjectedGuidance]]
diffusers.AdaptiveProjectedGuidance[[diffusers.AdaptiveProjectedGuidance]]
diffusers.AdaptiveProjectedGuidance(guidance_scale: float = 7.5, adaptive_projected_guidance_momentum: float | None = None, adaptive_projected_guidance_rescale: float = 15.0, adaptive_projected_guidance_norm_dim: int | tuple[int, ...] | None = None, eta: float = 1.0, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
adaptive_projected_guidance_momentum (float, по умолчанию None) : Параметр импульса для адаптивного проективного руководства. Отключается, если установлено значение None.
adaptive_projected_guidance_rescale (float, по умолчанию 15.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и исправления
adaptive_projected_guidance_norm_dim (int или tuple[int], необязательный) : Размерность (или размерности), по которым вычисляется норма и проекция APG. Если не указано, используются все размерности, кроме batch, что сохраняет исходное поведение.
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.0) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 1.0) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
Адаптивное проекционное наведение (APG): https://huggingface.co/papers/2410.02416
AutoGuidance[[diffusers.AutoGuidance]]
diffusers.AutoGuidance[[diffusers.AutoGuidance]]
diffusers.AutoGuidance(guidance_scale: float = 7.5, auto_guidance_layers: int | list[int] | None = None, auto_guidance_config: LayerSkipConfig | list[LayerSkipConfig] | dict[str, Any] = None, dropout: float | None = None, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
auto_guidance_layers (int или list[int], необязательный) : Индексы слоев, к которым применяется skip layer guidance. Может быть одним целым числом или списком целых чисел. Если не указано, необходимо предоставить skip_layer_config.
auto_guidance_config (LayerSkipConfig или list[LayerSkipConfig], необязательно) : Конфигурация для направляющих пропускных слоёв. Может быть одним LayerSkipConfig или списком LayerSkipConfig. Если не указано, необходимо указать skip_layer_guidance_layers.
dropout (float, optional) : Вероятность dropout для autoguidance на включенных skip-слоях (либо с auto_guidance_layers, либо с auto_guidance_config). Если не указано, вероятность dropout будет установлена в 1.0.
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.0) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 1.0) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
AutoGuidance: https://huggingface.co/papers/2406.02507
TangentialClassifierFreeGuidance[[diffusers.TangentialClassifierFreeGuidance]]
diffusers.TangentialClassifierFreeGuidance[[diffusers.TangentialClassifierFreeGuidance]]
diffusers.TangentialClassifierFreeGuidance(guidance_scale: float = 7.5, guidance_rescale: float = 0.0, use_original_formulation: bool = False, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 7.5) : Параметр масштаба для classifier-free guidance. Более высокие значения приводят к более сильному обусловливанию текстовым промптом, тогда как более низкие значения предоставляют больше свободы при генерации. Высокие значения могут привести к насыщению и ухудшению качества изображения.
guidance_rescale (float, по умолчанию 0.0) : Коэффициент масштабирования, применяемый к предсказаниям шума. Используется для улучшения качества изображения и устранения переэкспозиции. Основано на разделе 3.4 статьи Общие расписания шума диффузии и шаги выборки имеют недостатки.
use_original_formulation (bool, по умолчанию False) : Использовать ли исходную формулировку classifier-free guidance, предложенную в статье. По умолчанию используется нативная для diffusers реализация, которая давно присутствует в кодовой базе. Подробнее см. [~guiders.classifier_free_guidance.ClassifierFreeGuidance].
start (float, по умолчанию 0.0) : Доля от общего числа шагов денойзинга, после которой начинается применение гайдинга.
stop (float, по умолчанию 1.0) : Доля от общего числа шагов денойзинга, после которой прекращается применение гайдинга.
Tangential Classifier Free Guidance (TCFG): https://huggingface.co/papers/2503.18137
LTX2Guidance[[diffusers.LTX2Guidance]]
diffusers.LTX2Guidance[[diffusers.LTX2Guidance]]
diffusers.LTX2Guidance(guidance_scale: float = 1.0, stg_scale: float = 0.0, modality_scale: float = 1.0, guidance_rescale: float = 0.0, spatio_temporal_guidance_blocks: list[int] | None = None, start: float = 0.0, stop: float = 1.0, enabled: bool = True)
Параметры:
guidance_scale (float, по умолчанию 1.0) : масштаб CFG для этой модальности. При значении 1.0 проход CFG полностью пропускается.
stg_scale (float, по умолчанию 0.0) : Пространственно-временной масштаб управления для этой модальности. При значении 0.0 проход STG полностью пропускается.
modality_scale (float, по умолчанию 1.0) : масштаб направляющего сигнала для изоляции модальности для данной модальности. При значении 1.0 этот проход полностью пропускается.
guidance_rescale (float, defaults to 0.0) : Rescaling factor to prevent overexposure from high guidance scales. Based on Common Diffusion Noise Schedules and Sample Steps are Flawed. Range: 0.0 (no rescaling) to 1.0 (full rescaling).
spatio_temporal_guidance_blocks (list[int], optional) : Блоки трансформера, которые следует возмущать на проходе STG. Способ использования значения определяется блоком денойзера: LTX-2 возмущает целые блоки в одном прямом проходе, который обслуживает все модальности, поэтому читает это значение только из видео-гайдера — установка его в аудио-гайдере не имеет эффекта, а этот гайдер присоединяется к тому же прямому проходу STG через собственный stg_scale.
start (float, по умолчанию 0.0) : Доля шагов денойзинга (0.0–1.0), после которой начинается применение гайдинга.
stop (float, по умолчанию 1.0) : Доля шагов денойзинга (0.0–1.0), после которой прекращается применение guidance.
enabled (bool, по умолчанию True) : Применяет ли этот guider вообще какое-либо руководство. Если False, выполняется только условный проход.
Одномодалный guider для LTX-2.X. Сочетает до трёх терминов через дельта-формулировку:
- classifier-free guidance (CFG),
- пространственно-временное управление (STG), дополнительный проход с набором блоков трансформера, подвергнутых возмущению,
- руководство по изоляции модальности, дополнительный проход с отключенным кросс-вниманием A2V/V2A.
Один экземпляр управляет одной модальностью, поэтому мультимодальная контрольная точка содержит несколько: LTX-2.X связывает видео-guider с audio_guider, каждый из которых хранит собственные масштабы. Окончательная оценка guidance вычисляется в том пространстве, которое передаёт вызывающая сторона — денуайзер LTX-2 преобразует velocity->x0 перед вызовом этого метода и обратно после него, поэтому forward работает с предсказаниями x0.
В отличие от SkipLayerGuidance, который применяет свои возмущения с помощью хуков, LTX2Guidance ожидает, что его не-CFG возмущения будут настраиваться через аргументы forward-функции модели (spatio_temporal_guidance_blocks и isolate_modalities в LTX2VideoTransformer3DModel). Блок денуизера, выполняющий вызов, отвечает за установку этих идентификаторов для каждого прохода; пример использования см. в LTX2LoopDenoiser.
Xet Storage Details
- Size:
- 51.8 kB
- Xet hash:
- 9516b547f979d0fe3a19163ac23dce68ab1b525376af759f4339c25384349a80
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.