LiteRT.js:谷歌高性能網頁AI推理庫
谷歌發佈LiteRT.js,將高性能AI推理帶入瀏覽器,支持CPU、GPU和NPU硬件加速,性能比現有方案提升最多3倍,並集成YOLO等模型。
谷歌在開發者博客上正式宣佈了LiteRT.js,這是一個將LiteRT(其高性能端側推理庫)移植到JavaScript生態的關鍵項目。藉助WebAssembly技術,網頁開發者現在可以在瀏覽器中直接運行基於.tflite格式的機器學習模型,實現完全本地化的AI推理。這不僅顯著增強了用户隱私保護(無需上傳數據到服務器),還降低了服務器成本,並提供了極低延遲的實時體驗。對於已經使用.tflite模型的開發者,LiteRT.js能夠讓他們更方便地將模型部署到移動端和桌面端瀏覽器。
與TensorFlow.js等早期網頁AI方案不同,LiteRT.js不再依賴效率較低的JavaScript內核,而是通過WebAssembly直接調用LiteRT的原生跨平台運行時及其所有優化。這使得它能夠充分利用底層硬件的加速能力:CPU方面採用XNNPACK庫,提供多線程支持和優化的SIMD指令;GPU方面通過WebGPU調用ML Drift驅動,實現頂尖的圖形處理器加速;NPU方面則通過實驗性的WebNN API,未來可調用專用神經網絡處理器,以實現更高效的超低延遲推理。
在性能表現上,谷歌對LiteRT.js進行了詳細評估。以2024款配備M4芯片的MacBook Pro為測試平台,在常用的計算機視覺和音頻處理模型上,LiteRT.js的CPU和GPU推理速度相比其他網頁運行時均提升了最高3倍。更關鍵的是,當針對實時應用(如目標跟蹤、音頻轉錄)使用WebGPU或WebNN時,相對純CPU執行可獲得5到60倍的加速比,使得網頁端也能運行過去僅限原生應用的高強度AI任務。
LiteRT.js還提供了與主流AI框架的平滑銜接。通過LiteRT Torch,PyTorch模型只需一步即可轉換為.tflite格式,並立即享受瀏覽器端的硬件加速。同時,AI Edge Quantizer工具允許開發者針對不同網絡層定製量化方案,在保持模型質量的前提下大幅減小模型體積並提升運行速度。此外,LiteRT.js與計算機視覺領域知名的Ultralytics YOLO模型實現了官方集成,開發者只需幾行代碼即可將YOLO模型部署到移動端、邊緣設備和瀏覽器中。
除了技術細節,谷歌還展示了三個生動的應用示例:實時深度估計(使用Depth-Anything-V2模型,將普通攝像頭畫面轉換為3D點雲)、圖像超分辨率(通過Real-ESRGAN模型實現4倍放大)、以及YOLO目標檢測。這些Demo的源代碼已在GitHub上開放。開發者可以通過npm安裝@litertjs/core包,並參考所提供的文檔和代碼片段快速上手。例如,僅需數行JavaScript代碼即可完成模型加載、編譯和執行,這大大降低了網頁AI應用的門檻。
展望未來,LiteRT.js的開發路線圖包括深化WebNN集成以更好地支持NPU,以及針對端側生成式AI進行高度優化。谷歌也在Kaggle和Hugging Face社區發佈了預訓練的.tflite模型,並提供了LiteRT-LM.js擴展以支持瀏覽器中的大語言模型。現有TensorFlow.js用户也可以參考遷移指南,將推理部分無縫升級到LiteRT.js。