🚀 功能、动机和宣传
Parallel/Jacobi decoding 通过打破传统自回归解码的顺序性,提高了推理效率。最近的工作[ 1 , 2 , 3 ]在这个方向上找到了机会,并发现并行解码可以带来的效率提升。
我们的团队(@nanjiangwill, @Viol2000, @zhisbug)对实现这个功能感兴趣,并支持在vllm上进行批量并行解码以提高服务效率。
这可能是与vllm团队正在支持的推测性解码功能相辅相成的一个功能:
- 在高请求率的情况下,使用草稿模型/基于树的验证可能会引入额外的开销,从而影响服务延迟。
- 在这种情况下,可以采用批量并行解码来带来一致的速度提升,无需使用草稿模型。
- 根据用户需求作为推测性解码的替代方案。未来的实现也有可能将两者结合起来。
- 加快这一一般方向的研究努力。
替代方案
- 无响应*
附加背景信息
- 无响应*
7条答案
按热度按时间z18hc3ub1#
如果能在vLLM中实现这个功能,那将是非常棒的!我很乐意与大家讨论如何利用现有的规范解码框架(如果有的话)。
camsedfj2#
snyhlxde1,你能具体说明你想实现什么吗?这个问题非常模糊。
fiei3ece3#
当前的开源项目不支持批量雅可比解码,其中每个查询以不同的速率收敛,并可能具有不同的窗口大小/n-token序列长度。
实现将涉及新的工作线程,并可能需要对调度器进行更改等等。逐项细节尚未讨论,因此此处未记录。
wb1gzix04#
我认为这对vLLM用户来说价值不高。你怎么看?@zhuohan123@WoosukKwon
n3h0vuf25#
对于极低延迟的使用场景,对于vLLM用户(其中浮点运算分配给雅可比求解可以优于其他推测方法)来说是有价值的。我不确定在什么情况下这可以击败例如经过微调的Medusa或Eagle heads,wdyt?
zsohkypk6#
@zhisbug,你为什么认为这对vLLM用户来说价值较低?最近的论文似乎很有前途。在vLLM中实现这种技术将证明最近在开源、可测试环境中的发展。
如果没有其他方面,假设这种实现并没有改进其他方法,那么在vLLM中有更多、不同权衡的推测性解码机制有助于用户和其他研究人员了解当前的帕累托前沿是什么。
fiei3ece7#
一般来说,我们可以说vllm是一个通常用于处理在线、高吞吐量LLM服务的框架,具有较大的bs。
这些并行解码方法通常只对较小的bs(例如,bs =1)有益。
此外,由于这两种用例的性质,将这些并行解码方法集成到vllm的当前架构中需要付出非平凡的努力。我们可能需要在vllm中进行一些实质性的重构,以允许特殊路径。
还有一个正在进行的项目(#4565)正在研究这个问题,但目前尚不清楚如何实现。需要仔细设计。
话虽如此,我的观点是: