news 2026/9/24 17:09:59

LiteRT-LM 完整指南:把大语言模型推理搬到手机、电脑和边缘设备

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LiteRT-LM 完整指南:把大语言模型推理搬到手机、电脑和边缘设备

LiteRT-LM 完整指南:把大语言模型推理搬到手机、电脑和边缘设备

【免费下载链接】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 开源的端侧大语言模型推理框架,基于 C++ 构建,让你不用依赖云端,就能在 Android、iOS、Web 和桌面设备上跑 Gemma、Qwen 等模型。本文帮你快速判断它能不能用在你的项目里。

它解决什么问题

想让 App 里跑本地大模型,过去要自己处理一大堆脏活:模型文件怎么加载、不同操作系统怎么适配、CPU 和 GPU 怎么调度、聊天历史怎么拼成模型认识的格式、函数调用怎么解析……每换一个平台几乎重来一遍。LiteRT-LM 把这些统一收口:底层基于 LiteRT 推理引擎,上层提供对话管理、硬件加速、工具调用等现成能力,你只需要一个.litertlm模型文件和几行代码,就能在多种设备上得到行为一致的推理结果。它还内置了基于约束解码的结构化输出机制,工具调用的 JSON 解析、格式约束这类容易翻车的细节由框架兜底。

核心能力速览

一套 C++ 内核,多语言 API 全平台覆盖

整个引擎用可移植的 C++ 写成,上层再包出不同语言的接口:Python 和 Kotlin 已经稳定,C++ 面向高性能原生集成,Swift 和 JavaScript(含浏览器环境)处于早期预览,社区还有 Flutter 方案。模型侧支持 Gemma、Llama、Phi-4、Qwen 等家族,预编译产物覆盖 Android、iOS、Linux、macOS、Windows 甚至树莓派,各平台的预编译库都在 prebuilt/ 目录里,集成时不用自己交叉编译。

GPU/NPU 加速与多模态开箱即用

推理时可以选择 GPU 或 NPU 加速器,仓库自带各平台的加速委托预编译库(GPU、OpenCL、Metal、WebGPU 等),新加的 YNNPACK 委托还在 Linux arm64 上做了实验性支持。模型也不只是"聊天":它支持视觉和音频输入,仓库里 omni/ 目录就是配套的 ASR 语音识别和 TTS 语音合成引擎,能搭出带耳朵和嘴巴的完整端侧对话管道。

内置函数调用,给模型接上真实工具

做 Agent 类应用最头疼的是让模型可靠地"调工具"。LiteRT-LM 把这件事做成了标准流程:你用 JSON Schema 声明工具,框架负责把声明喂给模型、检测模型输出的调用字符串、解析成结构化 JSON 交回给你的应用执行,再把结果拼回去继续生成。

对应的概念文档在 docs/api/cpp/tool-use.md,如果想深入限制模型输出格式(比如强制输出合法 JSON 或 SQL),runtime/components/constrained_decoding/ 下的约束解码实现值得读一读。

数据怎么看

官方给出的参考数据(tokens/sec,数值越高越快):

模型设备后端预填充速度解码速度
Gemma3-1BMacBook Pro (M3)CPU603.883.0
Gemma3-1BSamsung S24 UltraCPU379.755.9
Gemma3-1BSamsung S24 UltraGPU2369.052.5
Gemma3n-E2BMacBook Pro (M3)CPU232.527.6
Gemma3n-E2BSamsung S24 UltraGPU816.415.6
Gemma3n-E4BSamsung S24 UltraGPU548.09.4

用大白话讲:1B 小模型在手机上解码约 55 token/秒,也就是每秒能"吐"出几十个字,日常问答的流畅度已经接近"即时响应"。开 GPU 后长提示的预填充能快 6 倍左右,意味着塞给模型一段长文档再提问时,等待首字的时间大幅缩短。代价是模型越大越吃硬件——E4B 在手机上解码掉到个位数,适合对质量要求高、能接受慢一点的场景。选型经验:手机端优先 1B~2B 档,桌面端可以摸到更大模型。

适合谁、不适合谁

适合:做 Android/iOS/桌面/浏览器端 AI 功能的开发者,想本地跑模型又懒得自己搭推理栈的团队,以及树莓派等 IoT 场景的尝鲜者。Python 和 Kotlin API 都是稳定状态,上手风险最低。

不适合:需要超大参数模型实时交互的场景——端侧硬件摆在那儿,E4B 级别的模型在手机上解码都不快,更大的模型请留在云端;对 API 稳定性要求极苛刻的生产项目也要留意,Swift、JavaScript 接口还在早期预览,版本间可能有变动;此外它主要面向 LLM 推理编排,不是训练/微调框架,模型转换和构建工具链(python/litert_lm_builder/)有一定学习成本。

上手路径

最快的体验方式是命令行:装一个uv,执行uv tool install litert-lm,然后一条litert-lm run命令加一个 Hugging Face 模型地址,终端里就能直接对话,全程不写代码。要进应用的话,按你熟悉的语言走:Kotlin 用户在 docs/api/kotlin/getting_started.md 对应的 Kotlin 指南里通过 Gradle 加依赖即可,C++ 集成参考 docs/api/cpp/ 下的对话 API 文档,各模型的提示词模板和元数据配置都放在 models/ 目录里可以直接看。想自己编译的话,docs/getting-started/cmake.md 讲了 CMake 构建路径,官方推荐还是用 Bazel。

端侧大模型推理正在从"能不能跑"走向"跑得多快、接得多少外设",LiteRT-LM 是目前开源方案里工程完成度相当高的一个。如果你手上正好有个需要离线 AI 能力的产品,不妨先用 CLI 跑个 Gemma 3n E2B 试试手感,再决定要不要正式接入。

【免费下载链接】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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/24 17:08:53

定时短信报警

文章目录 引言 I 需求 短信模版 用户配置 II 实现 调度任务配置 接口 接口实现 III 工具方法 短信发送 船舶权限过滤 引言 首次上报遇险报警后,若未处理,系统每小时推送一次短信提醒。通过定时任务调用/smsAlarm接口,查询开启通知的用户及未处理报警数据,按用户配置的报警…

作者头像 李华
网站建设 2026/9/24 17:01:53

第23篇-将你的Server发布到MCP-Registry

【MCP 全栈教程】第 23 篇:将你的 Server 发布到 MCP Registry 本系列定位:从协议原理到 Server 开发、Client 开发、再到各大平台实战集成,系统化掌握 MCP(Model Context Protocol)全栈技术体系。 本篇你将学到 serv…

作者头像 李华