"""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)")