Azure 语音认知 (TTS) 限制信息

时间:2021-02-28 12:12:39

标签: c# azure text-to-speech microsoft-cognitive

我需要在 c# 桌面批处理命令行中使用 azure 的神经 tts 服务将几个文本文件消息转换为 wav 文件。

消息通常很短,但文本文件很多。

这里是关于限制的数据:

(文本到语音的配额和每个语音资源的限制) https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/speech-services-quotas-and-limits#text-to-speech-quotas-and-limits-per-speech-resource

在这种情况下没有多线程或异步请求。

因为我的应用程序批量转换 wav 中的文本不清楚什么时候发生 超过每分钟 20 个请求。

会出现运行时错误吗?我需要在我的代码中手动管理延迟吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

当您超过每分钟请求的限制时,您将收到对每个请求的响应 429。你可以处理这个响应。

您可以根据上述响应延迟并重试请求。

答案 1 :(得分:1)

您还可以查看语音命令行工具。

https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/spx-basics

spx 合成 --files .txt;.ssml --audio output {id}.wav

这应该允许您在一个连接上处理多个文件,而不是为每个文件启动和停止引擎。

您也可以尝试修改您的批处理脚本代码,以重用一个连接,而不是在创建新引擎对象和新连接到 servicw 之间进行睡眠,以保持在 20 QPS 限制以下...< /p>