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

class 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) 维度对潜在输入进行分块(patchify)时使用的块大小。
  • 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) — 双流 Transformer 块的数量。
  • rope_dim_list (list[int],默认为 [16, 56, 56]) — 沿 (t, h, w) 方向的 3D 旋转位置嵌入的维度。
  • rope_type (str,默认为 "rope") — 旋转位置嵌入的类型。
  • theta (int,默认为 256) — 旋转嵌入的基础频率。

用于多图像编辑的 JoyImage Edit Plus Transformer。

采用 patchify+padding 方法,将每张参考图像和目标噪声独立进行 patchify 处理,并拼接为一个扁平的 patch 序列。支持可变分辨率的参考图像。

输入格式:[B, max_patches, C, pt, ph, pw](6D 填充后的 patch)。

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] - 文本 token 的注意力掩码。
  • shape_list — 每个样本中各组件(目标 + 参考)的 (t, h, w) 元组列表。
  • return_dict — 是否返回字典或元组。

Transformer2DModelOutput

类 diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

参数

  • sample(形状为 (batch_size, num_channels, height, width) 的 torch.Tensor,或者如果 Transformer2DModel 是离散的,则为 (batch size, num_vector_embeds - 1, num_latent_pixels))— 以 encoder_hidden_states 输入为条件的隐藏状态输出。如果是离散的,则返回未加噪潜在像素的概率分布。

Transformer2DModel 的输出。

Update on GitHub