- 最新
- 投票最多
- 评论最多
【以下的回答经过翻译处理】 你好, 知道你在 3 个月前问过这个问题并且可能已经不再关注该问题,但以防其他人有同样的问题,这里再回答一下:
您是正确的,CFT 对 Lex 的支持当前不会对作为 AWS::Lex::Bot 资源中的“VoiceSettings”属性的一部分传递的“Engine”属性执行任何操作。在后台,AWS::Lex::Bot 资源将导致 API 调用以创建_bot_locale:
response = client.create_bot_locale(
botId='string',
botVersion='string',
localeId='string',
description='string',
nluIntentConfidenceThreshold=123.0,
voiceSettings={
'voiceId': 'string',
'engine': 'standard'|'neural'
}
)
由于“engine”属性不受支持,因此 API 调用中的值默认为“standard”。
我提交了新功能请求,但与此同时,您可以创建 lambda 自定义资源或 CloudFormation 资源类型来解决这个问题。您的自定义资源类型将采用当前在 AWS::Lex::Bot 中传递的相同参数,并调用 [create_bot_locale](https://boto3.amazonaws.com/v1/documentation/api/latest /reference/services/lexv2-models.html?highlight=neural#LexModelsV2.Client.create_bot_locale) API 包括您将在模板中设置为“neural”的 voiceSettings.engine 属性值。创建 Lambda 自定义资源非常简单,但您还需要支持更新和删除案例。请参阅 Lambda 支持的自定义资源的文档,或较新的首选机制,[CloudFormation Registry Resource Types] (https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html)。
相关内容
- AWS 官方已更新 1 年前
- AWS 官方已更新 1 年前