Add README.md
This commit is contained in:
108
README.md
108
README.md
@@ -1,3 +1,107 @@
|
||||
# benchmark-chart
|
||||
# Benchmark Chart — AI 模型基准测试对比图生成器
|
||||
|
||||
AI模型基准测试对比图生成器 — matploblib 分组柱状图
|
||||
一键生成类似 Qwen/Gemma 官方风格的 AI 模型基准测试对比图。
|
||||
|
||||
## 效果预览
|
||||
|
||||

|
||||
|
||||
## 功能特性
|
||||
|
||||
- 12 个基准测试自动排列为 3×4(或自定义行列)网格
|
||||
- **分组柱状图**:MoE(混合专家)和 Dense(稠密)模型分组对比
|
||||
- 虚线分隔 + 组标签,一目了然
|
||||
- 最高分自动标注
|
||||
- 底部统一图例,颜色可自定义
|
||||
- 薄荷绿背景,现代扁平风格
|
||||
|
||||
## 快速开始
|
||||
|
||||
```bash
|
||||
# 安装依赖
|
||||
pip install matplotlib
|
||||
|
||||
# 用示例数据生成
|
||||
python benchmark_chart.py -c sample_data.py -o output.png
|
||||
|
||||
# 自定义配置
|
||||
python benchmark_chart.py -c my_data.py -o result.png --dpi 200 --width 28 --height 18
|
||||
```
|
||||
|
||||
## 数据格式
|
||||
|
||||
支持 `.py` / `.json` / `.yaml` 三种配置格式。推荐 `.py`,可以用变量减少重复:
|
||||
|
||||
```python
|
||||
# my_data.py
|
||||
TITLE = "My Model Comparison"
|
||||
|
||||
COLORS = {
|
||||
"model_a": "#5B2D8E",
|
||||
"model_b": "#06B6D4",
|
||||
}
|
||||
|
||||
BENCHMARKS = [
|
||||
{
|
||||
"title": "Benchmark Name",
|
||||
"subtitle": "Short Description",
|
||||
"models": [
|
||||
{
|
||||
"name": "Full Model Name", # 图例显示
|
||||
"short_label": "Short", # 柱子下方标签
|
||||
"group": "moe", # "moe" 或 "dense"
|
||||
"score": 85.5, # 分数
|
||||
"color_key": "model_a", # 对应 COLORS 中的 key
|
||||
},
|
||||
# ... 更多模型
|
||||
],
|
||||
},
|
||||
# ... 更多基准测试
|
||||
]
|
||||
```
|
||||
|
||||
### 配置项说明
|
||||
|
||||
| 字段 | 说明 |
|
||||
|------|------|
|
||||
| `TITLE` | 总标题(顶部居中) |
|
||||
| `COLORS` | `{color_key: hex颜色}` 映射 |
|
||||
| `BG_COLOR` | 背景色(默认 `#E8F5E9`) |
|
||||
| `BAR_WIDTH` | 柱子宽度(默认 `0.55`) |
|
||||
| `NCOLS` | 每行列数(默认 `4`) |
|
||||
| `BENCHMARKS` | 基准测试列表 |
|
||||
|
||||
每个 benchmark 中每个 model 的字段:
|
||||
| 字段 | 说明 |
|
||||
|------|------|
|
||||
| `name` | 完整名称(图例) |
|
||||
| `short_label` | 短标签(柱下方,支持 `\n` 换行) |
|
||||
| `group` | `"moe"` 或 `"dense"` |
|
||||
| `score` | 数值 |
|
||||
| `color_key` | 颜色映射 key |
|
||||
|
||||
## 命令行参数
|
||||
|
||||
```
|
||||
-c, --config 数据配置文件路径(必需)
|
||||
-o, --output 输出图片路径(默认 benchmark_chart.png)
|
||||
--dpi 分辨率(默认 200)
|
||||
--width 图片宽度,英寸(默认 24)
|
||||
--height 图片高度,英寸(默认 16)
|
||||
```
|
||||
|
||||
## 文件结构
|
||||
|
||||
```
|
||||
benchmark-chart/
|
||||
├── benchmark_chart.py # 主脚本
|
||||
├── sample_data.py # 示例数据
|
||||
├── output.png # 生成结果
|
||||
└── README.md
|
||||
```
|
||||
|
||||
## 依赖
|
||||
|
||||
- Python 3.8+
|
||||
- matplotlib
|
||||
- (可选) PyYAML — 如果用 `.yaml` 配置
|
||||
|
||||
Reference in New Issue
Block a user