树莓派大模型本地语音聊天机器人搭建推荐

2026-06-22阅读 0热度 0
ai 人工智能

一直以来,端侧应用都是大模型领域的热点话题。最近人形机器人又火了一把,大家的目光重新聚焦到“具身智能”上——怎么把大模型的能力塞进低功耗的客户端设备里?端侧设备有个现实问题:网络连接经常不稳定,带宽也有限,指望全靠云服务跑大模型并不现实。更何况安全性和隐私问题在本地设备上更敏感,所以本地运行才是最靠谱的选择。

树莓派+大模型,打造全本地语音聊天机器人

最近看到一个很有意思的项目:在树莓派上跑一个大模型语音聊天机器人,而且是全本地运行的。交互方式很直接——按一下按钮开始说话,松开按钮,大模型生成回答,再用非常自然的语音回给你。整个过程不依赖网络。比如你问它“How do you live?”,它会真的像真人一样跟你聊起来。

硬件方面需要准备的东西不算复杂:

  • 4GB内存的树莓派4(3袋里论上也行,只要内存够用)

  • 麦克风(树莓派本身不带麦克风,接个USB的就成)

  • 喇叭(USB喇叭可以,不过这里用的是自带喇叭的HDMI显示屏,所以走HDMI音频输出更方便)

  • 按钮,普通的2-wire按钮即可,一条线接button,一条线接ground。这里用的是从Google AIY VoiceKit上拆下来的,把BTN线(Pin 3)接到树莓派的GPIO 8,GND线(Pin 1)接到GPIO 6。

接线后大概是这样的效果(这里就不放额外图片了,实际接好就行)。

软件层面由三大组件组成:

  • 语音识别(ASR):把用户说的话转成文字。这里用的是whisper.cpp,也就是OpenAI Whisper的C++实现,效率很高。

  • 大语言模型(LLM):根据用户的文字请求生成回答。用的是TinyLlama 1.1B,通过llamafile打包成ARM64可执行文件,直接在树莓派上跑。

  • 语音合成(TTS):把LLM的回答文本合成自然的语音。这里用的是piper。

树莓派上运行的是Ubuntu server for Raspberry Pi,标准配置,没有额外折腾。

整个工作流程很直观:用户按下按钮,GPIO 8状态改变,树莓派打开麦克风开始录制语音;松开按钮,录音停止,临时文件存本地。然后whisper.cpp把语音转成文字,作为提示输入给TinyLlama,TinyLlama生成回答文本,最后piper把文本转成语音播放出来。

不过实际跑起来有个明显的问题:树莓派4虽然内存够,但跑TinyLlama 1.1B的速度还是偏慢,大概每秒只能生成4到5个token。如果回答稍长,用户就要等很久才能听到回应,体验确实不好。为了解决这个问题,项目用了两种策略:一是在系统prompt里明确要求LLM限制回答字数;二是采用流式输出,每生成一个完整的句子就立刻调用piper合成语音,这样用户不用等到全文生成完,等待时间大大缩短。

免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策