LiteRT-LM:把 Gemma 装进手机、笔记本和树莓派的跨平台 LLM 推理库
【免费下载链接】LiteRT-LMLiteRT-LM is Google's production-ready, high-performance, open-source inference framework for deploying Large Language Models on edge devices.项目地址: https://gitcode.com/GitHub_Trending/li/LiteRT-LM
LiteRT-LM 是 Google 开源的跨平台语言模型运行库,面向边缘 LLM 推理场景:它把大模型拆成多组件管道,在 Android、iOS、Web、桌面乃至树莓派上本地跑起来。不用服务器、不用云 API,下载量化后的模型文件就能开始推理。
为什么端侧推理需要专门的运行库
调云端 API,你要面对网络延迟、数据离开设备、按 token 计费三件事。但真正的难点不在"把模型跑起来"——一个模型早已不是一坨权重,而是一条流水线:分词器、提示词模板、KV 缓存管理、采样,多模态还要接视觉和音频前处理。自己手搓,意味着几千行胶水代码,外加每个平台的硬件差异都要自己追。
LiteRT-LM 就是架在 LiteRT(Google 的轻量模型运行时,可理解为新一代 TFLite)之上的编排层:分词器、会话管理、提示词模板、硬件后端,全部打包成统一 API。它已经在 Chrome、Chromebook Plus、Pixel Watch 上支撑 Google 自家的端侧 GenAI 体验,属于"生产环境验证过",而不是玩具实验。
🔧 核心能力:跨平台、加速、多模态、工具调用
能力可以拆成四块:
- 跨平台:同一份模型文件,Android、iOS、Web、桌面、IoT 通吃
- 硬件加速:GPU、NPU 后端;v0.16.0 新增实验性 YNNPACK 纯 CPU 委托
- 多模态:视觉、音频输入,omni/ 下还带语音识别(ASR)与语音合成(TTS)引擎
- 工具调用:内置函数调用,能做端侧 Agent 工作流
模型侧同样宽:Gemma、Qwen、Llama、Phi-4、MiniCPM 等都在 models/ 里备好了提示词模板和元数据配置。量化版(int4)能把模型文件缩小数倍且不掉太多速度,再叠加 MTP(多 token 预测:小 drafter 模型一次猜多个 token、主模型校验)投机解码,推理最快可提升 3 倍。
那它到底跑多快?"预填充"指模型处理输入 prompt 的阶段,"解码"是逐 token 生成,两者都以 tokens/s 计:
| 模型 | 设备 | 后端 | 预填充 (tokens/s) | 解码 (tokens/s) |
|---|---|---|---|---|
| Gemma3-1B | MacBook Pro (M3) | CPU | 603.8 | 83.0 |
| Gemma3-1B | Samsung S24 Ultra | CPU | 379.7 | 55.9 |
| Gemma3-1B | Samsung S24 Ultra | GPU | 2369.0 | 52.5 |
| Gemma3n-E2B | MacBook Pro (M3) | CPU | 232.5 | 27.6 |
| Gemma3n-E2B | Samsung S24 Ultra | GPU | 816.4 | 15.6 |
| Gemma3n-E4B | MacBook Pro (M3) | CPU | 170.1 | 20.1 |
端侧大模型部署的三个场景
- 手机 App 内置助手:Kotlin API 已稳定,应用离线也能回答,模型直接躺在 App 里
- 树莓派 / 边缘节点:v0.16.0 官方支持 CLI 在树莓派跑 Gemma4-E4B,可开 GPU 后端与投机解码,专治"不允许有服务器"的 IoT 场景
- 桌面智能体工作流:笔记本上跑 Gemma 4 12B,本地文档私有化处理,模型还能按需调用本地工具
第三个场景里"模型调用本地工具"的完整闭环长这样:
⚡ 快速上手:三条命令看到输出
想亲手试试,最快路径是官方 CLI,不用写代码:
uv tool install litert-lm litert-lm run \ --from-huggingface-repo=google/gemma-3n-E2B-it-litert-lm \ gemma-3n-E2B-it-int4 \ --prompt="What is the capital of France?"想读源码,先克隆仓库:
git clone https://gitcode.com/GitHub_Trending/li/LiteRT-LM构建以 Bazel 为首选,CMake 是辅助路径(仍在开发中,详见 docs/getting-started/cmake.md)。依赖:C++20 工具链(gcc 13+)、Python 3.12+,ANTLR 解析器需要 Java 17,部分子模块依赖 Rust 工具链。
当前局限与版本状态
说点实在的:Python、Kotlin、C++ 三个 API 已稳定,Swift 和 JavaScript 仍是早期预览,Flutter 是社区维护。CMake 构建路径官方明确标注"活跃开发中",源码编译建议走 Bazel。YNNPACK 委托也是实验特性,目前仅在 linux arm64 的 CLI 与 Python API 开启。当前版本 v0.16.0,迭代很快。
如果你要选型,我的建议是:Android(Kotlin)或 Python 这两条稳定栈优先;iOS / Web 可以跟进早期预览 API,但要做好接口可能变动的准备。
下一步很具体:去仓库的 samples/ 和 python/litert_lm/examples/ 把示例跑一遍,比看十篇文档都快。
【免费下载链接】LiteRT-LMLiteRT-LM is Google's production-ready, high-performance, open-source inference framework for deploying Large Language Models on edge devices.项目地址: https://gitcode.com/GitHub_Trending/li/LiteRT-LM
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考