跳到主内容
快讯直播
AI智模界
AI 词典

最大并发序列数:吞吐与延迟的跷跷板

一句话定义

max_num_seqs(最大并发序列数)是推理引擎里的一个调度参数,用来规定同一时刻最多允许多少条“序列”一起在 GPU 上运行。序列(sequence)指一条请求从读入 prompt 到生成结束的完整过程。

原理:一口锅下几份菜

大模型是逐 token 生成的,每一步每条序列只多吐出一个字。单条序列这一步的计算量很小,真正的瓶颈往往在于把模型权重从显存搬进计算单元,而非计算本身——跑 1 条要搬一次,跑 32 条也是搬一次。于是引擎把多条序列凑成一批(batch)一起计算,摊薄这笔固定开销。

就像一口炒锅:如果一次只下一份菜,火和锅都空烧着;如果一次下二十份,锅温骤降,每份都熟得慢,最后出锅的那份等得最久。max_num_seqs 就是你定的“一锅最多几份”。

它还有一个硬性约束:每条序列都要占用自己的 KV cache,序列条数越多,显存越吃紧,所以这个值不能随便往大调。

别搞混的几个数

概念管什么
max_num_seqs同时并存的序列条数上限,相当于调度器放行的闸门
max_num_batched_tokens单步计算涉及的 token 总数上限,主要限制 prefill 阶段的长 prompt
实际 batch size当前实际进入这一批的条数,通常小于上限
用户并发数可以远大于 max_num_seqs,多出来的请求会在等待队列中排队

还要注意AI 词典:连续批处理">连续批处理(continuous batching):谁的任务先完成谁就先退出,排队的请求立刻补位。所以它是一道流动的闸门,而不会把一批乘客固定下来。

对实际使用的人意味着什么

  • 调大:吞吐上去、单位 token 成本下来,但单条延迟,尤其是尾延迟,会变差,还有显存溢出(OOM)的风险。
  • 调小:单条响应更快更稳,但 GPU 吃不饱,相当于花钱买空闲。
  • 怎么选:在线对话这类延迟敏感场景往小调,离线批量摘要、数据清洗往大调。真正的上限由显存和模型规模决定,默认值与显存估算以官方文档为准。
  • 一个排查信号:等待队列长期排着、GPU 利用率却不高,多半是这个值把请求卡住了;反过来,尾延迟飙升、显存见顶,就该把它调小。

一句话记住:它不改变模型算得多快,只决定你把多少条请求塞进同一个“现在”。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。