Diffusers documentation

HeliosTransformer3DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

HeliosTransformer3DModel

Mô hình Transformer khuếch tán tự hồi quy thời gian thực 14B (hỗ trợ T2V, I2V và V2V) cho dữ liệu dạng video 3D từ Helios đã được giới thiệu trong Helios: Real Real-Time Long Video Generation Model bởi Đại học Bắc Kinh & ByteDance & các bên khác.

Mô hình có thể được tải bằng đoạn mã sau.

from diffusers import HeliosTransformer3DModel

# Best Quality
transformer = HeliosTransformer3DModel.from_pretrained("BestWishYsh/Helios-Base", subfolder="transformer", dtype=torch.bfloat16)
# Intermediate Weight
transformer = HeliosTransformer3DModel.from_pretrained("BestWishYsh/Helios-Mid", subfolder="transformer", dtype=torch.bfloat16)
# Best Efficiency
transformer = HeliosTransformer3DModel.from_pretrained("BestWishYsh/Helios-Distilled", subfolder="transformer", dtype=torch.bfloat16)

HeliosTransformer3DModel

lớp diffusers.HeliosTransformer3DModel

< >

( patch_size: tuple[int, ...] = (1, 2, 2)num_attention_heads: int = 40attention_head_dim: int = 128in_channels: int = 16out_channels: int = 16text_dim: int = 4096freq_dim: int = 256ffn_dim: int = 13824num_layers: int = 40cross_attn_norm: bool = Trueqk_norm: str | None = 'rms_norm_across_heads'eps: float = 1e-06added_kv_proj_dim: int | None = Nonerope_dim: tuple[int, ...] = (44, 42, 42)rope_theta: float = 10000.0guidance_cross_attn: bool = Truezero_history_timestep: bool = Truehas_multi_term_memory_patch: bool = Trueis_amplify_history: bool = Falsehistory_scale_mode: str = 'per_head' )

Tham số

  • patch_size (tuple[int], mặc định là (1, 2, 2)) — Kích thước patch 3D cho nhúng video (t_patch, h_patch, w_patch).
  • num_attention_heads (int, mặc định là 40) — Độ dài cố định cho các vector nhúng văn bản.
  • attention_head_dim (int, mặc định là 128) — Số lượng kênh trong mỗi head.
  • in_channels (int, mặc định là 16) — Số lượng kênh trong đầu vào.
  • out_channels (int, mặc định là 16) — Số lượng kênh trong đầu ra.
  • text_dim (int, mặc định là 512) — Kích thước đầu vào cho các vector nhúng văn bản.
  • freq_dim (int, mặc định là 256) — Kích thước cho các nhúng thời gian hình sin.
  • ffn_dim (int, mặc định là 13824) — Kích thước chiều trung gian trong mạng feed-forward.
  • num_layers (int, mặc định là 40) — Số lượng lớp của các khối transformer cần sử dụng.
  • window_size (tuple[int], mặc định là (-1, -1)) — Kích thước cửa sổ cho chú ý cục bộ (-1 chỉ ra chú ý toàn cục).
  • cross_attn_norm (bool, mặc định là True) — Bật chuẩn hóa cross-attention.
  • qk_norm (bool, mặc định là True) — Bật chuẩn hóa query/key.
  • eps (float, mặc định là 1e-6) — Giá trị epsilon cho các lớp chuẩn hóa.
  • add_img_emb (bool, mặc định là False) — Có sử dụng img_emb hay không.
  • added_kv_proj_dim (int, tùy chọn, mặc định là None) — Số lượng kênh được sử dụng cho các phép chiếu key và value được thêm vào. Nếu là None, sẽ không sử dụng phép chiếu.

Một mô hình Transformer cho dữ liệu dạng video được sử dụng trong mô hình Helios.

forward

< >

( hidden_states: Tensortimestep: LongTensorencoder_hidden_states: Tensorindices_hidden_states = Noneindices_latents_history_short = Noneindices_latents_history_mid = Noneindices_latents_history_long = Nonelatents_history_short = Nonelatents_history_mid = Nonelatents_history_long = Nonereturn_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = None )

Tham số

  • hidden_states (torch.Tensor có hình dạng (batch_size, num_channels, num_frames, height, width)) — hidden_states đầu vào.
  • timestep (torch.LongTensor) — Dùng để chỉ bước khử nhiễu.
  • encoder_hidden_states (torch.Tensor có hình dạng (batch_size, sequence_len, embed_dims)) — Các embedding điều kiện (embedding được tính từ các điều kiện đầu vào như prompt) cần sử dụng.
  • indices_hidden_states (torch.Tensor, tùy chọn) — Chỉ số khung cho hidden_states được sử dụng để tính các nhúng vị trí quay (rotary positional embeddings).
  • indices_latents_history_short (torch.Tensor, tùy chọn) — Chỉ số khung cho các latents lịch sử ngắn.
  • indices_latents_history_mid (torch.Tensor, tùy chọn) — Chỉ số khung cho các latents lịch sử giữa.
  • indices_latents_history_long (torch.Tensor, tùy chọn) — Chỉ số khung cho các latents lịch sử dài.
  • latents_history_short (torch.Tensor, tùy chọn) — Điều kiện hóa latents lịch sử ngắn.
  • latents_history_mid (torch.Tensor, tùy chọn) — Điều kiện hóa latents lịch sử giữa.
  • latents_history_long (torch.Tensor, tùy chọn) — Điều kiện hóa từ lịch sử latents dài.
  • return_dict (bool, tùy chọn, mặc định là True) — Có nên trả về một ~models.transformer_2d.Transformer2DModelOutput thay vì một tuple thông thường hay không.
  • attention_kwargs (dict, tùy chọn) — Một từ điển kwargs, nếu được chỉ định, sẽ được truyền đến AttentionProcessor như đã định nghĩa dưới self.processor trong diffusers.models.attention_processor.

Phương thức forward của HeliosTransformer3DModel.

Transformer2DModelOutput

lớp diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Tham số

  • sample (torch.Tensor có hình dạng (batch_size, num_channels, height, width) hoặc (batch size, num_vector_embeds - 1, num_latent_pixels) nếu Transformer2DModel là rời rạc) — Trạng thái ẩn đầu ra được điều kiện bởi đầu vào encoder_hidden_states. Nếu là rời rạc, trả về các phân phối xác suất cho các pixel tiềm ẩn không nhiễu.

Đầu ra của Transformer2DModel.

Update on GitHub