在 Google Colab 中运行
|
在 GitHub 上查看源代码
|
概览
Mobile Actions 是一款演示应用,用户可以通过语音或文本输入在设备上触发操作。它将助理互动重新构想为完全离线的功能。无论是“Create a calendar event for lunch tomorrow”(创建明天午餐的日历活动)、“Add John to my contacts”(将 John 添加到我的联系人)还是“Turn on the flashlight”(打开手电筒),该模型都能解析自然语言并确定要执行命令的正确操作系统工具。
本指南将介绍如何执行以下操作:
- 使用 Mobile Actions 数据集对 FunctionGemma 270M 模型进行微调
- 将自定义模型部署到 Google AI Edge Gallery
您将能够从微调模型到将其部署在设备上,全面了解整个流程。
第 1 步:使用 Mobile Actions 数据集对 FunctionGemma 进行微调
FunctionGemma 是一款基于 Gemma 3 架构的 2.7 亿参数模型。它经过专门的函数调用训练,能够将自然语言请求转换为函数调用。
此模型足够小巧高效,可在手机上运行,但与同等大小的模型一样,它需要进行微调,才能专门用于执行特定任务。
为了微调 FunctionGemma,我们使用了 Mobile Actions 数据集,该数据集可在 Hugging Face 上公开获取。此数据集中的每个条目都提供以下信息:
- 模型可使用的一组工具(函数):
- 开启手电筒
- 关闭手电筒
- 在手机的联系人列表中创建联系人
- 发送电子邮件
- 在地图上显示位置
- 打开 Wi-Fi 设置
- 创建新的日历活动
- 提供上下文(例如当前日期和时间)的系统提示
- 用户提示,例如
turn on the flashlight。 - 预期的模型回答,包括相应的函数调用。
显示地图功能的代码如下所示:
{
"function": {
"name": "show_map",
"description": "Shows a location on the map.",
"parameters": {
"type": "OBJECT",
"properties": {
"query": {
"type": "STRING",
"description": "The location to search for. May be the name of a place, a business, or an address."
}
},
"required": [
"query"
]
}
}
}
此 Colab 笔记本涵盖了所有必要步骤,包括:
- 设置环境
- 加载和预处理 Mobile Actions 数据集
- 使用 Hugging Face TRL 微调模型
- 将模型转换为
.litertlm格式以进行部署
第 2 步:在 Google AI Edge Gallery 上部署
前提条件:您需要使用在第 1 步中用于保存 .litertlm 文件的同一 Google 账号,并在 Android 手机上登录该账号。
微调后,我们将模型权重转换为 .litertlm 格式并进行量化。
您可以选择 Load Model 并从 Google 云端硬盘(或通过其他分发方法)中选择模型,将其部署到 Google AI Edge Gallery - Mobile Actions 选项。Google AI Edge Gallery 可在 Google Play 商店中下载。
现在,您可以尝试在应用中发出语音指令或输入内容,看看新微调的模型在调用可用的函数方面的表现如何。
后续步骤
恭喜!现在,您已了解如何使用 Hugging Face 微调模型,以及如何使用 LiteRT-LM 在设备上部署模型。
在 Google Colab 中运行
在 GitHub 上查看源代码