dreamland / app.py
panda-lsy
fix: move @spaces.GPU to app.py for ZeroGPU detection
f4a1f39
Raw
History Blame Contribute Delete
1.23 kB
"""DreamLand - AI Dream RPG Engine. HF Spaces entry point."""
import os
import logging
logging.basicConfig(level=logging.INFO)
# Sync data from HF Buckets on startup (if available)
from core.persistence import sync_from_bucket
sync_from_bucket()
# ===== ZeroGPU: @spaces.GPU must be in app.py for startup detection =====
try:
import spaces
@spaces.GPU(duration=120)
def gpu_generate(prompt: str, max_tokens: int = None) -> str:
"""Generate text using GPU. Detected by ZeroGPU at startup."""
from core.gpu_generate import _load_and_generate
return _load_and_generate(prompt, max_tokens)
except ImportError:
# Local development fallback
def gpu_generate(prompt: str, max_tokens: int = None) -> str:
from core.gpu_generate import _load_and_generate
return _load_and_generate(prompt, max_tokens)
# Register the generate function globally so model_manager can find it
import core.gpu_generate
core.gpu_generate.gpu_generate = gpu_generate
from ui.main import create_app
app = create_app()
if __name__ == "__main__":
app.launch(
server_name="0.0.0.0",
server_port=int(os.environ.get("GRADIO_SERVER_PORT", "7860")),
show_error=True,
)