Diffusers documentation
JoyImageEditPlusTransformer3DModel
JoyImageEditPlusTransformer3DModel
O modelo pode ser carregado com o seguinte trecho de código.
from diffusers import JoyImageEditPlusTransformer3DModel
transformer = JoyImageEditPlusTransformer3DModel.from_pretrained("jdopensource/JoyAI-Image-Edit-Plus-Diffusers", subfolder="transformer", dtype=torch.bfloat16)JoyImageEditPlusTransformer3DModel
classe diffusers.JoyImageEditPlusTransformer3DModel
< source >( patch_size: list[int] = [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[int] = [16, 56, 56]rope_type: str = 'rope'theta: int = 256 )
Parâmetros
- patch_size (
list, padrão[1, 2, 2]) — Tamanho do patch para a patchificação da entrada latente ao longo das dimensões(t, h, w). - in_channels (
int, padrão16) — O número de canais no latente de entrada. - out_channels (
int, opcional, padrãoNone) — O número de canais na saída. Se não for especificado, o padrão éin_channels. - hidden_size (
int, padrão3072) — A dimensionalidade das representações ocultas. - num_attention_heads (
int, padrão24) — O número de cabeças de atenção. - text_dim (
int, padrão4096) — A dimensionalidade da saída do codificador de texto. - mlp_width_ratio (
float, padrão4.0) — A proporção da dimensão oculta do MLP em relação ahidden_size. - num_layers (
int, padrão20) — O número de blocos de transformador de fluxo duplo. - rope_dim_list (
list[int], padrão[16, 56, 56]) — As dimensões para incorporações posicionais rotacionais 3D ao longo de(t, h, w). - rope_type (
str, padrão"rope") — O tipo de incorporação posicional rotativa. - theta (
int, padrão256) — A frequência base para incorporações rotativas.
JoyImage Edit Plus Transformer para edição de múltiplas imagens.
Utiliza uma abordagem de patchify+padding em que cada imagem de referência e o ruído alvo são independentemente convertidos em patches e concatenados em uma sequência plana de patches. Suporta imagens de referência com resolução variável.
Formato de entrada: [B, max_patches, C, pt, ph, pw] (patches 6D com padding).
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_hidden_states_mask: typing.Optional[torch.Tensor] = Noneshape_list: list[list[tuple[int, int, int]]] = Nonereturn_dict: bool = True )
Parâmetros
- hidden_states — [B, max_patches, C, pt, ph, pw] - entrada latente em patches.
- timestep — [B] - passo de difusão.
- encoder_hidden_states — [B, L, D] - saídas do codificador de texto.
- encoder_hidden_states_mask — [B, L] - máscara de atenção para tokens de texto.
- shape_list — Lista por amostra de tuplas (t, h, w) para cada componente (alvo + referências).
- return_dict — Se deve retornar um dicionário ou uma tupla.
Transformer2DModelOutput
classe diffusers.models.modeling_outputs.Transformer2DModelOutput
< source >( sample: torch.Tensor )
Parâmetros
- sample (
torch.Tensorde forma(batch_size, num_channels, height, width)ou(batch size, num_vector_embeds - 1, num_latent_pixels)se Transformer2DModel for discreto) — A saída dos estados ocultos condicionada à entradaencoder_hidden_states. Se discreto, retorna distribuições de probabilidade para os pixels latentes sem ruído.
A saída de Transformer2DModel.