Text-to-Video
Sana
English
Chinese
image-to-video
SANA
SANA-Video
SANA-Video-2.0
720p
diffusion
LTX-2.3
Instructions to use Efficient-Large-Model/SANA-Video_2.0_5B_720p with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Sana
How to use Efficient-Large-Model/SANA-Video_2.0_5B_720p with Sana:
# Load the model and infer image from text import torch from app.sana_pipeline import SanaPipeline from torchvision.utils import save_image sana = SanaPipeline("configs/sana_config/1024ms/Sana_1600M_img1024.yaml") sana.from_pretrained("hf://Efficient-Large-Model/SANA-Video_2.0_5B_720p") image = sana( prompt='a cyberpunk cat with a neon sign that says "Sana"', height=1024, width=1024, guidance_scale=5.0, pag_guidance_scale=2.0, num_inference_steps=18, ) - Notebooks
- Google Colab
- Kaggle
| task: t2v | |
| work_dir: output/sana_video2_5b_720p | |
| report_to: none | |
| tracker_project_name: sana-video-2 | |
| data: | |
| data_dir: | |
| video: data/video_toy_data | |
| image_size: 720 | |
| type: SanaZipDataset | |
| transform: default_train_video | |
| aspect_ratio_type: ASPECT_RATIO_VIDEO_720_MS_DIV32 | |
| caption_selection_type: proportion | |
| caption_proportion: | |
| prompt: 1 | |
| num_frames: 193 | |
| target_fps: 24 | |
| resample_fps: false | |
| model: | |
| model: SanaVideo2_5B | |
| image_size: 720 | |
| mixed_precision: bf16 | |
| fp32_attention: true | |
| load_from: null | |
| multi_scale: false | |
| linear_head_dim: 128 | |
| softmax_head_dim: 256 | |
| softmax_ratio: 0.25 | |
| ffn_type: SwiGLU | |
| mlp_ratio: 4.0 | |
| use_pe: true | |
| pos_embed_type: wan_rope | |
| qk_norm: true | |
| cross_norm: true | |
| class_dropout_prob: 0.1 | |
| attn_res_block_size: 8 | |
| vae: | |
| vae_type: LTX2VAE_diffusers | |
| vae_pretrained: output/pretrained_models/LTX-2.3-Diffusers | |
| weight_dtype: bfloat16 | |
| vae_latent_dim: 128 | |
| vae_downsample_rate: 32 | |
| vae_stride: [8, 32, 32] | |
| sample_posterior: false | |
| use_causal_encode: true | |
| text_encoder: | |
| text_encoder_name: gemma-2-2b-it | |
| caption_channels: 2304 | |
| y_norm: true | |
| y_norm_scale_factor: 0.01 | |
| model_max_length: 300 | |
| chi_prompt: | |
| - 'Given a user prompt, generate an "Enhanced prompt" that provides detailed visual descriptions suitable for image generation. Evaluate the level of detail in the user prompt:' | |
| - '- If the prompt is simple, focus on adding specifics about colors, shapes, sizes, textures, and spatial relationships to create vivid and concrete scenes.' | |
| - '- If the prompt is already detailed, refine and enhance the existing details slightly without overcomplicating.' | |
| - 'Here are examples of how to transform or refine prompts:' | |
| - '- User Prompt: A cat sleeping -> Enhanced: A small, fluffy white cat curled up in a round shape, sleeping peacefully on a warm sunny windowsill, surrounded by pots of blooming red flowers.' | |
| - '- User Prompt: A busy city street -> Enhanced: A bustling city street scene at dusk, featuring glowing street lamps, a diverse crowd of people in colorful clothing, and a double-decker bus passing by towering glass skyscrapers.' | |
| - 'Please generate only the enhanced description for the prompt below and avoid including any additional commentary or evaluations:' | |
| - 'User Prompt: ' | |
| scheduler: | |
| train_sampling_steps: 1000 | |
| predict_flow_v: true | |
| noise_schedule: linear_flow | |
| pred_sigma: false | |
| learn_sigma: false | |
| flow_shift: 6.0 | |
| inference_flow_shift: 12.0 | |
| weighting_scheme: logit_normal | |
| logit_mean: 0.0 | |
| logit_std: 0.95 | |
| vis_sampler: flow_dpm-solver | |
| train: | |
| use_fsdp: true | |
| num_workers: 8 | |
| seed: 1 | |
| train_batch_size: 1 | |
| num_epochs: 10 | |
| gradient_accumulation_steps: 1 | |
| grad_checkpointing: true | |
| gradient_clip: 0.1 | |
| joint_training_interval: 0 | |
| optimizer: | |
| type: AdamW | |
| lr: 5.0e-5 | |
| betas: [0.9, 0.999] | |
| eps: 1.0e-10 | |
| weight_decay: 0.0 | |
| auto_lr: null | |
| lr_schedule: constant | |
| lr_schedule_args: | |
| num_warmup_steps: 500 | |
| log_interval: 10 | |
| save_model_steps: 1000 | |
| save_model_epochs: 1 | |