Project completed
大语言模型(LLM)是一类先进的人工智能技术,利用大规模深度学习模型解决多种自然语言分析与生成任务。随着其能力提升,LLM 在文本生成、对话系统、信息检索等场景中得到广泛应用,推理延迟已成为影响用户体验的关键指标。
LLM 推理通常包括预填充(prefill)和解码(decode)两个阶段。prefill 阶段并行处理输入 token,计算密度高,能充分利用 GPU;decode 阶段自回归生成输出 token,计算密度低,对显存带宽要求高,需多请求并行提升效率。
衡量 prefill 和 decode 效率的常用指标有首 token 时延(TTFT)和 token 间平均时延(TPOT),并常作为服务级别目标(SLO)进行优化。然而,在传统推理框架下,TTFT 和 TPOT 难以兼得。
针对语音交互应用,其对 TTFT 更为敏感,而对 decode 阶段的暂停有一定容忍度。只要缓存有足够输出,LLM 暂停输出不会影响服务质量。这为我们重新设计调度策略、优化语音场景下用户体验提供了空间。
以vLLM的调度策略为例,该策略在大模型推理系统中具有代表性。vLLM的调度框架遵循先来先服务(FCFS)的原则,维护三个队列:running、swapped和waiting。这种调度策略在某些场景下表现出色,但也存在一些局限性,特别是在处理语音问答这类下游应用时。
优点:
缺点:
综上所述,虽然现有调度策略在某些场景下具有优势,但在处理语音问答这类对SLO有特殊需求的应用时,其缺点尤为突出。因此,需要设计更加智能和灵活的调度策略,以适应这类应用的需求,提高用户体验和资源利用效率。
针对语音交互场景的特殊需求,我们提出了一套基于语音时长感知的智能调度优化策略,核心思路如下:
我们为每个推理序列引入了语音时长估计属性,用于动态计算当前输出文本对应的语音播放时长。该估算基于对主流 TTS(Text to Speech)系统的深入调研:一个汉字平均转换为约 0.2 秒的语音。通过实时累计语音时长,系统能够更精确地反映用户实际听感的等待体验,为后续调度决策提供科学依据。
调度器不再采用传统的先来先服务(FCFS)策略,而是将剩余可播放语音时长作为调度优先级的核心指标。具体策略包括:
为了更准确地衡量语音交互场景下的系统性能,我们重新定义了评估指标:
这种以”可播放语音时长”为核心的调度优化,区别于传统仅以 token 速率为目标的策略,更贴合语音交互用户的真实体验需求,实现了从技术指标到用户体验的有效转化。
我们对比评估了优化前(Baseline)与优化后(Envelope)系统在不同请求速率下的性能表现,主要关注两项核心指标:p95首token时延(即 95% 的请求的首 token 时延不超过该值)和语音播放违约率(违约指ttft违约或语音播放中断)。
如图所示,随着请求速率的提升,Baseline 系统的 p95 TTFT 指标迅速恶化,速率超过8后,TTFT大幅上升,最高达到近20000ms,系统响应能力明显下降。而优化后的 Envelope 策略在全速率区间内都能将 p95 TTFT 稳定控制在较低水平,显著提升了高并发场景下的首响应速度。
在语音播放中断率方面,Baseline 系统在高负载下中断率急剧上升,速率超过10后,Violation Rate 超过40%,严重影响语音交互的流畅性。相比之下,Envelope 策略即使在高并发下也能有效抑制中断率,始终保持在较低水平,极大提升了用户体验的连续性和稳定性。
整体来看,优化后的调度策略在高负载场景下展现出更强的鲁棒性和服务能力,能够同时兼顾低延迟和低中断率,显著优于传统FCFS方案。这充分验证了基于语音时长感知的动态调度机制在语音交互场景下的有效性和实用价值。
通过优化vLLM的调度器,本项目成功降低了语音交互场景下的端到端延迟,提高了系统的响应速度和用户体验。优化后的系统在资源利用率方面也表现出色,能够在有限的硬件资源下实现更好的性能。未来,我们计划进一步优化调度策略,探索更多场景下的性能提升。
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
语音感知的大语言模型推理系统
1. 研究背景
大语言模型(LLM)是一类先进的人工智能技术,利用大规模深度学习模型解决多种自然语言分析与生成任务。随着其能力提升,LLM 在文本生成、对话系统、信息检索等场景中得到广泛应用,推理延迟已成为影响用户体验的关键指标。
LLM 推理通常包括预填充(prefill)和解码(decode)两个阶段。prefill 阶段并行处理输入 token,计算密度高,能充分利用 GPU;decode 阶段自回归生成输出 token,计算密度低,对显存带宽要求高,需多请求并行提升效率。
衡量 prefill 和 decode 效率的常用指标有首 token 时延(TTFT)和 token 间平均时延(TPOT),并常作为服务级别目标(SLO)进行优化。然而,在传统推理框架下,TTFT 和 TPOT 难以兼得。
针对语音交互应用,其对 TTFT 更为敏感,而对 decode 阶段的暂停有一定容忍度。只要缓存有足够输出,LLM 暂停输出不会影响服务质量。这为我们重新设计调度策略、优化语音场景下用户体验提供了空间。
2. 现有技术分析
以vLLM的调度策略为例,该策略在大模型推理系统中具有代表性。vLLM的调度框架遵循先来先服务(FCFS)的原则,维护三个队列:running、swapped和waiting。这种调度策略在某些场景下表现出色,但也存在一些局限性,特别是在处理语音问答这类下游应用时。
优点:
缺点:
综上所述,虽然现有调度策略在某些场景下具有优势,但在处理语音问答这类对SLO有特殊需求的应用时,其缺点尤为突出。因此,需要设计更加智能和灵活的调度策略,以适应这类应用的需求,提高用户体验和资源利用效率。
3. 优化策略
针对语音交互场景的特殊需求,我们提出了一套基于语音时长感知的智能调度优化策略,核心思路如下:
3.1. 引入语音时长估计机制
我们为每个推理序列引入了语音时长估计属性,用于动态计算当前输出文本对应的语音播放时长。该估算基于对主流 TTS(Text to Speech)系统的深入调研:一个汉字平均转换为约 0.2 秒的语音。通过实时累计语音时长,系统能够更精确地反映用户实际听感的等待体验,为后续调度决策提供科学依据。
3.2. 基于剩余可播放时长的动态调度
调度器不再采用传统的先来先服务(FCFS)策略,而是将剩余可播放语音时长作为调度优先级的核心指标。具体策略包括:
3.3. 新的评估指标体系
为了更准确地衡量语音交互场景下的系统性能,我们重新定义了评估指标:
这种以”可播放语音时长”为核心的调度优化,区别于传统仅以 token 速率为目标的策略,更贴合语音交互用户的真实体验需求,实现了从技术指标到用户体验的有效转化。
4. 测试报告
4.1. 测试环境
4.2. 测试参数
4.3. 测试结果
我们对比评估了优化前(Baseline)与优化后(Envelope)系统在不同请求速率下的性能表现,主要关注两项核心指标:p95首token时延(即 95% 的请求的首 token 时延不超过该值)和语音播放违约率(违约指ttft违约或语音播放中断)。
4.3.1. p95首token时延(p95 TTFT)
如图所示,随着请求速率的提升,Baseline 系统的 p95 TTFT 指标迅速恶化,速率超过8后,TTFT大幅上升,最高达到近20000ms,系统响应能力明显下降。而优化后的 Envelope 策略在全速率区间内都能将 p95 TTFT 稳定控制在较低水平,显著提升了高并发场景下的首响应速度。
4.3.2. 语音播放中断率(Violation Rate)
在语音播放中断率方面,Baseline 系统在高负载下中断率急剧上升,速率超过10后,Violation Rate 超过40%,严重影响语音交互的流畅性。相比之下,Envelope 策略即使在高并发下也能有效抑制中断率,始终保持在较低水平,极大提升了用户体验的连续性和稳定性。
4.3.3. 综合分析
整体来看,优化后的调度策略在高负载场景下展现出更强的鲁棒性和服务能力,能够同时兼顾低延迟和低中断率,显著优于传统FCFS方案。这充分验证了基于语音时长感知的动态调度机制在语音交互场景下的有效性和实用价值。
4.4. 结论
通过优化vLLM的调度器,本项目成功降低了语音交互场景下的端到端延迟,提高了系统的响应速度和用户体验。优化后的系统在资源利用率方面也表现出色,能够在有限的硬件资源下实现更好的性能。未来,我们计划进一步优化调度策略,探索更多场景下的性能提升。
5. 评分标准对照表