大模型的推理速度并没有一个放之四海而皆准的绝对数值,因为“标准”会根据具体的应用场景(如实时语音助手、离线数据分析、代码补全)以及部署成本的考量而变化。
不过,在目前的 AI 工业界,我们通常使用一套标准化的指标体系来定义和测试推理速度。
1. 衡量推理速度的三大核心指标
要判断速度是否达标,业界通常会将“速度”拆解为以下三个关键维度:
-
TTFT (Time To First Token,首字延迟):
-
定义:从系统接收到用户的请求,到模型生成并返回第一个 Token(字/词)所花费的时间。
-
意义:直接决定了用户的“等待感”。如果 TTFT 过长,用户会觉得系统卡顿或死机。
-
-
TPOT (Time Per Output Token,单字生成时间) / TPS (Tokens Per Second,每秒生成字数):
-
定义:模型在吐出第一个字之后,后续每个字生成的平均时间(或每秒能吐出多少个字)。
-
意义:决定了内容输出的流畅度。如果 TPS 低于人类的阅读速度,用户就会觉得模型在“往外挤牙膏”。
-
-
RPS (Requests Per Second,系统吞吐量) / 并发数 (Concurrency):
-
定义:在保证上述 TTFT 和 TPS 达标的前提下,服务器每秒能同时处理多少个用户的并发请求。
-
意义:决定了系统的承载能力和商业化成本。
-
2. 业界公认的“达标”基线
如果是面向普通用户的交互式对话场景(如 Chatbot),通常的达标及格线如下表所示:
| 评估指标 | 极致体验 (如实时语音) | 优秀 (流畅对话) | 合格底线 (可接受) | 不合格 (需优化) |
| 首字延迟 (TTFT) | 小于 200 毫秒 | 200 - 500 毫秒 | 小于 1.5 秒 | 大于 3 秒 |
| 生成速度 (TPS) | 大于 50 tokens/s | 20 - 30 tokens/s | 大于 15 tokens/s | 小于 10 tokens/s |
注:人类的平均阅读速度大约是每秒 5 到 8 个汉字。因此,只要模型的 TPS 稳定在 15 以上,用户的视觉体感就是“文字如流水般丝滑输出”。如果是代码补全场景,由于程序员通常是一扫而过,TPS 则要求更高(通常需要大于 50 tokens/s)。
3. 一般如何测试推理速度是否达标?
测试大模型推理速度(Benchmarking)是一个严谨的系统工程,不能仅仅靠“肉眼看秒表”。标准的测试流程通常包含以下几个步骤:
第一步:明确并控制变量
大模型的速度受多种因素影响,测试前必须固定以下条件:
-
输入长度 (Prompt Length):测试时输入是 100 个 Token 还是 10000 个 Token?(输入越长,TTFT 越慢,因为模型需要时间理解上下文)。
-
输出长度 (Generation Length):限制模型生成 512 或 1024 个 Token,以便统一计算平均速度。
-
硬件与量化:明确显卡型号(如 A100、RTX 4090)以及模型是否进行了量化(如 FP16、INT8、INT4)。
第二步:使用专业的自动化压测工具
业界通常不会手动写死循环测试,而是使用专业的压力测试工具来模拟真实流量:
-
vLLM Benchmark Scripts:如果你使用 vLLM 部署模型,它自带了非常专业的基准测试脚本,可以直接测出吞吐量和延迟。
-
LLMPerf:一个专门针对大模型 API 接口的开源性能测试工具,可以生成详细的 TTFT 和 TPOT 统计图表。
-
Locust / JMeter:传统的服务器压测工具,配合自定义的 Python 脚本,可以模拟几百个用户同时调用 API 的场景。
第三步:设计阶梯式的并发场景
仅仅测试“单人使用”的速度意义不大。科学的测试方法是:
-
单并发测试:测试 1 个用户请求时的极限 TTFT 和 TPS(测算模型的天花板能力)。
-
阶梯施压 (Load Testing):将并发用户数从 1 逐渐增加到 10、50、100。
-
寻找拐点:当并发数达到某个临界点时,你会发现 TTFT 突然飙升到 5 秒以上,或者 TPS 暴跌到 10 以下。这个临界点,就是你当前系统能够承载的最大有效并发量。
通过上述科学的工具和严谨的变量控制,你就能准确得出一份具有说服力的系统级推理性能报告。

497

被折叠的 条评论
为什么被折叠?



