调整文件结构内容
AI技术快速发展,给人们带来了诸多好处:既提高了生产效率,又丰富了娱乐生活。由于AI对硬件的算力有一定要求,部分设备不具备端侧AI能力。请基于端边协同,将一个无算力端侧设备和一个有算力边缘设备结合,使无算力设备能够借用有算力设备的算力,完成端侧AI语音聊天功能。
评分项 占比 说明 功能 30 满足上述具体要求前两项,中文语音识别准确,要求干净环境词错误率<5%,响应时延<500ms。语音输出采用流式输出,边生成边播放。 性能优化 30 前后端设备都未休眠的情况下,语音聊天端到端响应时延小于2秒;后端设备休眠的情况下,设备唤醒时间不大于1秒; 稳定性 20 设备在一般噪声环境(15dB SNR),连续运行3小时不断线。 代码规范性 10 代码符合OpenHarmony社区规范,按照规范类型扣分点,每条减少1分,直至为0 文档质量 10 文档能将从架构和技术实现角度,说明架构和技术竞争力。
刘小飞 splane.liu@huawei.com 徐梓荐 xuzijian1@huawei.com
分布式硬件子系统https://gitee.com/openharmony/docs/blob/master/zh-cn/readme/分布式硬件子系统.md 分布式硬件管理框架https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk
OpenHarmony社区可提供:Rk3568开发板+Laval开发者手机
https://www.chaspark.com/#/races/competitions/1136107327893524480
┌────────────┐ Wi-Fi通信 ┌────────────┐ │ 端侧设备(Laval)│◄────────────────►│边缘设备(RK3568)│ │ │ │ │ │- 语音输入录制 │ │- 部署语言模型 │ │- UI人机交互 │ │- 推理与合成计算 │ │- 音频播放输出 │ │- API服务接口 │ └────────────┘ └────────────┘
✅ 说明:端侧仅负责音频采集与播放、文本展示及交互逻辑,计算由边缘设备完成,响应通过 Wi-Fi 实时回传。
🎙 语音输入
终端设备使用 OpenHarmony @ohos.multimedia.audio 采集语音,通过第三方API实现语音-文本转换,转换出的文本传输至边缘设备
🧠 智能对话
边缘设备部署 OLLAMA 推理服务处理请求,返回结果
🗣 语音输出
返回的文本通过第三方API实现文本-语音转换,转换出的语音在终端设备播放
📶 通信机制
基于 @ohos.net.http 实现端边间 HTTP 通信;未来可基于OpenHarmony的分布式子系统实现拓展
🔋 唤醒机制
边缘设备OLLAMA休眠时终端设备发送请求,边缘设备主动快速恢复服务
client
仅展示核心功能结构
/entry/src/main/ets ├── pages/Index.ets # 主界面 ├── utils/ChatMessage.ets # 聊天信息接口 ├── utils/NetworkManager.ets # 网络通信结构 ├── utils/Database.ets # 数据库设计 ├── utils/EventSource.ets # OLLAMA流式响应支持 ├── utils/AudioManager.ets # 录音与播放功能封装 ├── utils/PermissionManager.ets # 权限请求管理 └── Config.ets # 所使用服务的配置参数
server
展示部署过程中需要的一些文件和编译好的so文件
边缘设备通过HDC Shell方式进入命令行启动OLLAMA
直接安装提供的hap包或使用DevEco Studio打开本项目的终端部分代码,构建运行
确保边缘设备与终端设备在同一网络内并且终端设备可上网
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
赛题题目:端边协同AI聊天机器人
赛题说明:
AI技术快速发展,给人们带来了诸多好处:既提高了生产效率,又丰富了娱乐生活。由于AI对硬件的算力有一定要求,部分设备不具备端侧AI能力。请基于端边协同,将一个无算力端侧设备和一个有算力边缘设备结合,使无算力设备能够借用有算力设备的算力,完成端侧AI语音聊天功能。
赛题要求:
评分标准:
评分项 占比 说明 功能 30 满足上述具体要求前两项,中文语音识别准确,要求干净环境词错误率<5%,响应时延<500ms。语音输出采用流式输出,边生成边播放。 性能优化 30 前后端设备都未休眠的情况下,语音聊天端到端响应时延小于2秒;后端设备休眠的情况下,设备唤醒时间不大于1秒; 稳定性 20 设备在一般噪声环境(15dB SNR),连续运行3小时不断线。 代码规范性 10 代码符合OpenHarmony社区规范,按照规范类型扣分点,每条减少1分,直至为0 文档质量 10 文档能将从架构和技术实现角度,说明架构和技术竞争力。
赛题联系人:
刘小飞 splane.liu@huawei.com 徐梓荐 xuzijian1@huawei.com
参考资料:
参赛资源支持:
赛题交流讨论链接:
https://www.chaspark.com/#/races/competitions/1136107327893524480
赛题实现
🧱 系统架构
┌────────────┐ Wi-Fi通信 ┌────────────┐ │ 端侧设备(Laval)│◄────────────────►│边缘设备(RK3568)│ │ │ │ │ │- 语音输入录制 │ │- 部署语言模型 │ │- UI人机交互 │ │- 推理与合成计算 │ │- 音频播放输出 │ │- API服务接口 │ └────────────┘ └────────────┘
✅ 说明:端侧仅负责音频采集与播放、文本展示及交互逻辑,计算由边缘设备完成,响应通过 Wi-Fi 实时回传。
✨ 关键功能
🎙 语音输入
终端设备使用 OpenHarmony @ohos.multimedia.audio 采集语音,通过第三方API实现语音-文本转换,转换出的文本传输至边缘设备
🧠 智能对话
边缘设备部署 OLLAMA 推理服务处理请求,返回结果
🗣 语音输出
返回的文本通过第三方API实现文本-语音转换,转换出的语音在终端设备播放
📶 通信机制
基于 @ohos.net.http 实现端边间 HTTP 通信;未来可基于OpenHarmony的分布式子系统实现拓展
🔋 唤醒机制
边缘设备OLLAMA休眠时终端设备发送请求,边缘设备主动快速恢复服务
📊 性能与指标达成
🏗 技术实现
- 调用系统 API 实现录音与播放
- 通过 HTTP 与边设备通信
🧠 模块划分
📁 文件结构
client
仅展示核心功能结构
/entry/src/main/ets ├── pages/Index.ets # 主界面 ├── utils/ChatMessage.ets # 聊天信息接口 ├── utils/NetworkManager.ets # 网络通信结构 ├── utils/Database.ets # 数据库设计 ├── utils/EventSource.ets # OLLAMA流式响应支持 ├── utils/AudioManager.ets # 录音与播放功能封装 ├── utils/PermissionManager.ets # 权限请求管理 └── Config.ets # 所使用服务的配置参数
server
展示部署过程中需要的一些文件和编译好的so文件
🚀 启动方式
边缘设备
边缘设备通过HDC Shell方式进入命令行启动OLLAMA
终端设备
直接安装提供的hap包或使用DevEco Studio打开本项目的终端部分代码,构建运行
🔒 注意事项
确保边缘设备与终端设备在同一网络内并且终端设备可上网