如何通过 API 或 SDK 创建 Microsoft 自定义语音

How to create a Microsoft custom voice through the API or SDK

我正在评估作为潜在供应商的 Microsoft Custom Voice,并想知道如何通过 API 或 SDK 以编程方式创建和训练自定义语音。

经过广泛搜索,我只找到了说明如何通过他们的自定义语音门户创建自定义语音的文档。此页面中有一行暗示自定义语音训练 API。

下面是该段落和该文档页面的 link。

你能帮我弄清楚如何做到这一点,或者确认不存在这样的 API 吗?

Once you have prepared your data, you can start to upload them to the Custom Voice portal, or through the Custom Voice training API.

https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/how-to-custom-voice-create-voice

如果你只是想获取API和SDK,它们都在文档中。

这里是 Text-to-speech rest api, if you want the sdk you could go to this doc:About the Speech SDK.

关于如何创建自定义语音,需要一个Azure帐户和一个语音服务订阅,更多信息,你可以参考这个文档:Get started with Custom Voice

我想 George 的回答不相关,因为你专门谈论 "Custom" 语音/语音。

Link 到 APIs

这部分有 API 但文档不清楚,你是对的。您可以在 https://westus.cris.ai/swagger/ui/index the API and available operations. Note that it exits in several regions, for example West Europe is https://westeurope.cris.ai/swagger/ui

找到

目前,此页面指向 Speech 2.0 API,但看起来 Microsoft 很快就会推出 3.0。如您所见,如果您查看来自语音门户 (link) 的网络调用,它们实际上已经在使用此 3.0 api(预览版):

如何使用它们?

您可以通过门户查看流程并检查 API 端调用的内容。

以下是该过程的概述:

  1. 使用/datasets/upload操作
  2. 创建用于模型训练的数据集
  3. 成功处理数据集后,使用 POST 对 /models 的请求创建模型(参见操作 here)。这个 POST 正文中有几个细节:基础模型、使用的训练数据集等。正是这个操作将训练你的模型,你不需要另一个调用来开始训练
  4. 训练完成后(您可以使用 /models 上的 GET 检查状态或使用 /models/yourModelId 的模型 ID 的特定 GET 检查状态),您可以 "deploy" 它。为此,您必须基于此模型创建一个端点:它是 POST 到 /endpointss(参见操作 here
  5. 然后您可以通过在 /endpoints 上调用 GET 或按 ID 调用 GET 来监控部署状态,例如模型