pip install tritonclient[all]
pip install matplotlib
vim config.json
使用以下命令可查看MindIE Benchmark的安装路径。
pip show mindiebenchmark
config.json文件如下所示:
{ "INSTANCE_PATH": "./instance", # Benchmark结果保存路径 "LOG_PATH": "./instance", # 日志保存路径 "LOG_LEVEL": "DEBUG", # 日志等级 "CA_CERT": "/path/to/cacert.pem", # 验签证书文件路径 "KEY_FILE": "/path/to/cacert.pem.key", # 客户端私钥文件路径 "CERT_FILE": "/path/to/client.pem", # 客户端证书文件路径 "CRL_FILE": "/path/to/crl.pem", # 客户端吊销列表路径 "ENABLE_MANAGEMENT": false, # 管理端口使能 "MAX_LINK_NUM": 1000 # 服务端最大连接数(当前最大支持1000) }
参数 |
参数类型 |
说明 |
---|---|---|
INSTANCE_PATH |
String |
MindIE Benchmark结果保存路径,默认保存在./instance。 |
LOG_PATH |
String |
MindIE Benchmark日志保存路径,默认保存在./instance。 |
LOG_LEVEL |
String |
日志等级,默认为DEBUG。 其他等级为"INFO"、"WARNING"、"ERROR"和"CRITICAL"。 |
CA_CERT |
String |
验签证书文件路径,为MindIE Server服务端证书的验签证书/根证书。 当使用MindIE Benchmark的Client推理模式且MindIE Server的配置参数httpsEnabled为true时,必须配置。 |
KEY_FILE |
String |
客户端私钥文件路径。 当使用MindIE Benchmark的Client推理模式且MindIE Server的配置参数httpsEnabled为true时,必须配置。 |
CERT_FILE |
String |
客户端证书文件路径。 当使用MindIE Benchmark的Client推理模式且MindIE Server的配置参数httpsEnabled为true时,必须配置。 |
CRL_FILE |
String |
客户端吊销列表证书文件路径。 可选配置,当使用MindIE Benchmark的Client推理模式且MindIE Server的配置参数httpsEnabled为true时,会校验验签证书是否在吊销列表内。 |
ENABLE_MANAGEMENT |
bool |
MindIE Benchmark管理端口使能。 MindIE Benchmark是否通过管理端口查询服务端健康状态。 默认值:false |
MAX_LINK_NUM |
Int |
服务端最大连接数,默认为1000。当前支持最大连接数为1000,不可配置超过1000。 |
合成数据自动生成,指定输入token数量后,将生成内容全为 "A" 的数据作为prompt,中间用空格连接(例如:token数量为5,则对应的合成数据为 "A A A A A")。输出数据的token数量也可以指定,此时模型不会因为结束符eos而停止输出。
vim synthetic_config.json
{ "Input":{ "Method": "uniform", "Params": {"MinValue": 1, "MaxValue": 200} }, "Output": { "Method": "gaussian", "Params": {"Mean": 100, "Var": 200, "MinValue": 1, "MaxValue": 100} }, "RequestCount": 100 }
其中,采样的的可选采样方法和对应的参数请参见表2。
名称 |
采样方法(Method) |
参数(Params) |
---|---|---|
均匀分布 |
uniform |
{"MinValue": 最小值, "MaxValue": 最大值} |
高斯分布 |
gaussian |
{"Mean": 均值, "Var": 方差, "MinValue": 最小值, "MaxValue": 最大值} |
zipf分布 |
zipf |
{"Alpha": Zipf参数, "MinValue": 最小值, "MaxValue": 最大值} |
其中,使用各种采样方法采样后的数字将再通过MinValue和MaxValue进行截断,确保采样的数值在[MinValue, MaxValue]范围内。MinValue和MaxValue为对应的token数量,具体的取值范围请参见表3,计数时只计算增量Token的数量。
参数 |
含义 |
取值范围 |
---|---|---|
Input |
输入配置 |
- |
Output |
输出配置 |
- |
RequestCount |
请求次数,即样本数量 |
[1,1048576] |
Method |
采样方法 |
取值如下:
|
Params |
采样方法中对应的采样参数 |
取值详情请参见表2。 |
"Input" 中的 "MinValue" |
token数量最小值 |
[1,1048576] |
"Input" 中的 "MaxValue" |
token数量最大值 |
[1,1048576] |
"Output" 中的 "MinValue" |
token数量最小值 |
[1,1048576] |
"Output" 中的 "MaxValue" |
token数量最大值 |
[1,1048576] |
"gaussian" 中的 "Mean" |
高斯分布均值 |
[-3.0 x 10^38, 3.0 x 10^38] |
"gaussian" 中的 "Var" |
高斯分布方差 |
[0, 3.0 x 10^38] |
"zipf" 中的 "Alpha" |
zipf分布Alpha系数 |
(1.0,10.0] |
注:1048576 = 2^20 = 1 M。 |