

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Creación de un trabajo de etiquetado en transmisión
<a name="sms-streaming-create-job"></a>

Los trabajos de etiquetado en streaming permiten enviar objetos de datos individuales en tiempo real a un trabajo de etiquetado en streaming y continuo. Para crear un trabajo de etiquetado en transmisión, puede especificar el tema de *entrada* de Amazon SNS, `SnsTopicArn`, en el parámetro `InputConfig` al realizar una solicitud [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html). Opcionalmente, también puede crear un *tema de salida* de Amazon SNS y especificarlo en `OutputConfig` si desea recibir datos de etiquetas en tiempo real.

**importante**  
Si no tiene experiencia con los trabajos de etiquetado en streaming de Ground Truth, le recomendamos que consulte [Trabajos de etiquetado en transmisión de Ground Truth](sms-streaming-labeling-job.md) antes de crear un trabajo de este tipo. Los trabajos de etiquetado en streaming de Ground Truth solo se admiten a través de la SageMaker API.

Utilice las siguientes secciones para crear los recursos que necesita y puede utilizar para crear un trabajo de etiquetado en streaming:
+ Aprenda a crear temas de SNS con los permisos necesarios para los trabajos de etiquetado en streaming de Ground Truth siguiendo los pasos que se indican en [Uso de los temas de Amazon SNS para el etiquetado de datos](sms-create-sns-input-topic.md). Sus temas de SNS deben crearse en la misma AWS región que su trabajo de etiquetado. 
+ Consulte [Suscribir un punto de conexión a un tema de Amazon SNS](sms-create-sns-input-topic.md#sms-streaming-subscribe-output-topic) para aprender a configurar un punto conexión para recibir datos de salida de la tarea de etiquetado en un punto de conexión específico cada vez que se complete una tarea de etiquetado.
+ Para aprender a configurar un bucket de Amazon S3 para enviar notificaciones al tema de entrada de Amazon SNS, consulte [Creación de notificaciones de eventos de bucket basadas en Amazon S3 en función del Amazon SNS definido en el trabajo de etiquetado](sms-streaming-s3-setup.md).
+ Opcionalmente, añada a su manifiesto de entrada los objetos de datos que desea etiquetar en cuanto comience el trabajo de etiquetado. Para obtener más información, consulte [Crear un archivo de manifiesto (opcional)](sms-streaming-manifest.md).
+ Hay otros recursos necesarios para crear un trabajo de etiquetado, como un rol de IAM, un bucket de Amazon S3, una plantilla de tareas de trabajo y categorías de etiquetas. Se describen en la documentación de Ground Truth sobre la creación de trabajos de etiquetado. Para obtener más información, consulte [Crear un trabajo de etiquetado](sms-create-labeling-job.md). 
**importante**  
Al crear un trabajo de etiquetado, debe proporcionar un rol de ejecución de IAM. Adjunta la política AWS gestionada **AmazonSageMakerGroundTruthExecution**a esta función para asegurarte de que cuenta con los permisos necesarios para ejecutar tu trabajo de etiquetado. 

Cuando envía una solicitud para crear un trabajo de etiquetado en streaming, el estado del trabajo de etiquetado es `Initializing`. Una vez que el trabajo de etiquetado está activo, el estado cambia a `InProgress`. No envíe nuevos objetos de datos al trabajo de etiquetado ni intente detener el trabajo de etiquetado mientras esté en ese estado `Initializing`. Cuando el estado cambie a `InProgress`, podrá empezar a enviar nuevos objetos de datos mediante la configuración de Amazon SNS y Amazon S3. 

**Topics**
+ [Uso de los temas de Amazon SNS para el etiquetado de datos](sms-create-sns-input-topic.md)
+ [Creación de notificaciones de eventos de bucket basadas en Amazon S3 en función del Amazon SNS definido en el trabajo de etiquetado](sms-streaming-s3-setup.md)
+ [Crear un archivo de manifiesto (opcional)](sms-streaming-manifest.md)
+ [Cree un trabajo de etiquetado en streaming con la SageMaker API](sms-streaming-create-labeling-job-api.md)
+ [Detener un trabajo de etiquetado en streaming](sms-streaming-stop-labeling-job.md)

# Uso de los temas de Amazon SNS para el etiquetado de datos
<a name="sms-create-sns-input-topic"></a>

Debe crear una entrada de Amazon SNS para crear un trabajo de etiquetado en streaming. Si lo desea, puede proporcionar un tema de salida de Amazon SNS.

Al crear un tema de Amazon SNS para utilizarlo en el trabajo de etiquetado en streaming, anote el nombre de recurso de Amazon (ARN) del tema. El ARN serán los valores de entrada del parámetro `SnsTopicArn` en `InputConfig` y `OutputConfig` cuando cree un trabajo de etiquetado.

## Crear un tema de entrada
<a name="sms-streaming-input-topic"></a>

El tema de entrada se utiliza para enviar nuevos objetos de datos a Ground Truth. Para crear un tema de entrada, siga las instrucciones de [Creating an Amazon SNS topic](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) en la Guía para desarrolladores de Amazon Simple Notification Service.

Anote el ARN del tema de entrada y utilícelo como entrada para el parámetro de `CreateLabelingJob` `SnsTopicArn` en `InputConfig`. 

## Crear un tema de salida
<a name="sms-streaming-output-topic"></a>

Si proporciona un tema de salida, se utiliza para enviar notificaciones cuando se etiqueta un objeto de datos. Cuando crea un tema tiene la opción de agregar una clave de cifrado. Utilice esta opción para añadir una clave gestionada por el AWS Key Management Service cliente a su tema para cifrar los datos de salida del trabajo de etiquetado antes de publicarlos en el tema de salida.

Para crear un tema de salida, siga las instrucciones de [Creating an Amazon SNS topic](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) en la Guía para desarrolladores de Amazon Simple Notification Service.

Si agrega cifrado, debe asociar un permiso adicional al tema. Para obtener más información, consulte [Añada cifrado al tema de salida (opcional)](#sms-streaming-encryption).

**importante**  
Para añadir una clave gestionada por el cliente al tema de salida al crear un tema en la consola, no utilice la alias/aws/sns opción **(predeterminada)**. Seleccione una clave gestionada por el cliente que ha creado. 

Anote el ARN del tema de entrada y utilícelo en su solicitud de `CreateLabelingJob` en el parámetro `SnsTopicArn` en `OutputConfig`. 

### Añada cifrado al tema de salida (opcional)
<a name="sms-streaming-encryption"></a>

Para cifrar mensajes publicados en el tema de salida debe proporcionar una clave gestionada por el cliente de AWS KMS al tema. Modifique la siguiente política y agréguela a la clave gestionada por el cliente para dar a Ground Truth permiso para cifrar datos de salida antes de publicarlos en el tema de salida.

Sustituya *`<account_id>`* por el identificador de la cuenta que está utilizando para crear el tema. Para obtener información sobre cómo encontrar tu ID de AWS cuenta, consulta Cómo [encontrar tu ID de AWS cuenta](https://docs.aws.amazon.com/IAM/latest/UserGuide/console_account-alias.html#FindingYourAWSId). 

------
#### [ JSON ]

****  

```
{
    "Id": "key-console-policy",
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow access for Key Administrators",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/Admin"
            },
            "Action": [
                "kms:Create*",
                "kms:Describe*",
                "kms:Enable*",
                "kms:List*",
                "kms:Put*",
                "kms:Update*",
                "kms:Revoke*",
                "kms:Disable*",
                "kms:Get*",
                "kms:Delete*",
                "kms:TagResource",
                "kms:UntagResource",
                "kms:ScheduleKeyDeletion",
                "kms:CancelKeyDeletion"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Además, debe modificar y añadir la siguiente política al rol de ejecución que utiliza para crear el trabajo de etiquetado (el valor de entrada de `RoleArn`). 

Sustituya *`<account_id>`* por el identificador de la cuenta que está utilizando para crear el tema. Sustituya *`<region>`* por la región de AWS en la que vaya a crear el trabajo de etiquetado. Sustituya `<key_id>` por el identificador de clave gestionada por el cliente.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "sid1",
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/your_key_id"
        }
    ]
}
```

------

Para obtener más información sobre la creación y protección de claves, consulte [Creación de claves](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) y [uso de políticas clave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) en la Guía para AWS Key Management Service desarrolladores.

## Suscribir un punto de conexión a un tema de Amazon SNS
<a name="sms-streaming-subscribe-output-topic"></a>

Cuando un trabajador completa una tarea de etiquetado desde un trabajo de etiquetado en streaming de Ground Truth, Ground Truth utiliza el tema de salida para publicar datos de salida en uno o más puntos de conexión que usted especifique. Para recibir notificaciones cuando un trabajador termina una tarea de etiquetado debe suscribir un punto de conexión a un tema de salida de Amazon SNS.

Para aprender a agregar puntos de conexión a un tema de salida, consulte [Suscripción a un tema de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html) en la *Guía para desarrolladores de Amazon Simple Notification Service*.

Para obtener más información sobre el formato de datos de salida que se publica en estos puntos de conexión, consulte [Etiquetado de los datos de salida del trabajo](sms-data-output.md). 

**importante**  
Si no suscribe un punto de conexión a un tema de salida de Amazon SNS, no recibirá notificaciones cuando se etiqueten nuevos objetos de datos. 

# Creación de notificaciones de eventos de bucket basadas en Amazon S3 en función del Amazon SNS definido en el trabajo de etiquetado
<a name="sms-streaming-s3-setup"></a>

Los cambios en su bucket de Amazon S3, las notificaciones de eventos, están habilitados en la consola de Amazon S3, en la API, en el idioma específico AWS SDKs o en AWS Command Line Interface. Los eventos deben enviarse al mismo ARN del tema de entrada de Amazon SNS, `SnsTopicArn`, que esté especificado en el parámetro `InputConfig` como parte de la solicitud `CreateLabelingJob`.

**Las notificaciones del bucket de Amazon S3 y los datos de entrada no deben ser el mismo bucket de Amazon S3**  
Al crear notificaciones de eventos, no utilice la misma ubicación de Amazon S3 que especificó como `S3OutputPath` en los parámetros `OutputConfig`. La vinculación de los dos buckets puede provocar que Ground Truth procese objetos de datos no deseados para su etiquetado.

Usted controla los tipos de eventos que desea enviar al tema de Amazon SNS. Ground Truth crea un trabajo de etiquetado cuando envía [eventos de creación de objetos](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/enable-event-notifications.html#enable-event-notifications-types).

La estructura de eventos enviada al tema de entrada de Amazon SNS debe ser un mensaje JSON formateado con la misma estructura que se encuentra en la [estructura de mensajes de eventos](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html).

Para ver ejemplos de cómo puede configurar una notificación de eventos para su bucket de Amazon S3 mediante la consola Amazon S3, el AWS SDK para .NET y el AWS SDK para Java, siga este tutorial, [Tutorial: Configurar un bucket para notificaciones (tema de SNS o cola de SQS)](https://docs.aws.amazon.com/AmazonS3/latest/dev/ways-to-add-notification-config-to-bucket.html) de la Guía del usuario de *Amazon Simple* Storage Service.

 EventBridge Las notificaciones de Amazon no se admiten de forma nativa. Para utilizar la notificación EventBridge basada, debes actualizar el formato de salida para que coincida con el formato JSON utilizado en la [estructura de los mensajes del evento](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html).

# Crear un archivo de manifiesto (opcional)
<a name="sms-streaming-manifest"></a>

Al crear un trabajo de etiquetado en streaming, tiene la opción única de añadir objetos (como imágenes o texto) a un archivo de manifiesto `ManifestS3Uri` de entrada que especifique en`CreateLabelingJob`. Cuando se inicia el trabajo de etiquetado en streaming, estos objetos se envían a los trabajadores o se añaden a la cola de Amazon SQS si se supera el número total de objetos `MaxConcurrentTaskCount`. Los resultados se añaden periódicamente a la ruta de Amazon S3 que especifique al crear el trabajo de etiquetado periódicamente cuando los trabajadores completan tareas de etiquetado. Los datos de salida se envían a cualquier punto de conexión al que esté suscrito al tema de salida. 

Si desea proporcionar objetos iniciales para etiquetarlos, cree un archivo de manifiesto que identifique estos objetos y colóquelo en Amazon S3. Especifique el URI de S3 de este archivo de manifiesto en `ManifestS3Uri` dentro de `InputConfig`.

Para aprender a dar formato al archivo de manifiesto, consulte [Datos de entrada](sms-data-input.md). Para utilizar la consola de SageMaker IA para generar automáticamente un archivo de manifiesto (no se admite en los tipos de tareas de nube de puntos 3D), consulte[Automatización de la configuración de datos para los trabajos de etiquetado](sms-console-create-manifest-file.md).

# Cree un trabajo de etiquetado en streaming con la SageMaker API
<a name="sms-streaming-create-labeling-job-api"></a>

A continuación se ofrece un ejemplo de [solicitud del SDK de AWS Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) para puede emplear para iniciar un trabajo de etiquetado en streaming para un tipo de tarea integrada en la región Este de EE. UU. (Norte de Virginia). Para obtener más información sobre cada uno de los parámetros, consulte [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html). Para obtener información sobre cómo crear un trabajo de etiquetado con esta API y el idioma asociado específico SDKs, consulte [Crear un trabajo de etiquetado (API)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-create-labeling-job-api.html).

Este ejemplo contiene los siguientes parámetros:
+ `SnsDataSource`: este parámetro aparece en `InputConfig` y `OutputConfig` y se utiliza para identificar los temas de entrada y salida de Amazon SNS, respectivamente. Para crear un trabajo de etiquetado en streaming, debe proporcionar un tema de entrada de Amazon SNS. Si lo desea, también puede proporcionar un tema de salida de Amazon SNS.
+ `S3DataSource`: este parámetro es opcional. Utilice este parámetro si desea incluir un archivo de manifiesto de entrada con los objetos de datos que desea etiquetar en cuanto comience el trabajo de etiquetado.
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-StoppingConditions](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-StoppingConditions): este parámetro no se tiene en cuenta al crear un trabajo de etiquetado en streaming. Para aprender a detener un trabajo de etiquetado en streaming, consulte [Detener un trabajo de etiquetado en streaming](sms-streaming-stop-labeling-job.md).
+ Los trabajos de etiquetado en streaming no admiten etiquetado de datos automatizado. No incluya el parámetro `LabelingJobAlgorithmsConfig`.

```
response = client.create_labeling_job(
    LabelingJobName= 'example-labeling-job',
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            },
            'SnsDataSource': {
                'SnsTopicArn': 'arn:aws:sns:us-east-1:123456789012:your-sns-input-topic'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string',
        'SnsTopicArn': 'arn:aws:sns:us-east-1:123456789012:your-sns-output-topic'
    },
    RoleArn='arn:aws:iam::*:role/*',
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:us-east-1:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/custom-worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-tasktype',
        'TaskKeywords': [
            'Example key word',
        ],
        'TaskTitle': 'Multi-label image classification task',
        'TaskDescription': 'Select all labels that apply to the images shown',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-tasktype'
            }
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

# Detener un trabajo de etiquetado en streaming
<a name="sms-streaming-stop-labeling-job"></a>

Puede detener manualmente su trabajo de etiquetado en streaming mediante esta operación [StopLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StopLabelingJob.html). 

Si el trabajo de etiquetado permanece inactivo durante más de 10 días, Ground Truth lo detiene automáticamente. En este contexto, un trabajo de etiquetado se considera *inactivo* si no se envía ningún objeto al tema de entrada de Amazon SNS y no queda ningún objeto en la cola de Amazon SQS esperando a ser etiquetado. Por ejemplo, si no se envía ningún objeto de datos al tema de entrada de Amazon SNS y todos los objetos que llegan al trabajo de etiquetado ya están etiquetados, Ground Truth inicia un temporizador. Cuando se inicie el temporizador, si no se recibe ningún elemento en un periodo de 10 días, se detiene el trabajo de etiquetado. 

Cuando se detiene un trabajo de etiquetado, su estado es `STOPPING` mientras Ground Truth limpia los recursos del trabajo de etiquetado y cancela la suscripción del tema de Amazon SNS de la cola de Amazon SQS. Ground Truth *no* elimina Amazon SQS porque esta cola puede contener objetos de datos sin procesar. Debe eliminar la cola manualmente si no quiere incurrir en cargos adicionales por parte de Amazon SQS. Para obtener más información, consulte [Precios de Amazon SQS](https://aws.amazon.com/sqs/pricing/).