TB体育全球首个运行在 Android 手机上的 Stable Diffusio
发布时间:2023-03-20 09:34

  TB体育作者:高通技术公司工程技术副总裁侯纪磊,高通技术公司产品管理高级副总裁 Ziad Asghar

  基础模型正在席卷 AI 行业。基础模型指基于海量数据进行大规模训练的大型神经网络,进而能以高性能表现适应广泛的后续任务。流行的基础模型 Stable Diffusion 是一个非常出色的从文本到图像的生成式 AI 模型,能够基于任何文本输入,在数十秒内创作出逼真图像。Stable Diffusion 的参数超过 10 亿,迄今为止主要限于在云端运行。接下来我将介绍高通 AI Research 如何利用高通 AI 软件栈(Qualcomm AI Stack)执行全栈 AI 优化,首次在 Android 智能手机上部署 Stable Diffusion。

  在 AI 首创 博客文章中,我们提到过高通 AI Research 不仅在开展全新 AI 研究工作,也率先在商用终端上展示概念验证,为在现实世界中的技术规模化应用铺平道路。我们的全栈 AI 研究指跨应用、神经网络模型、算法、软件和硬件进行优化,并在公司内进行跨部门合作。针对 Stable Diffusion,我们从 Hugging Face 的 FP32 1-5 版本开源模型入手,通过量化、编译和硬件加速进行优化,使其能在搭载第二代骁龙 8 移动平台的手机上运行。

  为了把模型从 FP32 压缩为 INT8,我们使用了高通 AI 模型增效工具包 ( AIMET ) 的训练后量化。这是基于高通 AI Research 创造的技术所开发的工具,目前已经集成入新发布的 Qualcomm AI Studio 中。通过让模型在我们的专用 AI 硬件上高效运行,并降低内存带宽消耗,量化不仅能够提高性能,还可以降低功耗。自适应舍入 ( AdaRound ) 等先进的高通 AIMET 量化技术能够在更低精度水平保持模型准确性,无需进行重新训练。这些技术能够应用于构成 Stable Diffusion 的所有组件模型,即基于 Transformer 的文本编码器、VAE 和 UNet。这对于让模型适合于在终端上运行至关重要。

  对于编译,我们利用高通 AI 引擎 Direct 框架将神经网络映射到能够在目标硬件上高效运行的程序中。高通 AI 引擎 Direct 框架基于高通 Hexagon 处理器的硬件架构和内存层级进行序列运算,从而提升性能并最小化内存溢出。部分上述增强特性是 AI 优化研究人员与编译器工程团队共同合作的成果,以此来提升 AI 推理时的内存管理。高通 AI 引擎中所做的整体优化能够显著降低 runtime 的时延和功耗,而这一亟需的趋势也同样存在于 Stable Diffusion 上。

  凭借紧密的软硬件协同设计,集成 Hexagon 处理器的高通 AI 引擎能够释放行业领先的边缘侧 AI 性能。支持微切片推理的最新第二代骁龙 8 移动平台有能力高效运行像 Stable Diffusion 这样的大模型,并且下一代骁龙预计还将带来更多提升。此外,由于构成 Stable Diffusion 的所有组件模型都采用了多头注意力机制,为加速推理而面向 transformer 模型(如 MobileBERT)所做的技术增强发挥了关键作用。

  这一全栈优化最终让 Stable Diffusion 能够在智能手机上运行,在 15 秒内执行 20 步推理,生成一张 512x512 像素的图像。这是在智能手机上最快的推理速度,能媲美云端时延,且用户文本输入完全不受限制。

  随着 AI 云端大模型开始转向在边缘终端上运行,高通打造智能网联边缘的愿景正在我们眼前加速实现,几年前还被认为不可能的事情正在成为可能。这很有吸引力,因为通过边缘 AI 进行终端侧处理具有诸多优势,包括可靠性、时延、隐私、网络带宽使用效率和整体成本。

  尽管 Stable Diffusion 模型看起来过于庞大,但它编码了大量语言和视觉相关知识,几乎可以生成任何能想象到的图片。此外,作为一款基础模型,Stable Diffusion 能做的远不止根据文字提示生成图像。基于 Stable Diffusion 的应用正在不断增加,例如图像编辑、图像修复、风格转换和超分辨率等,将带来切实的影响。能够完全在终端上运行模型而无需连接互联网,将带来无限的可能性。

  在智能手机上运行 Stable Diffusion 只是开始。让这一目标得以实现的所有全栈研究和优化都将融入高通 AI 软件栈。凭借高通的统一技术路线图,我们能够利用单一 AI 软件栈并进行扩展,以适用于不同的终端和不同的模型。

  这意味着为了让 Stable Diffusion 在手机上高效运行所做的优化也可用于高通技术公司赋能的其他平台,比如笔记本电脑、XR 头显和几乎任何终端。在云端运行所有 AI 处理工作成本高昂,因此高效的边缘侧 AI 处理非常重要。由于输入文本和生成图像始终无需离开终端,边缘侧 AI 处理能在运行 Stable Diffusion(和生成式 AI 模型)时确保用户隐私,这对于使用消费级和企业级应用都有巨大的好处。全新 AI 软件栈优化还将有助于减少未来在边缘侧运行的下一代基础模型产品的上市时间。这就是我们如何能够实现跨终端和基础模型进行扩展,让边缘侧 AI 真正无处不在。

  在高通,我们在基础研究领域实现突破,并跨终端和行业进行扩展,以赋能智能网联边缘。高通 AI Research 与公司所有团队通力合作,将最新 AI 发展成果和技术集成到我们的产品之中,让实验室研究所实现的 AI 进步能够更快交付,丰富人们的生活。