/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Comprehend { namespace Model { /** *

Specifies the format and location of the input data.

See Also:

* AWS * API Reference

*/ class EntityRecognizerInputDataConfig { public: AWS_COMPREHEND_API EntityRecognizerInputDataConfig(); AWS_COMPREHEND_API EntityRecognizerInputDataConfig(Aws::Utils::Json::JsonView jsonValue); AWS_COMPREHEND_API EntityRecognizerInputDataConfig& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_COMPREHEND_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The format of your training data:

  • * COMPREHEND_CSV: A CSV file that supplements your training * documents. The CSV file contains information about the custom entities that your * trained model will detect. The required format of the file depends on whether * you are providing annotations or an entity list.

    If you use this value, * you must provide your CSV file by using either the Annotations or * EntityList parameters. You must provide your training documents by * using the Documents parameter.

  • * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon * SageMaker Ground Truth. This file is in JSON lines format. Each line is a * complete JSON object that contains a training document and its labels. Each * label annotates a named entity in the training document.

    If you use this * value, you must provide the AugmentedManifests parameter in your * request.

If you don't specify a value, Amazon Comprehend uses * COMPREHEND_CSV as the default.

*/ inline const EntityRecognizerDataFormat& GetDataFormat() const{ return m_dataFormat; } /** *

The format of your training data:

  • * COMPREHEND_CSV: A CSV file that supplements your training * documents. The CSV file contains information about the custom entities that your * trained model will detect. The required format of the file depends on whether * you are providing annotations or an entity list.

    If you use this value, * you must provide your CSV file by using either the Annotations or * EntityList parameters. You must provide your training documents by * using the Documents parameter.

  • * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon * SageMaker Ground Truth. This file is in JSON lines format. Each line is a * complete JSON object that contains a training document and its labels. Each * label annotates a named entity in the training document.

    If you use this * value, you must provide the AugmentedManifests parameter in your * request.

If you don't specify a value, Amazon Comprehend uses * COMPREHEND_CSV as the default.

*/ inline bool DataFormatHasBeenSet() const { return m_dataFormatHasBeenSet; } /** *

The format of your training data:

  • * COMPREHEND_CSV: A CSV file that supplements your training * documents. The CSV file contains information about the custom entities that your * trained model will detect. The required format of the file depends on whether * you are providing annotations or an entity list.

    If you use this value, * you must provide your CSV file by using either the Annotations or * EntityList parameters. You must provide your training documents by * using the Documents parameter.

  • * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon * SageMaker Ground Truth. This file is in JSON lines format. Each line is a * complete JSON object that contains a training document and its labels. Each * label annotates a named entity in the training document.

    If you use this * value, you must provide the AugmentedManifests parameter in your * request.

If you don't specify a value, Amazon Comprehend uses * COMPREHEND_CSV as the default.

*/ inline void SetDataFormat(const EntityRecognizerDataFormat& value) { m_dataFormatHasBeenSet = true; m_dataFormat = value; } /** *

The format of your training data:

  • * COMPREHEND_CSV: A CSV file that supplements your training * documents. The CSV file contains information about the custom entities that your * trained model will detect. The required format of the file depends on whether * you are providing annotations or an entity list.

    If you use this value, * you must provide your CSV file by using either the Annotations or * EntityList parameters. You must provide your training documents by * using the Documents parameter.

  • * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon * SageMaker Ground Truth. This file is in JSON lines format. Each line is a * complete JSON object that contains a training document and its labels. Each * label annotates a named entity in the training document.

    If you use this * value, you must provide the AugmentedManifests parameter in your * request.

If you don't specify a value, Amazon Comprehend uses * COMPREHEND_CSV as the default.

*/ inline void SetDataFormat(EntityRecognizerDataFormat&& value) { m_dataFormatHasBeenSet = true; m_dataFormat = std::move(value); } /** *

The format of your training data:

  • * COMPREHEND_CSV: A CSV file that supplements your training * documents. The CSV file contains information about the custom entities that your * trained model will detect. The required format of the file depends on whether * you are providing annotations or an entity list.

    If you use this value, * you must provide your CSV file by using either the Annotations or * EntityList parameters. You must provide your training documents by * using the Documents parameter.

  • * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon * SageMaker Ground Truth. This file is in JSON lines format. Each line is a * complete JSON object that contains a training document and its labels. Each * label annotates a named entity in the training document.

    If you use this * value, you must provide the AugmentedManifests parameter in your * request.

If you don't specify a value, Amazon Comprehend uses * COMPREHEND_CSV as the default.

*/ inline EntityRecognizerInputDataConfig& WithDataFormat(const EntityRecognizerDataFormat& value) { SetDataFormat(value); return *this;} /** *

The format of your training data:

  • * COMPREHEND_CSV: A CSV file that supplements your training * documents. The CSV file contains information about the custom entities that your * trained model will detect. The required format of the file depends on whether * you are providing annotations or an entity list.

    If you use this value, * you must provide your CSV file by using either the Annotations or * EntityList parameters. You must provide your training documents by * using the Documents parameter.

  • * AUGMENTED_MANIFEST: A labeled dataset that is produced by Amazon * SageMaker Ground Truth. This file is in JSON lines format. Each line is a * complete JSON object that contains a training document and its labels. Each * label annotates a named entity in the training document.

    If you use this * value, you must provide the AugmentedManifests parameter in your * request.

If you don't specify a value, Amazon Comprehend uses * COMPREHEND_CSV as the default.

*/ inline EntityRecognizerInputDataConfig& WithDataFormat(EntityRecognizerDataFormat&& value) { SetDataFormat(std::move(value)); return *this;} /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline const Aws::Vector& GetEntityTypes() const{ return m_entityTypes; } /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline bool EntityTypesHasBeenSet() const { return m_entityTypesHasBeenSet; } /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline void SetEntityTypes(const Aws::Vector& value) { m_entityTypesHasBeenSet = true; m_entityTypes = value; } /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline void SetEntityTypes(Aws::Vector&& value) { m_entityTypesHasBeenSet = true; m_entityTypes = std::move(value); } /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline EntityRecognizerInputDataConfig& WithEntityTypes(const Aws::Vector& value) { SetEntityTypes(value); return *this;} /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline EntityRecognizerInputDataConfig& WithEntityTypes(Aws::Vector&& value) { SetEntityTypes(std::move(value)); return *this;} /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline EntityRecognizerInputDataConfig& AddEntityTypes(const EntityTypesListItem& value) { m_entityTypesHasBeenSet = true; m_entityTypes.push_back(value); return *this; } /** *

The entity types in the labeled training data that Amazon Comprehend uses to * train the custom entity recognizer. Any entity types that you don't specify are * ignored.

A maximum of 25 entity types can be used at one time to train an * entity recognizer. Entity types must not contain the following invalid * characters: \n (line break), \\n (escaped line break), \r (carriage return), \\r * (escaped carriage return), \t (tab), \\t (escaped tab), space, and , (comma). *

*/ inline EntityRecognizerInputDataConfig& AddEntityTypes(EntityTypesListItem&& value) { m_entityTypesHasBeenSet = true; m_entityTypes.push_back(std::move(value)); return *this; } /** *

The S3 location of the folder that contains the training documents for your * custom entity recognizer.

This parameter is required if you set * DataFormat to COMPREHEND_CSV.

*/ inline const EntityRecognizerDocuments& GetDocuments() const{ return m_documents; } /** *

The S3 location of the folder that contains the training documents for your * custom entity recognizer.

This parameter is required if you set * DataFormat to COMPREHEND_CSV.

*/ inline bool DocumentsHasBeenSet() const { return m_documentsHasBeenSet; } /** *

The S3 location of the folder that contains the training documents for your * custom entity recognizer.

This parameter is required if you set * DataFormat to COMPREHEND_CSV.

*/ inline void SetDocuments(const EntityRecognizerDocuments& value) { m_documentsHasBeenSet = true; m_documents = value; } /** *

The S3 location of the folder that contains the training documents for your * custom entity recognizer.

This parameter is required if you set * DataFormat to COMPREHEND_CSV.

*/ inline void SetDocuments(EntityRecognizerDocuments&& value) { m_documentsHasBeenSet = true; m_documents = std::move(value); } /** *

The S3 location of the folder that contains the training documents for your * custom entity recognizer.

This parameter is required if you set * DataFormat to COMPREHEND_CSV.

*/ inline EntityRecognizerInputDataConfig& WithDocuments(const EntityRecognizerDocuments& value) { SetDocuments(value); return *this;} /** *

The S3 location of the folder that contains the training documents for your * custom entity recognizer.

This parameter is required if you set * DataFormat to COMPREHEND_CSV.

*/ inline EntityRecognizerInputDataConfig& WithDocuments(EntityRecognizerDocuments&& value) { SetDocuments(std::move(value)); return *this;} /** *

The S3 location of the CSV file that annotates your training documents.

*/ inline const EntityRecognizerAnnotations& GetAnnotations() const{ return m_annotations; } /** *

The S3 location of the CSV file that annotates your training documents.

*/ inline bool AnnotationsHasBeenSet() const { return m_annotationsHasBeenSet; } /** *

The S3 location of the CSV file that annotates your training documents.

*/ inline void SetAnnotations(const EntityRecognizerAnnotations& value) { m_annotationsHasBeenSet = true; m_annotations = value; } /** *

The S3 location of the CSV file that annotates your training documents.

*/ inline void SetAnnotations(EntityRecognizerAnnotations&& value) { m_annotationsHasBeenSet = true; m_annotations = std::move(value); } /** *

The S3 location of the CSV file that annotates your training documents.

*/ inline EntityRecognizerInputDataConfig& WithAnnotations(const EntityRecognizerAnnotations& value) { SetAnnotations(value); return *this;} /** *

The S3 location of the CSV file that annotates your training documents.

*/ inline EntityRecognizerInputDataConfig& WithAnnotations(EntityRecognizerAnnotations&& value) { SetAnnotations(std::move(value)); return *this;} /** *

The S3 location of the CSV file that has the entity list for your custom * entity recognizer.

*/ inline const EntityRecognizerEntityList& GetEntityList() const{ return m_entityList; } /** *

The S3 location of the CSV file that has the entity list for your custom * entity recognizer.

*/ inline bool EntityListHasBeenSet() const { return m_entityListHasBeenSet; } /** *

The S3 location of the CSV file that has the entity list for your custom * entity recognizer.

*/ inline void SetEntityList(const EntityRecognizerEntityList& value) { m_entityListHasBeenSet = true; m_entityList = value; } /** *

The S3 location of the CSV file that has the entity list for your custom * entity recognizer.

*/ inline void SetEntityList(EntityRecognizerEntityList&& value) { m_entityListHasBeenSet = true; m_entityList = std::move(value); } /** *

The S3 location of the CSV file that has the entity list for your custom * entity recognizer.

*/ inline EntityRecognizerInputDataConfig& WithEntityList(const EntityRecognizerEntityList& value) { SetEntityList(value); return *this;} /** *

The S3 location of the CSV file that has the entity list for your custom * entity recognizer.

*/ inline EntityRecognizerInputDataConfig& WithEntityList(EntityRecognizerEntityList&& value) { SetEntityList(std::move(value)); return *this;} /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline const Aws::Vector& GetAugmentedManifests() const{ return m_augmentedManifests; } /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline bool AugmentedManifestsHasBeenSet() const { return m_augmentedManifestsHasBeenSet; } /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline void SetAugmentedManifests(const Aws::Vector& value) { m_augmentedManifestsHasBeenSet = true; m_augmentedManifests = value; } /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline void SetAugmentedManifests(Aws::Vector&& value) { m_augmentedManifestsHasBeenSet = true; m_augmentedManifests = std::move(value); } /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline EntityRecognizerInputDataConfig& WithAugmentedManifests(const Aws::Vector& value) { SetAugmentedManifests(value); return *this;} /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline EntityRecognizerInputDataConfig& WithAugmentedManifests(Aws::Vector&& value) { SetAugmentedManifests(std::move(value)); return *this;} /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline EntityRecognizerInputDataConfig& AddAugmentedManifests(const AugmentedManifestsListItem& value) { m_augmentedManifestsHasBeenSet = true; m_augmentedManifests.push_back(value); return *this; } /** *

A list of augmented manifest files that provide training data for your custom * model. An augmented manifest file is a labeled dataset that is produced by * Amazon SageMaker Ground Truth.

This parameter is required if you set * DataFormat to AUGMENTED_MANIFEST.

*/ inline EntityRecognizerInputDataConfig& AddAugmentedManifests(AugmentedManifestsListItem&& value) { m_augmentedManifestsHasBeenSet = true; m_augmentedManifests.push_back(std::move(value)); return *this; } private: EntityRecognizerDataFormat m_dataFormat; bool m_dataFormatHasBeenSet = false; Aws::Vector m_entityTypes; bool m_entityTypesHasBeenSet = false; EntityRecognizerDocuments m_documents; bool m_documentsHasBeenSet = false; EntityRecognizerAnnotations m_annotations; bool m_annotationsHasBeenSet = false; EntityRecognizerEntityList m_entityList; bool m_entityListHasBeenSet = false; Aws::Vector m_augmentedManifests; bool m_augmentedManifestsHasBeenSet = false; }; } // namespace Model } // namespace Comprehend } // namespace Aws