# 建木OS Phase 1 技术进展报告
# 建木OS Phase 1 技术进展报告
> **执行摘要**:建木OS 是一款面向嵌入式设备的 Agent 操作系统,当前规划两条产品线:**老人机平台**(展锐/联发科功能机,标准部署)与**智能手表平台**(Cortex-M7 嵌入式,极限压缩)。Phase 1 已完成 V9v3 C 版端侧推理引擎编译验证,worm_knowledge_engine 已开源发布,正在推进老人机意图理解管线搭建与手表端 V9v3-lite 蒸馏。
---
## 一、项目概述
### 1.1 定位
建木OS 面向 **资源受限嵌入式设备**,通过自研嵌入模型 V9v3 与 Agent 框架,实现离线语音交互与任务执行。
**两条产品线,同一套核心引擎**:
| 产品线 | 老人机 | 智能手表 |
|--------|--------|----------|
| 目标用户 | 老年人日常照护 | 运动/健康/便捷交互 |
| 硬件平台 | 展锐/联发科功能机 | Cortex-M7 SoC(ESP32-S3/nRF54) |
| 部署策略 | 标准版(完整能力) | Lite 版(极限压缩) |
| 核心场景 | 用药提醒、健康监测、SOS | 语音笔记、闹钟、紧急求助 |
### 1.2 核心场景
#### 老人机(标准部署)
| 场景 | 示例指令 | 说明 |
|------|----------|------|
| 用药提醒 | "几点吃药了?" | 屏幕+语音双重提醒 |
| 健康监测 | "我上周平均心率多少" | 本地存半年数据 |
| 紧急求助 | "我摔倒了"/物理SOS键 | 自动发位置+拨号 |
| 快捷拨号 | "打电话给儿子" | 语音+实体按键双入口 |
| 语音笔记 | "记一下明天买药" | 本地存储,按时间查询 |
#### 智能手表(极限压缩)
| 场景 | 示例指令 | 说明 |
|------|----------|------|
| 语音笔记 | "记录明天下午三点开会" | 腕上快速记录 |
| 健康查询 | "我上周平均心率多少" | 传感器直读 |
| 闹钟设置 | "设一个七点的闹钟" | 抬腕即设 |
| 紧急求助 | "我摔倒了" | 本地触发+蓝牙中继 |
---
## 二、技术进展
### 2.1 嵌入层:V9v3 系列
| 模型 | 参数量 | 模型体积 | 目标平台 | 进展 |
|------|--------|----------|----------|------|
| **V9v3** | 3.15M | ~12 MB | 老人机(标准版) | ✅ C 版推理引擎编译完成 |
| **V9v3-lite** | 1.5M | < 2 MB INT8 | 手表(Lite 版) | 🔄 蒸馏训练中 |
**共享设计**:
- 528 token 混合词表(代码模式 + 字节级),中文 UTF-8 字节级处理
- 多级池化架构,适配不同算力平台
- 聚焦中文短指令(< 20 字),暂不支持多语言
### 2.2 意图理解:NLU 管线
| 意图 | 老人机示例 | 手表示例 | 槽位 |
|------|-----------|----------|------|
| 用药/提醒 | "几点吃药了?" | "设一个七点的闹钟" | 时间、动作 |
| 健康监测 | "我上周平均心率多少" | "我上周平均心率多少" | 时间范围、指标 |
| 紧急求助 | "我摔倒了" | "我摔倒了" | 自动触发 |
| 快捷拨号 | "打电话给儿子" | — | 联系人 |
| 语音笔记 | "记一下明天买药" | "记录明天下午三点开会" | 时间、内容 |
| 日程管理 | — | "明天下午三点开会" | 时间、内容 |
#### 技术挑战与方案
| 挑战 | 说明 | 当前方案 |
|------|------|----------|
| 方言适配 | 不同地区发音差异大 | 规则+模型混合,高频走规则 |
| 口语歧义消解 | "帮我记一下" vs "创建笔记" | 模型从语料中学习映射 |
| 模糊时间解析 | "明天下午" → 默认 15:00 | 结合用户习惯逐步校准 |
| 上下文依赖 | "再设一个" → 继承前一条? | Phase 2 引入短程记忆 |
### 2.3 执行层:Agent 架构
#### 老人机 Agent(5-6 个)
| Agent | 功能 | 状态 |
|-------|------|------|
| 用药 Agent | 提醒、查询、剂量管理 | ✅ 已实现 |
| 健康 Agent | 读取传感器数据,计算统计值 | ✅ 已实现 |
| SOS Agent | 摔倒检测,自动拨号+发位置 | ✅ 已实现 |
| 拨号 Agent | 语音拨号、联系人管理 | ✅ 已实现 |
| 笔记 Agent | 创建、查询、到期提醒 | ✅ 已实现 |
| 日历 Agent | 日程管理 | 🔄 Phase 2 |
#### 手表 Agent(3 个核心)
| Agent | 功能 | 状态 |
|-------|------|------|
| 语音笔记 | 创建笔记、按时间查询、到期提醒 | ✅ 已实现 |
| 健康 | 读取本地传感器数据,计算统计值 | ✅ 已实现 |
| 闹钟 | 设置、取消、查询闹钟 | ✅ 已实现 |
#### 信息素场协调机制(双平台共用)
- 每个 Agent 完成任务后留下标记(任务类型、结果、置信度)
- 其他 Agent 按浓度做概率决策
- **老人机**:32 槽位全局数组,10 Hz 定时器衰减
- **手表**:8 槽位精简版,10 Hz 定时器衰减
---
## 三、平台部署方案
### 3.1 资源对比
| 维度 | 公模手表 | 老人机 | 优势 |
|------|---------|--------|------|
| RAM | 64-512 KB | **512 MB - 1 GB** | 1000-2000 倍 |
| 存储 | 4-16 MB | **4-8 GB** | 500-1000 倍 |
| CPU | Cortex-M4/M7 @ 100-200 MHz | **展锐/联发科 @ 1 GHz+** | 5-10 倍 |
| 电池 | 200-400 mAh | **1000-2000 mAh** | 5 倍 |
| 屏幕 | 无 / 1 寸 | **2-3 寸** | 有 UI |
| 网络 | 仅蓝牙 | **2G/4G 独立联网** | 自主通信 |
### 3.2 部署策略对比
| 组件 | 手表(极限压缩) | 老人机(标准部署) |
|------|-----------------|-------------------|
| 嵌入模型 | V9v3-lite INT8 (< 2 MB) | V9v3 标准版 (~12 MB) |
| 知识树 | 剪枝单层 | 完整三层 |
| 信息素场 | 8 槽位 | 32 槽位 |
| Agent 数量 | 3 个核心 | 5-6 个扩展 |
| ASR | 极简关键词 | 完整拼音识别 |
| UI | 无 | 语音 + 文字 + 按键 |
### 3.3 平台适配路径
#### 老人机
| 路径 | 技术方案 | 难度 | 推荐度 |
|------|----------|------|--------|
| **展锐/联发科功能机** | 直接移植建木OS(RTOS 同源) | 低 | ⭐⭐⭐⭐⭐ |
| Android Go | Tauri/Flutter UI + Rust 核心层 | 中 | ⭐⭐⭐⭐ |
| 纯功能机(无系统) | 需厂商配合或白牌方案商 | 高 | ⭐⭐ |
> **最现实路径**:找展锐/联发科功能机方案商合作。RTOS 平台,与手表方案同源,移植成本低。
#### 手表
| 路径 | 技术方案 | 难度 | 推荐度 |
|------|----------|------|--------|
| **ESP32-S3** | 嵌入式 C 部署,XIP 推理 | 低 | ⭐⭐⭐⭐⭐ |
| nRF54 | 超低功耗场景 | 中 | ⭐⭐⭐⭐ |
| Wear OS / watchOS | 不推荐,资源浪费 | — | ⭐ |
---
## 四、各平台特有优势
### 老人机
| 优势 | 应用场景 |
|------|----------|
| 有屏幕 | 用药提醒显示药名+剂量,SOS 界面直观 |
| 有实体按键 | 一键 SOS、快捷拨号、音量/电源物理控制 |
| 独立 4G | 紧急求助自动发位置+拨号,无需依赖手机 |
| 大电池 | 全天候 Agent 待机,不用省功耗 |
| 存储大 | 本地存半年健康数据,无需频繁清理 |
| 有 UI | 语音+文字+按键三入口,降低使用门槛 |
### 智能手表
| 优势 | 应用场景 |
|------|----------|
| 佩戴在身上 | 摔倒检测更准确(加速度计+陀螺仪) |
| 实时传感器 | 心率/血氧连续监测,无需手动查询 |
| 抬腕即交互 | 语音笔记、闹钟设置零操作成本 |
| 低功耗 | 200mAh 电池可支撑数天待机 |
---
## 五、当前架构
### 老人机架构
```
[语音输入] → [VAD] → [ASR 拼音识别] → [V9v3 嵌入] → [意图分类]
↓
[槽位填充]
↓
[Agent 路由]
↓
[信息素场协调]
↓
[具体 Agent 执行]
↓
[本地存储 / 4G 云端同步]
```
### 手表架构
```
[语音输入] → [VAD] → [ASR/本地] → [V9v3-lite 嵌入] → [意图分类]
↓
[槽位填充]
↓
[Agent 路由]
↓
[信息素场协调]
↓
[具体 Agent 执行]
↓
[本地存储 / 蓝牙中继]
```
**共享核心**:V9v3 嵌入模型(标准版 / lite 版同源)+ 信息素场协调 + Agent 框架
**差异化**:老人机用完整 ASR + 4G 联网;手表用极简 ASR + 蓝牙中继
---
## 六、技术路线图
| 阶段 | 时间 | 老人机目标 | 手表目标 |
|------|------|-----------|----------|
| **Phase 1** | 当前 | V9v3 部署验证,5 类意图管线打通 | V9v3-lite 蒸馏,3 类核心意图打通 |
| **Phase 2** | 本月 | 语料扩展至 5000+ 条;短程记忆上线 | 手表原型环境跑通端到端 |
| **Phase 3** | Q3 | 展锐/联发科平台适配;SOS 混合链路上线 | 信息素场 C 验证;32 槽位优化 |
| **Phase 4** | Q4 | 方言扩展;Agent 框架开源 | 厂商合作硬件适配 |
---
## 七、当前限制与已知问题
| 限制 | 老人机影响 | 手表影响 |
|------|-----------|----------|
| 方言覆盖有限 | 南方/北方方言用户识别率下降 | 同上 |
| 意图覆盖 5 类(老人机)/ 3 类(手表) | MVP 范围,后续扩展 | MVP 范围,后续扩展 |
| 短程记忆未实现 | "再设一个" 类表达暂不支持 | 同上 |
| 健康数据云端同步未实现 | 远程家属查看功能受限 | 手表本身无联网,依赖手机 |
| 目标平台未锁定 | 展锐/联发科方案商待定 | ESP32-S3/nRF54 待定 |
---
## 八、发布与共建
### 8.1 已发布
| 资源 | 平台 | 许可 |
|------|------|------|
| 建木OS 知识引擎(worm_knowledge_engine) | Gitee | MIT |
| V9v3 推理引擎(二进制库) | Gitee | 附许可证 |
| V9v3 模型权重(加密格式) | Gitee | CC-BY-4.0 |
仓库地址:[https://gitee.com/xuchangming/jianmu-os](https://gitee.com/xuchangming/jianmu-os)
### 8.2 保护机制
推理引擎采用二进制分发,核心实现不公开源码;模型权重运行时解密,仅暴露 `init()` / `encode()` / `free()` 三个 API 接口。
### 8.3 共建邀请
| 方向 | 需要的能力 |
|------|-----------|
| **开发者** | 自由使用,提交 PR |
| 老人机厂商 | 展锐/联发科平台适配 |
| 手表厂商 | ESP32-S3/nRF54 硬件方案 |
| **语音交互** | ASR 优化、方言适配 |
| **边缘 AI** | 模型压缩、INT8 量化 |
---
> 建木OS — 让每一台设备,都有思考的能力。
更多推荐


所有评论(0)