• 多模态模型相关介绍
    • 多模态发展历程:介绍了多模态模型从语言模型特定任务训练到小规模预训练模型,再到规模更大、任务更多的阶段,还探讨了是否会出现通用的多模态助理层级模型。
    • 模态的定义:模态指生活中的视觉、触觉、听觉等感觉输入,多模态模型发展到现在常加入 Transformer 进行模态的理解和融合。
    • 多模态应用任务:列举了如视觉理解、大模型视觉生成、文生图、语音、文本向量和图文向量等多模态可完成的任务,并提出有趣落地应用不多的疑惑。
    • ViT 模型结构:阐述了 ViT 将图片变成 token 后接 Transformer encoder 的思想,介绍了模型中的参数含义和计算过程。
    • ViT 思想在多模态中的应用:指出 ViT 中把图片变成 token 的思想在多模态模型中,与图像 encoder 和文本 encoder 相关,多模态模型通常是先将图像和文本变成 token,再进行后续语言模型的推理。
  • 关于图像与语言模型结合的推理流程介绍
    • 语言模型的嵌入处理:语言模型的 token ID 会先进入 LM 的 embedding 层,得到语言模型 hidden DIM 维度的 token,再与图片 token 拼接。
    • Text Encoder 的作用:在当前层级可理解为将文字先经过 tokenizer 变成 token ID。
    • 模型输出长度限制:模型输出的维度固定,长度与图片数量及分辨率有关,存在最大限制,不同数量的图片输入得到的 token 数目不同。
    • 图片处理的标识位:在将图片打成 patch 时会通过 Multi model 的 ROPE 标记图片顺序及 patch 顺序。
    • 图片到 token 的计算:以 8204×1092 的图片为例,经过 vision encoder 中的除以 14 和除以 2 等步骤,计算得出最终的 token 数目。
    • 模型输入的预处理:输入图片会被 pad 为特定尺寸,如将 47×42 的图片 pad 为 56×56,同时得出 input ID 和 Pixel value,text 部分的 input ID 直接给语言模型,Pixel 相关走 vision encoder。
    • 图片数据的组织变换:56×56×3 的数据会被组织成 16×176,在处理单张图片时会乘以 2 以适应 COM3D 的固定维度,数据送到 COM3D 前会得到 16×176 的数据。
    • Patch 的变化与计算:56×56 的图片除以 14 后变成 16 个 patch,经过 32 层 block 后维度不变,再经过 patch merger(MLP 和 Linear 计算)除以 2,变成 2×2。
    • 输入数据的处理与拼接:将 text 和图片拼到一起后,Processor 处理成对话模式,text 的 input ID 经过 tokenizer 变成 1×29,再经过 embedding 层变成 29×3584,其中图片相关的 4×3584 会替换原来 29×3584 中的 4 行。
  • 多模态模型的推理与优化
    • 多模态模型结构:多模态模型大体包含预处理、encoder 和语言模型后端三部分,存在不同的架构,如 decode only 和在 cross attention 层加入视觉 token 等。
    • 推理过程差异:多模态模型在推理时,encoder 部分计算强度高、参数量小,与语言模型负载表现不同,同一模型的 encode 和语言部分的 TP size 可能不同,性能效果不一致。
    • 实验数据呈现:通过实验发现,如千川 VL 模型中,图片分辨率会显著影响 encode 时间,在一定 RPS 下,TTFT 平均时间会极度增大至不可用状态。
    • 优化工作进展:目前针对多模态模型的推理引擎优化工作还在施工中,有一些相关想法但未形成完整文档。
  • 关于 VRM 处理动态推理问题的讨论
    • TTFT 持续上升原因:随着 FPS 增加,VRM 处理速度跟不上请求到达速度,队列中请求堆积,导致平均 TTFT 持续增加,超过拐点后累积更严重。
    • TPOT 增加原因:由于 VM 调度原因,当 FPS 超过 3,每秒处理能力跟不上每秒到达的请求数量,处理完未处理请求的时间持续上升。
    • 解决方法探讨:提出将 encoder 分离、对 encoder 做切分等方法,认为 encoder 分离可能更容易实现,还讨论了切分可能面临的问题及影响。
    • 实验验证情况:验证了 encoder 和 decoding 一起跑的情况,发现限制 encoder 计算资源时,其平均延迟会随资源增多而下降,decoding 延迟则相对稳定。
  • 关于多模态模型的讨论
    • 千川适配需求:正在适配千川 to VL,不清楚多模态的推理需求。
    • 端侧多模态应用:提到端侧去年适配过 VIO 多模态的图生文,且端侧支持多模态是趋势。
    • 多模态处理方式:介绍了多模态处理的不同办法,包括传统方式和先进模型方式。
    • 多模态加 MOE 架构:提到 deep speed 出来后有做相关架构,石曦予询问专家在语言模型中的位置。
    • 特定多模态模型:提到有 deep c 和 VL2 多模态模型,分 tiny、small 等尺寸。
    • 文生视频争议:提到文生视频对视频和图片处理方式有非议,提到 deep seek 有生成图片的相关模型。
Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