MindIE Benchmark的Engine推理模式和Client推理模式输入参数说明如表1所示。
参数 |
参数类型 |
说明(Engine推理模式) |
说明(Client推理模式) |
---|---|---|---|
--DatasetPath |
String |
必选。 数据集文件所在的目录,根据数据集路径获取数据,解析后根据批次和分词标识进行处理。
|
必选。 数据集文件所在的目录;根据数据集路径获取数据,解析后根据批次和分词标识进行处理。 |
--DatasetType |
Enum |
必选。 数据集类型,枚举值:gsm8k、oasst1、boolq、truthfulqa、humaneval、mmlu、mtbench、cocotest和synthetic。 |
必选。 数据集类型,枚举值:gsm8k、oasst1、boolq、truthfulqa、humaneval、mmlu、mtbench、cocotest、synthetic、textvqa、videobench和vocalsound。 |
--ModelName |
String |
必选。 模型名称。与MindIE ServerModelConfig参数说明中的modelName参数保持一致。 |
必选。 模型名称;与MindIE ServerModelConfig参数说明中的modelName参数保持一致,用于client-sdk拼接得到endpoint对应的uri:/v2/models/{model-name}/{infer,generate,generate_stream}。 |
--ModelPath |
String |
必选。 模型路径;传递模型初始化配置。与MindIE ServerModelConfig参数说明中的modelWeightPath参数保持一致。 |
必选。 模型路径;传递模型初始化配置。与MindIE ServerModelConfig参数说明中的modelWeightPath参数保持一致。 |
--ModelVersion |
String |
不涉及。 |
可选。 模型版本;在Endpoint部署同一模型多个版本时需要提供,client-sdk对应拼接的uri地址为:/v2/models/{model-name}/versions/{ModelVersion}/{generate,generate_stream} |
--TestType |
String |
必选。 模式选择;取值为engine。 |
必选。 模式选择; 取值为client、vllm_client、tgi_client、openai或triton_client。其中vllm_client、tgi_client或triton_client只能基于对应的三方框架上才能运行。 |
--Http |
String |
不涉及。 |
必选。 请求url,默认为"https://127.0.0.1:1025",实际请根据MindIE ServerScheduleConfig参数说明中的ipAddress和port参数进行配置。 |
--Concurrency |
Int |
无效,同时处理请求由Server配置config.json中的maxBatchSize和maxPrefillBatchSize确定,详情请参见配置参数说明。 |
可选。 并发数,限制同时发起的连接数。Client模式下,不超过endpoint所支持的最大连接数。取值范围:[1,1000],默认值:128。 |
--TaskKind |
String |
不涉及。 |
可选。 判断使用Client的哪种模式进行推理,默认值为stream。
|
--DoSampling |
Bool |
可选。 是否进行推理结果后处理,取值True或者False,默认值为False。 |
可选。 是否进行推理结果后处理,取值True或者False,默认值为False。 |
--TestAccuracy |
Bool |
可选。 是否测试精度标识,取值True或者False,默认值为False。 MindIE Benchmark目前支持精度测试数据集:gsm8k和mmlu。 仅在Tokenizer=True,非token_id的输入场景下才能配置该参数。 |
可选。 测试精度标识,取值True或者False,默认值为False。 MindIE Benchmark目前支持精度测试数据集:gsm8k、mmlu、textvqa、videobench和vocalsound。 仅在Tokenizer=True,非token_id的输入场景下才能配置该参数。 |
--SavePath |
String |
可选。 输出结果保存路径{SavePath},默认保存在${INSTANCE_PATH}路径下。 该模式不保存每条请求推理的详细内容,即results_per_request_{timestamp}.json文件内容为空。 |
可选。 输出结果保存路径{SavePath},默认保存在${INSTANCE_PATH}路径下,INSTANCE_PATH为benchmark配置参数,详情请参表1。 |
--ConfigPath |
String |
可选。 MindIE Benchmark配置文件config.json,默认为安装路径:{$HOME}/python3.10/site-packages/mindiebenchmark/config/config.json。 |
可选。 MindIE Benchmark配置文件config.json,默认安装路径为:{$HOME}/python3.10/site-packages/mindiebenchmark/config/config.json。 |
--Tokenizer |
Bool |
可选。 分词向量化标识,取值True或者False,默认值为True。
|
可选。 分词向量化标识,取值True或者False,默认值为True。
|
--MaxInputLen |
Int |
可选。 最大输入tokenids长度,超过会截断,取值范围:[0,1048576];默认不开启,取值为0。 |
不涉及。 |
--MaxOutputLen |
Int |
可选。 最大输出长度,取值范围:[1,1048576],默认值:20。
|
可选。 最大输出长度,取值范围:[1,1048576],默认值:20。
|
--SamplingParams |
/ |
可选。 采样参数和惩罚系数。 该参数与DoSampling参数相互独立,参数均透传至MindIE LLM,其参数具有和MindIE LLM侧一致的默认值。 SamplingParams参数取值说明请参见《MindIE LLM开发指南》的“API接口说明 > Infer Engine API参考(C++) > 结构体和枚举说明 > SamplingParams结构体”章节。 |
可选。 采样参数和惩罚系数。 该参数与DoSampling参数相互独立,参数均透传至MindIE Server。Client模式与Engine模式有所不同,在Client模式中,其传递的参数在Benchmark中不添加默认值,未传递参数的默认值由MindIE Server或MindIE LLM给定。 SamplingParams参数取值说明请参见SamplingParams后处理参数说明。 |
--SaveTokensPath |
String |
可选。 保存推理输入输出的tokenids到本地路径,以.csv结尾。 例如:./output.csv。 |
可选。 保存推理输入输出的tokenids到本地路径,以.csv结尾。 例如:./output.csv。 |
--SaveHumanEvalOutputFile |
String |
可选。 保存推理HumanEval数据集时输出文本结果路径,以.jsonl结尾。默认值为humaneval_output.jsonl,需要同时开启精度--TestAccuracy True。 |
可选。 保存推理HumanEval数据集时输出文本结果路径,以.jsonl结尾。默认值为humaneval_output.jsonl,需要同时开启精度--TestAccuracy True。 |
--RequestRate |
String |
不涉及。 |
可选。 指定一组发送频率,按照Distribution参数设置的模式进行发送,以每个频率完成一次推理,频率的取值范围:(0,10000]。 例如:--RequestRate "2,4,6,8"。 当推荐concurrency参数配置为1000时,可以达到高性能、低时延。 |
--Distribution |
String |
不涉及。 |
可选。 请求发送模式,仅在设置了RequestRate参数才生效,默认值为uniform。
|
--WarmupSize |
Int |
可选。 warm up的条数,默认值:10。取值范围[0, 1000]。 当取值为0时,不进行warm up。 |
可选。 warm up的条数,默认值:10。取值范围[0, 1000]。 当取值为0时,不进行warm up。 |
--ManagementHttp |
String |
不涉及。 |
可选。 管理端口的url,默认为"https://127.0.0.2:1026",与server config.json的managementIpAddress和managementPort保持一致。 实际使用协议要和Http参数设置保持一致。 当MindIE Benchmark的config.json中ENABLE_MANAGEMENT=false时,该参数无效。 |
--SyntheticConfigPath |
String |
可选。 合成数据配置路径,其为json文件。仅当“--DatasetType”为“synthetic”且“--TestType”为“engine”或“vllm_client”有效。 默认值:{$HOME}/{Python版本}/site-packages/mindiebenchmark/config/synthetic_config.json。 文件配置内容请参见表2。 |
可选。 合成数据配置路径,其为json文件。仅当“--DatasetType” 为 “synthetic”且“--TestType”为“engine”或“vllm_client”有效。 默认值:{$HOME}/{Python版本}/site-packages/mindiebenchmark/config/synthetic_config.json。 文件配置内容请参见表2。 |
--TrustRemoteCode |
Bool |
是否信任远程代码,取值True或者False,默认值为False。
|
是否信任远程代码,取值True或者False,默认值为False。
|