- 集成Kronos模型(mini/small/base) - 支持CPU/CUDA/MPS设备选择 - 时间窗口滑条选择器(400+120固定窗口) - 预测质量参数控制(Temperature, Top-P, Sample Count) - 预测vs实际数据对比分析 - 完整的Flask后端和现代化前端界面 - 支持CSV和Feather格式数据文件 - 完整的启动脚本和文档
136 lines
3.4 KiB
Markdown
136 lines
3.4 KiB
Markdown
# Kronos Web UI
|
||
|
||
Kronos金融预测模型的Web用户界面,提供直观的图形化操作界面。
|
||
|
||
## ✨ 功能特性
|
||
|
||
- **多格式数据支持**: 支持CSV、Feather等格式的金融数据
|
||
- **智能时间窗口**: 固定400+120数据点的时间窗口滑条选择
|
||
- **真实模型预测**: 集成真实的Kronos模型,支持多种模型大小
|
||
- **预测质量控制**: 可调节温度、核采样、样本数量等参数
|
||
- **多设备支持**: 支持CPU、CUDA、MPS等计算设备
|
||
- **对比分析**: 预测结果与实际数据的详细对比
|
||
- **K线图显示**: 专业的金融K线图表展示
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 方法1: 使用Python脚本启动
|
||
```bash
|
||
cd webui
|
||
python run.py
|
||
```
|
||
|
||
### 方法2: 使用Shell脚本启动
|
||
```bash
|
||
cd webui
|
||
chmod +x start.sh
|
||
./start.sh
|
||
```
|
||
|
||
### 方法3: 直接启动Flask应用
|
||
```bash
|
||
cd webui
|
||
python app.py
|
||
```
|
||
|
||
启动成功后,访问 http://localhost:7070
|
||
|
||
## 📋 使用步骤
|
||
|
||
1. **加载数据**: 选择data目录中的金融数据文件
|
||
2. **加载模型**: 选择Kronos模型和计算设备
|
||
3. **设置参数**: 调整预测质量参数
|
||
4. **选择时间窗口**: 使用滑条选择400+120数据点的时间范围
|
||
5. **开始预测**: 点击预测按钮生成结果
|
||
6. **查看结果**: 在图表和表格中查看预测结果
|
||
|
||
## 🔧 预测质量参数
|
||
|
||
### 温度 (T)
|
||
- **范围**: 0.1 - 2.0
|
||
- **作用**: 控制预测的随机性
|
||
- **建议**: 1.2-1.5 获得更好的预测质量
|
||
|
||
### 核采样 (top_p)
|
||
- **范围**: 0.1 - 1.0
|
||
- **作用**: 控制预测的多样性
|
||
- **建议**: 0.95-1.0 考虑更多可能性
|
||
|
||
### 样本数量
|
||
- **范围**: 1 - 5
|
||
- **作用**: 生成多个预测样本
|
||
- **建议**: 2-3 个样本提高质量
|
||
|
||
## 📊 支持的数据格式
|
||
|
||
### 必需列
|
||
- `open`: 开盘价
|
||
- `high`: 最高价
|
||
- `low`: 最低价
|
||
- `close`: 收盘价
|
||
|
||
### 可选列
|
||
- `volume`: 成交量
|
||
- `amount`: 成交额(不用于预测)
|
||
- `timestamps`/`timestamp`/`date`: 时间戳
|
||
|
||
## 🤖 模型支持
|
||
|
||
- **Kronos-mini**: 4.1M参数,轻量级快速预测
|
||
- **Kronos-small**: 24.7M参数,平衡性能和速度
|
||
- **Kronos-base**: 102.3M参数,高质量预测
|
||
|
||
## 🖥️ GPU加速支持
|
||
|
||
- **CPU**: 通用计算,兼容性最好
|
||
- **CUDA**: NVIDIA GPU加速,性能最佳
|
||
- **MPS**: Apple Silicon GPU加速,Mac用户推荐
|
||
|
||
## ⚠️ 注意事项
|
||
|
||
- `amount`列不会被用于预测,仅用于显示
|
||
- 时间窗口固定为400+120=520个数据点
|
||
- 确保数据文件包含足够的历史数据
|
||
- 首次加载模型可能需要下载,请耐心等待
|
||
|
||
## 🔍 对比分析
|
||
|
||
系统会自动提供预测结果与实际数据的对比分析,包括:
|
||
- 价格差异统计
|
||
- 误差分析
|
||
- 预测质量评估
|
||
|
||
## 🛠️ 技术架构
|
||
|
||
- **后端**: Flask + Python
|
||
- **前端**: HTML + CSS + JavaScript
|
||
- **图表**: Plotly.js
|
||
- **数据处理**: Pandas + NumPy
|
||
- **模型**: Hugging Face Transformers
|
||
|
||
## 📝 故障排除
|
||
|
||
### 常见问题
|
||
1. **端口占用**: 修改app.py中的端口号
|
||
2. **依赖缺失**: 运行 `pip install -r requirements.txt`
|
||
3. **模型加载失败**: 检查网络连接和模型ID
|
||
4. **数据格式错误**: 确保数据列名和格式正确
|
||
|
||
### 日志查看
|
||
启动时会在控制台显示详细的运行信息,包括模型状态和错误信息。
|
||
|
||
## 📄 许可证
|
||
|
||
本项目遵循原Kronos项目的许可证条款。
|
||
|
||
## 🤝 贡献
|
||
|
||
欢迎提交Issue和Pull Request来改进这个Web UI!
|
||
|
||
## 📞 支持
|
||
|
||
如有问题,请查看:
|
||
1. 项目文档
|
||
2. GitHub Issues
|
||
3. 控制台错误信息
|