/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace TranscribeService { namespace Model { /** */ class CreateLanguageModelRequest : public TranscribeServiceRequest { public: AWS_TRANSCRIBESERVICE_API CreateLanguageModelRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateLanguageModel"; } AWS_TRANSCRIBESERVICE_API Aws::String SerializePayload() const override; AWS_TRANSCRIBESERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The language code that represents the language of your model. Each custom * language model must contain terms in only one language, and the language you * select for your custom language model must match the language of your training * and tuning data.

For a list of supported languages and their associated * language codes, refer to the Supported * languages table. Note that US English (en-US) is the only * language supported with Amazon Transcribe Medical.

A custom language * model can only be used to transcribe files in the same language as the model. * For example, if you create a custom language model using US English * (en-US), you can only apply this model to files that contain * English audio.

*/ inline const CLMLanguageCode& GetLanguageCode() const{ return m_languageCode; } /** *

The language code that represents the language of your model. Each custom * language model must contain terms in only one language, and the language you * select for your custom language model must match the language of your training * and tuning data.

For a list of supported languages and their associated * language codes, refer to the Supported * languages table. Note that US English (en-US) is the only * language supported with Amazon Transcribe Medical.

A custom language * model can only be used to transcribe files in the same language as the model. * For example, if you create a custom language model using US English * (en-US), you can only apply this model to files that contain * English audio.

*/ inline bool LanguageCodeHasBeenSet() const { return m_languageCodeHasBeenSet; } /** *

The language code that represents the language of your model. Each custom * language model must contain terms in only one language, and the language you * select for your custom language model must match the language of your training * and tuning data.

For a list of supported languages and their associated * language codes, refer to the Supported * languages table. Note that US English (en-US) is the only * language supported with Amazon Transcribe Medical.

A custom language * model can only be used to transcribe files in the same language as the model. * For example, if you create a custom language model using US English * (en-US), you can only apply this model to files that contain * English audio.

*/ inline void SetLanguageCode(const CLMLanguageCode& value) { m_languageCodeHasBeenSet = true; m_languageCode = value; } /** *

The language code that represents the language of your model. Each custom * language model must contain terms in only one language, and the language you * select for your custom language model must match the language of your training * and tuning data.

For a list of supported languages and their associated * language codes, refer to the Supported * languages table. Note that US English (en-US) is the only * language supported with Amazon Transcribe Medical.

A custom language * model can only be used to transcribe files in the same language as the model. * For example, if you create a custom language model using US English * (en-US), you can only apply this model to files that contain * English audio.

*/ inline void SetLanguageCode(CLMLanguageCode&& value) { m_languageCodeHasBeenSet = true; m_languageCode = std::move(value); } /** *

The language code that represents the language of your model. Each custom * language model must contain terms in only one language, and the language you * select for your custom language model must match the language of your training * and tuning data.

For a list of supported languages and their associated * language codes, refer to the Supported * languages table. Note that US English (en-US) is the only * language supported with Amazon Transcribe Medical.

A custom language * model can only be used to transcribe files in the same language as the model. * For example, if you create a custom language model using US English * (en-US), you can only apply this model to files that contain * English audio.

*/ inline CreateLanguageModelRequest& WithLanguageCode(const CLMLanguageCode& value) { SetLanguageCode(value); return *this;} /** *

The language code that represents the language of your model. Each custom * language model must contain terms in only one language, and the language you * select for your custom language model must match the language of your training * and tuning data.

For a list of supported languages and their associated * language codes, refer to the Supported * languages table. Note that US English (en-US) is the only * language supported with Amazon Transcribe Medical.

A custom language * model can only be used to transcribe files in the same language as the model. * For example, if you create a custom language model using US English * (en-US), you can only apply this model to files that contain * English audio.

*/ inline CreateLanguageModelRequest& WithLanguageCode(CLMLanguageCode&& value) { SetLanguageCode(std::move(value)); return *this;} /** *

The Amazon Transcribe standard language model, or base model, used to create * your custom language model. Amazon Transcribe offers two options for base * models: Wideband and Narrowband.

If the audio you want to transcribe has * a sample rate of 16,000 Hz or greater, choose WideBand. To * transcribe audio with a sample rate less than 16,000 Hz, choose * NarrowBand.

*/ inline const BaseModelName& GetBaseModelName() const{ return m_baseModelName; } /** *

The Amazon Transcribe standard language model, or base model, used to create * your custom language model. Amazon Transcribe offers two options for base * models: Wideband and Narrowband.

If the audio you want to transcribe has * a sample rate of 16,000 Hz or greater, choose WideBand. To * transcribe audio with a sample rate less than 16,000 Hz, choose * NarrowBand.

*/ inline bool BaseModelNameHasBeenSet() const { return m_baseModelNameHasBeenSet; } /** *

The Amazon Transcribe standard language model, or base model, used to create * your custom language model. Amazon Transcribe offers two options for base * models: Wideband and Narrowband.

If the audio you want to transcribe has * a sample rate of 16,000 Hz or greater, choose WideBand. To * transcribe audio with a sample rate less than 16,000 Hz, choose * NarrowBand.

*/ inline void SetBaseModelName(const BaseModelName& value) { m_baseModelNameHasBeenSet = true; m_baseModelName = value; } /** *

The Amazon Transcribe standard language model, or base model, used to create * your custom language model. Amazon Transcribe offers two options for base * models: Wideband and Narrowband.

If the audio you want to transcribe has * a sample rate of 16,000 Hz or greater, choose WideBand. To * transcribe audio with a sample rate less than 16,000 Hz, choose * NarrowBand.

*/ inline void SetBaseModelName(BaseModelName&& value) { m_baseModelNameHasBeenSet = true; m_baseModelName = std::move(value); } /** *

The Amazon Transcribe standard language model, or base model, used to create * your custom language model. Amazon Transcribe offers two options for base * models: Wideband and Narrowband.

If the audio you want to transcribe has * a sample rate of 16,000 Hz or greater, choose WideBand. To * transcribe audio with a sample rate less than 16,000 Hz, choose * NarrowBand.

*/ inline CreateLanguageModelRequest& WithBaseModelName(const BaseModelName& value) { SetBaseModelName(value); return *this;} /** *

The Amazon Transcribe standard language model, or base model, used to create * your custom language model. Amazon Transcribe offers two options for base * models: Wideband and Narrowband.

If the audio you want to transcribe has * a sample rate of 16,000 Hz or greater, choose WideBand. To * transcribe audio with a sample rate less than 16,000 Hz, choose * NarrowBand.

*/ inline CreateLanguageModelRequest& WithBaseModelName(BaseModelName&& value) { SetBaseModelName(std::move(value)); return *this;} /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline const Aws::String& GetModelName() const{ return m_modelName; } /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline bool ModelNameHasBeenSet() const { return m_modelNameHasBeenSet; } /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline void SetModelName(const Aws::String& value) { m_modelNameHasBeenSet = true; m_modelName = value; } /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline void SetModelName(Aws::String&& value) { m_modelNameHasBeenSet = true; m_modelName = std::move(value); } /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline void SetModelName(const char* value) { m_modelNameHasBeenSet = true; m_modelName.assign(value); } /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline CreateLanguageModelRequest& WithModelName(const Aws::String& value) { SetModelName(value); return *this;} /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline CreateLanguageModelRequest& WithModelName(Aws::String&& value) { SetModelName(std::move(value)); return *this;} /** *

A unique name, chosen by you, for your custom language model.

This * name is case sensitive, cannot contain spaces, and must be unique within an * Amazon Web Services account. If you try to create a new custom language model * with the same name as an existing custom language model, you get a * ConflictException error.

*/ inline CreateLanguageModelRequest& WithModelName(const char* value) { SetModelName(value); return *this;} /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri, which is the Amazon S3 location of your * training data, and DataAccessRoleArn, which is the Amazon Resource * Name (ARN) of the role that has permission to access your specified Amazon S3 * location. You can optionally include TuningDataS3Uri, which is the * Amazon S3 location of your tuning data. If you specify different Amazon S3 * locations for training and tuning data, the ARN you use must have permissions to * access both locations.

*/ inline const InputDataConfig& GetInputDataConfig() const{ return m_inputDataConfig; } /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri, which is the Amazon S3 location of your * training data, and DataAccessRoleArn, which is the Amazon Resource * Name (ARN) of the role that has permission to access your specified Amazon S3 * location. You can optionally include TuningDataS3Uri, which is the * Amazon S3 location of your tuning data. If you specify different Amazon S3 * locations for training and tuning data, the ARN you use must have permissions to * access both locations.

*/ inline bool InputDataConfigHasBeenSet() const { return m_inputDataConfigHasBeenSet; } /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri, which is the Amazon S3 location of your * training data, and DataAccessRoleArn, which is the Amazon Resource * Name (ARN) of the role that has permission to access your specified Amazon S3 * location. You can optionally include TuningDataS3Uri, which is the * Amazon S3 location of your tuning data. If you specify different Amazon S3 * locations for training and tuning data, the ARN you use must have permissions to * access both locations.

*/ inline void SetInputDataConfig(const InputDataConfig& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = value; } /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri, which is the Amazon S3 location of your * training data, and DataAccessRoleArn, which is the Amazon Resource * Name (ARN) of the role that has permission to access your specified Amazon S3 * location. You can optionally include TuningDataS3Uri, which is the * Amazon S3 location of your tuning data. If you specify different Amazon S3 * locations for training and tuning data, the ARN you use must have permissions to * access both locations.

*/ inline void SetInputDataConfig(InputDataConfig&& value) { m_inputDataConfigHasBeenSet = true; m_inputDataConfig = std::move(value); } /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri, which is the Amazon S3 location of your * training data, and DataAccessRoleArn, which is the Amazon Resource * Name (ARN) of the role that has permission to access your specified Amazon S3 * location. You can optionally include TuningDataS3Uri, which is the * Amazon S3 location of your tuning data. If you specify different Amazon S3 * locations for training and tuning data, the ARN you use must have permissions to * access both locations.

*/ inline CreateLanguageModelRequest& WithInputDataConfig(const InputDataConfig& value) { SetInputDataConfig(value); return *this;} /** *

Contains the Amazon S3 location of the training data you want to use to * create a new custom language model, and permissions to access this location.

*

When using InputDataConfig, you must include these * sub-parameters: S3Uri, which is the Amazon S3 location of your * training data, and DataAccessRoleArn, which is the Amazon Resource * Name (ARN) of the role that has permission to access your specified Amazon S3 * location. You can optionally include TuningDataS3Uri, which is the * Amazon S3 location of your tuning data. If you specify different Amazon S3 * locations for training and tuning data, the ARN you use must have permissions to * access both locations.

*/ inline CreateLanguageModelRequest& WithInputDataConfig(InputDataConfig&& value) { SetInputDataConfig(std::move(value)); return *this;} /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline CreateLanguageModelRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline CreateLanguageModelRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline CreateLanguageModelRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

Adds one or more custom tags, each in the form of a key:value pair, to a new * custom language model at the time you create this new model.

To learn * more about using tags with Amazon Transcribe, refer to Tagging * resources.

*/ inline CreateLanguageModelRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: CLMLanguageCode m_languageCode; bool m_languageCodeHasBeenSet = false; BaseModelName m_baseModelName; bool m_baseModelNameHasBeenSet = false; Aws::String m_modelName; bool m_modelNameHasBeenSet = false; InputDataConfig m_inputDataConfig; bool m_inputDataConfigHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace TranscribeService } // namespace Aws