概念 |
含义 |
---|---|
Prefill阶段 |
也叫prompt或者全量推理阶段,是对用户传入的输入第一次进行推理的阶段。该阶段的输入是用户传入的完整长度的语句。 |
Decode阶段 |
也叫增量推理阶段,基于Prefill阶段的输出进行迭代推理的阶段。由于该阶段每次迭代的输入都是上一次推理的输出,所以叫做增量推理。 |
PD分离 |
也就是Prefill阶段和Decode阶段分离执行。 |
KV Cache |
KV Cache其实是在大语言模型中使用的一种技术,用于缓存已经计算过的Key和Value,避免在每一步生成过程中重复计算整个上下文。本文代指计算完的Key和Value缓存。 |
PagedAttention |
简称PA。简单说是一种使用离散block的方式管理请求KV Cache的功能,相比未使用此功能的框架而言,能够达到节省KV Cache内存占用大小的效果。 |
block_table |
在PA场景下,表示请求KV Cache占用的block index的集合。 |
请求 |
可以理解为用户提的问题,该问题经过Prefill和Decode阶段会有对应的回答,我们称这个过程为一次请求。 |
role |
表示LLM-DataDist代表的业务角色。业务角色分为Prefill和Decode两种。 |
cluster_id |
表示LLM-DataDist所在的集群标识。主要用于Decode侧通过cluster_id找到对应链路,从而找到Prefill侧缓存的对应请求的KV Cache。对于一个模型的不同切分部署到不同device的场景,当前在支持PD对等切分场景下,cluster_id在不同切分模型间设置一样。 |
集群动态扩缩容 |
根据业务闲忙,动态的调整集群的数量以及PD集群的配比,从而达到闲时节省资源,忙时提高吞吐的目的。 |
D2D传输 |
指数据从Device设备往Device设备传输。 |
D2H传输 |
指数据从Device设备往Host设备传输。 |
H2D传输 |
指数据从Host设备往Device设备传输。 |
TTFT |
Time To First Token LLM推理的一个指标。指从输入到输出第一个token的延迟。 即当一批用户进入到推理系统之后,用户完成Prefill阶段的过程需要花多长时间。这也是系统生成第一个字符所需的响应时间。 |
TBT |
Time Between Tokens token间时延,指的是每一个decoding所需要的时长。它反映的是大语言模型系统在线上处理的过程中,每生成一个字符的间隔是多长时间,也就是生成的过程有多么流畅。 |
Continuous Batching |
连续批处理技术,是一种在大模型推理中优化计算效率的方法。它通过将多个推理请求组合成一个批次进行处理,从而充分利用计算资源,提高推理速度和吞吐量。这种技术的核心思想在于减少计算过程中的空闲时间,实现计算资源的最大化利用。 |