Instructions to use Echo-Team/tiny-echo-wm-base-diffusers with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use Echo-Team/tiny-echo-wm-base-diffusers with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("Echo-Team/tiny-echo-wm-base-diffusers", dtype=torch.bfloat16, device_map="cuda") prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k" image = pipe(prompt).images[0] - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Draw Things
- DiffusionBee
This is a modular diffusion pipeline built with 🧨 Diffusers' modular pipeline framework.
Pipeline Type: EchoWMBlocks
Description:
This pipeline uses a 5-block architecture that can be customized and extended.
Example Usage
[TODO]
Pipeline Architecture
This modular pipeline is composed of the following blocks:
- text (
LTX2TextConditioningStep)- Text-conditioning stage for LTX-2.X: encodes the prompt(s), then runs the text connectors to produce the video/audio-branch connector embeddings the denoiser consumes. Outputs stay at one row per prompt -- the denoise stage expands them by
num_videos_per_prompt-- so they can be reused across denoise runs.
- Text-conditioning stage for LTX-2.X: encodes the prompt(s), then runs the text connectors to produce the video/audio-branch connector embeddings the denoiser consumes. Outputs stay at one row per prompt -- the denoise stage expands them by
- camera (
EchoWMCameraConditionStep) - image_encoder (
EchoWMVaeEncoderStep)- VAE encoder step that encodes the input
imageinto normalized latents for image-to-video generation.
- VAE encoder step that encodes the input
- denoise (
EchoWMImage2VideoCoreDenoiseStep)- Denoise block (image-to-video) that expands the text conditioning by
num_videos_per_prompt, adds image conditioning and runs the joint denoising loop.
- Denoise block (image-to-video) that expands the text conditioning by
- decode (
EchoWMDecoderStep)
Model Components
- text_encoder (
PreTrainedModel) - tokenizer (
PreTrainedTokenizerBase) - connectors (
LTX2TextConnectors) - transformer (
EchoWMTransformer3DModel) - vae (
AutoencoderKLLTX2Video) - video_processor (
VideoProcessor) - scheduler (
FlowMatchEulerDiscreteScheduler) - audio_vae (
AutoencoderKLLTX2Audio) - guider (
LTX2Guidance) - audio_guider (
LTX2Guidance) - vocoder (
LTX2Vocoder)
Input/Output Specification
Inputs:
prompt(str): The prompt or prompts to guide image generation.negative_prompt(str, optional): The prompt or prompts not to guide the image generation.max_sequence_length(int, optional, defaults to1024): Maximum sequence length for prompt encoding.action(str): WASD/IJKL action program.height(int, optional, defaults to704): The height in pixels of the generated image.width(int, optional, defaults to1280): The width in pixels of the generated image.num_frames(int, optional, defaults to241): Number of output video frames.frame_rate(float, optional, defaults to24.0): Output video frame rate.translation_speed(float, optional, defaults to0.05): Per-frame camera translation speed for W/A/S/D actions.rotation_speed_deg(float, optional, defaults to0.5): Per-frame camera yaw speed in degrees for J/L actions.pitch_speed_deg(float, optional, defaults to0.2): Per-frame camera pitch speed in degrees for I/K actions.pitch_limit_deg(float, optional, defaults to60.0): Maximum absolute camera pitch in degrees.fov_deg(float, optional, defaults to70.0): Horizontal camera field of view in degrees.num_videos_per_prompt(int, optional, defaults to1): The number of images to generate per prompt.image(Image | list): Reference image(s) for denoising. Can be a single image or list of images.image_crf(int, optional): H.264 CRF used to re-compress the conditioningimagebefore VAE encode, matching the compression the model was trained against.None(default) resolves from the text-encoder generation (33 through LTX-2.3, 18 for LTX-2.5). Pass0to skip re-compression. Requires aPIL.Image.Imagewhen re-compression runs.generator(Generator, optional): Torch generator for deterministic generation.num_inference_steps(int, optional, defaults to30): The number of denoising steps.timesteps(Tensor, optional): Timesteps for the denoising process.sigmas(list, optional): Custom sigmas for the denoising process.latents(Tensor, optional): Pre-generated noisy latents for image generation.noise_scale(float, optional): Interpolation factor between random noise and any provided latents.None(default) resolves to 0.0, which keeps the provided latents.audio_latents(Tensor, optional): Optional pre-encoded audio latents; random noise is used when not provided.**denoiser_input_fields(None, optional): conditional model inputs for the denoiser: e.g. prompt_embeds, negative_prompt_embeds, etc.use_cross_timestep(bool, optional, defaults toTrue): Whether to condition the transformer on a separate per-token cross timestep (LTX-2.3+).attention_kwargs(dict, optional): Additional kwargs for attention processors.output_type(str, optional, defaults topil): Output format: 'pil', 'np', 'pt'.decode_timestep(None, optional, defaults to0.0): The timestep at which the VAE decodes the final latents.decode_noise_scale(None, optional): Noise interpolation factor applied to the latents at the decode timestep.vae_tiling(bool, optional, defaults toTrue): Enable spatial and temporal VAE decoding tiles to reduce peak memory usage.vae_tile_size(int, optional, defaults to512): Spatial tile long-side size in pixels; the short side follows the video aspect ratio.vae_tile_overlap(int, optional, defaults to64): Spatial tile overlap in pixels.vae_temporal_tile_size(int, optional, defaults to64): Temporal tile size in sample frames, excluding the causal boundary frame.vae_temporal_tile_overlap(int, optional, defaults to24): Temporal tile overlap in sample frames.
Outputs:
videos(list): The generated videos.audio(Tensor): The generated audio waveform.
- Downloads last month
- 37