Diffusers documentation

JoyImageEditPlusTransformer3DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

JoyImageEditPlusTransformer3DModel

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

from diffusers import JoyImageEditPlusTransformer3DModel

transformer = JoyImageEditPlusTransformer3DModel.from_pretrained("jdopensource/JoyAI-Image-Edit-Plus-Diffusers", subfolder="transformer", dtype=torch.bfloat16)

JoyImageEditPlusTransformer3DModel

класс diffusers.JoyImageEditPlusTransformer3DModel

< >

( patch_size: list[int] = [1, 2, 2]in_channels: int = 16out_channels: int | None = Nonehidden_size: int = 3072num_attention_heads: int = 24text_dim: int = 4096mlp_width_ratio: float = 4.0num_layers: int = 20rope_dim_list: list[int] = [16, 56, 56]rope_type: str = 'rope'theta: int = 256 )

Параметры

  • patch_size (list, по умолчанию [1, 2, 2]) — Размер патча для разбиения латентного входа на патчи вдоль измерений (t, h, w).
  • in_channels (int, по умолчанию 16) — Количество каналов во входном латентном представлении.
  • out_channels (int, необязательный, по умолчанию None) — Количество каналов на выходе. Если не указано, по умолчанию равно in_channels.
  • hidden_size (int, по умолчанию 3072) — Размерность скрытых представлений.
  • num_attention_heads (int, по умолчанию 24) — Количество головок внимания.
  • text_dim (int, по умолчанию 4096) — Размерность выходных данных текстового энкодера.
  • mlp_width_ratio (float, по умолчанию 4.0) — Соотношение скрытого размера MLP к hidden_size.
  • num_layers (int, по умолчанию 20) — Количество блоков двойного потока трансформера.
  • rope_dim_list (list[int], по умолчанию [16, 56, 56]) — Размерности для 3D-вращательных позиционных эмбеддингов вдоль (t, h, w).
  • rope_type (str, по умолчанию "rope") — Тип вращательного позиционного кодирования.
  • theta (int, по умолчанию 256) — Базовая частота для вращательных эмбеддингов.

JoyImage Edit Plus Transformer для редактирования нескольких изображений.

Использует подход patchify+padding, при котором каждое эталонное изображение и целевой шум независимо преобразуются в патчи и конкатенируются в плоскую последовательность патчей. Поддерживает эталонные изображения с переменным разрешением.

Формат входных данных: [B, max_patches, C, pt, ph, pw] (6D-патчи с дополнением).

forward

< >

( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_hidden_states_mask: typing.Optional[torch.Tensor] = Noneshape_list: list[list[tuple[int, int, int]]] = Nonereturn_dict: bool = True )

Параметры

  • hidden_states — [B, max_patches, C, pt, ph, pw] - вход в латентном пространстве, разбитый на патчи.
  • timestep — [B] - шаг диффузии.
  • encoder_hidden_states — [B, L, D] - выходные данные текстового энкодера.
  • encoder_hidden_states_mask — [B, L] - маска внимания для текстовых токенов.
  • shape_list — список кортежей (t, h, w) для каждого компонента (target + references) по каждому образцу.
  • return_dict — Возвращать словарь или кортеж.

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