是否可以在 Alexa Skill 中使用 amazon Polly 在翻译或其他多语言环境中提供例如 2 种语言的响应?如果是,谁有从 lambda 函数使用此服务的经验?
1 回答
更新:根据Julian H 的有用评论,此答案已更新,以反映 Polly 的最新更改。Polly 现在无需转换即可与 Alexa 一起使用,并且不再需要下面的步骤 7-9。
我更新了以下步骤,以反映通过基于项目alexa-meets-polly 的 lambda 函数使用 Polly w/Alexa 的新流程。
来自 alexa-meets-polly:
用户与 Alexa 设备交谈并询问例如“波兰语中的“早安”是什么?
Alexa 的 NLU 触发 Translate-intent 并传入一个值为 Polish 的语言槽和一个值为 Good Morning 的术语槽。其代码包含在此 Repo 中的 AWS Lambda 函数实现了处理请求并返回翻译的 Speechlet。
在此技能使用 Polly 的翻译 API 和 TTS 服务之前,它首先查看存储了所有先前翻译的自己的字典。如果它在数据库中找到“早安波兰语”的记录,它将跳过整个往返过程(步骤 4 到 9)并使用 Dynamo 记录中引用的 S3 音频文件(了解它是如何在步骤 10 中到达那里的。)
但是,如果在技能从 Microsoft Translator API(或可互换地从 Google 翻译)请求波兰语早安之前,从未翻译过波兰语的早安。
然后将返回的翻译传递给 AWS Polly。Polly 以带有口语翻译的 MP3 比特流响应。
该流作为 mp3 文件保存在 AWS S3 中。
7.-9。不再需要对 Polly-mp3 进行自定义转换,因为它现在符合 Alexa 要求。
最后,在 Dynamo 词典中为波兰语中的 Good Morning 创建了一条记录。为用户创建另一条引用新词典条目的记录,以便 Alexa 记住最后的翻译。这就是用户可以请求 Alexa 重复最近的翻译的方式。
该技能创建输出语音文本并使用 mp3-url 挤入音频 SSML 标签。
输出语音返回到 Alexa 设备。Alexa 用 Polly 的声音说话并播放翻译后的文本。提供书面翻译的卡片会返回到 Alexa 应用程序。