logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

大模型-attention汇总解析之-GQA

MHA把一个注意力计算拆成多个注意力头,每个注意力头使用独立的Q、K、V进行计算,需要把K、V都存储下来,KV Cache中每个token需要缓存的参数量为2n*h_d*h_l。从上面的图可以看出,MHA是一个attention 头有自己独立的kv cache 缓存,这样子的计算效果是最好的,同时kv cache 也是最完善的,意味着也是最占用内存的。GQA:将所有的Q头分成g组,同一组的Q头共享

大模型-vllm云端部署模型快速上手体验-5

官方教程,这里面的官方教程非常详细,可以多看看。

大模型-qwen+audio的vllm部署初探-3

模块功能提供/infer/stream两种模式WebSocket 实时接口分块接收 PCM 数据,服务端实时拼接计算 embedding音频到文本 embedding 转换Qwen2 LLM 生成文本模拟语音流推送,实时接收转写结果。

大模型-Vllm offline推理方式启用多模态数据-3

llavaVL的示例代码vLLM 通过 vllm.multimodal包为多模态模型提供实验性支持。多模态输入可以与文本和令牌提示一起传递给,方法是通过 vllm.inputs.PromptInputs中的字段。目前,vLLM 仅内置支持图像数据。你可以按照扩展 vLLM 以处理其他模态.

大模型-batch之static batch

目前的推理服务系统,基本都是专注于最大化整体 LLM serving 系统的整体吞吐量(throughput),也就是每秒服务的请求数量(或 rps)。目前主流的 LLM serving 引擎都把整体的吞吐量作为对比性能的主要指标。为了提高吞吐率,大家会采用批处理技术。所谓的批处理是一种将使用批处理后,推理引擎会将来自多个请求的输入张量合并成一个大的输入张量,然后将其送入模型进行推理。

#batch#算法
大模型-attention汇总解析之-MLA

先看下初始的MLA的一般性公式:我们一般会缓存的是投影后的k_i, v_i而不是投影前的x_i, c_i ,根据 MLA 的这个做法,通过不同的投影矩阵再次让所有的 K、V Head 都变得各不相同,那么 KV Cache 的大小就恢复成跟 MHA 一样大了,因为需要存下每一个k_i, v_i,这显然违背了减少kv cache的本意。MLA算法作者发现,可以结合 Dot-Attention 的矩阵

大模型-attention汇总解析之-NSA

被选中的块会进行拼接操作。它处理的是输入序列的局部上下文,通过滑动窗口的方式对序列进行处理,捕捉局部上下文信息,防止局部模式干扰其他分支学习,增强模型对长序列的适应性。基于网格的外循环,由于不同查询块的内循环长度(与所选块的数量n成正比)几乎相同,将output和Grid Loop放入Triton的网格调度器中,以简化和优化内核。压缩的目的是减少计算量,用更紧凑的表示来替代原始的kv对。可训练的架

#人工智能#深度学习
大模型-attention汇总解析之-MHA

这里我们只考虑了主流的自回归 LLM 所用的 Causal Attention,因此在 token by token 递归生成时,新预测出来的第 i+1个 token,并不会影响到已经算好的 前面的i个K, V的值,因此这部分K, V结果我们可以缓存下来供后续生成调用,避免不必要的重复计算,这就是所谓的 KV Cache。下面是kv cache的示意图。在实践中,为了减少计算复杂度和内存占用,通常

#人工智能#深度学习
大模型-vllm的知识点记录-1

较小的 max_num_batched_tokens 可以实现更好的 ITL,因为中断解码的预填充较少。较高的 max_num_batched_tokens 可以实现更好的 TTFT,因为您可以在批次中添加更多预填充。若生成配置中指定了 max_new_tokens,则会在服务器范围内对所有请求的输出 token 数量施加限制。它通过将计算绑定 (预填充) 和内存绑定 (解码) 请求定位到同一批次

    共 26 条
  • 1
  • 2
  • 3
  • 请选择