vLLM服务开启了MTP,则如何评估指定维度的真实吞吐

vLLM服务开启了MTP,则如何评估以下维度的真实吞吐

  1. token长度:输入2048,输出512
  2. token长度:输入20k,输出2k
  3. token长度:输入80k,输出2k

vLLM的真实吞吐量(token/s)通常指“输出token吞吐量”,即单位时间内生成的输出token数。你可以通过/metrics接口获取vllm:generation_tokens_total等指标,或在benchmark脚本输出的“Output token throughput (tok/s)”字段查看。对于不同输入/输出长度(如输入2048/输出512、输入20k/输出2k、输入80k/输出2k),直接以“总生成token数/总耗时”计算即可,MTP(多步推理)不会改变这个定义,但会影响TTFT和ITL等延迟指标,导致token流式输出的均匀性下降,需注意区分吞吐与延迟的不同含义。详细的吞吐定义和推荐评估方式见官方文档benchmark脚本说明

如果你想评估“总token吞吐量”(输入+输出),则用“(输入token数+输出token数)/总耗时”;但业界和vLLM官方更常用“输出token吞吐量”作为横向对比标准。MTP开启后,建议关注吞吐量的同时,结合TTFT(首token延迟)和TPOT(每token延迟)等指标综合评估。参考

需要更详细的评估方法或代码示例吗?

Sources:

Hint: Mention @RunLLM in the post for followups.

vllm bench serve \
  --port 7999 \
  --backend openai-chat \
  --endpoint /v1/chat/completions \
  --served-model-name Qwen/Qwen3.6-27B-AWQ \
  --dataset-name random \
  --random-input-len 2048 \
  --random-output-len 512 \
  --num-prompts 10 \
  --max-concurrency 1 \
  --random-prefix-len 0

我使用上述方法去测试的,Acceptance rate (%) 很低,0.21%之类的,这应该没有反应真实的吞吐,是要用真实样本数据吗