目录
一、整体介绍
1.主要模块介绍
2.部署步骤概述
二、语音识别-faster-whisper
1.安装faster-whisper
2.下载模型
3.准备一段语音文件
4.调用faster-whisper完成语音识别
5.接口分析(输入输出)
三、大模型-Qwen1.5/Llama3
1.下载ollama
2.修改环境变量
3.下载模型
4.调用大模型实现聊天机器人
5.接口分析
四:语音合成-ChatTTS
1.下载ChatTTS源码
2.下载模型文件
3.调用ChatTTS完成语音合成
4.接口分析(输入输出)
五、实时语音聊天机器人
1.固定ChatTTS音色
2.通过langchain调用ollama实现对话
3.封装函数
4.效果展示
六、总结
一、整体介绍
本项目旨在实现一个智能语音问答机器人的本地部署,采用Windows 10操作系统,并集成了最新的语音识别和生成技术。通过结合faster-whisper、Qwen1.5和ChatTTS三大模块,整体能够高效地进行语音识别、自然语言处理和语音合成,为用户提供流畅的语音问答体验。
1.主要模块介绍
1.1.faster-whisper
用于实时语音识别,将用户的语音输入快速转换为文本。 采用先进的语音识别算法,保证了高准确率和低延迟。1.2.Qwen1.5
作为自然语言处理模块,负责理解和生成回答。 基于最新的语言模型技术,能够理解复杂的用户问题并生成精准的回答。1.3.ChatTTS
语音合成模块,将Qwen1.5生成的文本回答转换为自然流畅的语音。 支持多种语音效果和情感表达,提升用户的交互体验。2.部署步骤概述
2.1.环境配置
参考超详细win安装深度学习环境2024最新版(cuda11.8+torch2.2)完成基础环境配置 在之后的步骤中配置faster-whisper、Qwen1.5和ChatTTS所需的运行环境。2.2.模块集成
下载并加载faster-whisper模型,用于实时语音识别。 集成Qwen1.5模型,实现自然语言处理和回答生成。 配置ChatTTS,完成文本到语音的转换,并实现语音播放功能。二、语音识别-faster-whisper
whisper是OpenAI公司出品的AI语音识别神器,开源且支持本地部署,支持多种语言识别。而faster-whisper 是通过Transformer模型的快速推理引擎对OpenAI的Whisper模型的重新实现,这种实现比whisper快 4 倍,在相同的精度下,使用更少的内存。
1.安装faster-whisper
pip install faster-whisper
2.下载模型
进入魔搭社区faster-whisper-small · 模型库 (modelscope.cn),下载模型文件到本地目录。
3.准备一段语音文件
打开网址在线免费文字转语音 - TTSMaker官网 | 马克配音,随便输入一段文字并免费生成语音,将语音复制到本地目录。
4.调用faster-whisper完成语音识别
import time
from faster_whisper import WhisperModel
# 指定模型
model_size = "faster-whisper-small"
# 创建一个Whisper模型,指定模型大小、设备类型和计算类型
model = WhisperModel(model_size, device="cuda", compute_type="int8_float16")
start_time = time.time()
segments, info = model.transcribe("1.mp3", beam_size=5)
end_time = time.time()
elapsed_time = end_time - start_time
print("[识别用时]%.2fs" % elapsed_time)
for segment in segments:
print("[识别结果] %s" % (segment.text))
识别结果:
PS:faster-whisper最新版只支持cuda12版本,对于cuda11.x的版本,会报错:
RuntimeError: Library cublas64_12.dll is not found or cannot be loaded,请参考RuntimeError: Library cublas64_12.dll is not found or cannot be loaded-CSDN博客完成修改。
总结
**文章总结**本文详细介绍了一个智能语音问答机器人的本地部署项目,该项目基于Windows 10操作系统,集成了faster-whisper、Qwen1.5和ChatTTS三大核心模块,致力于提供流畅的语音问答与交互体验。
1. **项目概述**:
- 项目目标:实现一个高效的语音问答机器人,结合最新技术提供实时语音转文本、自然语言处理与回复、及文本转语音的完整流程。
- 主要模块:
- **faster-whisper**:实时语音识别模块,快速准确地将语音转换为文本。
- **Qwen1.5**:自然语言处理模块,理解和生成精准回复。
- **ChatTTS**:语音合成模块,将文本答案转换为自然语音。
2. **部署步骤**:
- **环境配置**:基于Windows 10系统,安装CUDA、PyTorch等必要的深度学习环境(推荐CUDA 11.8 + PyTorch 2.2)。
- **模块集成**:
- 安装并配置faster-whisper进行语音到文本的转换。
- 下载并集成Qwen1.5模型进行自然语言处理和回答生成。
- 部署ChatTTS模块,实现文本到语音的转换和播放。
3. **详细操作流程**:
- 对于faster-whisper模块:
- 安装库文件,下载适用的模型。
- 准备语音文件进行识别测试,并展示了如何调用faster-whisper进行识别及结果展示。
- 对于Qwen1.5模块(文中略有提及ollama,但应为Qwen1.5的笔误),步骤类似faster-whisper,包括下载、环境配置及调用模型实现自然语言处理。
- 对于ChatTTS模块:
- 下载源码和模型文件。
- 调用ChatTTS完成从文本到语音的合成转换。
4. **实时语音聊天机器人构建**:
- 结合三大模块,通过固定ChatTTS的语音音色。
- 使用langchain(可能指调用流程设计,非具体模块)集成Qwen1.5实现对话逻辑。
- 封装整体功能模块,进行效果展示。
5. **总结**:
本项目通过将语音识别、自然语言处理和语音合成技术无缝结合,构建了一个智能语音问答机器人,提升了人机交互的自然度和流畅性,为语音交互应用提供了可靠的解决方案。