Spaces:
Running
on
Zero
Running
on
Zero
| import os | |
| import sys | |
| from pathlib import Path | |
| # This app.py switches the Space to run the NNGen Gradio UI | |
| # located in NNGen/scripts/gradio_app.py (added to the repo). | |
| # It keeps the Space configuration (sdk: gradio, app_file: app.py) intact. | |
| HERE = Path(__file__).parent.resolve() | |
| NNGEN_ROOT = HERE / "NNGen" | |
| # Ensure NNGen is on sys.path so we can import its packages | |
| if str(NNGEN_ROOT) not in sys.path: | |
| sys.path.insert(0, str(NNGEN_ROOT)) | |
| try: | |
| from scripts.gradio_app import app as nn_app | |
| except Exception as e: | |
| # Provide a clear error in the UI instead of crashing silently | |
| import gradio as gr | |
| def _err_ui(): | |
| with gr.Blocks(title="NNGen — Error") as demo: | |
| gr.Markdown( | |
| f""" | |
| ## Failed to import NNGen app | |
| - Error: {type(e).__name__}: {e} | |
| - Expected path: {NNGEN_ROOT} | |
| - Ensure the NNGen folder exists in the Space and contains `scripts/gradio_app.py`. | |
| """ | |
| ) | |
| return demo | |
| demo = _err_ui() | |
| else: | |
| demo = nn_app() | |
| if __name__ == "__main__": | |
| port = int(os.getenv("PORT", "7860")) | |
| demo.launch(server_name="0.0.0.0", server_port=port) | |