Commit Graph

8 Commits

Author SHA1 Message Date
f68ee52297 fix: allow .index.json files for sharded model linking
Updated find_model_files() to include .index.json files in the file
discovery logic. These files are essential for sharded models like
CogVideoX which split safetensors into multiple parts.

Changes:
- Modified JSON file filtering to allow files ending with .index.json
- Updated comment to document support for sharded model index files

Fixes automatic linking for:
- CogVideoX-5b (3 files including index.json)
- CogVideoX-5b-I2V (4 files including index.json)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 16:04:19 +01:00
94e2326158 fix: follow symlinks when calculating model disk usage
HuggingFace models use symlinks pointing to blobs in the cache. The stat
command was returning the size of the symlink itself (76 bytes) instead of
the actual file it points to.

Fixed by:
- Adding -L flag to stat commands to follow symlinks
- Testing which stat format works (Linux -c vs macOS -f) before executing
- Using proper spacing and quotes in stat commands
- Checking for both regular files and symlinks in the condition

This fixes disk usage showing as 1 KB instead of the actual ~50+ GB for models
like FLUX.
2025-11-25 15:21:27 +01:00
33e0a0f2d0 fix: resolve stat command multi-line output breaking verify command
The stat command was producing multi-line output which broke the pipe-delimited
return format of verify_model_download(). Fixed by:
- Testing which stat format works (Linux vs macOS) before executing
- Using proper format flags to get single-line date output
- Defaulting to 'Unknown' instead of relying on fallback chain

This fixes the issue where all models showed as 'NOT DOWNLOADED' even when
present in the cache.
2025-11-25 15:14:01 +01:00
56f1ee8c69 debug: add bash-level debugging to verify_model_download 2025-11-25 15:06:30 +01:00
4500228941 fix: add comprehensive error logging to find_model_files for verify command
The verify command was showing all models as "NOT DOWNLOADED" because find_model_files()
was exiting silently without diagnostic output. This made debugging impossible.

Changes:
- Added detailed error messages to Python script in find_model_files()
  - Reports which directories were checked and why they failed
  - Shows actual vs expected paths for model/snapshots directories
  - Includes DEBUG messages showing which snapshot is being used
  - Warns when no files match the filter

- Modified verify_model_download() to capture and display stderr
  - Changed from suppressing stderr (2>/dev/null) to capturing it (2>&1)
  - Filters ERROR/WARN/DEBUG prefixes from file paths
  - Logs diagnostic messages to stderr for visibility

This will help identify the actual cache structure mismatch causing verification failures.

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 14:45:57 +01:00
3308349e78 feat: add comprehensive verify command to HuggingFace downloader
Added new 'verify' command to artifact_huggingface_download.sh that performs comprehensive health checks on all downloaded models and their symlinks.

Features:
- Download status verification (existence, size, location, timestamps)
- Link status verification (valid, broken, or missing symlinks)
- Size mismatch detection (warns if actual differs >10% from expected)
- Per-model detailed logging with beautiful formatting
- Category-level and global statistics summaries
- Actionable fix suggestions for detected issues
- Disk space usage analysis

New Functions:
- get_model_disk_usage() - Calculate actual model file sizes
- format_bytes() - Human-readable size formatting
- verify_model_download() - Check model download status
- verify_model_links() - Verify symlink integrity
- verify_category() - Process category with verification
- display_verification_summary() - Show global results

Usage:
  artifact_huggingface_download.sh verify -c models.yaml

Output includes:
  ✓ Downloaded/Missing model counts
  ✓ Properly linked/Broken link statistics
  ✓ File sizes and locations
  ✓ Last modified timestamps
  ⚠️ Size mismatch warnings
  📊 Disk space usage per category
  💡 Fix suggestions with exact commands

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 13:33:37 +01:00
c31b1e87bd fix: allow config.json and tokenizer files for DiffRhythm models 2025-11-24 12:26:33 +01:00
a1548ed490 fix: correct typo in filename (hugginface -> huggingface)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 17:59:56 +01:00