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