Überwachen des Status des Kennzeichnungsauftrags - Amazon SageMaker AI

Überwachen des Status des Kennzeichnungsauftrags

Um den Status Ihrer Kennzeichnungsaufträge zu überwachen, können Sie eine Amazon CloudWatch Events (CloudWatch Events)-Regel für Amazon SageMaker Ground Truth (Ground Truth) einrichten, um ein Ereignis an CloudWatch Events zu senden, wenn sich der Status eines Kennzeichnungsauftrags in Completed, Failed oder Stopped ändert oder wenn ein Worker eine Aufgabe annimmt, ablehnt, einreicht oder zurücksendet.

Sobald Sie eine Regel erstellt haben, können Sie ihr ein Ziel hinzufügen. CloudWatch Events verwendet dieses Ziel, um einen anderen AWS Dienst zur Verarbeitung des Ereignisses aufzurufen. Sie können beispielsweise ein Ziel unter Verwendung eines Amazon Simple Notification Service (Amazon SNS)-Themas erstellen, um eine Benachrichtigung an Ihre E-Mail zu senden, wenn sich der Status eines Kennzeichnungsauftrags ändert.

Voraussetzungen:

Um eine CloudWatch Events-Regel zu erstellen, benötigen Sie eine AWS Identity and Access Management (IAM)-Rolle, welcher eine Vertrauensrichtlinie events.amazonaws.com angefügt ist. Im Folgenden finden Sie ein Beispiel für eine Vertrauensrichtlinie events.amazonaws.com.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "events.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Ereignisse an CloudWatch Events senden

Verwenden Sie den AWS Command Line Interface (AWS CLI) put-rule-Befehl, um eine CloudWatch Events-Regel zum Abrufen von Statusaktualisierungen oder Ereignissen für Ihre Ground-Truth-Beschriftungsaufträge zu konfigurieren. Sie können an Ihre Regel gesendete Ereignisse nach Statusänderung filtern. Beispielsweise können Sie eine Regel erstellen, die Sie nur benachrichtigt, wenn sich der Status eines Kennzeichnungsauftrags in Completed ändert. Geben Sie bei Verwendung des Befehls put-rule Folgendes an, um den Status von Kennzeichnungsaufträgen zu erhalten:

  • \"source\":[\"aws.sagemaker\"]

  • \"detail-type\":[\"SageMaker Ground Truth Labeling Job State Change\"]

Um eine CloudWatch Events-Regel zur Beobachtung aller Statusänderungen zu konfigurieren, verwenden Sie den folgenden Befehl und ersetzen Sie den Platzhaltertext. Ersetzen Sie beispielsweise "GTLabelingJobStateChanges" durch einen eindeutigen CloudWatch Events-Regelnamen und "arn:aws:iam::111122223333:role/MyRoleForThisRule" durch die Amazon-Ressourcennummer (ARN) einer IAM-Rolle, welcher eine Vertrauensrichtlinie events.amazonaws.com angefügt ist.

aws events put-rule --name "GTLabelingJobStateChanges" --event-pattern "{\"source\":[\"aws.sagemaker\"],\"detail-type\":[\"SageMaker Ground Truth Labeling Job State Change\"]}" --role-arn "arn:aws:iam::111122223333:role/MyRoleForThisRule" --region "region"

Verwenden Sie die Syntax \"detail\":{\"LabelingJobStatus\":[\"Status\"]}}", um nach Auftragsstatus zu filtern. Gültige Werte für Status sind Completed, Failed und Stopped.

Im folgenden Beispiel wird eine CloudWatch Events-Regel erstellt, die Sie benachrichtigt, wenn sich ein Kennzeichnungsauftrag in us-west-2 (Oregon) zu Completed ändert.

aws events put-rule --name "LabelingJobCompleted" --event-pattern "{\"source\":[\"aws.sagemaker\"],\"detail-type\":[\"SageMaker Ground Truth Labeling Job State Change\"], \"detail\":{\"LabelingJobStatus\":[\"Completed\"]}}" --role-arn "arn:aws:iam::111122223333:role/MyRoleForThisRule" --region us-west-2

Im folgenden Beispiel wird eine CloudWatch Events-Regel erstellt, die Sie benachrichtigt, wenn sich ein Beschriftungsauftrag in us-east-1 (Virginia) zu Completed oder Failed ändert.

