vllm bench sweep serve_workload¶
JSON 命令行参数¶
当传递 JSON 命令行参数时,以下几组参数是等效的
--json-arg '{"key1": "value1", "key2": {"key3": "value2"}}'--json-arg.key1 value1 --json-arg.key2.key3 value2
此外,列表元素可以使用 + 单独传递
--json-arg '{"key4": ["value3", "value4", "value5"]}'--json-arg.key4+ value3 --json-arg.key4+='value4,value5'
参数¶
--serve-cmd¶
- 用于运行服务器的命令:
vllm serve ...
--bench-cmd¶
- 用于运行基准测试的命令:
vllm bench serve ...
--after-bench-cmd¶
- 基准测试运行完成后,调用此命令代替默认的
ServerWrapper.clear_cache()。
--show-stdout¶
- 如果设置,将记录子命令的标准输出。这对于调试很有用,但可能会产生大量日志。
- 默认值:
False
--server-ready-timeout¶
- 等待服务器就绪的超时时间(秒)。
- 默认值:
300
--serve-params¶
- 包含
vllm serve命令参数组合的 JSON 文件路径。可以是字典列表,也可以是以基准测试名称为键的字典。如果同时提供了serve_params和bench_params,脚本将遍历它们的笛卡尔积。
--link-vars¶
- serve 和 bench 之间链接变量的逗号分隔列表,例如 max_num_seqs=max_concurrency,max_model_len=random_input_len
- 默认值:
""
--bench-params¶
- 包含
vllm bench serve命令参数组合的 JSON 文件路径。可以是字典列表,也可以是以基准测试名称为键的字典。如果同时提供了serve_params和bench_params,脚本将遍历它们的笛卡尔积。
-o, --output-dir¶
- 结果写入的主目录。
- 默认值:
results
-e, --experiment-name¶
- 此实验的名称(默认为当前时间戳)。结果将存储在
output_dir/experiment_name下。
--num-runs¶
- 每个参数组合的运行次数。
- 默认值:
3
--dry-run¶
- 如果设置,则打印要运行的命令,然后退出而不执行它们。
- 默认值:
False
--resume¶
- 恢复此脚本的先前执行,即仅运行在
output_dir/experiment_name下尚无输出文件的参数组合。 - 默认值:
False
工作负载选项¶
--workload-var¶
- 可选值:
request_rate,max_concurrency - 每次迭代中要调整的变量。
- 默认值:
request_rate
--workload-iters¶
- 要探索的工作负载级别数量。这包括用于为后续迭代插值
workload_var值的前两次迭代。 - 默认值:
10