Cointime

扫码下载App
iOS & Android

陈天奇等人新作引爆AI界:手机原生跑大模型,算力不是问题了

项目方

「我把大语言模型下到我的 iPhone 上,它神奇地跑起来了!」

五一假期还没过半,大模型领域的技术就已经发展到了这种程度。

对于陈天奇等人开源的新技术,大家一致的评论是「Amazing」。

最近人们都在研究 ChatGPT,大语言模型(LLM)彻底改变了科技领域的格局,但对于 AI 开发者来说,并不是人人都有上万块 A100 的。为了跑得起大模型,就要寻找各种优化方法。

在让大模型变小这条路上,人们做了很多尝试,先是 Meta 开源了 LLaMA,让学界和小公司可以训练自己的模型。随后斯坦福研究者启动了 Lamini,为每个开发者提供了从 GPT-3 到 ChatGPT 的快速调优方案。

最近这个叫 MLC LLM 的项目可谓一步登天,因为它能让你「在任何设备上编译运行大语言模型。

MLC LLM 为我们在各类硬件上原生部署任意大型语言模型提供了解决方案,可将大模型应用于移动端(例如 iPhone)、消费级电脑端(例如 Mac)和 Web 浏览器。

该项目是由 TVM、MXNET、XGBoost 作者,CMU 助理教授,OctoML CTO 陈天奇等多位研究者共同开发的,参与者来自 CMU、华盛顿大学、上海交通大学、OctoML 等院校机构,同时也获得了开源社区的支持。

  • 项目地址:https://github.com/mlc-ai/mlc-llm
  • Demo:https://mlc.ai/mlc-llm/

借助 MLC LLM 方案,我们可以在移动端部署和运行大型语言模型,例如在 iPhone 上运行聊天机器人:

在 Web 浏览器上运行聊天机器人:

当然,在 Windows 和 Linux 上本地运行也是肯定可以的,聊天机器人应用程序能通过 Vulkan 平台在 GPU 上运行:

MLC-LLM 推出不到两天,GitHub 的 Star 量已经接近一千。在社交网络上人们纷纷点赞,表示 MLC-LLM 让我领教了低精度跑 AI 的可怕程度:

也有人晒出了自己的使用体验,iPhone 飞行模式本地跑大语言模型:

简单来说,MLC LLM 是一种通用解决方案,它允许将任何语言模型本地部署在各种硬件后端和本地应用程序上。此外,MLC LLM 还提供了一个高效的框架,供使用者根据需求进一步优化模型性能。

MLC LLM 旨在让每个人都能在个人设备上本地开发、优化和部署 AI 模型,而无需服务器支持,并通过手机和笔记本电脑上的消费级 GPU 进行加速。具体来说,MLC LLM 支持的平台包括:

  • iPhone
  • Metal GPU 和英特尔 / ARM MacBook;
  • 在 Windows 和 Linux 上支持通过 Vulkan 使用 AMD 和 NVIDIA GPU;
  • 在 Windows 和 Linux 上 通过 CUDA 使用 NVIDIA GPU;
  • 浏览器上的 WebGPU(借助 MLC LLM 的配套项目 Web LLM)。

项目概览

为了实现在各类硬件设备上运行 AI 模型的目标,研究团队首先要解决计算设备和部署环境的多样性问题,主要挑战包括:

  • 支持不同型号的 CPU、GPU 以及其他可能的协处理器和加速器;
  • 部署在用户设备的本地环境中,这些环境可能没有 python 或其他可用的必要依赖项;
  • 通过仔细规划分配和积极压缩模型参数来解决内存限制。
  • MLC LLM 提供可重复、系统化和可定制的工作流,使开发人员和 AI 系统研究人员能够以 Python 优先的方法实现模型并进行优化。MLC LLM 可以让研究人员们快速试验新模型、新想法和新的编译器 pass,并进行本地部署。

原生部署

为了实现原生部署,研究团队以机器学习编译(MLC)技术为基础来高效部署 AI 模型。MLC LLM 借助一些开源生态系统,包括来自 HuggingFace 和 Google 的分词器,以及 LLaMA、Vicuna、Dolly 等开源 LLM。

