You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Amazon Connect中接入Murf、Wellsaid等API化TTS服务?

实现第三方NTTS(如Murf.ai、WellSaid Labs)替代Amazon Polly接入Amazon Connect的方法

Amazon Connect没有原生支持直接对接第三方NTTS服务,核心解决方案是通过Lambda函数作为中间层,完成第三方NTTS API调用、音频处理,再将结果返回给Connect用于语音交互,具体步骤如下:

1. 准备第三方NTTS服务凭证

  • 注册Murf.ai或WellSaid Labs账号,获取对应的API密钥/令牌
  • 确认服务支持的音频格式:Amazon Connect适配电话线路的最佳格式是PCM 16kHz 16-bit单声道WAV,在API调用时指定该格式参数

2. 创建Lambda中间层函数

编写Lambda函数接收Connect传递的文本,调用第三方NTTS API生成音频并返回给Connect。以下是Python示例(以Murf.ai为例):

import requests
import base64

def lambda_handler(event, context):
    # 从Connect事件中提取待合成文本
    text = event['Details']['Parameters']['TextToSpeak']
    
    # Murf.ai API调用配置
    api_key = "你的Murf API密钥"
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json"
    }
    payload = {
        "text": text,
        "voiceId": "rachel", # 替换为你选择的Murf语音ID
        "format": "wav",
        "sampleRate": 16000
    }
    
    try:
        response = requests.post("https://api.murf.ai/v1/speech/generate", headers=headers, json=payload)
        response.raise_for_status()
        
        # 将音频转为Base64编码(Connect要求返回格式)
        audio_base64 = base64.b64encode(response.content).decode('utf-8')
        return {
            "statusCode": 200,
            "audioBase64": audio_base64,
            "audioContentType": "audio/wav"
        }
    except Exception as e:
        # 调用失败时返回错误信息,可在此添加降级到Polly的逻辑
        return {
            "statusCode": 500,
            "errorMessage": f"语音合成失败: {str(e)}"
        }
  • 注意:如果第三方NTTS采用异步生成模式(先返回任务ID),需在Lambda中实现轮询逻辑获取音频结果,或结合Connect的异步回调机制处理
  • 配置Lambda的IAM权限:允许Amazon Connect调用该Lambda,若部署在VPC内需配置NAT网关以访问外部API

3. 在Amazon Connect中集成Lambda

  • 进入Connect实例的**联系流(Contact flows)**页面,创建或编辑目标联系流
  • 添加Invoke Lambda function模块,选择你创建的Lambda函数,配置输入参数(传递待合成的文本内容)
  • 添加Play prompt模块,选择Text-to-speech (TTS),再选择Use a Lambda function,关联刚才的Lambda调用结果,将返回的音频作为播放内容

4. 错误处理与降级机制

  • 在Lambda函数中添加异常捕获,当第三方服务不可用时,可临时切换调用Amazon Polly作为降级方案
  • 在Connect联系流中配置错误分支,当Lambda调用失败时,播放默认提示语并引导用户重试

5. 性能优化建议

  • 缓存高频使用的固定文本音频(如欢迎语、操作提示),减少重复API调用,降低延迟
  • 选择与Amazon Connect实例同区域或邻近区域的第三方NTTS API端点,缩短网络传输时间
  • 调整Lambda函数的内存配置(建议至少256MB),提升音频编码与传输效率

内容的提问来源于stack exchange,提问作者1Mayur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 08:35:22