crypt / webui /README.md
heyunfei's picture
Upload 56 files
85653bc verified

Kronos Web UI

Web user interface for Kronos financial prediction model, providing intuitive graphical operation interface.

✨ Features

  • Multi-format data support: Supports CSV, Feather and other financial data formats
  • Smart time window: Fixed 400+120 data point time window slider selection
  • Real model prediction: Integrated real Kronos model, supports multiple model sizes
  • Prediction quality control: Adjustable temperature, nucleus sampling, sample count and other parameters
  • Multi-device support: Supports CPU, CUDA, MPS and other computing devices
  • Comparison analysis: Detailed comparison between prediction results and actual data
  • K-line chart display: Professional financial K-line chart display

πŸš€ Quick Start

Method 1: Start with Python script

cd webui
python run.py

Method 2: Start with Shell script

cd webui
chmod +x start.sh
./start.sh

Method 3: Start Flask application directly

cd webui
python app.py

After successful startup, visit http://localhost:7070

πŸ“‹ Usage Steps

  1. Load data: Select financial data file from data directory
  2. Load model: Select Kronos model and computing device
  3. Set parameters: Adjust prediction quality parameters
  4. Select time window: Use slider to select 400+120 data point time range
  5. Start prediction: Click prediction button to generate results
  6. View results: View prediction results in charts and tables

πŸ”§ Prediction Quality Parameters

Temperature (T)

  • Range: 0.1 - 2.0
  • Effect: Controls prediction randomness
  • Recommendation: 1.2-1.5 for better prediction quality

Nucleus Sampling (top_p)

  • Range: 0.1 - 1.0
  • Effect: Controls prediction diversity
  • Recommendation: 0.95-1.0 to consider more possibilities

Sample Count

  • Range: 1 - 5
  • Effect: Generate multiple prediction samples
  • Recommendation: 2-3 samples to improve quality

πŸ“Š Supported Data Formats

Required Columns

  • open: Opening price
  • high: Highest price
  • low: Lowest price
  • close: Closing price

Optional Columns

  • volume: Trading volume
  • amount: Trading amount (not used for prediction)
  • timestamps/timestamp/date: Timestamp

πŸ€– Model Support

  • Kronos-mini: 4.1M parameters, lightweight fast prediction
  • Kronos-small: 24.7M parameters, balanced performance and speed
  • Kronos-base: 102.3M parameters, high quality prediction

πŸ–₯️ GPU Acceleration Support

  • CPU: General computing, best compatibility
  • CUDA: NVIDIA GPU acceleration, best performance
  • MPS: Apple Silicon GPU acceleration, recommended for Mac users

⚠️ Notes

  • amount column is not used for prediction, only for display
  • Time window is fixed at 400+120=520 data points
  • Ensure data file contains sufficient historical data
  • First model loading may require download, please be patient

πŸ” Comparison Analysis

The system automatically provides comparison analysis between prediction results and actual data, including:

  • Price difference statistics
  • Error analysis
  • Prediction quality assessment

πŸ› οΈ Technical Architecture

  • Backend: Flask + Python
  • Frontend: HTML + CSS + JavaScript
  • Charts: Plotly.js
  • Data processing: Pandas + NumPy
  • Model: Hugging Face Transformers

πŸ“ Troubleshooting

Common Issues

  1. Port occupied: Modify port number in app.py
  2. Missing dependencies: Run pip install -r requirements.txt
  3. Model loading failed: Check network connection and model ID
  4. Data format error: Ensure data column names and format are correct

Log Viewing

Detailed runtime information will be displayed in the console at startup, including model status and error messages.

πŸ“„ License

This project follows the license terms of the original Kronos project.

🀝 Contributing

Welcome to submit Issues and Pull Requests to improve this Web UI!

πŸ“ž Support

If you have questions, please check:

  1. Project documentation
  2. GitHub Issues
  3. Console error messages