Spaces:
Paused
Paused
| from __future__ import annotations | |
| import threading | |
| import time | |
| import webbrowser | |
| import uvicorn | |
| from .app import app | |
| from .config import load_config | |
| def _open_browser_later(url: str, delay: float = 1.5): | |
| def _opener(): | |
| time.sleep(delay) | |
| try: | |
| webbrowser.open(url) | |
| except Exception: | |
| pass | |
| t = threading.Thread(target=_opener, daemon=True) | |
| t.start() | |
| if __name__ == "__main__": | |
| cfg = load_config() | |
| port = int(cfg.port or 11451) | |
| url = f"http://127.0.0.1:{port}" | |
| _open_browser_later(url) | |
| # 直接传 app 实例,避免模块路径问题 | |
| uvicorn.run(app, host="127.0.0.1", port=port, reload=False) |