Diffusers documentation

Lumina2Transformer2DModel

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Lumina2Transformer2DModel

Модель Diffusion Transformer для 3D-видеоподобных данных была представлена в Lumina Image 2.0 от Alpha-VLLM.

Модель можно загрузить с помощью следующего фрагмента кода.

from diffusers import Lumina2Transformer2DModel

transformer = Lumina2Transformer2DModel.from_pretrained("Alpha-VLLM/Lumina-Image-2.0", subfolder="transformer", dtype=torch.bfloat16)

Lumina2Transformer2DModel

класс diffusers.Lumina2Transformer2DModel

< >

( sample_size: int = 128patch_size: int = 2in_channels: int = 16out_channels: int | None = Nonehidden_size: int = 2304num_layers: int = 26num_refiner_layers: int = 2num_attention_heads: int = 24num_kv_heads: int = 8multiple_of: int = 256ffn_dim_multiplier: float | None = Nonenorm_eps: float = 1e-05scaling_factor: float = 1.0axes_dim_rope: tuple = (32, 32, 32)axes_lens: tuple = (300, 512, 512)cap_feat_dim: int = 1024 )

Параметры

  • sample_size (int) — Ширина латентных изображений. Это значение фиксировано во время обучения, поскольку используется для обучения набора позиционных эмбеддингов.
  • patch_size (int, необязательный, (int, необязательный, по умолчанию 2) — Размер каждого патча на изображении. Этот параметр определяет разрешение патчей, передаваемых в модель.
  • in_channels (int, необязательный, по умолчанию 4) — Количество входных каналов для модели. Как правило, это значение совпадает с количеством каналов во входных изображениях.
  • hidden_size (int, необязательный, по умолчанию 4096) — Размерность скрытых слоёв в модели. Этот параметр определяет ширину скрытых представлений модели.
  • num_layers (int, необязательный, по умолчанию 32) — Количество слоев в модели. Определяет глубину нейронной сети.
  • num_attention_heads (int, необязательный, по умолчанию 32) — Количество головок внимания в каждом слое внимания. Этот параметр определяет, сколько отдельных механизмов внимания используется.
  • num_kv_heads (int, необязательный, по умолчанию 8) — Количество ключевых и значимых головок в механизме внимания, если оно отличается от количества головок внимания. Если значение равно None, по умолчанию используется num_attention_heads.
  • multiple_of (int, необязательный, по умолчанию 256) — Множитель, кратным которому должен быть размер скрытого слоя. Это может помочь оптимизировать работу на определённых аппаратных конфигурациях.
  • ffn_dim_multiplier (float, необязательный) — Множитель размерности полносвязной сети. Если значение равно None, используется значение по умолчанию, определяемое конфигурацией модели.
  • norm_eps (float, необязательный, по умолчанию 1e-5) — Небольшое значение, добавляемое к знаменателю для численной устойчивости в слоях нормализации.
  • scaling_factor (float, необязательный, по умолчанию 1.0) — Коэффициент масштабирования, применяемый к определенным параметрам или слоям модели. Его можно использовать для корректировки общего масштаба операций модели.

Lumina2NextDiT: диффузионная модель с трансформерным каркасом.

forward

< >

( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_attention_mask: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )

Параметры

  • hidden_states (torch.Tensor формы (batch_size, in_channels, height, width)) — Входные hidden_states.
  • timestep (torch.LongTensor) — Используется для указания шага денойзинга.
  • encoder_hidden_states (torch.Tensor формы (batch_size, sequence_len, embed_dims)) — Условные эмбеддинги (эмбеддинги, вычисленные на основе входных условий, таких как промпты), которые следует использовать.
  • encoder_attention_mask (torch.Tensor) — Маска, применяемая к encoder_hidden_states во время внимания.
  • attention_kwargs (dict, необязательный) — Словарь kwargs, который при указании передается в AttentionProcessor, определенный в self.processor в diffusers.models.attention_processor.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.transformer_2d.Transformer2DModelOutput вместо обычного кортежа.

Метод forward модели Lumina2Transformer2DModel.

Transformer2DModelOutput

класс diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Параметры

  • sample (torch.Tensor формы (batch_size, num_channels, height, width) или (batch size, num_vector_embeds - 1, num_latent_pixels), если Transformer2DModel дискретный) — Выходные скрытые состояния, обусловленные входом encoder_hidden_states. Если модель дискретная, возвращает распределения вероятностей для латентных пикселей без шума.

Вывод Transformer2DModel.

Update on GitHub