- 25 Feb, 2026 40 commits
-
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
Adjust VRAM checking to allow models up to 10% less than available VRAM, or full VRAM with offload strategy
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- When loading LTX-Video base model in I2V mode, use LTXImageToVideoPipeline - When loading LTX-Video base model in T2V mode, use LTXPipeline - Update PipelineClass after loading base pipeline to match the actual class used - This fixes the 'LTXPipeline.__call__() got an unexpected keyword argument image' error
-
Stefy Lanza (nextime / spora ) authored
- Add LTXImageToVideoPipeline to PIPELINE_CLASS_MAP as I2V type - Change LTXPipeline to T2V type (it doesn't support image input) - Auto-switch from LTXPipeline to LTXImageToVideoPipeline when in I2V mode - Update I2V check to only verify pipeline class name (removed supports_i2v flag check) - This allows LTX-Video models to work in I2V mode with image input
-
Stefy Lanza (nextime / spora ) authored
- LTXPipeline is T2V-only, not I2V-capable - Check both supports_i2v flag AND pipeline class name - I2V-capable pipelines: StableVideoDiffusionPipeline, I2VGenXLPipeline, LTXImageToVideoPipeline, WanPipeline - Prevents passing 'image' argument to T2V-only pipelines like LTXPipeline
-
Stefy Lanza (nextime / spora ) authored
- In T2I mode, only show image models in the main model select - In other modes (T2V, I2V, etc.), show video models - Repopulate model select when switching modes - Image model select for I2V mode always shows image models
-
Stefy Lanza (nextime / spora ) authored
- Remove orphaned 'except Exception as e:' block that had no matching try - Fix indentation for wan scheduler configuration - Change 'I2V model loaded' to generic 'Model loaded' message
-
Stefy Lanza (nextime / spora ) authored
- Set pipeline_loaded_successfully=True when component loading succeeds - Fix indentation for LoRA and offloading code blocks - Define 'off' variable inside the correct scope - This fixes loading models like Muinez/ltxvideo-2b-nsfw which are fine-tuned transformer weights without a full pipeline
-
Stefy Lanza (nextime / spora ) authored
- sentencepiece>=0.2.0 required for LTX-Video tokenizer - protobuf>=5.27.0 required by sentencepiece - These are needed to parse the spiece.model tokenizer file
-
Stefy Lanza (nextime / spora ) authored
- Move T2I detection before time estimation - Add has_t2i parameter to estimate_total_time - T2I models now show image_generation time instead of video_generation - Add Lumina pipelines to T2I model detection - Suppress 'Loaded models' message when --json flag is used
-
Stefy Lanza (nextime / spora ) authored
- Move JSON output to happen before table printing - Add better error handling in webapp.py for debugging - This fixes the web interface model list not showing
-
Stefy Lanza (nextime / spora ) authored
- Can remove by numeric ID (from --model-list) or by name - Also supports removing by HuggingFace model ID - Updates models.json after removal
-
Stefy Lanza (nextime / spora ) authored
- Add Lumina pipeline classes to PIPELINE_CLASS_MAP - Fix Lumina model detection in detect_pipeline_class - Remove non-existent LuminaVideoPipeline references - Update Alpha-VLLM/Lumina-Next-SFT to use correct pipeline class - Lumina-Next-SFT is a T2I model, not T2V (~20-30GB VRAM)
-
Stefy Lanza (nextime / spora ) authored
- Add --json argument to output model list in JSON format - Include model capabilities, disabled status, and fail count in JSON output - This fixes the web interface model list not showing models
-
Stefy Lanza (nextime / spora ) authored
- Detect tokenizer parsing errors and provide helpful cache clearing instructions - Add retry logic for corrupted cache files - Improve error messages for component-only model loading
-
Stefy Lanza (nextime / spora ) authored
- The correct class name in diffusers is LTXPipeline, not LTXVideoPipeline - Updated PIPELINE_CLASS_MAP and detect_pipeline_class - Updated all references throughout the codebase - This fixes loading models like Muinez/ltxvideo-2b-nsfw
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- When loading fine-tuned component models (like LTXVideoTransformer3DModel), use the correct pipeline class for the base model instead of the configured PipelineClass which may be wrong - Add proper pipeline class detection for LTX, Wan, SVD, CogVideo, Mochi - This fixes loading models like Muinez/ltxvideo-2b-nsfw which have config.json only (no model_index.json)
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Add character profile management (create, list, show, delete) - Add IP-Adapter and InstantID support for character consistency - Fix model loading for models with config.json only (no model_index.json) - Add component-only model detection (fine-tuned weights) - Update MCP server with character consistency tools - Update SKILL.md and README.md documentation - Add memory management for dubbing/translation - Add chunked processing for Whisper transcription - Add character persistency options to web interface
-
Stefy Lanza (nextime / spora ) authored
Users can now upload their own image for I2V mode instead of only being able to generate one. The image upload box is now visible in I2V mode, allowing users to either: - Upload an existing image to animate - Or let the system generate an image first This provides more flexibility for the I2V workflow.
-
Stefy Lanza (nextime / spora ) authored
Style Detection (detect_generation_type): - Detects 9 artistic styles: anime, photorealistic, digital_art, cgi, cartoon, fantasy, traditional, scifi, horror - Extracts style keywords from prompts for matching - Returns style info in generation type dict Style Matching (select_best_model): - Matches LoRA adapters to requested style (+60 bonus for style match) - Matches base models to requested style (+50 bonus for style match) - Checks model name, ID, and tags for style indicators - Examples: - 'anime girl' → selects anime-optimized models/LoRAs - 'photorealistic portrait' → selects realism models - 'cyberpunk city' → selects sci-fi models/LoRAs This allows --auto mode to intelligently select models based on the artistic style requested in the prompt.
-
Stefy Lanza (nextime / spora ) authored
- Remove deprecated eventlet dependency - Use threading mode for Flask-SocketIO instead of eventlet - eventlet is deprecated and has compatibility issues with Python 3.13 - Threading mode works reliably on all Python versions This fixes the RuntimeError: Working outside of application context errors when running webapp.py on Python 3.13.
-
Stefy Lanza (nextime / spora ) authored
The generate_music() function now supports two backends: 1. audiocraft (preferred): - Original MusicGen implementation - Works on Python 3.12 and lower - Falls back to transformers if not available 2. transformers (fallback): - Uses HuggingFace transformers library - Works on Python 3.13+ - No spacy/blis dependency issues The function automatically: - Tries audiocraft first (if available) - Falls back to transformers if audiocraft fails or is not installed - Provides clear error messages if neither backend is available This allows MusicGen music generation to work on Python 3.13 without the problematic audiocraft → spacy → thinc → blis dependency chain.
-
Stefy Lanza (nextime / spora ) authored
audiocraft (MusicGen) is NOT compatible with Python 3.13 due to: - audiocraft → spacy → thinc → blis - blis fails to compile with GCC errors: unrecognized '-mavx512pf' option - This is a known issue with blis and newer GCC/Python versions Updated requirements.txt to: - Remove audiocraft from direct dependencies - Add note about Python 3.13 incompatibility - Suggest using Python 3.12 or lower for audiocraft - Or use a separate Python 3.12 environment for music generation
-
Stefy Lanza (nextime / spora ) authored
Added comprehensive system dependencies section for Debian/Ubuntu: Required system packages: - build-essential, cmake, pkg-config (build tools) - ffmpeg (video processing) - libavformat-dev, libavcodec-dev, libavdevice-dev, libavutil-dev - libavfilter-dev, libswscale-dev, libswresample-dev (FFmpeg dev libs) - libsdl2-dev, libssl-dev, libcurl4-openssl-dev - python3-dev These are required for: - PyAV (av package) - needed by audiocraft/MusicGen - face-recognition (dlib) - Building Python extensions Updated quick install instructions to include system dependencies step.
-
Stefy Lanza (nextime / spora ) authored
Updated all package versions to be compatible with Python 3.12 and 3.13: Core Dependencies: - torch>=2.2.0 (was 2.0.0) - torchvision>=0.17.0 (was 0.15.0) - torchaudio>=2.2.0 (was 2.0.0) - diffusers>=0.32.0 (was 0.30.0) - transformers>=4.40.0 (was 4.35.0) - accelerate>=0.27.0 (was 0.24.0) - xformers>=0.0.25 (was 0.0.22) - spandrel>=0.2.0 (was 0.1.0) - ftfy>=6.2.0 (was 6.1.0) - Pillow>=10.2.0 (was 10.0.0) - safetensors>=0.4.2 (was 0.4.0) - huggingface-hub>=0.23.0 (was 0.19.0) - peft>=0.10.0 (was 0.7.0) - numpy>=1.26.0 (added for Python 3.12+ compatibility) Audio Dependencies: - scipy>=1.12.0 (was 1.11.0) - librosa>=0.10.2 (was 0.10.0) - edge-tts>=6.1.10 (was 6.1.0) Web Interface: - flask>=3.0.2 (was 3.0.0) - flask-socketio>=5.3.6 (was 5.3.0) - eventlet>=0.36.0 (was 0.33.0) - python-socketio>=5.11.0 (was 5.10.0) - werkzeug>=3.0.1 (was 3.0.0) Added detailed installation notes for Python 3.12+ including: - PyTorch nightly installation for CUDA - xformers --pre flag for Python 3.13 - Git installation for diffusers/transformers - Quick install commands
-
Stefy Lanza (nextime / spora ) authored
Some models on HuggingFace are not full pipelines but just fine-tuned components (e.g., just the transformer weights). These have a config.json at root level with _class_name pointing to a component class like 'LTXVideoTransformer3DModel'. This fix adds: 1. Detection of component-only models: - Check for config.json at root level - Read _class_name to determine component type - Detect if it's a transformer, VAE, or other component 2. Proper loading strategy: - Load the base pipeline first (e.g., Lightricks/LTX-Video) - Then load the fine-tuned component from the model repo - Replace the base component with the fine-tuned one 3. Supported component classes: - LTXVideoTransformer3DModel → Lightricks/LTX-Video - AutoencoderKLLTXVideo → Lightricks/LTX-Video - UNet2DConditionModel, UNet3DConditionModel, AutoencoderKL This allows loading models like Muinez/ltxvideo-2b-nsfw which are fine-tuned transformer weights without a full pipeline structure.
-
Stefy Lanza (nextime / spora ) authored
When a model has component folders (transformer, vae, etc.) but no model_index.json at the root level, the loading would fail. This fix adds: 1. Base model fallback strategy: - Detect model type from model ID (ltx, wan, svd, cogvideo, mochi) - Load the known base model first - Then attempt to load fine-tuned components from the target model 2. Component detection and loading: - List files in the repo to find component folders - Load transformer, VAE components from the fine-tuned model - Fall back to base model if component loading fails 3. Better error messages: - Clear indication of what went wrong - Suggestions for alternative models This fixes loading of models like Muinez/ltxvideo-2b-nsfw which have all component folders but are missing the model_index.json file.
-
Stefy Lanza (nextime / spora ) authored
System Load Detection: - Added get_system_load() method to detect CPU, memory, and GPU utilization - CPU load >80% adds 50% slowdown, >50% adds 20% slowdown - Memory >90% adds 80% slowdown, >75% adds 40% slowdown - GPU utilization >80% adds 60% slowdown, >50% adds 30% slowdown - Warning displayed when system is under heavy load More Conservative Base Estimates: - WanPipeline: 3.0s → 5.0s/frame - MochiPipeline: 5.0s → 8.0s/frame - SVD: 1.5s → 2.5s/frame - CogVideoX: 4.0s → 6.0s/frame - LTXVideo: 4.0s → 6.0s/frame - Flux: 8.0s → 12.0s/frame - Allegro: 8.0s → 12.0s/frame - Hunyuan: 10.0s → 15.0s/frame - OpenSora: 6.0s → 10.0s/frame More Conservative GPU Tier Multipliers: - extreme: 1.0 → 1.2x - high: 1.5 → 2.0x - medium: 2.5 → 3.5x - low: 4.0 → 5.0x - very_low: 8.0 → 10.0x More Conservative Model Loading Times: - Huge (>50GB): 10min → 15min - Large (30-50GB): 5min → 8min - Medium (16-30GB): 3min → 5min - Small (<16GB): 1.5min → 3min - Download estimate: 15s/GB → 30s/GB Additional Safety Margins: - Overhead increased from 30% to 50% - I2V processing overhead increased from 20% to 30% - Added 20% safety margin for unpredictable factors - Load factor applied to model loading time as well
-
Stefy Lanza (nextime / spora ) authored
- Increased base time per frame for all models (2-4x more realistic) - Added LTXVideoPipeline specific estimate (4.0s/frame) - Increased model loading times (90s-10min based on model size) - Added realistic image model loading times for I2V mode - Added image generation time based on model type (Flux, SDXL, SD3) - Added 30% overhead for I/O and memory operations - Added 20% extra time for I2V processing - Increased resolution scaling factor to 1.3 (quadratic relationship) - Increased download time estimate to 15s/GB with 2min cap The previous estimates were too optimistic and didn't account for: - Full diffusion process (multiple denoising steps) - Model loading from disk/download - Memory management overhead - I2V-specific processing time - Image model loading for I2V mode
-