Diffusers documentation
JoyImageEditPlusTransformer3DModel
JoyImageEditPlusTransformer3DModel
Mô hình có thể được tải bằng đoạn mã sau.
from diffusers import JoyImageEditPlusTransformer3DModel
transformer = JoyImageEditPlusTransformer3DModel.from_pretrained("jdopensource/JoyAI-Image-Edit-Plus-Diffusers", subfolder="transformer", dtype=torch.bfloat16)JoyImageEditPlusTransformer3DModel
lớp diffusers.JoyImageEditPlusTransformer3DModel
< source >( patch_size: list = [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 = [16, 56, 56]rope_type: str = 'rope'theta: int = 256 )
Tham số
- patch_size (
list, mặc định là[1, 2, 2]) — Kích thước patch để patchify đầu vào latent dọc theo các chiều(t, h, w). - in_channels (
int, mặc định là16) — Số lượng kênh trong latent đầu vào. - out_channels (
int, tùy chọn, mặc định làNone) — Số lượng kênh trong đầu ra. Nếu không được chỉ định, giá trị mặc định sẽ làin_channels. - hidden_size (
int, mặc định là3072) — Kích thước của các biểu diễn ẩn. - num_attention_heads (
int, mặc định là24) — Số lượng đầu chú ý (attention heads). - text_dim (
int, mặc định là4096) — Số chiều của đầu ra bộ mã hóa văn bản. - mlp_width_ratio (
float, mặc định là4.0) — Tỷ lệ giữa chiều ẩn của MLP vàhidden_size. - num_layers (
int, mặc định là20) — Số lượng khối transformer double-stream. - rope_dim_list (
list[int], mặc định là[16, 56, 56]) — Các chiều của nhúng vị trí quay 3D dọc theo(t, h, w). - rope_type (
str, mặc định là"rope") — Loại của nhúng vị trí quay (rotary positional embedding). - theta (
int, mặc định là256) — Tần số cơ bản cho các nhúng xoay (rotary embeddings).
JoyImage Edit Plus Transformer để chỉnh sửa đa ảnh.
Sử dụng phương pháp patchify+padding, trong đó mỗi hình ảnh tham chiếu và nhiễu mục tiêu được patchify độc lập rồi ghép nối thành một chuỗi patch phẳng. Hỗ trợ các hình ảnh tham chiếu có độ phân giải thay đổi.
Định dạng đầu vào: [B, max_patches, C, pt, ph, pw] (các patch đệm 6 chiều).
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_hidden_states_mask: typing.Optional[torch.Tensor] = Noneshape_list: list = Nonereturn_dict: bool = True )
Tham số
- hidden_states — [B, max_patches, C, pt, ph, pw] - đầu vào latent đã được chia thành các patch.
- timestep — [B] - bước thời gian khuếch tán.
- encoder_hidden_states — [B, L, D] - đầu ra của bộ mã hóa văn bản.
- encoder_hidden_states_mask — [B, L] - mặt nạ chú ý cho các token văn bản.
- shape_list — Danh sách các bộ ba (t, h, w) cho từng mẫu, tương ứng với mỗi thành phần (target + references).
- return_dict — Xác định việc trả về dict hay tuple.
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.