金磊 发自 凹非寺
量子位 | 公众号 QbitAI

现在,只需一个浏览器,就能跑通“大力出奇迹”的大言语模型(LLM)了!

不仅如此,基于LLM的类ChatGPT也能引进来,而且还是不需要服务器支撑、WebGPU加速的那种。

例如这样:

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

这便是由陈天奇团队最新发布的项目——Web LLM

短短数日,已经在GitHub上揽货3.2K颗星。

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

全部尽在浏览器,怎么搞?

首先,你需要下载Chrome Canary,也便是谷歌浏览器的金丝雀版别:

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

因为这个开发者版别的Chrome是支撑WebGPU的,否则就会出现如下的过错提示:

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

在装置完毕后,团队建议用“终端”输入如下代码启动Chrome Canary:

/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary —enable-dawn-features=disable_robustness

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

启动之后,便可以来到官网的demo试玩处开端体会了。

不过在第一次打开对话的时候,体系还会出现一个初始化的进程(有点漫长,耐心等候)。

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

机器学习编译(MLC)是要害

接下来,我们来看一看Web LLM怎么做到“全部尽在浏览器”的。

根据团队介绍,其中心要害技能是机器学习编译(Machine Learning Compilation,MLC)。

全体方案是站在开源生态体系这个“伟人肩膀”上完结的,包括Hugging Face、来自LLaMA和Vicuna的模型变体,以及wasm和WebGPU等。

而且主要流程是建立在Apache TVM Unity之上。

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

团队首先在TVM中bake了一个言语模型的IRModule,以此来减少了核算量和内存使用。

TVM的IRModule中的每个函数都可以被进一步转换并生成可运转的代码,这些代码可以被普遍布置在任何最小TVM运转时支撑的环境中(JavaScript便是其中之一)。

其次,TensorIR是生成优化程序的要害技能,经过结合专家知识和主动调度程序快速转换TensorIR程序,来提供高效的解决方案。

除此之外,团队还用到了如下一些技能:

  • 启发式算法:用于优化轻量级运算符以减轻工程压力。
  • int4量化技能:用来来紧缩模型权重。
  • 构建静态内存规划优化:来跨多层重用内存。
  • 使用Emscripten和TypeScript :构建一个在TVM web运转时可以布置生成的模块。
  • ……

上述一切的作业流程都是基于Python来完结的。

但Web LLM团队也表明,这个项目还有必定的优化空间,例如AI框架怎么脱节对优化核算库的依靠,以及怎么规划内存使用并更好地紧缩权重等等。

团队介绍

Web LLM背面的团队是MLC.AI社区。

据了解,MLC.AI 社区成立于 2022 年 6 月,并由 Apache TVM 主要发明者、机器学习范畴著名的青年学者陈天奇,带领团队上线了 MLC 线上课程,体系介绍了机器学习编译的要害元素以及中心概念。

浏览器就能跑大模型了!陈天奇团队发布WebLLM,无需服务器支持

值得一提的是,该团队此前还做过Web Stable Diffusion,链接都放在下面了,赶快去体会吧~

Web LLM体会地址:
mlc.ai/web-llm/

Web Stable Diffusion体会地址:
mlc.ai/web-stable-…

参阅链接:
[1]twitter.com/HongyiJin25…
[2]github.com/mlc-ai/web-…

—完—

@量子位 追寻AI技能和产品新动态

深有感触的朋友,欢迎赞同、重视、共享三连’ᴗ’ ❤