谷歌LiteRT Tensor API发布:C++直连端侧,模型开发免重写
谷歌推出 LiteRT Tensor API,一个轻量级 C++ API,让开发者可以直接面向端侧构建、定制和优化机器学习模型。谷歌表示,它兼顾原生模型开发的灵活性与跨平台可移植性。 谷歌表示,传统方法是开发者使用 C++ 手动编写计算逻辑以获得最大控制权,但存在明显的短板: 实现代码与特定后端(如 Metal、Ope
谷歌发布了一个轻量级 C++ 接口 LiteRT Tensor API,开发者能直接针对端侧设备搭建、定制并优化机器学习模型。按照谷歌的说法,这套接口把原生模型开发的控制力和跨平台可移植性放在了一起。
谷歌指出,以往开发者为了拿到最大控制权,会用 C++ 手写计算逻辑,问题也很明显。
代码跟具体后端绑得很死,Metal、OpenCL、Vulkan 都算在内,每加一种硬件目标就得重写一遍。CPU、GPU、NPU 之间的零拷贝缓冲区互通和同步,再加上把预处理、推理、后处理串成一条链,人工工作量都不小。
LiteRT Tensor API 就是冲着这些麻烦来的。开发者用 C++ 一个算子一个算子地搭计算图,对模型架构、优化和加速器执行的掌控更强;同一张图经由 LiteRT 就能跑在 CPU、GPU、NPU 上,换新目标不用重新写代码。
除了完全掌控模型图,这个 API 还有几项关键能力。一是直接导入权重,开发者能从检查点直接加载,Hugging Face 的文件也在其中。.safetensors二是零拷贝缓冲区互操作,预处理、推理、后处理之间不用再复制加速器缓冲区。三是能配合 AI 编码智能体,智能体生成 C++ 代码即可搭建、修改、验证模型图并做基准测试。
谷歌用编码智能体做了一个演示应用,展示怎么借 LiteRT Tensor API 完成多对象分割与跟踪。这个应用同时被拿来当跨平台性能基准测试的底子。
同一份 SAM 2 模型的 C++ 代码跑了三台设备:一台 macOS 笔记本电脑(Metal)、一部 iOS 手机(Metal)和一部 Android 手机(OpenCL)。测试中,它在 MacBook Pro 上比 Apple MLX(fp16,图像编码器加掩码解码器)快约 1.5 倍。
谷歌强调,模型图是用纯 C++ 定义的,编码智能体因此能做好几项优化。它“将 SAM 2 的逐帧决策(例如对象是否仍然可见)从 CPU 代码移入计算图中”,还把在 WebGPU 上触发 CPU 回退的操作重写成兼容 GPU 的算术运算。
Arm AI 总监 Laurence Moroney 在 LinkedIn 上评论这一公告时强调,开发者应始终从模型转换开始,只有在“需要图级控制或希望预处理和后处理保留在加速器上”时才考虑这个 C++ API。他还强调了用纯 C++ 定义模型图的好处。
拿到 WebGPU 上跑 512×512 分辨率,帧率原先连 10fps 都不到,后来做到 30fps 以上;这轮迭代优化全程由编码智能体操刀,可见结构化原语确实能帮智能体做出实打实的性能提升。
后续改进谷歌也列了出来:原生支持 ML Drift 后端、更多对 NPU 友好的操作、自动全图量化,以及针对不同图像尺寸、批大小和序列长度的扩展动态形状支持。