PixelForge / imageforge /check_provider_priority.py
Gregorfun's picture
Initial commit
32c5da4
"""Check which providers are available"""
import os
import sys
os.environ['HF_HOME'] = 'd:/VSC Codes/Bild/.cache/hf'
os.environ['TRANSFORMERS_CACHE'] = 'd:/VSC Codes/Bild/.cache/hf'
sys.path.insert(0, 'd:/VSC Codes/Bild/imageforge')
from backend.app.providers.factory import ProviderRegistry
registry = ProviderRegistry()
print("Provider Availability Check:")
print("=" * 50)
for name, provider in registry._providers.items():
try:
available = provider.is_available()
status = "βœ“ AVAILABLE" if available else "βœ— NOT AVAILABLE"
print(f"{name:12s}: {status}")
if not available and name != "dummy":
print(f" ^ This provider should work but isn't available!")
except Exception as e:
print(f"{name:12s}: βœ— ERROR - {e}")
print("=" * 50)
# Check which provider would be used
print("\nFallback order from environment:")
fallback_order = os.getenv("IMAGEFORGE_FALLBACK_MODELS", "localai,diffusion,a1111,dummy")
print(f" {fallback_order}")
print("\nFirst available provider will be:")
for provider_name in fallback_order.split(","):
provider_name = provider_name.strip()
provider = registry.get(provider_name)
if provider.is_available():
print(f" βœ“ {provider_name} (WILL BE USED)")
break
else:
print(f" βœ— {provider_name} (skipped - not available)")