Transformers.js v3 發(fā)布:為瀏覽器中的機(jī)器學(xué)習(xí)帶來(lái)強(qiáng)大的功能與靈活性 原創(chuàng)
01 概述
在不斷發(fā)展的機(jī)器學(xué)習(xí)和人工智能領(lǐng)域,開(kāi)發(fā)者們愈發(fā)渴望能夠無(wú)縫集成到各種環(huán)境中的工具。然而,直接在瀏覽器中高效部署機(jī)器學(xué)習(xí)模型,而不依賴于大量的服務(wù)器資源或復(fù)雜的后端支持,依然是一個(gè)巨大的挑戰(zhàn)。雖然基于JavaScript的解決方案已經(jīng)出現(xiàn),但它們往往面臨性能有限、兼容性問(wèn)題以及可有效運(yùn)行的模型類型的限制。而 Transformers.js v3 的發(fā)布,正是為了解決這些問(wèn)題,為開(kāi)發(fā)者社區(qū)帶來(lái)了顯著的進(jìn)步。
02 讓機(jī)器學(xué)習(xí)觸手可及
Transformers.js v3 是 Hugging Face 最新發(fā)布的一款工具,旨在使機(jī)器學(xué)習(xí)模型可以直接在瀏覽器中運(yùn)行。這一版本充分利用了 WebGPU 技術(shù)——一種新一代圖形API,相比于更常用的 WebAssembly (WASM),提供了顯著的性能提升。通過(guò)這一技術(shù),Transformers.js v3 的速度得到了大幅提升,推理速度比之前的實(shí)現(xiàn)快了多達(dá) 100 倍。這樣的提升,對(duì)于資源密集型的轉(zhuǎn)換模型在瀏覽器中的高效運(yùn)行至關(guān)重要。
兼容性全面,靈活性強(qiáng)
Transformers.js v3 還擴(kuò)大了在不同 JavaScript 運(yùn)行環(huán)境中的兼容性,包括 Node.js(支持 ESM 和 CJS)、Deno 和 Bun,使開(kāi)發(fā)者能夠在多個(gè)環(huán)境中靈活地使用這些模型。這個(gè)靈活性對(duì)于那些需要跨平臺(tái)開(kāi)發(fā)的項(xiàng)目尤為重要。
03 新功能與優(yōu)化
支持新的量化格式
Transformers.js v3 不僅引入了 WebGPU 的支持,還增加了新的量化格式,使得模型可以更高效地加載和執(zhí)行。量化是一種關(guān)鍵技術(shù),能夠縮小模型的體積并提升處理速度,特別是在像瀏覽器這樣資源有限的平臺(tái)上。這一版本支持多達(dá) 120 種模型架構(gòu),包括 BERT、GPT-2 和更新的 LLaMA 模型,展示了其全面的支持能力。此外,現(xiàn)在有超過(guò) 1200 個(gè)預(yù)轉(zhuǎn)換模型 可供開(kāi)發(fā)者直接使用,避免了復(fù)雜的轉(zhuǎn)換過(guò)程。
豐富的示例項(xiàng)目與模板
為了幫助開(kāi)發(fā)者快速上手,Transformers.js v3 還推出了 25 個(gè)新示例項(xiàng)目和模板,涵蓋了從聊天機(jī)器人實(shí)現(xiàn)到文本分類等多種用例,充分展示了 Transformers.js 在實(shí)際應(yīng)用中的強(qiáng)大和靈活性。
提升開(kāi)發(fā)者的工作效率
Transformers.js v3 的重要性在于,它賦能開(kāi)發(fā)者在瀏覽器中以空前的效率創(chuàng)建復(fù)雜的 AI 應(yīng)用。WebGPU 的引入有效解決了以往瀏覽器解決方案的性能瓶頸,支持實(shí)時(shí)推理、自然語(yǔ)言處理,甚至在設(shè)備上進(jìn)行機(jī)器學(xué)習(xí),這一切都使得開(kāi)發(fā)者能夠減少昂貴的服務(wù)器端計(jì)算需求,同時(shí)促進(jìn)更具隱私保護(hù)的 AI 應(yīng)用的實(shí)現(xiàn)。
多種 JavaScript 環(huán)境的廣泛兼容性
由于其對(duì)多種 JavaScript 環(huán)境的廣泛兼容性,開(kāi)發(fā)者不再局限于特定的平臺(tái),這使得跨多種項(xiàng)目的集成變得更加順暢。隨著超過(guò) 1200 個(gè)預(yù)轉(zhuǎn)換模型 和 25 個(gè)新示例項(xiàng)目的不斷增加,這一發(fā)布將成為初學(xué)者和專家們的關(guān)鍵工具。初步測(cè)試結(jié)果顯示,使用 WebGPU 時(shí),標(biāo)準(zhǔn)轉(zhuǎn)換模型的推理時(shí)間顯著減少,用戶體驗(yàn)變得更加流暢和響應(yīng)迅速。
04 未來(lái)展望
隨著 Transformers.js v3 的發(fā)布,Hugging Face 再次走在了讓強(qiáng)大機(jī)器學(xué)習(xí)模型普及化的前沿。通過(guò)利用 WebGPU 實(shí)現(xiàn)高達(dá) 100 倍 的性能提升,并擴(kuò)展在關(guān)鍵 JavaScript 環(huán)境中的兼容性,這一發(fā)布對(duì)于瀏覽器基礎(chǔ)的 AI 應(yīng)用來(lái)說(shuō)具有里程碑式的意義。新引入的量化格式、超過(guò) 1200 個(gè)預(yù)轉(zhuǎn)換模型 的豐富庫(kù),以及 25 個(gè)現(xiàn)成的示例項(xiàng)目,都降低了開(kāi)發(fā)者利用轉(zhuǎn)換模型的門檻。
安裝指南
想要開(kāi)始使用 Transformers.js v3,你可以通過(guò) NPM 安裝:
npm i @huggingface/transformers
然后,通過(guò)以下方式導(dǎo)入庫(kù):
import { pipeline } from "@huggingface/transformers";
或者,你也可以使用 CDN 進(jìn)行導(dǎo)入:
import { pipeline } from "https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.0.0";
05 結(jié)語(yǔ)
隨著瀏覽器中機(jī)器學(xué)習(xí)的日益普及,Transformers.js v3 未來(lái)將成為推動(dòng)這一領(lǐng)域發(fā)展的游戲規(guī)則改變者。它不僅讓復(fù)雜的 AI 應(yīng)用變得更加可及,也為廣泛的應(yīng)用場(chǎng)景提供了更為實(shí)際的解決方案。在這個(gè)快速發(fā)展的技術(shù)時(shí)代,掌握這些新工具,無(wú)疑將為開(kāi)發(fā)者們開(kāi)辟新的可能性。無(wú)論你是剛?cè)腴T的開(kāi)發(fā)者還是資深專家,Transformers.js v3 都將為你的項(xiàng)目注入強(qiáng)大的 AI 能力,讓我們共同期待這項(xiàng)技術(shù)的廣泛應(yīng)用與未來(lái)發(fā)展!
參考:
- ??https://github.com/huggingface/transformers.js/releases/tag/3.0.0??
- ??https://huggingface.co/blog/transformersjs-v3??
?
本文轉(zhuǎn)載自公眾號(hào)Halo咯咯 作者:基咯咯
