Download webui/run.py from sgfw/kronos: direct link, hf CLI and curl.
- Browser
- Download file 2.8 kB
-
https://huggingface.co/spaces/sgfw/kronos/resolve/main/webui/run.py
- Command line
-
hf download hf://spaces/sgfw/kronos/webui/run.py
-
curl -L -o run.py https://huggingface.co/spaces/sgfw/kronos/resolve/main/webui/run.py
2.8 kB
| #!/usr/bin/env python3 | |
| """ | |
| Kronos Web UI startup script | |
| """ | |
| import os | |
| import sys | |
| import subprocess | |
| import webbrowser | |
| import time | |
| def check_dependencies(): | |
| """Check if dependencies are installed""" | |
| try: | |
| import flask | |
| import flask_cors | |
| import pandas | |
| import numpy | |
| import plotly | |
| print("β All dependencies installed") | |
| return True | |
| except ImportError as e: | |
| print(f"β Missing dependency: {e}") | |
| print("Please run: pip install -r requirements.txt") | |
| return False | |
| def install_dependencies(): | |
| """Install dependencies""" | |
| print("Installing dependencies...") | |
| try: | |
| subprocess.check_call([sys.executable, "-m", "pip", "install", "-r", "requirements.txt"]) | |
| print("β Dependencies installation completed") | |
| return True | |
| except subprocess.CalledProcessError: | |
| print("β Dependencies installation failed") | |
| return False | |
| def main(): | |
| """Main function""" | |
| print("π Starting Kronos Web UI...") | |
| print("=" * 50) | |
| # Check dependencies | |
| if not check_dependencies(): | |
| print("\nAuto-install dependencies? (y/n): ", end="") | |
| if input().lower() == 'y': | |
| if not install_dependencies(): | |
| return | |
| else: | |
| print("Please manually install dependencies and retry") | |
| return | |
| # Check model availability | |
| try: | |
| sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | |
| from model import Kronos, KronosTokenizer, KronosPredictor | |
| print("β Kronos model library available") | |
| model_available = True | |
| except ImportError: | |
| print("β οΈ Kronos model library not available, will use simulated prediction") | |
| model_available = False | |
| # Start Flask application | |
| print("\nπ Starting Web server...") | |
| # Set environment variables | |
| os.environ['FLASK_APP'] = 'app.py' | |
| os.environ['FLASK_ENV'] = 'development' | |
| # Start server | |
| try: | |
| from app import app | |
| print("β Web server started successfully!") | |
| port = int(os.getenv('PORT', '7860')) | |
| print(f"π Access URL: http://localhost:{port}") | |
| print("π‘ Tip: Press Ctrl+C to stop server") | |
| # Auto-open browser | |
| time.sleep(2) | |
| if os.getenv('OPEN_BROWSER', 'false').lower() == 'true': | |
| webbrowser.open(f'http://localhost:{port}') | |
| # Start Flask application | |
| app.run(debug=os.getenv('FLASK_DEBUG', 'false').lower() == 'true', host='0.0.0.0', port=port) | |
| except Exception as e: | |
| print(f"β Startup failed: {e}") | |
| print("Please check whether the configured PORT is occupied") | |
| if __name__ == "__main__": | |
| main() | |