5

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

 1 year ago
source link: https://www.qbitai.com/2023/04/47499.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

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

head.jpg十三 2023-04-19 11:50:25 来源:量子位

GitHub 3.2K星

金磊 发自 凹非寺

量子位 | 公众号 QbitAI

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

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

例如这样:

63d4b02559bf0c7db7a8f4b0b9244f98.gif

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

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

df8e51b5273a5c06b9548551de73bbb8.jpeg

一切尽在浏览器,怎么搞?

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

82a6f3a12faf1d16e93194f990ba9327.jpeg

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

59c4523167b6204e875b7282861ec757.png

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

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

c00e223d2f9723574d488fc2ede54b24.png

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

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

12177daac1434e58bbe7beb31307e59e~tplv-tt-shrink:640:0.image?traceid=202304191118013A8E528E0EB8708EB143&x-expires=2147483647&x-signature=%2FmwsW0pypj7i61LGm1F6feL5lhY%3D

机器学习编译(MLC)是关键

接下来,我们来看一看Web LLM如何做到“一切尽在浏览器”的。

根据团队介绍,其核心关键技术是机器学习编译(Machine Learning Compilation,MLC)。

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

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

a827df027ded4b798f0ebf803ef24b9c~tplv-tt-shrink:640:0.image?traceid=202304191118013A8E528E0EB8708EB143&x-expires=2147483647&x-signature=%2Ba%2FI1sJ1TNFEQ2j05%2FTTBINZpKQ%3D

团队首先在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 线上课程,系统介绍了机器学习编译的关键元素以及核心概念。

eaa7f4e5e70b4d03a8663da71397c394~tplv-tt-shrink:640:0.image?traceid=202304191118013A8E528E0EB8708EB143&x-expires=2147483647&x-signature=qeDy7fF3spB5IB9jyZoQbDzso4U%3D

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

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

Web Stable Diffusion体验地址:
https://mlc.ai/web-stable-diffusion/

参考链接:
[1]https://twitter.com/HongyiJin258/status/1647062309960028160
[2]https://github.com/mlc-ai/web-llm

版权所有,未经授权不得以任何形式转载及使用,违者必究。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK