RealtimeVoiceChat:实时收到语音回复的实时AI语音聊天应用

RealtimeVoiceChat是什么?

RealtimeVoiceChat是一个能让你用语音和智能系统聊天的开源项目,还能实时收到语音回复。它通过网络传输音频片段,把语音变成文字,让智能系统处理,再把文字变成语音。这个项目支持多种智能系统(默认用Ollama,也能用Openai),还能灵活选择语音风格。它采用客户端-服务器架构,优化了低延迟,能智能检测对话轮次,让聊天更流畅。推荐用Docker来部署,如果有CUDA-enabled NVIDIA GPU,性能会更好。

RealtimeVoiceChat:实时收到语音回复的实时AI语音聊天应用.webp

RealtimeVoiceChat核心功能

  • 流式语音交互:用户语音被浏览器捕获,通过WebSockets传输到Python后端,实时转录为文本,发送给LLM处理,然后将文本响应转换为语音流回传给用户。

  • 低延迟设计:通过音频块流式传输优化架构,确保对话流畅。

  • 智能轮次检测:动态静默检测,根据对话节奏自动切换说话权。

  • 灵活的AI后端:支持多种LLM后端(默认为Ollama,也支持OpenAI)。

  • 可定制语音:可以选择不同的文本到语音引擎(如Kokoro、Coqui、Orpheus)。

  • 简洁的Web界面:使用Vanilla JS和Web Audio API构建的简单用户界面。

  • Docker化部署:推荐使用Docker Compose进行部署,便于管理依赖。

RealtimeVoiceChat特点

  • 实时交互:用户可以使用语音与 AI 进行对话,AI 也会以语音形式实时回应。

  • 多组件协作:项目包含前端的音频处理和 UI 交互,以及后端的语音转录、文本处理和语音合成等功能。

  • 可配置性:支持多种 TTS 引擎和 LLM 模型,并且可以通过环境变量进行配置。

技术栈

  • 后端:Python 3.x,FastAPI

  • 前端:HTML、CSS、JavaScript(Vanilla JS、Web Audio API、AudioWorklets)

  • 通信:WebSockets

  • 容器化:Docker、Docker Compose

  • 核心AI/ML库:RealtimeSTT(语音转文本)、RealtimeTTS(文本转语音)、transformers(轮次检测、分词)、torch/torchaudio(机器学习框架)、ollama/openai(LLM客户端)

  • 音频处理:numpy、scipy

安装与部署

Docker安装(推荐)

  1. 克隆项目并进入目录。

  2. 构建Docker镜像(会下载基础镜像、安装Python/ML依赖并预下载默认STT模型)。

  3. 启动服务(App和Ollama)。

  4. 拉取所需的Ollama模型。

  5. 通过浏览器访问http://localhost:8000,开始语音聊天。

手动安装

  1. 创建并激活Python虚拟环境。

  2. 安装PyTorch(根据硬件配置)。

  3. 安装其他依赖(requirements.txt)。

  4. 启动FastAPI服务器。

  5. 通过浏览器访问http://localhost:8000,开始语音聊天。

配置与定制

  • TTS引擎与语音:在server.py和audio_module.py中配置。

  • LLM后端与模型:在server.py和llm_module.py中配置。

  • STT设置:在transcribe.py中配置。

  • 轮次检测灵敏度:在turndetect.py中配置。

  • SSL/HTTPS:在server.py中配置。

项目地址

GitHub仓库:https://github.com/KoljaB/RealtimeVoiceChat

收藏
最新工具
GridType
GridType

一款网格化字体设计工具。它让你生成不同类型的网格,在网格里画字体...

Solitaire Bliss
Solitaire Bliss

一个免费、无限次数的在线单人纸牌游戏网站,主要玩经典单人纸牌游戏...

TalenCat
TalenCat

一家提供在线简历制作工具的公司,主要产品TalenCat CV ...

BoardGameArena
BoardGameArena

简称BGA,是一个专注于在线桌游的平台,它通过将传统的桌面游戏数...

Dogod.io
Dogod.io

一款浏览器多人在线实时对战游戏,主题是“狗狗抡棒子”,画风魔性搞...

Drive Mad
Drive Mad

Martin Magni 开发的热门在线驾驶游戏。玩家需要驾驶车...

Fugue
Fugue

icons8旗下的免版税音乐下载网站,音乐可免费用于非商用场景...

PlayClassic Games
PlayClassic Games

PlayClassic Games 是一个能让你直接在浏览器里玩...

Modelfy 3D
Modelfy 3D

一个能把2D图片快速变成高质量3D模型的工具,生成的模型最多能有...

DryVocal
DryVocal

一款专业音频处理工具,主要用于从复杂音频中提取和增强人声,特别适...