Fahimeh Orvati Nia
Fix storage limit by caching to /tmp
7ac2007
#!/usr/bin/env python3
"""
Cleanup script for Hugging Face Spaces to remove cached models and free up storage.
Run this if you encounter storage limit errors.
"""
import os
import shutil
from pathlib import Path
def get_size(path):
"""Get size of directory in GB."""
total = 0
try:
for entry in os.scandir(path):
if entry.is_file(follow_symlinks=False):
total += entry.stat().st_size
elif entry.is_dir(follow_symlinks=False):
total += get_size(entry.path)
except PermissionError:
pass
return total / (1024**3) # Convert to GB
def cleanup():
"""Remove cache directories to free up space."""
cache_dirs = [
Path.home() / ".cache" / "huggingface",
Path.home() / ".cache" / "torch",
Path("/tmp/huggingface_cache"),
Path("/tmp/torch_cache"),
]
total_freed = 0
for cache_dir in cache_dirs:
if cache_dir.exists():
size = get_size(str(cache_dir))
print(f"Removing {cache_dir} ({size:.2f} GB)...")
try:
shutil.rmtree(cache_dir)
total_freed += size
print(f" ✓ Removed")
except Exception as e:
print(f" ✗ Failed: {e}")
print(f"\nTotal space freed: {total_freed:.2f} GB")
if __name__ == "__main__":
cleanup()