Diffusers 文档

FluxTransformer2DModel

Hugging Face's logo
加入 Hugging Face 社区

并获得增强文档体验

开始使用

FluxTransformer2DModel

来自 Flux 的用于图像类数据的 Transformer 模型。

FluxTransformer2DModel

class diffusers.FluxTransformer2DModel

< >

( patch_size: int = 1 in_channels: int = 64 num_layers: int = 19 num_single_layers: int = 38 attention_head_dim: int = 128 num_attention_heads: int = 24 joint_attention_dim: int = 4096 pooled_projection_dim: int = 768 guidance_embeds: bool = False axes_dims_rope: List = [16, 56, 56] )

参数

  • patch_size (int) — 将输入数据转换为小块的块大小。
  • in_channels (int, 可选, 默认值 16) — 输入通道的数量。
  • num_layers (int, 可选, 默认值 18) — 要使用的 MMDiT 块层数。
  • num_single_layers (int, 可选, 默认值 18) — 要使用的单个 DiT 块层数。
  • attention_head_dim (int, 可选, 默认值 64) — 每个头部的通道数量。
  • num_attention_heads (int, 可选, 默认值 18) — 用于多头注意力的头部数量。
  • joint_attention_dim (int, 可选) — 要使用的 encoder_hidden_states 维度数量。
  • pooled_projection_dim (int) — 投影 pooled_projections 时要使用的维度数量。
  • guidance_embeds (bool, 默认值 False) — 是否使用引导嵌入。

Flux 中介绍的 Transformer 模型。

参考: https://blackforestlabs.ai/announcing-black-forest-labs/

forward

  • hidden_states (torch.FloatTensor 形状为 (批次大小, 通道, 高度, 宽度)) — 输入 hidden_states.
  • encoder_hidden_states (torch.FloatTensor 形状为 (批次大小, 序列长度, 嵌入维度)) — 条件嵌入(从输入条件(如提示)计算的嵌入)。
  • pooled_projections (torch.FloatTensor 形状为 (批次大小, 投影维度)) — 从输入条件的嵌入中投影出的嵌入。
  • timestep ( torch.LongTensor) — 用于指示去噪步骤。 block_controlnet_hidden_states — (list of torch.Tensor): 一系列张量,如果指定,则添加到变换器块的残差中。
  • joint_attention_kwargs (dict, 可选) — 如果指定,则传递给 AttentionProcessor 的关键字参数字典,如 diffusers.models.attention_processor 中的 self.processor 所定义。
  • return_dict (bool, 可选, 默认值为 True) — 是否返回 ~models.transformer_2d.Transformer2DModelOutput 而不是普通元组。

The FluxTransformer2DModel 正向传播方法。

< > 在 GitHub 上更新