README.md 2.61 KB
Newer Older
yanke_chen's avatar
yanke_chen committed
1
# DataAnalysis
2
## 概述
sharkgene@qq.com's avatar
sharkgene@qq.com committed
3
将大模型推理测试生成的excel数据文件,按照特定方式生成柱状图进行比较
yanke_chen's avatar
yanke_chen committed
4

sharkgene@qq.com's avatar
sharkgene@qq.com committed
5
配置文件data_config.json示例说明:
yanke_chen's avatar
yanke_chen committed
6
```
sharkgene@qq.com's avatar
sharkgene@qq.com committed
7
8
9
10
11
12
{
  "filter": {
    "并发数": [],
    "模型": []

  },
13
14
15
16
  "dist_cols": ["模型", "卡数"],
  "group_cols": [["并发数"], ["输入长度(tokens)", "输出长度(tokens)"]],
  "key_cols": ["卡类型", "vLLM版本", "V0/V1 Engine"],
  "metric_cols": ["平均首字延时TTFT(ms)", "平均生成时间TPOT(ms)", "生成吞吐量(tokens/s)", "总吞吐量(tokens/s)"],
sharkgene@qq.com's avatar
sharkgene@qq.com committed
17
18
  "files": [
    {
19
      "file": "t.xlsx",
sharkgene@qq.com's avatar
sharkgene@qq.com committed
20
21
22
23
      "sheets": [],
      "column_mapping": {
      },
      "column_replace": {
sharkgene@qq.com's avatar
sharkgene@qq.com committed
24
25
      },
      "column_add": {
sharkgene@qq.com's avatar
sharkgene@qq.com committed
26
27
28
29
30
      }
    }
  ]
}

31
filter: 过滤条件,不设置或者为空则不过滤, 主要用于复杂大表时只选择关注的数据
32
33
34
35
dist_cols: 选择输出文件的条件,例如["模型", "卡类型", "卡数"]则将相同的模型、卡类型和卡数的所有数据生成以个文件
group_cols: 可以进行最多2重分组,每层一个图,第2层以不同柱状显示数据。如果命令行参数指定合并,则所有合成一个图,分组之间间隔开
key_cols: 分组内的键值
metric_cols: 度量列,不设置缺省上述4个,会将所有非数值格式转换为0
36
files: 指定文件信息, 可以使用多个文件(可以参考sample.json)
sharkgene@qq.com's avatar
sharkgene@qq.com committed
37
38
    file: 文件名
    sheets: 可以指定处理的sheet,不指定则遍历所有
39
40
    column_mapping: 列名重映射,用于处理多个文件时表头信息略有差异的情况, 其他字段以重映射后的名字为准
    column_replace: 数据替换,用于处理不同文件命名规则不一致的情形, 过滤数据内容以替换后的为准
sharkgene@qq.com's avatar
sharkgene@qq.com committed
41
    column_add: 增加列数据,用于某些文件没有对应信息的,补充处理
42
43
参考配置说明:

yanke_chen's avatar
yanke_chen committed
44
```
sharkgene@qq.com's avatar
sharkgene@qq.com committed
45
## 使用方法
yanke_chen's avatar
yanke_chen committed
46
```
sharkgene@qq.com's avatar
sharkgene@qq.com committed
47
48
49
50
51
52
53
54
55
56
python3 plot_comparison.py --help
usage: plot_comparison.py [-h] [--配置 配置] [--输出目录 输出目录] [--合并分组]

绘制模型性能对比图表

options:
  -h, --help            show this help message and exit
  --配置 配置, -f 配置        数据配置文件路径
  --输出目录 输出目录, -d 输出目录  输出图表目录
  --合并分组, -m            将第一层分组合并到一张图中
yanke_chen's avatar
yanke_chen committed
57
```
58
59
60
61
62

## ToDo:
1、对度量列的数据,如果非数值类型,会直接设置为默认0,如果看柱状图发现异常可能是数据原因
2、如果根据条件筛选出来的有多组数据,目前是计算的平均值,需要注意避免因此得出错误的结论
3、目前仅内置了几组color_palette,如果出现重复或者想改配色,直接修改代码
sharkgene@qq.com's avatar
sharkgene@qq.com committed
63
##