# 🎙️ 智能语音助手 “小智” 一个基于 **百度智能云语音识别 + 合成** 和 **DeepSeek-R1 对话模型** 的智能语音助手,支持以下功能: * 🎤 **语音唤醒与自动录音** * 🧠 **自然语言理解(LLM)问答** * 🔊 **语音合成回应** * 🕹️ **Python 本地运行,无需前端或网页** --- ## ✅ 功能概览 | 功能模块 | 描述 | | ----------- | ---------------------------------- | | 语音唤醒 | 检测是否说出“小智”关键词,触发问答流程 | | 自动录音 | 使用 WebRTC VAD 进行语音活动检测,自动判断语音开始和结束 | | 百度语音识别 | 调用百度智能云 API,将语音识别成文本 | | DeepSeek 问答 | 将用户问题发送到 DeepSeek-R1 模型,获取智能回复 | | 百度语音合成 | 将 AI 回复转换为音频并使用 `pygame` 播放 | --- ## 📦 环境依赖(requirements.txt) ```txt requests pyaudio pygame webrtcvad openai ``` 安装依赖: ```bash pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/ ``` 如遇 `pyaudio` 安装失败,推荐使用: ```bash pip install pipwin pipwin install pyaudio ``` --- ## 🔐 API 配置 打开 `main.py` 或脚本文件,将以下参数替换为你自己的: ```python # 百度智能云 API BAIDU_API_KEY = "你的API Key" BAIDU_SECRET_KEY = "你的Secret Key" # DeepSeek-R1 API DEEPSEEK_API_KEY = "你的DeepSeek API Key" ``` --- ## 🚀 启动方式 ```bash python main.py ``` 启动后助手进入循环监听状态,等待用户说出 **唤醒词“小智”**,进入问答流程。 --- ## 🎧 示例流程 1. **你说:“小智”**(唤醒) 2. 程序回应:“好的,小智在。请说出你的问题。” 3. **你说:“今天北京天气怎么样?”** 4. 小智回答:“今天北京的天气是晴转多云,最高气温27度。” --- ## 🔊 技术细节 * 📍 **自动录音**:基于 `webrtcvad` 自动结束语音(检测静音) * 📍 **语音识别**:百度 `vop.baidu.com/server_api` * 📍 **语音合成**:百度 `tsn.baidu.com/text2audio` * 📍 **AI对话**:调用 DeepSeek-R1 `chat.completions` 接口(通过 OpenAI SDK) --- ## 🛠️ 注意事项 * 程序使用 `pyaudio` 进行录音,需麦克风硬件支持 * 百度语音识别需中文 `16kHz 单声道 PCM` * 请保持联网状态,所有服务需调用在线 API