Buffer Response
该特性主要适用于对大模型推理吞吐和时延有要求,且需要满足SLO(Service Level Objective,服务级别目标)时延指标的场景。
在主流LLM推理系统(如vLLM、TGI)中,对Prefill和Decode阶段的请求调度是分离的,但是分时使用同一份计算资源的。调度策略的选择(优先处理Prefill还是Decode请求)会直接影响吞吐和时延。但是在PD混部场景下,Prefill和Decode阶段的相互干扰可能导致时延波动,难以满足SLO,因此需要更加严格的调度策略和时延控制。
该特性的核心是感知SLO时延,延迟响应避免TTFT(Time to First Token,首Token时延)和TPOT(Time Per Output Token,每个输出Token(不含首token)的延迟)超时。通过配置Prefill阶段和Decode阶段的SLO期望时延,可达到平衡两者时延,使其在都不超时的情况下,收益最大化的目的。
限制与约束
- Atlas 800I A2 推理服务器支持此特性。
- Qwen2系列模型支持对接此特性。
开启Buffer Response特性,需要配置的参数如表1所示。
配置项 |
取值类型 |
取值范围 |
配置说明 |
---|---|---|---|
bufferResponseEnabled |
bool |
|
是否开启Buffer Response特性。
选填,默认值:false。 |
prefillExpectedTime |
uint32_t |
≥1 |
Prefill阶段Token生成的SLO期望时延。 选填,默认值:1500,单位:毫秒 建议值:按客户SLO时延约束填写。 |
decodeExpectedTime |
uint32_t |
≥1 |
Decode阶段Token生成的SLO期望时延。 选填,默认值:50,单位:毫秒 建议值:按客户SLO时延约束填写。 |
执行推理
- 配置服务化参数。该特性需配合MindIE Motor使用,按照表1在服务化的config.json文件中添加相应参数,config.json文件路径的详细说明请参考:《MindIE安装指南》中的“配置MindIE > 配置MindIE Server > 单机推理”章节中的软件包文件清单。
- 启动服务。具体请参考《MindIE Motor开发指南》中的“快速开始 > 启动服务”章节。
父主题: 特性介绍