无法通过API访问已训练的自定义神经语音模型
无法通过API访问已训练的自定义神经语音模型
看起来你已经搞定了自定义神经语音的训练和部署,结果在调用API生成音频时栽在了这个400错误上,太闹心了!我来帮你排查下问题出在哪:
首先,你遇到的“Unsupported voice eastus-VivTrained”错误,核心原因是你在SSML里用的语音名称不对——你把部署名称和区域拼起来的这个格式,Azure的API根本不认识。
下面是具体的解决步骤,一步步来:
先找到正确的语音名称
登录Azure门户,打开你的语音资源,进入「自定义神经语音」板块,切换到「部署」标签页。找到你那个叫VivTrained的部署,仔细看它的详情,里面会有一个官方分配的语音名称(或语音ID),这个才是你要在SSML里用的,不是你自己起的部署名称,也不用加区域前缀。比如格式通常是customneural:en-US-xxxxNeural这样的(xxxx是和你的训练模型对应的标识)。修正你的SSML内容
把原来SSML里的<voice name='eastus-VivTrained'>替换成刚才找到的正确语音名称。举个修正后的例子:<speak version='1.0' xml:lang='en-US'> <voice name='customneural:en-US-VivTrainedNeural'> Hello, this is your custom neural voice speaking from Azure. </voice> </speak>最后再核对几个细节
- 确认你的
Ocp-Apim-Subscription-Key确实对应这个语音资源,别用错了其他资源的密钥 - 检查部署的模型状态是不是「成功」,有没有被暂停或者出现其他异常
- 你的区域是eastus,API端点和这个匹配,这部分是对的,不用改
- 确认你的
按照这个步骤调整后,再调用API应该就能正常生成音频了。
内容来源于stack exchange
相关产品推荐
相关产品推荐

