mcpField
V
voice-ai-integration

voice-ai-integration

github.com/qodex-ai开发48209 次安装43 周前更新
代码仓库

关于 voice-ai-integration

Voice AI Integration 是用于构建语音应用的开发 Skill,涵盖语音识别与语音生成。它介绍 STT 和 TTS 服务、语音助手流水线及实时音频处理方式。

主要功能

  1. 01语音转文本服务示例
  2. 02文本转语音服务示例
  3. 03STT-NLP-TTS 助手流水线
  4. 04对话历史管理
  5. 05支持语音活动检测的音频流处理

适用场景

  1. 01构建语音控制的智能家居 Agent
  2. 02从流式音频转录会议内容
  3. 03为 AI 应用添加语音输入与输出

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/qodex-ai/ai-agent-skills --skill voice-ai-integration

安装后在 Claude Code 中输入/voice-ai-integration确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

examples/
realtime_voice_processor.py
speech_recognition_providers.py
text_to_speech_providers.py
voice_assistant.py

详细介绍

语音 AI 集成

构建智能语音 AI 应用,使其能够理解口语并通过音频自然地回应,打造流畅、以语音为先的用户体验。

概述

语音 AI 系统结合了三项核心能力:

  1. 语音识别 - 将音频输入转换为文本
  2. 自然语言处理 - 理解意图和上下文
  3. 文本转语音 - 生成自然的语音回应

语音识别服务提供商

查看 examples/speech_recognition_providers.py 了解实现方式:

  • Google Cloud Speech-to-Text:高准确率,支持自动添加标点
  • OpenAI Whisper:强大的多语言语音识别
  • Azure Speech Services:企业级语音识别
  • AssemblyAI:异步处理,准确率高

文本转语音服务提供商

查看 examples/text_to_speech_providers.py 了解实现方式:

  • Google Cloud TTS:自然的语音,支持多种语言
  • OpenAI TTS:集成简单,输出质量高
  • Azure Speech Services:企业级 TTS,提供神经网络语音
  • Eleven Labs:高级语音,支持情感控制

语音助手架构

查看 examples/voice_assistant.py 了解 VoiceAssistant:

  • 完整的语音处理流程:STT → NLP → TTS
  • 对话历史管理
  • 支持多个服务提供商(OpenAI、Google、Azure 等)
  • 异步处理,实现响应迅速的交互

实时语音处理

查看 examples/realtime_voice_processor.py 了解 RealTimeVoiceProcessor:

  • 从麦克风流式输入音频
  • 向扬声器流式输出音频
  • 语音活动检测(VAD)
  • 可配置采样率和分块大小

语音 Agent 应用

语音控制的智能家居
class SmartHomeVoiceAgent:
    def __init__(self):
        self.voice_assistant = VoiceAssistant()
        self.devices = {
            "lights": SmartLights(),
            "temperature": SmartThermostat(),
            "security": SecuritySystem()
        }

    async def handle_voice_command(self, audio_input):
        # Get text from voice
        command_text = await self.voice_assistant.process_voice_input(audio_input)

        # Parse intent
        intent = parse_smart_home_intent(command_text)

        # Execute command
        if intent.action == "turn_on_lights":
            self.devices["lights"].turn_on(intent.room)
        elif intent.action == "set_temperature":
            self.devices["temperature"].set(intent.value)

        # Confirm with voice
        response = f"I've {intent.action_description}"
        audio_output = await self.voice_assistant.synthesize_response(response)

        return audio_output
语音会议转录
class VoiceMeetingRecorder:
    def __init__(self):
        self.processor = RealTimeVoiceProcessor()
        self.transcripts = []

    async def record_and_transcribe_meeting(self, duration_seconds=3600):
        audio_stream = self.processor.stream_audio_input()

        buffer = []
        chunk_duration = 30  # Transcribe every 30 seconds

        for audio_chunk in audio_stream:
            buffer.append(audio_chunk)

            if sum(len(chunk) for chunk in buffer) >= chunk_duration * 16000:
                # Transcribe chunk
                transcript = transcribe_audio_whisper(buffer)
                self.transcripts.append({
                    "timestamp": datetime.now(),
                    "text": transcript
                })
                buffer = []

        return self.transcripts

最佳实践

音频质量
  • ✓ 语音识别使用 16kHz 采样率
  • ✓ 处理背景噪声过滤
  • ✓ 实现语音活动检测(VAD)
  • ✓ 规范化音频音量
  • ✓ 使用合适的音频格式(追求质量时使用 WAV)
延迟优化
  • ✓ 使用低延迟 STT 模型
  • ✓ 实现流式转录
  • ✓ 缓存常见回应
  • ✓ 使用异步处理
  • ✓ 尽量减少网络往返次数
错误处理
  • ✓ 妥善处理网络故障
  • ✓ 实现备用语音或服务提供商
  • ✓ 记录音频处理故障
  • ✓ 处理前验证音频质量
  • ✓ 实现重试逻辑
隐私与安全
  • ✓ 加密传输中的音频
  • ✓ 处理后删除音频
  • ✓ 实现用户同意机制
  • ✓ 记录音频数据的访问情况
  • ✓ 遵守数据法规(GDPR、CCPA)

常见挑战与解决方案

挑战:口音和方言

解决方案:

  • 使用多语言模型
  • 使用地区数据进行微调
  • 实现语言检测
  • 使用特定领域的词汇表
挑战:背景噪声

解决方案:

  • 实现噪声过滤
  • 使用波束成形技术
  • 使用降噪功能预处理音频
  • 部署麦克风阵列
挑战:长音频文件

解决方案:

  • 实现分块处理
  • 使用流式 API
  • 按说话者轮次拆分
  • 实现缓存

框架与库

语音识别
  • OpenAI Whisper
  • Google Cloud Speech-to-Text
  • Azure Speech Services
  • AssemblyAI
  • DeepSpeech
文本转语音
  • Google Cloud Text-to-Speech
  • OpenAI TTS
  • Azure Text-to-Speech
  • Eleven Labs
  • Tacotron 2

入门指南

  1. 选择 STT 和 TTS 服务提供商
  2. 设置身份验证
  3. 构建基础语音处理流程
  4. 添加对话管理
  5. 实现错误处理
  6. 使用真实用户进行测试
  7. 监控并优化延迟

评论

支持 Markdown