🚀 Home 3B v3
“Home”模型是对Stability AI的StableLM - 3B - Zephyr模型进行微调后的产物。该模型能够控制用户家中的设备,还能进行基本的问答。微调数据集是一个自定义整理的数据集,旨在教导模型进行函数调用。
模型的V3版本采用了新的基础模型(StableLM),显著提高了准确性。此外,还增加了:基本的多角色支持、基本的多语言支持,以及对更多Home Assistant实体类型(吸尘器、定时器和待办事项)的支持。
注意:基础模型本身并不具备多语言支持,但使用的分词器在处理非英语语言方面比Phi - 2更好。我已经验证,在一些随机示例中,当请求是通过谷歌翻译处理的英文请求时,该模型在德语、西班牙语和法语中确实可以正常工作。
为了能在像树莓派这样的低资源环境(这在Home Assistant安装中很常见)中运行,该模型使用Lama.cpp进行了量化。
该模型可以使用Zephyr提示格式作为“指令”类型的模型。系统提示用于提供有关Home Assistant安装状态的信息,包括可用设备和可调用的服务。
示例“系统”提示
你是“Al”,一个能控制房屋内设备的智能助手。仅根据提供的信息按指示完成以下任务。
服务:light.turn_off()、light.turn_on(brightness,rgb_color)、fan.turn_on()、fan.turn_off()
设备:
light.office '办公室灯光' = 开启;亮度80%
fan.office '办公室风扇' = 关闭
light.kitchen '厨房灯光' = 开启;亮度80%;红色
light.bedroom '卧室灯光' = 关闭
模型的输出将包含一个应反馈给用户的响应,以及一个可选的代码块,用于调用不同的Home Assistant“服务”。模型进行函数调用的输出格式如下:
现在为你打开厨房的灯
```homeassistant
{ "service": "light.turn_on", "target_device": "light.kitchen" }
```
由于基础模型进行了指令微调,该模型还能够执行基本的指令和问答任务。例如,该模型能够执行以下基本逻辑任务:
用户:如果玛丽7岁,而我比她大3岁,我多少岁?
助手:如果玛丽7岁,那么你10岁(7 + 3 = 10)。
🚀 快速开始
该模型可借助Zephyr提示格式当作“指令”类型的模型来使用,通过系统提示提供Home Assistant安装状态的相关信息,进而实现设备控制与问答功能。
✨ 主要特性
- 基于StableLM - 3B - Zephyr模型微调,能控制家中设备并进行基本问答。
- V3版本采用新基础模型,提升准确性,增加多角色、多语言及更多实体类型支持。
- 使用特定分词器,对非英语语言处理能力优于Phi - 2。
- 经Lama.cpp量化,可在低资源环境运行。
- 支持基本指令和问答任务。
📦 安装指南
文档未提及安装步骤,暂不提供。
💻 使用示例
基础用法
你是“Al”,一个能控制房屋内设备的智能助手。仅根据提供的信息按指示完成以下任务。
服务:light.turn_off()、light.turn_on(brightness,rgb_color)、fan.turn_on()、fan.turn_off()
设备:
light.office '办公室灯光' = 开启;亮度80%
fan.office '办公室风扇' = 关闭
light.kitchen '厨房灯光' = 开启;亮度80%;红色
light.bedroom '卧室灯光' = 关闭
高级用法
现在为你打开厨房的灯
```homeassistant
{ "service": "light.turn_on", "target_device": "light.kitchen" }
## 📚 详细文档
### 训练
该模型在RTX 3090(24GB)上以LoRA形式进行训练。LoRA的秩为64,alpha为128,目标模块为`up_proj,down_proj,q_proj,v_proj,o_proj`。最后将完整模型合并在一起。
### 评估
该模型在测试数据集上的JSON函数调用准确率达到97.11%。
### 数据集
用于监督微调的合成数据集 - [https://huggingface.co/datasets/acon96/Home - Assistant - Requests](https://huggingface.co/datasets/acon96/Home-Assistant-Requests)
## 📄 许可证
此模型是对Stability AI StableLM模型系列的微调版本,该系列模型遵循STABILITY AI非商业研究社区许可协议。因此,此模型也在相同的非商业STABILITY AI非商业研究社区许可协议下发布。微调后的模型仅用于非商业用途。
### 信息表格
| 属性 | 详情 |
|------|------|
| 模型类型 | 对StableLM - 3B - Zephyr模型微调后的文本生成模型 |
| 训练数据 | [自定义整理的数据集](https://github.com/acon96/home-llm)、[合成数据集](https://huggingface.co/datasets/acon96/Home-Assistant-Requests) |
| 训练环境 | RTX 3090(24GB) |
| 评估指标 | 在测试数据集上JSON函数调用准确率达97.11% |
| 许可证 | STABILITY AI非商业研究社区许可协议,仅用于非商业用途 |