Use UpdateVocabulary with an AWS SDK or CLI - AWS SDK Code Examples

There are more AWS SDK examples available in the AWS Doc SDK Examples GitHub repo.

Use UpdateVocabulary with an AWS SDK or CLI

The following code examples show how to use UpdateVocabulary.

Action examples are code excerpts from larger programs and must be run in context. You can see this action in context in the following code example:

.NET
SDK for .NET
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.

/// <summary> /// Update a custom vocabulary with new values. Update overwrites all existing information. /// </summary> /// <param name="languageCode">The language code of the vocabulary.</param> /// <param name="phrases">Phrases to use in the vocabulary.</param> /// <param name="vocabularyName">Name for the vocabulary.</param> /// <returns>The state of the custom vocabulary.</returns> public async Task<VocabularyState> UpdateCustomVocabulary(LanguageCode languageCode, List<string> phrases, string vocabularyName) { var response = await _amazonTranscribeService.UpdateVocabularyAsync( new UpdateVocabularyRequest() { LanguageCode = languageCode, Phrases = phrases, VocabularyName = vocabularyName }); return response.VocabularyState; }
CLI
AWS CLI

To update a custom vocabulary with new terms.

The following update-vocabulary example overwrites the terms used to create a custom vocabulary with the new ones that you provide. Prerequisite: to replace the terms in a custom vocabulary, you need a file with new terms.

aws transcribe update-vocabulary \ --vocabulary-file-uri s3://amzn-s3-demo-bucket/Amazon-S3-Prefix/custom-vocabulary.txt \ --vocabulary-name custom-vocabulary \ --language-code language-code

Output:

{ "VocabularyName": "custom-vocabulary", "LanguageCode": "language", "VocabularyState": "PENDING" }

For more information, see Custom Vocabularies in the Amazon Transcribe Developer Guide.

Python
SDK for Python (Boto3)
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.

def update_vocabulary( vocabulary_name, language_code, transcribe_client, phrases=None, table_uri=None ): """ Updates an existing custom vocabulary. The entire vocabulary is replaced with the contents of the update. :param vocabulary_name: The name of the vocabulary to update. :param language_code: The language code of the vocabulary. :param transcribe_client: The Boto3 Transcribe client. :param phrases: A list of comma-separated phrases to include in the vocabulary. :param table_uri: A table of phrases and pronunciation hints to include in the vocabulary. """ try: vocab_args = {"VocabularyName": vocabulary_name, "LanguageCode": language_code} if phrases is not None: vocab_args["Phrases"] = phrases elif table_uri is not None: vocab_args["VocabularyFileUri"] = table_uri response = transcribe_client.update_vocabulary(**vocab_args) logger.info("Updated custom vocabulary %s.", response["VocabularyName"]) except ClientError: logger.exception("Couldn't update custom vocabulary %s.", vocabulary_name) raise
  • For API details, see UpdateVocabulary in AWS SDK for Python (Boto3) API Reference.

SAP ABAP
SDK for SAP ABAP
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.

TRY. IF it_phrases IS NOT INITIAL. oo_result = lo_tnb->updatevocabulary( iv_vocabularyname = iv_vocabulary_name iv_languagecode = iv_language_code it_phrases = it_phrases ). ELSEIF iv_vocab_file_uri IS NOT INITIAL. oo_result = lo_tnb->updatevocabulary( iv_vocabularyname = iv_vocabulary_name iv_languagecode = iv_language_code iv_vocabularyfileuri = iv_vocab_file_uri ). ENDIF. MESSAGE 'Vocabulary updated.' TYPE 'I'. CATCH /aws1/cx_tnbbadrequestex INTO DATA(lo_bad_request_ex). MESSAGE lo_bad_request_ex TYPE 'I'. CATCH /aws1/cx_tnblimitexceededex INTO DATA(lo_limit_ex). MESSAGE lo_limit_ex TYPE 'I'. RAISE EXCEPTION lo_limit_ex. CATCH /aws1/cx_tnbnotfoundexception INTO DATA(lo_not_found_ex). MESSAGE lo_not_found_ex TYPE 'I'. CATCH /aws1/cx_tnbinternalfailureex INTO DATA(lo_internal_ex). MESSAGE lo_internal_ex TYPE 'I'. RAISE EXCEPTION lo_internal_ex. CATCH /aws1/cx_tnbconflictexception INTO DATA(lo_conflict_ex). MESSAGE lo_conflict_ex TYPE 'I'. RAISE EXCEPTION lo_conflict_ex. ENDTRY.