Diffusers documentation
Lumina2Transformer2DModel
Lumina2Transformer2DModel
Một mô hình Diffusion Transformer cho dữ liệu dạng video 3D đã được giới thiệu trong Lumina Image 2.0 bởi Alpha-VLLM.
Mô hình có thể được tải bằng đoạn mã sau.
from diffusers import Lumina2Transformer2DModel
transformer = Lumina2Transformer2DModel.from_pretrained("Alpha-VLLM/Lumina-Image-2.0", subfolder="transformer", dtype=torch.bfloat16)Lumina2Transformer2DModel
lớp diffusers.Lumina2Transformer2DModel
< source >( 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 )
Tham số
- sample_size (
int) — Độ rộng của các ảnh tiềm ẩn. Giá trị này được cố định trong quá trình huấn luyện vì nó được dùng để học một số lượng embedding vị trí. - patch_size (
int, tuỳ chọn, (int, tuỳ chọn, mặc định là 2) — Kích thước của mỗi patch trong ảnh. Tham số này xác định độ phân giải của các patch được đưa vào mô hình. - in_channels (
int, tùy chọn, mặc định là 4) — Số lượng kênh đầu vào của mô hình. Thông thường, con số này khớp với số lượng kênh trong các hình ảnh đầu vào. - hidden_size (
int, tùy chọn, mặc định là 4096) — Kích thước chiều của các lớp ẩn trong mô hình. Tham số này xác định độ rộng của các biểu diễn ẩn của mô hình. - num_layers (
int, tùy chọn, mặc định là 32) — Số lượng lớp trong mô hình. Tham số này xác định độ sâu của mạng nơ-ron. - num_attention_heads (
int, tùy chọn, mặc định là 32) — Số lượng attention heads trong mỗi lớp attention. Tham số này chỉ định số lượng cơ chế attention riêng biệt được sử dụng. - num_kv_heads (
int, tùy chọn, mặc định là 8) — Số lượng đầu key-value trong cơ chế chú ý, nếu khác với số lượng đầu chú ý. Nếu là None, giá trị mặc định sẽ là num_attention_heads. - multiple_of (
int, tùy chọn, mặc định là 256) — Hệ số mà kích thước ẩn phải là bội số của nó. Điều này có thể giúp tối ưu hóa một số cấu hình phần cứng nhất định. - ffn_dim_multiplier (
float, tùy chọn) — Hệ số nhân cho chiều của mạng feed-forward. Nếu là None, nó sẽ sử dụng giá trị mặc định dựa trên cấu hình của mô hình. - norm_eps (
float, tùy chọn, mặc định là 1e-5) — Một giá trị nhỏ được cộng vào mẫu số để đảm bảo ổn định số học trong các lớp chuẩn hóa. - scaling_factor (
float, tùy chọn, mặc định là 1.0) — Hệ số tỷ lệ được áp dụng cho một số tham số hoặc lớp trong mô hình. Điều này có thể được sử dụng để điều chỉnh tỷ lệ tổng thể của các phép toán trong mô hình.
Lumina2NextDiT: Mô hình khuếch tán với bộ khung Transformer.
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_attention_mask: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )
Tham số
- hidden_states (
torch.Tensorcó hình dạng(batch_size, in_channels, height, width)) —hidden_statesđầu vào. - timestep (
torch.LongTensor) — Dùng để chỉ bước khử nhiễu. - encoder_hidden_states (
torch.Tensorcó 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. - encoder_attention_mask (
torch.Tensor) — Mặt nạ được áp dụng choencoder_hidden_statestrong quá trình chú ý. - attention_kwargs (
dict, tùy chọn) — Một từ điển kwargs, nếu được chỉ định, sẽ được truyền đếnAttentionProcessornhư đã định nghĩa dướiself.processortrong diffusers.models.attention_processor. - return_dict (
bool, tùy chọn, mặc định làTrue) — Có nên trả về một~models.transformer_2d.Transformer2DModelOutputthay vì một tuple thông thường hay không.
Phương thức forward của Lumina2Transformer2DModel.
Transformer2DModelOutput
lớp diffusers.models.modeling_outputs.Transformer2DModelOutput
< source >( sample: torch.Tensor )
Tham số
- sample (
torch.Tensorcó 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àoencoder_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.