Buckets:

mishig's picture
|
download
raw
6.61 kB

Bajo licencia Apache License, versión 2.0 (la "Licencia");

no puede usar este archivo excepto en cumplimiento de la Licencia.

Puede obtener una copia de la Licencia en

http://www.apache.org/licenses/LICENSE-2.0

A menos que la ley aplicable lo exija o se haya acordado por escrito, el software

distribuido bajo la Licencia se distribuye en una base "TAL CUAL",

SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sea expresa o implícita.

Consulte la Licencia para el lenguaje específico que rige los permisos y

limitaciones de la Licencia. -->

Anima

Anima es un modelo de texto a imagen que reutiliza el CosmosTransformer3DModel con un codificador de texto Qwen3, un condicionador de texto T5-token y el VAE AutoencoderKLQwenImage.

import torch
from diffusers import ModularPipeline

pipe = ModularPipeline.from_pretrained("circlestone-labs/Anima-Base-v1.0-Diffusers")
pipe.load_components(dtype=torch.bfloat16)
pipe.to("cuda")  # or "mps", "xpu", "cpu"

image = pipe(prompt="masterpiece, best quality, 1girl, solo, city lights").images[0]

AnimaModularPipeline[[diffusers.AnimaModularPipeline]]

diffusers.AnimaModularPipeline[[diffusers.AnimaModularPipeline]]

diffusers.AnimaModularPipeline(blocks: diffusers.modular_pipelines.modular_pipeline.ModularPipelineBlocks | None = None, pretrained_model_name_or_path: str | os.PathLike | None = None, components_manager: diffusers.modular_pipelines.components_manager.ComponentsManager | None = None, collection: str | None = None, workflow: str | None = None, modular_config_dict: dict[str, typing.Any] | None = None, config_dict: dict[str, typing.Any] | None = None, **kwargs)

Fuente

Un ModularPipeline para Anima.

AnimaAutoBlocks[[diffusers.AnimaAutoBlocks]]

diffusers.AnimaAutoBlocks[[diffusers.AnimaAutoBlocks]]

diffusers.AnimaAutoBlocks()

Fuente

Pipeline modular automático para la generación de texto a imagen e imagen a imagen usando Anima.

Flujos de trabajo admitidos:

  • text2image: requiere prompt
  • img2img: requiere image, prompt

Componentes: text_encoder (Qwen3Model) tokenizer (Qwen2Tokenizer) t5_tokenizer (T5Tokenizer) guider (ClassifierFreeGuidance) vae (AutoencoderKLQwenImage) image_processor (VaeImageProcessor) text_conditioner (AnimaTextConditioner) transformer (CosmosTransformer3DModel) scheduler (FlowMatchEulerDiscreteScheduler)

Entradas: prompt (str): El prompt o prompts para guiar la generación de imágenes. negative_prompt (str, opcional): El prompt o prompts que no deben guiar la generación de imágenes. max_sequence_length (int, opcional, valor predeterminado 512): Longitud máxima de secuencia para la codificación del prompt. image (Image | list, opcional): Imagen(es) de referencia para el desruido. Puede ser una sola imagen o una lista de imágenes. height (int, opcional): La altura en píxeles de la imagen generada. width (int, opcional): El ancho en píxeles de la imagen generada. generator (Generator, opcional): Generador de Torch para una generación determinista. num_images_per_prompt (int, opcional, valor predeterminado 1): El número de imágenes a generar por prompt. image_latents (Tensor, opcional): latentes de imagen utilizados para guiar la generación de imágenes. Pueden generarse desde el paso vae_encoder. num_inference_steps (int): El número de pasos de desruido. sigmas (list, opcional): Sigmas personalizados para el proceso de desruido. strength (float, opcional, valor predeterminado 0.9): Fuerza para img2img/inpainting. latents (Tensor): Latentes ruidosos pregenerados para la generación de imágenes. **denoiser_input_fields (None, opcional): Entradas del modelo condicional para el desruidos de Anima. output_type (str, opcional, valor predeterminado pil): Formato de salida: 'pil', 'np', 'pt'.

Salidas: imágenes (list): Imágenes generadas.

AnimaTextConditioner[[diffusers.AnimaTextConditioner]]

diffusers.AnimaTextConditioner[[diffusers.AnimaTextConditioner]]

diffusers.AnimaTextConditioner(source_dim: int = 1024, target_dim: int = 1024, model_dim: int = 1024, num_layers: int = 6, num_attention_heads: int = 16, mlp_ratio: float = 4.0, target_vocab_size: int = 32128, use_self_attention: bool = True, use_layer_norm: bool = False, min_sequence_length: int = 512)

Fuente

Condicionador de texto utilizado por Anima para mapear los estados ocultos de Qwen3 y los ids de tokens de T5 a las incrustaciones de texto de Cosmos.

Anima reutiliza el DiT de Cosmos Predict2. El único módulo de condicionamiento específico del modelo es este adaptador de LLM, que realiza una atención cruzada desde los embeddings de tokens de T5 aprendidos hacia los estados ocultos del codificador de texto Qwen3 antes del bucle de difusión. target_dim es la dimensión de salida del condicionador y debe coincidir con text_embed_dim del transformer.

forward[[diffusers.AnimaTextConditioner.forward]]

forward(source_hidden_states: Tensor, target_input_ids: Tensor, target_attention_mask: typing.Optional[torch.Tensor] = None, source_attention_mask: typing.Optional[torch.Tensor] = None)

Fuente

Parámetros:

source_hidden_states (torch.Tensor de forma (batch_size, source_sequence_length, source_dim)) : Estados ocultos del codificador de texto de Qwen3 sobre los que condicionar.

target_input_ids (torch.Tensor de forma (batch_size, target_sequence_length)) : ids de tokens de T5 utilizados como tokens de consulta aprendidos.

target_attention_mask (torch.Tensor, opcional) : Máscara de atención para los ids de tokens objetivo de T5.

source_attention_mask (torch.Tensor, opcional) : Máscara de atención para los estados ocultos de origen de Qwen3.

Devuelve: torch.Tensor

Embeddings de condicionamiento de texto para el transformer de Cosmos.

Xet Storage Details

Size:
6.61 kB
·
Xet hash:
0b9d094f220a70c6ab197fea893e413cdb61feea3d4316b5dc8292d14ee8eae0

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.