| # Command Line Reference |
|
|
| This document covers all available command line options for WanGP. |
|
|
| ## Basic Usage |
|
|
| ```bash |
| # Default launch |
| python wgp.py |
| |
| ``` |
|
|
| ## CLI Queue Processing (Headless Mode) |
|
|
| Process saved queues without launching the web UI. Useful for batch processing or automated workflows. |
|
|
| ### Quick Start |
| ```bash |
| # Process a saved queue (ZIP with attachments) |
| python wgp.py --process my_queue.zip |
| |
| # Process a settings file (JSON) |
| python wgp.py --process my_settings.json |
| |
| # Validate without generating (dry-run) |
| python wgp.py --process my_queue.zip --dry-run |
| |
| # Process with custom output directory |
| python wgp.py --process my_queue.zip --output-dir ./batch_outputs |
| ``` |
|
|
| ### Supported File Formats |
| | Format | Description | |
| |--------|-------------| |
| | `.zip` | Full queue with embedded attachments (images, videos, audio). Created via "Save Queue" button. | |
| | `.json` | Settings file only. Media paths are used as-is (absolute or relative to WanGP folder). Created via "Export Settings" button. | |
|
|
| ### Workflow |
| 1. **Create your queue** in the web UI using the normal interface |
| 2. **Save the queue** using the "Save Queue" button (creates a .zip file) |
| 3. **Close the web UI** if desired |
| 4. **Process the queue** via command line: |
| ```bash |
| python wgp.py --process saved_queue.zip --output-dir ./my_outputs |
| ``` |
|
|
| ### CLI Queue Options |
| ```bash |
| --process PATH # Path to queue (.zip) or settings (.json) file (enables headless mode) |
| --dry-run # Validate file without generating (use with --process) |
| --output-dir PATH # Override output directory (use with --process) |
| --verbose LEVEL # Verbosity level 0-2 for detailed logging |
| ``` |
|
|
| ### Console Output |
| The CLI mode provides real-time feedback: |
| ``` |
| WanGP CLI Mode - Processing queue: my_queue.zip |
| Output directory: ./batch_outputs |
| Loaded 3 task(s) |
| |
| [Task 1/3] A beautiful sunset over the ocean... |
| [12/30] Prompt 1/3 - Denoising | Phase 2/2 Low Noise |
| Video saved |
| Task 1 completed |
| |
| [Task 2/3] A cat playing with yarn... |
| [30/30] Prompt 2/3 - VAE Decoding |
| Video saved |
| Task 2 completed |
| |
| ================================================== |
| Queue completed: 3/3 tasks in 5m 23s |
| ``` |
|
|
| ### Exit Codes |
| | Code | Meaning | |
| |------|---------| |
| | 0 | Success (all tasks completed) | |
| | 1 | Error (file not found, invalid queue, or task failures) | |
| | 130 | Interrupted by user (Ctrl+C) | |
|
|
| ### Examples |
| ```bash |
| # Overnight batch processing |
| python wgp.py --process overnight_jobs.zip --output-dir ./renders |
| |
| # Quick validation before long run |
| python wgp.py --process big_queue.zip --dry-run |
| |
| # Verbose mode for debugging |
| python wgp.py --process my_queue.zip --verbose 2 |
| |
| # Combined with other options |
| python wgp.py --process queue.zip --output-dir ./out --attention sage2 |
| ``` |
|
|
| ## Model and Performance Options |
|
|
| ### Model Configuration |
| ```bash |
| --quantize-transformer BOOL # Enable/disable transformer quantization (default: True) |
| --compile # Enable PyTorch compilation (requires Triton) |
| --attention MODE # Force attention mode: sdpa, flash, sage, sage2 |
| --profile NUMBER # Performance profile 1-5 (default: 4) |
| --preload NUMBER # Preload N MB of diffusion model in VRAM |
| --fp16 # Force fp16 instead of bf16 models |
| --gpu DEVICE # Run on specific GPU device (e.g., "cuda:1") |
| ``` |
|
|
| ### Performance Profiles |
| - **Profile 1**: Load entire current model in VRAM and keep all unused models in reserved RAM for fast VRAM tranfers |
| - **Profile 2**: Load model parts as needed, keep all unused models in reserved RAM for fast VRAM tranfers |
| - **Profile 3**: Load entire current model in VRAM (requires 24GB for 14B model) |
| - **Profile 4**: Default and recommended, load model parts as needed, most flexible option |
| - **Profile 4+** (4.5): Profile 4 variation, can save up to 1 GB of VRAM, but will be slighlty slower on some configs |
| - **Profile 5**: Minimum RAM usage |
|
|
| ### Memory Management |
| ```bash |
| --perc-reserved-mem-max FLOAT # Max percentage of RAM for reserved memory (< 0.5) |
| ``` |
|
|
| ## Lora Configuration |
|
|
| ```bash |
| --loras PATH # Root folder for all LoRA subfolders (default: loras) |
| --lora-dir PATH # Path to Wan t2v loras directory |
| --lora-dir-i2v PATH # Path to Wan i2v loras directory |
| --lora-dir-hunyuan PATH # Path to Hunyuan t2v loras directory |
| --lora-dir-hunyuan-i2v PATH # Path to Hunyuan i2v loras directory |
| --lora-dir-hunyuan-1-5 PATH # Path to Hunyuan 1.5 loras directory |
| --lora-dir-ltxv PATH # Path to LTX Video loras directory |
| --lora-preset PRESET # Load lora preset file (.lset) on startup |
| --check-loras # Filter incompatible loras (slower startup) |
| ``` |
|
|
| Notes: |
| - `--loras` sets the root folder used by all LoRA subfolders (e.g. `loras/wan`, `loras/flux`, etc.). |
| - Specific `--lora-dir-*` flags override the root for that family only. |
|
|
| ## Generation Settings |
|
|
| ### Basic Generation |
| ```bash |
| --seed NUMBER # Set default seed value |
| --frames NUMBER # Set default number of frames to generate |
| --steps NUMBER # Set default number of denoising steps |
| --advanced # Launch with advanced mode enabled |
| ``` |
|
|
| ### Advanced Generation |
| ```bash |
| --teacache MULTIPLIER # TeaCache speed multiplier: 0, 1.5, 1.75, 2.0, 2.25, 2.5 |
| ``` |
|
|
| ## Interface and Server Options |
|
|
| ### Server Configuration |
| ```bash |
| --server-port PORT # Gradio server port (default: 7860) |
| --server-name NAME # Gradio server name (default: localhost) |
| --listen # Make server accessible on network |
| --share # Create shareable HuggingFace URL for remote access |
| --open-browser # Open browser automatically when launching |
| ``` |
|
|
| ### Interface Options |
| ```bash |
| --lock-config # Prevent modifying video engine configuration from interface |
| --theme THEME_NAME # UI theme: "default" or "gradio" |
| ``` |
|
|
| ## File and Directory Options |
|
|
| ```bash |
| --settings PATH # Path to folder containing default settings for all models |
| --config PATH # Config folder for wgp_config.json and queue.zip |
| --verbose LEVEL # Information level 0-2 (default: 1) |
| ``` |
|
|
| ## Examples |
|
|
| ### Basic Usage Examples |
| ```bash |
| # Launch with specific model and loras |
| python wgp.py ----lora-preset mystyle.lset |
| |
| # High-performance setup with compilation |
| python wgp.py --compile --attention sage2 --profile 3 |
| |
| # Low VRAM setup |
| python wgp.py --profile 4 --attention sdpa |
| ``` |
|
|
| ### Server Configuration Examples |
| ```bash |
| # Network accessible server |
| python wgp.py --listen --server-port 8080 |
| |
| # Shareable server with custom theme |
| python wgp.py --share --theme gradio --open-browser |
| |
| # Locked configuration for public use |
| python wgp.py --lock-config --share |
| ``` |
|
|
| ### Advanced Performance Examples |
| ```bash |
| # Maximum performance (requires high-end GPU) |
| python wgp.py --compile --attention sage2 --profile 3 --preload 2000 |
| |
| # Optimized for RTX 2080Ti |
| python wgp.py --profile 4 --attention sdpa --teacache 2.0 |
| |
| # Memory-efficient setup |
| python wgp.py --fp16 --profile 4 --perc-reserved-mem-max 0.3 |
| ``` |
|
|
| ### TeaCache Configuration |
| ```bash |
| # Different speed multipliers |
| python wgp.py --teacache 1.5 # 1.5x speed, minimal quality loss |
| python wgp.py --teacache 2.0 # 2x speed, some quality loss |
| python wgp.py --teacache 2.5 # 2.5x speed, noticeable quality loss |
| python wgp.py --teacache 0 # Disable TeaCache |
| ``` |
|
|
| ## Attention Modes |
|
|
| ### SDPA (Default) |
| ```bash |
| python wgp.py --attention sdpa |
| ``` |
| - Available by default with PyTorch |
| - Good compatibility with all GPUs |
| - Moderate performance |
|
|
| ### Sage Attention |
| ```bash |
| python wgp.py --attention sage |
| ``` |
| - Requires Triton installation |
| - 30% faster than SDPA |
| - Small quality cost |
|
|
| ### Sage2 Attention |
| ```bash |
| python wgp.py --attention sage2 |
| ``` |
| - Requires Triton and SageAttention 2.x |
| - 40% faster than SDPA |
| - Best performance option |
|
|
| ### Flash Attention |
| ```bash |
| python wgp.py --attention flash |
| ``` |
| - May require CUDA kernel compilation |
| - Good performance |
| - Can be complex to install on Windows |
|
|
| ## Troubleshooting Command Lines |
|
|
| ### Fallback to Basic Setup |
| ```bash |
| # If advanced features don't work |
| python wgp.py --attention sdpa --profile 4 --fp16 |
| ``` |
|
|
| ### Debug Mode |
| ```bash |
| # Maximum verbosity for troubleshooting |
| python wgp.py --verbose 2 --check-loras |
| ``` |
|
|
| ### Memory Issue Debugging |
| ```bash |
| # Minimal memory usage |
| python wgp.py --profile 4 --attention sdpa --perc-reserved-mem-max 0.2 |
| ``` |
|
|
|
|
|
|
| ## Configuration Files |
|
|
| ### Settings Files |
| Load custom settings: |
| ```bash |
| python wgp.py --settings /path/to/settings/folder |
| ``` |
|
|
| ### Config Folder |
| Use a separate folder for the UI config and autosaved queue: |
| ```bash |
| python wgp.py --config /path/to/config |
| ``` |
| If missing, `wgp_config.json` or `queue.zip` are loaded once from the WanGP root and then written to the config folder. |
|
|
| ### Lora Presets |
| Create and share lora configurations: |
| ```bash |
| # Load specific preset |
| python wgp.py --lora-preset anime_style.lset |
| |
| # With custom lora root |
| python wgp.py --loras /shared/loras --lora-preset mystyle.lset |
| ``` |
|
|
| ## Environment Variables |
|
|
| While not command line options, these environment variables can affect behavior: |
| - `CUDA_VISIBLE_DEVICES` - Limit visible GPUs |
| - `PYTORCH_CUDA_ALLOC_CONF` - CUDA memory allocation settings |
| - `TRITON_CACHE_DIR` - Triton cache directory (for Sage attention) |
|
|