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。