精華筆記

· @aihub.tw

AI

WebLLM:在瀏覽器分頁裡直接跑 AI 模型,不用伺服器、不用 API 金鑰

WebLLM:在瀏覽器分頁裡直接跑 AI 模型,不用伺服器、不用 API 金鑰

WebLLM:在瀏覽器分頁裡直接跑 AI 模型

大部分人用 AI,都是把文字送到 OpenAI、Anthropic 或 Google 的伺服器,再等它回答。WebLLM 走的是另一條路:把語言模型直接載進你的瀏覽器分頁,在你自己的電腦上跑。不用架伺服器、不用 API 金鑰,對話資料也不會離開你的裝置。

它是 MLC AI 團隊開源的專案(GitHub:mlc-ai/web-llm),README 對自己的定位是「高效能的瀏覽器內 LLM 推論引擎」。

它是怎麼做到的?

關鍵是 WebGPU。現代瀏覽器可以透過 WebGPU 直接使用顯示卡做運算,WebLLM 就用它來做硬體加速,所以模型推論可以在網頁裡完成,不需要任何伺服器幫忙。模型檔第一次會下載到瀏覽器快取,之後再開就快很多。

支援哪些模型?

官方列出的內建模型家族包括 **Llama(Llama 3、Llama 2)、Phi(Phi 3、Phi 2、Phi 1.5)、Gemma、Mistral、Qwen(通義千問)**等,也可以依照 MLC 的格式編譯、部署你自己的模型。

最實用的一點:跟 OpenAI API 相容

WebLLM 完全相容 OpenAI 的 API 格式。也就是說,你原本寫給 OpenAI 的程式,大部分可以直接換成本地開源模型,而且一樣支援:

  • 串流輸出(streaming),回答一個字一個字出來
  • JSON 模式,產生結構化資料
  • Function calling(官方標示為開發中)

3 分鐘上手

安裝套件:

npm install @mlc-ai/web-llm

建立引擎、載入模型,然後就跟用 OpenAI SDK 一樣對話:

import { CreateMLCEngine } from "@mlc-ai/web-llm";

const engine = await CreateMLCEngine("Llama-3.1-8B-Instruct-q4f32_1-MLC");
const reply = await engine.chat.completions.create({
  messages: [{ role: "user", content: "用一句話解釋 WebGPU" }],
});
console.log(reply.choices[0].message.content);

不想寫程式的話,可以先到官方網站 webllm.mlc.ai 打開 WebLLM Chat,直接在瀏覽器裡試。

適合拿來做什麼?

  • 隱私敏感的工具:筆記摘要、日記、內部文件整理,資料完全不出電腦
  • 不想付 API 費用的小工具:Chrome 擴充功能、個人網頁助手(官方也有 Chrome 擴充功能範例)
  • 離線或網路不穩的情境:模型下載完之後就能用
  • 教學與 Demo:讓學生在瀏覽器裡就看到 LLM 怎麼運作

要注意的限制

  • 需要支援 WebGPU 的瀏覽器和夠力的顯示卡,舊電腦或部分手機可能跑不動或很慢
  • 第一次要下載模型,大小從幾百 MB 到數 GB 不等
  • 能跑的多半是小到中型的開源模型,能力不會跟最新的雲端旗艦模型一樣強,適合輕量任務

資料來源

想看更多 AI 工具整理,追蹤 IG @aihub.tw。

#WebLLM#WebGPU#本地 LLM#開源

原片來源:https://github.com/mlc-ai/web-llm

← 回所有文章