MLC LLM 的主要工作流基于 Apache TVM Unity,通过扩展 TVM 后端使模型编译更加透明和高效。

  • Dynamic shape:该研究将语言模型烘焙(bake)为具有原生 Dynamic shape 支持的 TVM IRModule,避免了对最大输入长度进行额外填充的需要,并减少了计算量和内存使用量。
  • 可组合的 ML 编译优化:MLC LLM 可以执行许多模型部署优化,例如更好的编译代码转换、融合、内存规划和库卸载(library offloading),并且手动代码优化可以很容易地合并为 TVM 的 IRModule 转换,成为一个 Python API。
  • 量化:MLC LLM 利用低位量化来压缩模型权重,并利用 TVM 的 loop-level TensorIR 为不同的压缩编码方案快速定制代码生成。
  • 运行时(Runtime):TVM 编译生成的库能够通过 TVM runtime 在设备的原生环境中运行,TVM runtime 支持 CUDA/Vulkan/Metal 等主流 GPU 驱动以及 C、JavaScript 等语言的绑定。

此外,MLC 还为 CUDA、Vulkan 和 Metal 生成了 GPU shader,并通过 LLVM 支持多种 CPU,包括 ARM 和 x86。通过改进 TVM 编译器和运行时,使用者可以添加更多支持,例如 OpenCL、sycl、webgpu-native。

MLC-LLM 的发布让我们再次感受到了陈天奇 TVM 的力量。

陈天奇是机器学习领域知名青年学者,2019 年任卡耐基梅隆大学机器学习、计算机科学系助理教授。早在 2017 年,他和他的同时开源了著名深度学习框架 TVM,对业界产生了深远的影响。利用这一工具,机器学习算法可以自动编译成可供下层硬件执行的机器语言,从而可以利用多种类型的算力。

在人们的努力下,我们或许很快就能看到云 + 端侧分别部署大模型的下一代应用。

评论

所有评论

推荐阅读

  • 新加坡数字贸易平台Olea完成3000万美元A轮融资

    新加坡数字贸易平台Olea完成3,000万美元A轮融资,投资方包括西班牙对外银行(BBVA)、XDC Network、theDOCK及渣打银行旗下SC Ventures。本轮资金将用于加速AI与Web3解决方案在高增长市场的部署,强化嵌入式金融、风险分析等产品。Olea平台自2022年成立以来,已获新加坡金管局CMS许可,为70多个贸易通道超千家企业提供逾30亿美元融资。

  • BTC突破87000美元

    行情显示,BTC突破87000美元,现报86986.63美元,24小时跌幅达到3.19%,行情波动较大,请做好风险控制。

  • Lido创始团队成员相关钱包抛售 14,585 枚 ETH,价值 4271 万美元

    据链上分析平台 Lookonchain 监测,与 Lido 创始团队成员 Konstantin Lomashuk 相关的钱包地址在过去一小时内抛售了 14,585 枚 ETH,抛售价格为 2,928 美元,总价值约 4271 万美元。

  • 本周美国现货以太坊ETF净流出2.2494亿美元

    据TraderT监测,本周美国现货以太坊ETF净流出2.2494亿美元。

  • 美国现货比特币ETF昨日净流出3.1569亿美元

    据TraderT监测,美国现货比特币ETF昨日净流出3.1569亿美元。

  • BTC突破86000美元

    行情显示,BTC突破86000美元,现报86010.8美元,24小时跌幅达到4.02%,行情波动较大,请做好风险控制。

  • 纳斯达克申请每日23小时交易制,受加密市场24/7交易影响

    纳斯达克已向美国证券交易委员会(SEC)提交文件,计划将股票及交易型产品(ETP)的每日交易时长从目前的16小时延长至23小时、每周5天。新方案拟设立凌晨4点至晚8点的日盘,休市1小时后,于晚9点至次日凌晨4点进行夜盘,交易周将从周日21点开始、周五20点结束,现有9:30开盘与16:00收盘钟声保持不变。

  • MetaMask推出比特币支持,继续拓展多链业务

    根据周一发布的公告,MetaMask 新增了对比特币的原生支持,包括进行链上比特币网络转账,以及使用 EVM 原生资产和 SOL 与 BTC 进行兑换。

  • BTC跌破88000美元

    行情显示,BTC跌破88000美元,现报87952.61美元,24小时跌幅达到1.19%,行情波动较大,请做好风险控制。

  • CME Group将推出现货报价的XRP和SOL期货

    衍生品市场 CME Group今天推出了现货报价的XRP和 SOL 期货。现货报价的XRP和 SOL 期货将与现有的现货报价比特币和以太坊期货形成互补,并可在包括标普 500 指数、纳斯达克 100 指数、罗素 2000 指数和道琼斯工业平均指数在内的四大美国股指中进行交易。此外,这些合约允许投资者以现货市场价格交易期货头寸,并具有更长的到期日优势——无需定期展期。