aws events put-rule --name "LabelingJobCompletedOrFailed" --event-pattern "{\"source\":[\"aws.sagemaker\"],\"detail-type\":[\"SageMaker Ground Truth Labeling Job State Change\"], \"detail\":{\"LabelingJobStatus\":[\"Completed\", \"Failed\"]}}" --role-arn "arn:aws:iam::111122223333:role/MyRoleForThisRule" --region us-east-1

Mehr Informationen über put-rule-Anforderung finden Sie unter Ereignismuster in CloudWatch Events im Benutzerhandbuch für Amazon CloudWatch Events.

Einrichten eines Ziels für die Verarbeitung von Ereignissen

Nachdem Sie eine Regel erstellt haben, werden Ereignisse, die dem Folgenden ähnlich sind, an CloudWatch Events gesendet. In diesem Beispiel wurde der Status des Kennzeichnungsauftrags test-labeling-job in Completed geändert.

{ "version": "0", "id": "111e1111-11d1-111f-b111-1111b11dcb11", "detail-type": "SageMaker Ground Truth Labeling Job State Change", "source": "aws.sagemaker", "account": "111122223333", "time": "2018-10-06T12:26:13Z", "region": "us-east-1", "resources": [ "arn:aws:sagemaker:us-east-1:111122223333:labeling-job/test-labeling-job" ], "detail": { "LabelingJobStatus": "Completed" } }

Um Ereignisse zu verarbeiten, müssen Sie ein Ziel einrichten. Wenn Sie beispielsweise eine E-Mail erhalten möchten, wenn sich der Status des Kennzeichnungsauftrags ändert, verwenden Sie ein Verfahren im Abschnitt Amazon SNS-Benachrichtigungen einrichten im Benutzerhandbuch für Amazon CloudWatch , um ein Amazon-SNS-Thema einzurichten und Ihre E-Mail hierfür zu abonnieren. Sobald Sie ein Thema erstellt haben, können Sie es zum Erstellen eines Ziels verwenden.

So fügen Sie Ihrer CloudWatch Events-Regel ein Ziel hinzu
  1. Öffnen Sie die CloudWatch-Konsole: https://console.aws.amazon.com/cloudwatch/home

  2. Wählen Sie im Navigationsbereich Regeln aus.

  3. Wählen Sie die Regel aus, der Sie ein Ziel hinzufügen möchten.

  4. Wählen Sie Actions und anschließend Bearbeiten.

  5. Wählen Sie unter Ziele die Option Ziel hinzufügen aus und wählen Sie den AWS-Service aus, den Sie verwenden möchten, wenn ein Statusänderungsereignis für den Kennzeichnungsauftrag erkannt wird.

  6. Konfigurieren Sie Ihr Ziel. Anweisungen finden Sie im Thema zum Konfigurieren eines Ziels in der AWS Dokumentation für diesen Service.

  7. Wählen Sie Details konfigurieren.

  8. Geben Sie unter Name einen Namen und unter Description (Beschreibung) optional Details zum Zweck der Regel an.

  9. Stellen Sie sicher, dass das Kontrollkästchen neben State (Status) aktiviert ist, damit Ihre Regel als Enabled (Aktiviert) aufgeführt wird.

  10. Wählen Sie Regel aktualisieren aus.

Ablauf der Kennzeichnungsaufträge

Wenn Ihr Kennzeichnungsauftrag nach 30 Tagen nicht abgeschlossen ist, läuft sie ab. Wenn Ihr Kennzeichnungsauftrag abläuft, können Sie die Aufgabe verketten, um einen neuen Kennzeichnungsauftrag zu erstellen, die ausschließlich nicht gekennzeichnete Daten an Worker sendet. Weitere Informationen und Informationen zum Erstellen von Kennzeichnungsaufträgen mithilfe der Verkettung finden Sie unter Verketten von Kennzeichnungsaufträgen.

Aufgaben ablehnen

Auftragnehmende können Aufgaben ablehnen.

Auftragnehmende lehnen eine Aufgabe ab, wenn die Anweisungen nicht klar sind, die Eingabedaten nicht korrekt angezeigt werden oder wenn sie bei der Aufgabe auf ein anderes Problem stoßen. Wenn die Anzahl der Worker pro Datensatzobjekt (NumberOfHumanWorkersPerDataObject) die Aufgabe ablehnt, wird das Datenobjekt als abgelaufen markiert und nicht an zusätzliche Worker gesendet.