"""Chinese GroundingPI Studio with a pinned public checkpoint.""" import os from grounding_demo.client import zerogpu_configured from grounding_demo.model_spec import MODEL_REPO, MODEL_REVISION, MODEL_NAME os.environ.setdefault("GROUNDING_BACKEND", "zerogpu") if not os.getenv("GROUNDING_MODEL_PATH"): # This release deliberately replaces the older Space's model variables. os.environ["GROUNDING_MODEL_REPO"] = MODEL_REPO os.environ["GROUNDING_MODEL_REVISION"] = MODEL_REVISION os.environ["GROUNDING_MODEL"] = MODEL_NAME os.environ["GROUNDING_BACKEND"] = os.environ["GROUNDING_BACKEND"].strip().lower() os.environ.setdefault("GRADIO_ANALYTICS_ENABLED", "False") if os.environ["GROUNDING_BACKEND"] == "zerogpu" and zerogpu_configured(): from grounding_demo import zerogpu_backend # noqa: F401 - install hooks and load model # Unconfigured CPU preview needs no spaces/torch import. Configured serving still # places the model at startup, before Gradio, never lazily inside a GPU request. from app import demo if __name__ == "__main__": demo.queue(default_concurrency_limit=1, max_size=8).launch( server_name="0.0.0.0", server_port=int(os.getenv("DEMO_PORT", "7860")), root_path=os.getenv("DEMO_ROOT_PATH") or None, max_file_size="30mb", show_error=True, )