如何在Python中实现Microsoft说话者识别/验证API



我想为说话者验证项目实现微软认知服务的说话者识别API。我已经有一个说话者识别API密钥。我直接从文档(文档底部(获得了示例Python代码:

https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508/operations/563309b7778daf06340c9652

########### Python 3.2 #############
import http.client, urllib.request, urllib.parse, urllib.error, base64
headers = {
# Request headers
'Content-Type': 'application/json',
'Ocp-Apim-Subscription-Key': '{subscription key}',
}
params = urllib.parse.urlencode({
})
try:
conn = http.client.HTTPSConnection('westus.api.cognitive.microsoft.com')
conn.request("POST", "/spid/v1.0/verificationProfiles?%s" % params, "{body}", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################

这是第一步的代码示例,创建并保存语音配置文件。

要进行发言人验证,我们需要执行3个步骤:1( 创建配置文件2( 创建注册3( 验证

我已经被困在第一步了。这是我第一次使用API,所以我真的不确定我必须更改Python代码的哪些部分。我知道我需要在'Ocp-Apim-Subscription-key'中插入我的API密钥,但除此之外,还有什么?例如,如果我在该特定字段中添加API键并让代码运行,我就会收到此错误消息。

b'{"error":{"code":"BadRequest","message":"locale is not specified"}}'

例如,我需要在哪里插入区域设置("en-us"(?从文档中我并不清楚我需要编辑什么。如果你能指导我在API调用中插入/添加什么,我将非常感谢。

提前感谢!

创建Speaker Recognition配置文件时,必须将其与区域设置链接,并在请求正文中指定该区域设置。正文应该是一个JSON对象,如下所示:

{
"locale":"en-us",
}

为了使示例工作,您需要将"{body}"替换为实际的body值,如下所示:

conn.request("POST", "/spid/v1.0/verificationProfiles?%s" % params, "{"locale":"en-US"}", headers)

相关内容

  • 没有找到相关文章

最新更新