Diffusers documentation
JoyImageEditPlusTransformer3DModel
JoyImageEditPlusTransformer3DModel
Model dapat dimuat dengan potongan kode berikut.
from diffusers import JoyImageEditPlusTransformer3DModel
transformer = JoyImageEditPlusTransformer3DModel.from_pretrained("jdopensource/JoyAI-Image-Edit-Plus-Diffusers", subfolder="transformer", dtype=torch.bfloat16)JoyImageEditPlusTransformer3DModel
kelas 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 )
Parameter
- patch_size (
list, defaultnya[1, 2, 2]) — Ukuran patch untuk patchifying input laten di sepanjang dimensi(t, h, w). - in_channels (
int, defaultnya16) — Jumlah channel pada latent input. - out_channels (
int, opsional, defaultnyaNone) — Jumlah channel pada output. Jika tidak ditentukan, defaultnya adalahin_channels. - hidden_size (
int, defaultnya3072) — Dimensi dari representasi tersembunyi. - num_attention_heads (
int, defaultnya24) — Jumlah kepala perhatian (attention heads). - text_dim (
int, defaultnya4096) — Dimensi dari output text encoder. - mlp_width_ratio (
float, defaultnya4.0) — Rasio dimensi tersembunyi MLP terhadaphidden_size. - num_layers (
int, defaultnya20) — Jumlah blok transformer double-stream. - rope_dim_list (
list[int], defaultnya[16, 56, 56]) — Dimensi untuk embedding posisi rotasi 3D sepanjang(t, h, w). - rope_type (
str, defaultnya"rope") — Jenis dari rotary positional embedding. - theta (
int, defaultnya256) — Frekuensi dasar untuk rotary embeddings.
JoyImage Edit Plus Transformer untuk pengeditan multi-gambar.
Menggunakan pendekatan patchify+padding di mana setiap gambar referensi dan target noise dipatchify secara independen dan digabungkan menjadi urutan patch datar. Mendukung gambar referensi dengan resolusi variabel.
Format input: [B, max_patches, C, pt, ph, pw] (6D padded patches).
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_hidden_states_mask: typing.Optional[torch.Tensor] = Noneshape_list: list = Nonereturn_dict: bool = True )
Parameter
- hidden_states — [B, max_patches, C, pt, ph, pw] - input laten yang telah di-patchify.
- timestep — [B] - langkah waktu difusi.
- encoder_hidden_states — [B, L, D] - keluaran encoder teks.
- encoder_hidden_states_mask — [B, L] - mask perhatian untuk token teks.
- shape_list — Daftar per sampel berisi tuple (t, h, w) untuk setiap komponen (target + referensi).
- return_dict — Apakah akan mengembalikan dict atau tuple.
Transformer2DModelOutput
kelas diffusers.models.modeling_outputs.Transformer2DModelOutput
< source >( sample: torch.Tensor )
Parameter
- sample (
torch.Tensordengan bentuk(batch_size, num_channels, height, width)atau(batch size, num_vector_embeds - 1, num_latent_pixels)jika Transformer2DModel bersifat diskrit) — Output hidden states yang dikondisikan pada inputencoder_hidden_states. Jika diskrit, mengembalikan distribusi probabilitas untuk latent pixels yang tidak berisik.
Output dari Transformer2DModel.