

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Trabalhos de rotulagem de streaming do Ground Truth
<a name="sms-streaming-labeling-job"></a>

Se você quiser enviar perpetuamente novos objetos de dados para o Amazon SageMaker Ground Truth para serem rotulados, use uma tarefa de rotulagem de streaming. Os trabalhos de etiquetagem de streaming permitem que você:
+ Envie novos objetos do conjunto de dados aos operadores em tempo real usando um trabalho de rotulagem em execução permanente. Os operadores recebem continuamente novos objetos de dados para rotular, desde que a tarefa de rotulagem esteja ativa e novos objetos estejam sendo enviados a ela.
+ Obtenha visibilidade do número de objetos que foram colocados na fila e aguardam para serem rotulados. Use essas informações para controlar o fluxo de objetos de dados enviados para sua tarefa de etiquetagem.
+ Receba dados de etiquetas para objetos de dados individuais em tempo real à medida que os operadores terminarem de rotulá-los. 

As trabalhos de etiquetagem de streaming da Ground Truth permanecem ativas até serem interrompidas manualmente ou ficarem ociosas por mais de 10 dias. Você pode enviar intermitentemente novos objetos de dados aos operadores enquanto a tarefa de rotulagem está ativa.

Se você for um novo usuário dos trabalhos de rotulagem de streaming da Ground Truth, é recomendável que você analise [Como funciona](#sms-streaming-how-it-works). 

Use [Criar um trabalho de rotulagem de streaming](sms-streaming-create-job.md) para aprender a criar um trabalho de rotulagem de streaming.

**nota**  
Os trabalhos de rotulagem de streaming da Ground Truth só são suportados por meio da SageMaker API.

## Como funciona
<a name="sms-streaming-how-it-works"></a>

Quando você cria uma tarefa de rotulagem de streaming do Ground Truth, a tarefa permanece ativa até ser interrompida manualmente, permanece ociosa por mais de 10 dias ou não consegue acessar as fontes de dados de entrada. Você pode enviar intermitentemente novos objetos de dados aos operadores enquanto eles estão ativos. Um operador pode continuar recebendo novos objetos de dados em tempo real, desde que o número total de tarefas atualmente disponíveis para o operador seja menor que o valor em [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-MaxConcurrentTaskCount](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-MaxConcurrentTaskCount). Caso contrário, o objeto de dados é enviado para uma fila que a Ground Truth cria em seu nome no [Amazon Simple Queue Service](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html) (Amazon SQS) para processamento posterior. Essas tarefas são enviadas aos operadores assim que o número total de tarefas atualmente disponíveis para um operador ficar abaixo de `MaxConcurrentTaskCount`. Se um objeto de dados não for enviado a um operador após 14 dias, ele expirará. Você pode visualizar o número de tarefas pendentes na fila e ajustar o número de objetos enviados para o trabalho de etiquetagem. Por exemplo, você pode diminuir a velocidade com que envia objetos para a tarefa de etiquetagem se a lista de pendências de objetos pendentes ultrapassar um limite. 

**Topics**
+ [Como funciona](#sms-streaming-how-it-works)
+ [Enviar dados para um trabalho de rotulagem de streaming](sms-streaming-how-it-works-send-data.md)
+ [Gerencie solicitações de rotulagem com uma fila do Amazon SQS](sms-streaming-how-it-works-sqs.md)
+ [Receba dados de saída de um trabalho de rotulagem de streaming](sms-streaming-how-it-works-output-data.md)
+ [Tratamento de mensagens duplicadas](sms-streaming-impotency.md)

# Enviar dados para um trabalho de rotulagem de streaming
<a name="sms-streaming-how-it-works-send-data"></a>

Opcionalmente, você pode enviar dados de entrada para um trabalho de rotulagem de streaming uma vez ao criar o trabalho de rotulagem usando um arquivo de manifesto de entrada. Depois que o trabalho de rotulagem for iniciado e o estado for `InProgress`, você poderá enviar novos objetos de dados para seu trabalho de rotulagem em tempo real usando o tópico de entrada do Amazon SNS e as notificações de eventos do Amazon S3. 

***Envie objetos de dados ao iniciar o Trabalhos de rotulagem (uma vez):***
+ **Use um arquivo manifesto de entrada**: Opcionalmente, você pode especificar um arquivo manifesto de entrada `ManifestS3Uri` no URI do Amazon S3 ao criar o trabalho de rotulagem de streaming. O Ground Truth envia cada objeto de dados no arquivo de manifesto aos operadores para rotulagem assim que o trabalho de rotulagem é iniciado. Para saber mais, consulte [Criar um arquivo de manifesto (opcional)](sms-streaming-manifest.md).

  Depois de enviar uma solicitação para criar o trabalho de rotulagem de streaming, seu status será `Initializing`. Quando a tarefa de rotulagem está ativa, o estado muda para `InProgress` e você pode começar a usar as opções em tempo real para enviar objetos de dados adicionais para rotulagem. 

***Envie objetos de dados em tempo real:***
+ **Envie objetos de dados usando mensagens do Amazon SNS**: Você pode enviar novos objetos de dados à Ground Truth para rotular enviando uma mensagem do Amazon SNS. Você enviará essa mensagem para um tópico de entrada do Amazon SNS que você cria e especifica ao criar seu trabalho de rotulagem de streaming. Para obter mais informações, consulte [Enviar objetos de dados usando o Amazon SNS](#sms-streaming-how-it-works-sns).
+ **Envie objetos de dados colocando-os em um bucket do Amazon S3**: Cada vez que você adiciona um novo objeto de dados a um bucket do Amazon S3, você pode solicitar que o Ground Truth processe esse objeto para rotulagem. Para fazer isso, você adiciona uma notificação de evento ao bucket para que ele notifique seu tópico de entrada do Amazon SNS sempre que um novo objeto for adicionado (*ou criado nele*) a esse bucket. Para obter mais informações, consulte [Enviar objetos de dados usando o Amazon S3](#sms-streaming-how-it-works-s3). Essa opção não está disponível para trabalhos de rotulagem com base em texto, como classificação de texto e reconhecimento de entidade nomeada. 
**Importante**  
Se você usar a configuração do Amazon S3, não use a mesma localização do Amazon S3 para sua configuração de dados de entrada e seus dados de saída. Você especifica o prefixo S3 para seus dados de saída ao criar um trabalho de etiquetagem.

## Enviar objetos de dados usando o Amazon SNS
<a name="sms-streaming-how-it-works-sns"></a>

Você pode enviar objetos de dados para o seu trabalho de rotulagem de streaming usando o Amazon Simple Notification Service (Amazon SNS). O Amazon SNS é um serviço web que coordena e gerencia a entrega de mensagens de e para *endpoints* (por exemplo, um endereço de e-mail ou AWS Lambda função). Um *tópico* do Amazon SNS atua como um canal de comunicação entre dois ou mais endpoints. Você usa o Amazon SNS para enviar ou *publicar* novos objetos de dados para o tópico especificado no parâmetro [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) `SnsTopicArn` em `InputConfig`. O formato dessas mensagens é o mesmo de uma única linha de um [arquivo manifesto de entrada](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-data-input.html). 

Por exemplo, você pode enviar um trecho de texto para um trabalho ativo de rotulagem de classificação de texto publicando-o em seu tópico de entrada. A mensagem que você publica pode ser semelhante ao seguinte:

```
{"source": "Lorem ipsum dolor sit amet"}
```

Para enviar um novo objeto de imagem para um trabalho de rotulagem de classificação de imagens, sua mensagem pode ser semelhante à seguinte:

```
{"source-ref": "s3://amzn-s3-demo-bucket/example-image.jpg"}
```

**nota**  
Você também pode incluir chaves personalizadas de desduplicação IDs e desduplicação em suas mensagens do Amazon SNS. Para saber mais, consulte [Tratamento de mensagens duplicadas](sms-streaming-impotency.md).

Quando a Ground Truth cria seu trabalho de rotulagem de streaming, ela se inscreve no tópico de entrada do Amazon SNS. 

## Enviar objetos de dados usando o Amazon S3
<a name="sms-streaming-how-it-works-s3"></a>

Você pode enviar um ou mais novos objetos de dados para um trabalho de rotulagem de streaming colocando-os em um bucket do Amazon S3 configurado com uma notificação de evento do Amazon SNS. Você pode configurar um evento para notificar seu tópico de entrada do Amazon SNS sempre que um novo objeto for criado em seu bucket. Você deve especificar esse mesmo tópico de entrada do Amazon SNS no parâmetro [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) `SnsTopicArn` em `InputConfig`.

Sempre que você configurar um bucket do Amazon S3 para enviar notificações para o Amazon SNS, o Ground Truth publicará um evento `"s3:TestEvent"` de teste, para garantir que o tópico exista e que o proprietário do bucket do Amazon S3 especificado tenha permissão para publicar no tópico especificado. É recomendável que você configure sua conexão do Amazon S3 com o Amazon SNS antes de iniciar um trabalho de etiquetagem de streaming. Caso contrário, esse evento de teste pode ser registrado como um objeto de dados e enviado à Ground Truth para rotulagem. 

**Importante**  
Se você usar a configuração do Amazon S3, não use a mesma localização do Amazon S3 para sua configuração de dados de entrada e seus dados de saída. Você especifica o prefixo S3 para seus dados de saída ao criar um trabalho de etiquetagem.  
Para trabalhos de etiquetagem com base em imagens, a Ground Truth exige que todos os buckets do S3 tenham uma política CORS anexada. Para saber mais, consulte [Requisito do CORS para dados de imagem de entrada](sms-cors-update.md).

Depois de configurar seu bucket do Amazon S3 e criar seu trabalho de etiquetagem, você pode adicionar objetos ao seu bucket e o Ground Truth enviará esse objeto aos operadores ou o colocará na fila do Amazon SQS. 

Para saber mais, consulte [Criar notificações de eventos de bucket do Amazon S3 com base no Amazon SNS definido em seu trabalho de rotulagem](sms-streaming-s3-setup.md).

**Importante**  
Essa opção não está disponível para trabalhos de rotulagem com base em texto, como classificação de texto e reconhecimento de entidade nomeada.

# Gerencie solicitações de rotulagem com uma fila do Amazon SQS
<a name="sms-streaming-how-it-works-sqs"></a>

Quando a Ground Truth cria sua tarefa de rotulagem de streaming, ela cria uma fila do Amazon SQS na AWS conta usada para criar a tarefa de rotulagem. O nome da fila é `GroundTruth-labeling_job_name` onde `labeling_job_name` está o nome do seu trabalho de rotulagem, em letras minúsculas. Quando você envia objetos de dados para sua tarefa de rotulagem, a Ground Truth envia os objetos de dados diretamente aos operadores ou coloca a tarefa em sua fila para ser processada posteriormente. Se um objeto de dados não for enviado a um operador após 14 dias, ele expirará e será removido da fila. Você pode configurar um alarme no Amazon SQS para detectar quando os objetos expiram e usar esse mecanismo para controlar o volume de objetos que você envia para seu trabalho de etiquetagem.

**Importante**  
Modificar, excluir ou enviar objetos diretamente para a fila do Amazon SQS associada ao seu trabalho de rotulagem de streaming pode causar falhas no trabalho. 

# Receba dados de saída de um trabalho de rotulagem de streaming
<a name="sms-streaming-how-it-works-output-data"></a>

Seu bucket de saída do Amazon S3 é atualizado periodicamente com novos dados de saída do seu trabalho de etiquetagem de streaming. Como opção, você pode especificar um tópico de saída do Amazon SNS. Sempre que um operador envia um objeto rotulado, uma notificação com os dados de saída é enviada para esse tópico. Você pode inscrever um endpoint no tópico de saída do SNS para receber notificações ou acionar eventos ao receber dados de saída de uma tarefa de rotulagem. Use um tópico de saída do Amazon SNS se quiser fazer o encadeamento em tempo real com outro trabalho de streaming e receber notificações do Amazon SNS sempre que um objeto de dados for enviado por um operador.

Para saber mais, consulte [Inscreva um endpoint no tópico de saída do Amazon SNS](sms-create-sns-input-topic.md#sms-streaming-subscribe-output-topic).

# Tratamento de mensagens duplicadas
<a name="sms-streaming-impotency"></a>

Para objetos de dados enviados em tempo real, o Ground Truth garante idempotência ao garantir que cada objeto exclusivo seja enviado para rotulagem apenas uma vez, mesmo que a mensagem de entrada referente a esse objeto seja recebida várias vezes (mensagens duplicadas). Para fazer isso, cada objeto de dados enviado para uma tarefa de rotulagem de streaming recebe uma *ID de eliminação de duplicação*, que é identificada com uma chave de *eliminação de duplicação*. Se você enviar suas solicitações para rotular objetos de dados diretamente por meio do tópico de entrada do Amazon SNS usando mensagens do Amazon SNS, você pode, opcionalmente, escolher uma chave de desduplicação e desduplicação personalizadas para seus objetos. IDs Para obter mais informações, consulte [Especifique uma chave e ID de eliminação de duplicação em uma mensagem do Amazon SNS](sms-streaming-impotency-create.md).

Se você não fornecer sua própria chave de eliminação de duplicação ou se usar a configuração do Amazon S3 para enviar objetos de dados para seu trabalho de rotulagem, a Ground Truth usará um dos seguintes como ID de eliminação de duplicação:
+ Para mensagens enviadas diretamente para seu tópico de entrada do Amazon SNS, o Ground Truth usa o ID da mensagem do SNS. 
+ Para mensagens provenientes de uma configuração do Amazon S3, o Ground Truth cria um ID de eliminação de duplicação combinando o URI do Amazon S3 do objeto com o [token do sequenciador](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html) na mensagem.

# Especifique uma chave e ID de eliminação de duplicação em uma mensagem do Amazon SNS
<a name="sms-streaming-impotency-create"></a>

Ao enviar um objeto de dados para sua tarefa de rotulagem de streaming usando uma mensagem do Amazon SNS, você tem a opção de especificar sua chave de eliminação de duplicação e ID de eliminação de duplicação de uma das seguintes formas: Em todos esses cenários, identifique sua chave de eliminação de duplicação com `dataset-objectid-attribute-name`.

**Traga sua própria chave de eliminação de duplicação e ID**

Crie sua própria chave de eliminação de duplicação e ID de eliminação de duplicação configurando sua mensagem do Amazon SNS da seguinte forma: Substitua `byo-key` por sua chave e `UniqueId` pela ID de eliminação de duplicação desse objeto de dados.

```
{
    "source-ref":"s3://amzn-s3-demo-bucket/prefix/object1", 
    "dataset-objectid-attribute-name":"byo-key",
    "byo-key":"UniqueId" 
}
```

Sua chave de eliminação de duplicação pode incluir até 140 caracteres. Os padrões compatíveis incluem: `"^[$a-zA-Z0-9](-*[a-zA-Z0-9])*"`.

Sua ID de eliminação de duplicação pode incluir até 1.024 caracteres. Os padrões compatíveis incluem: `^(https|s3)://([^/]+)/?(.*)$`.

**Use uma chave existente para sua chave de eliminação de duplicação **

Você pode usar uma chave existente em sua mensagem como chave de eliminação de duplicação. Quando você faz isso, o valor associado a essa chave é usado para a ID de eliminação de duplicação. 

Por exemplo, você pode especificar o uso da `source-ref` chave como chave de eliminação de duplicação formatando sua mensagem da seguinte forma: 

```
{
    "source-ref":"s3://amzn-s3-demo-bucket/prefix/object1",
    "dataset-objectid-attribute-name":"source-ref" 
}
```

Neste exemplo, Ground Truth usa `"s3://amzn-s3-demo-bucket/prefix/object1"` para o ID de eliminação de duplicação.

# Encontre a chave e ID de eliminação de duplicação nos dados de saída
<a name="sms-streaming-impotency-output"></a>

Você pode ver a chave de eliminação de duplicação e o ID nos dados de saída. A chave de eliminação de duplicação é identificada por `dataset-objectid-attribute-name`. Quando você usa sua própria chave de eliminação de duplicação personalizada, sua saída contém algo semelhante ao seguinte:

```
"dataset-objectid-attribute-name": "byo-key",
"byo-key": "UniqueId",
```

Quando você não especifica uma chave, você pode encontrar a ID de eliminação de duplicação que a Ground Truth atribuiu ao seu objeto de dados da seguinte forma: O parâmetro `$label-attribute-name-object-id` identifica sua ID de eliminação de duplicação. 

```
{
    "source-ref":"s3://bucket/prefix/object1", 
    "dataset-objectid-attribute-name":"$label-attribute-name-object-id"
    "label-attribute-name" :0,
    "label-attribute-name-metadata": {...},
    "$label-attribute-name-object-id":"<service-generated-key>"
}
```

Para `<service-generated-key>`, se o objeto de dados veio por meio de uma configuração do Amazon S3, o Ground Truth adiciona um valor exclusivo usado pelo serviço e emite um novo campo digitado pelo `$sequencer` qual mostra o sequenciador Amazon S3 usado. Se o objeto foi enviado diretamente para o SNS, o Ground Truth usa o ID da mensagem do SNS.

**nota**  
Não use o caractere `$` no nome de atributo do rótulo. 