🎀 Franky --- 边缘计算智能语音助手 / Edge‑Computing Smart Voice Assistant
🚀 简介|Introduction
我想自己做一款属于我的个性化的智能语音助手,受到儿子绘本的启发,我给它起名叫Franky,Franky是一款运行在 树莓派5(Raspberry Pi 5) 上的本地化智能语音助手,目前我就给它放在我的办公室,可以长时间低功耗运行,Franky已经成为了我日常的一部分了。
Franky虽然目前运行在树莓派上,但它不局限于只运行在树莓派,我选择的开发语言是python,喜欢的朋友也可以下载代码,在本地的电脑上就可以运行体验。
Franky可以通过语音或者webui控制,只需要保证同在一个局域网使用手机或者电脑控制。Franky提供了语音和粉色萌系的webui交互反馈,有很大的扩展空间。
✨ 核心特性|Key Features
编号 | 特性 | 功能 |
---|---|---|
1 | 🔔 关键词唤醒 | 本地 Porcupine,响应快,无需联网 |
2 | 🎙️ 语音识别 | 通义千问实时语音识别 |
3 | 🗣️ 文字转语音(TTS) | 通义千问CosyVoice模型,亲切自然 |
4 | 🔊音频抢占调度 | 音乐 ↔ TTS ↔ 提醒 互不打架 |
5 | 🎵音乐 | 支持音乐列表播放,暂停,继续、上一曲下一曲等操作 |
6 | 📱联系人查询 | 办公时,通过模糊姓名,拼音,手机或座机尾号查询联系人 |
5 | 🤖 NLU 意图解析 | 支持音乐、天气、提醒、联系人查询、聊天 |
6 | 📆 定时/提醒 | 语音或 WebUI 一键设定提醒,删除,提醒列表功能 |
7 | 🌤️ 天气查询 | 实时查询本地天气 API 获取并播报 |
8 | 💬 多轮 LLM 聊天 | Qwen‑Turbo + 流式 TTS,聊天更流畅 |
9 | 📷 图片理解 | 通过拍照或者上传图片,理解图片内容 |
10 | 🌈 粉色萌系 WebUI | Socket.IO 双向交互,实时可视化 |
🏗️ 架构|Architecture
架构设计的也比较简洁,输入通过语音或者WebUI交互输入,然后通过意图识别模块理解我的输入意图,最后分派给不同的任务处理,并反馈结果。
架构图如下,非常清晰。

⚙️ 环境搭建|Setup

硬件方面,需要准备如下:
- Raspberry Pi 5
- USB 麦克风
- 有线小音箱
- 小屏幕
其实树莓派5也可以不用,本地的电脑就可以运行语音助手的代码,准备好这些东西就可以运行语音助手啦!
🎬 使用示例|Quick Demo
"Franky,播放音乐" → 背景歌单自动播放

"Franky,今天天气怎么样" → 天气播报 +

"Franky,提醒我下午 3 点开会" → 设置提醒 & 到点播报

WebUI 上传图片 → AI 图像理解结果实时返回

Chat聊天 "Franky 罗湖区哪有好吃的" → AI 实时反馈

"Franky,找5257或者找王xx → 工作常用联系人

🤝 贡献|Contributing
项目地址:github.com/gdhucoder/p... ,欢迎✨star 和交流🤝。
🧾 声明:所有内容均为我非工作时间的个人开发探索,技术探索过程公开透明,旨在分享语音交互领域的实战经验,不代表任何单位或组织,不涉及任何职务行为或工作成果,仅供学习参考。