Diffusers documentation
JoyImageEditPlusTransformer3DModel
JoyImageEditPlusTransformer3DModel
El modelo se puede cargar con el siguiente fragmento de código.
from diffusers import JoyImageEditPlusTransformer3DModel
transformer = JoyImageEditPlusTransformer3DModel.from_pretrained("jdopensource/JoyAI-Image-Edit-Plus-Diffusers", subfolder="transformer", dtype=torch.bfloat16)JoyImageEditPlusTransformer3DModel
clase 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 )
Parámetros
- patch_size (
list, por defecto[1, 2, 2]) — Tamaño del parche para aplicar patchify a la entrada latente a lo largo de las dimensiones(t, h, w). - in_channels (
int, por defecto16) — El número de canales en el latente de entrada. - out_channels (
int, opcional, valor predeterminadoNone) — El número de canales en la salida. Si no se especifica, el valor predeterminado esin_channels. - hidden_size (
int, por defecto3072) — La dimensionalidad de las representaciones ocultas. - num_attention_heads (
int, por defecto24) — El número de cabezas de atención. - text_dim (
int, por defecto4096) — La dimensionalidad de la salida del codificador de texto. - mlp_width_ratio (
float, por defecto4.0) — La proporción de la dimensión oculta de la MLP respecto ahidden_size. - num_layers (
int, por defecto20) — El número de bloques de transformador de doble flujo. - rope_dim_list (
list[int], por defecto[16, 56, 56]) — Las dimensiones para las incrustaciones posicionales rotacionales 3D a lo largo de(t, h, w). - rope_type (
str, por defecto"rope") — El tipo de incrustación posicional rotativa. - theta (
int, por defecto256) — La frecuencia base para las incrustaciones rotativas.
JoyImage Edit Plus Transformer para la edición de múltiples imágenes.
Utiliza un enfoque de patchify+padding en el que cada imagen de referencia y el ruido objetivo se patchifican de forma independiente y se concatenan en una secuencia plana de parches. Admite imágenes de referencia con resolución variable.
Formato de entrada: [B, max_patches, C, pt, ph, pw] (6D parches rellenos).
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_hidden_states_mask: typing.Optional[torch.Tensor] = Noneshape_list: list = Nonereturn_dict: bool = True )
Parámetros
- hidden_states — [B, max_patches, C, pt, ph, pw] - entrada latente en parches.
- timestep - [B] - paso de difusión.
- encoder_hidden_states — [B, L, D] - salidas del codificador de texto.
- encoder_hidden_states_mask — [B, L] - máscara de atención para los tokens de texto.
- shape_list — Lista por muestra de tuplas (t, h, w) para cada componente (objetivo + referencias).
- return_dict — Si se devuelve un diccionario o una tupla.
Transformer2DModelOutput
clase diffusers.models.modeling_outputs.Transformer2DModelOutput
< source >( sample: torch.Tensor )
Parámetros
- sample (
torch.Tensorde forma(batch_size, num_channels, height, width)o(batch size, num_vector_embeds - 1, num_latent_pixels)si Transformer2DModel es discreto) — La salida de estados ocultos condicionada a la entradaencoder_hidden_states. Si es discreto, devuelve distribuciones de probabilidad para los píxeles latentes sin ruido.
La salida de Transformer2DModel.