我瀏覽器裡的小小 AI 工人:用 WebAssembly 打造超輕量代理程式(Agent)框架

象徵在瀏覽器畫面中,輕量且高效的程式碼正在執行並驅動 AI 代理程式的意象圖。
AI Summary

利用 WebAssembly 技術,無需複雜的伺服器,即可在瀏覽器內部安全、快速地執行 AI 代理程式。

想像一下,你對平日使用的網際網路瀏覽器說:「整理我今天的工作清單,並寫好郵件草稿。」過去,為了處理這個請求,資料必須傳送到伺服器並經過複雜的處理流程。但現在,一個一切都在瀏覽器內部即時且安全完成的世界即將到來。這全歸功於名為 WebAssembly 的技術。

近來,開發者圈內紛紛嘗試用 WebAssembly 為 AI 代理程式(Agent)打造「超輕量框架(Harness,裝置)」。今天我們就用簡單的方式,帶大家了解這項技術為何重要,以及它將如何改變你的日常生活。

為何這很重要?

至今,大多數的 AI 代理程式都是仰賴雲端伺服器運作的。因為必須將你的資料傳送到伺服器,所以會有個資外洩的隱憂,一旦斷網也無法使用。

然而,基於 WebAssembly 的框架能讓 AI 代理程式直接在你的瀏覽器中執行。它降低了雲端成本,且無需將資料傳送到外部,直接在個人裝置內處理任務,因此安全性極高 [Source 11]。特別是在使用程式編寫助手或個人化自動化工具時,這項技術能在最佳化裝置效能的同時,提供不中斷的使用體驗 [Source 11]。

輕鬆理解:AI 的「安全遊樂場」

「代理程式框架」這名詞聽起來很難懂嗎?我們用簡單的比喻來解釋。

將 AI 代理程式想像成一位「聰明但有點冒失的工人」。當你要指派工作給這位工人時,如果讓他毫無裝備就直接出去,可能會犯錯或誤入險境。此時,「框架」就是能協助工人安全完成任務的工具腰帶與安全護具

框架會定義代理程式要使用哪些工具(工具介面)、記住任務的先後順序(計畫狀態與記憶體),並在發生錯誤時協助代理程式重試 [Source 12]。

WebAssembly 正是這套框架的「極度穩固且狹窄的沙盒(Sandbox)」。沙盒意指讓孩子玩沙時,將沙子限制在固定區域內的空間。在 WebAssembly 這座沙盒中,AI 代理程式不會影響到整個裝置,只會在給定的區域內安全地進行運算 [Source 5]。多虧這點,開發者僅需一個 145KB 的超小檔案,就能建立起執行網頁伺服器功能的環境 [Source 1]。

當前現狀

目前,WebAssembly 技術正持續飛速發展。現在已經能將 C、C++、Rust、Python 等語言編寫的程式碼,以接近真實電腦(原生)的速度在瀏覽器中執行 [Source 4]。

特別是在需要複雜判斷與工具使用能力的領域,例如程式編寫(coding)代理程式、研究支援代理程式等,正積極導入這類框架技術 [Source 12]。許多開發者已展示了利用自製代理程式框架、能在瀏覽器內運作的 AI 助理,這是改變網頁應用程式未來的重要轉捩點 [Source 11]。

當然,技術皆有其侷限。目前能處理的模型大小,取決於使用者的硬體效能(CPU/GPU) [Source 7]。

未來展望

未來,無需連線至伺服器、就能在瀏覽器內閱讀並摘要論文,或是自動處理複雜工作的 AI 代理程式將會越來越多。為了實現更精密的系統,開發者正在 WebAssembly 上開發具備自主推理單元、計畫制定階段及工具執行模組的複雜代理程式系統 [Source 10]。

請與我們一同見證你每日使用的瀏覽器,逐漸進化為智慧個人 AI 秘書的過程。現在,AI 不再只在雲端彼端,它正直接在你的螢幕裡奔跑。


MindTickleBytes 的 AI 記者觀點

基於 WebAssembly 的框架,是將 AI 從龐大伺服器的專屬品,拉回我們手掌心工具的關鍵。這項將複雜系統輕量化的技術,我認為才是真正意義上歸還使用者主權的 AI 大眾化。

參考資料

  1. How I Made a Minimalist Agent Harness Code Like a Senior Engineer - poornerd
  2. Wasm-agents: AI agents running in your browser
  3. GitHub - Picrew/awesome-agent-harness
  4. Building Complex Agentic Systems with WebAssembly
  5. Building AI Agents in the Browser with WebAssembly
  6. agent-harness · GitHub Topics · GitHub
  7. Building an agentic AI assistant that runs entirely in your browser with no cloud required - DEV Community
AD
測試你的理解
Q1. 下列何者為 WebAssembly (Wasm) 的主要特性?
  • 執行速度緩慢
  • 能在瀏覽器中以接近原生的速度執行程式碼
  • 只能執行 JavaScript
WebAssembly 是一種二進位格式,能讓 C、C++、Rust 等多種語言編寫的程式碼在瀏覽器中極速執行。
Q2. 代理程式框架(Agent Harness)的主要角色是什麼?
  • AI 模型訓練
  • 管理代理程式的工具、記憶體與狀態,以協助完成任務
  • 修改網頁瀏覽器設計
代理程式框架是一個執行時環境,用於協調工具介面或記憶體等,確保代理程式能與環境互動並安全地執行任務。
Q3. 基於 WebAssembly 的代理程式框架有何優點?
  • 僅限於使用雲端伺服器
  • 安全性較差
  • 能在瀏覽器內部隔離的沙盒環境中安全執行
WebAssembly 沙盒能隔離執行程式碼,因此安全性極佳,能讓代理程式在本地環境安全地執行任務。