本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用列表创建自定义词汇表
重要
不推荐使用列表格式的自定义词汇表,因此,如果您要创建新的自定义词汇表,我们强烈建议您使用表格格式。
您可以使用 AWS Management Console、 AWS CLI或 AWS SDKs从列表中创建自定义词汇表。
-
AWS Management Console:您必须创建并上传包含自定义词汇表的文本文件。您可以使用行分隔或逗号分隔的条目。请注意,您的列表必须以
LF
格式另存为文本 (*.txt) 文件。如果您使用任何其它格式,例如CRLF
,则 Amazon Transcribe不接受您的自定义词汇表。 -
AWS CLI和 AWS SDKs:您必须使用标志在 API 调用中以逗号分隔的条目形式包含自定义词汇表。
Phrases
如果一个条目包含多个单词,则必须用连字符连接每个单词。例如,以 Los-Angeles
形式添加“Los Angeles”,以 Andorra-la-Vella
形式添加“Andorra la Vella”。
以下是两种有效列表格式的示例。有关特定于方法的示例,请参阅创建自定义词汇表。
-
逗号分隔的条目:
Los-Angeles,CLI,Eva-Maria,ABCs,Andorra-la-Vella
-
行分隔的条目:
Los-Angeles CLI Eva-Maria ABCs Andorra-la-Vella
重要
您只能使用您的语言支持的字符。有关详细信息,请参阅您的语言的字符集。
CreateMedicalVocabulary
操作不支持自定义词汇表列表。如果要创建自定义医学词汇表,则必须使用表格格式;有关说明,请参阅使用表格创建自定义词汇表。
创建自定义词汇表
要处理用于的自定义词汇表 Amazon Transcribe,请参阅以下示例:
此示例结合列表格式的自定义词汇表文件使用 create-vocabulary 命令。有关更多信息,请参阅 CreateVocabulary
。
aws transcribe create-vocabulary \ --vocabulary-name
my-first-vocabulary
\ --language-codeen-US
\ --phrases {CLI,Eva-Maria,ABCs
}
以下是另一个使用 create-vocabulary 命令的示例,以及创建自定义词汇表的请求正文。
aws transcribe create-vocabulary \ --cli-input-json file://
filepath
/my-first-vocab-list
.json
my-first-vocab-list.json 文件包含以下请求正文。
{ "VocabularyName": "
my-first-vocabulary
", "LanguageCode": "en-US
", "Phrases": [ "CLI
","Eva-Maria
","ABCs
" ] }
VocabularyState
从 PENDING
变为 READY
后,您的自定义词汇表就可以用于转录了。要查看自定义词汇表的当前状态,请运行:
aws transcribe get-vocabulary \ --vocabulary-name
my-first-vocabulary
此示例使用 c reate_vorquary 方法从列表中创建自定义词汇表CreateVocabulary
。
有关使用的其他示例 AWS SDKs,包括特定功能、场景和跨服务示例,请参阅本章。使用 Amazon Transcribe 的代码示例 AWS SDKs
from __future__ import print_function import time import boto3 transcribe = boto3.client('transcribe', '
us-west-2
') vocab_name = "my-first-vocabulary
" response = transcribe.create_vocabulary( LanguageCode = 'en-US
', VocabularyName = vocab_name, Phrases = [ 'CLI
','Eva-Maria
','ABCs
' ] ) while True: status = transcribe.get_vocabulary(VocabularyName = vocab_name) if status['VocabularyState'] in ['READY', 'FAILED']: break print("Not ready yet...") time.sleep(5) print(status)
注意
如果您为自定义词汇文件创建新的 Amazon S3 存储桶,请确保CreateVocabulary
发出请求的 IAM 角色有权访问此存储桶。如果角色不具备相应的权限,则请求将失败。您可以选择在请求中添加DataAccessRoleArn
参数来指定 IAM 角色。有关 IAM 角色和策略的更多信息 Amazon Transcribe,请参阅Amazon Transcribe 基于身份的策略示例。