

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Daten-Labeling mit einem Human in the Loop
<a name="data-label"></a>

Um ein Modell für Machine Learning zu trainieren, benötigen Sie einen großen, hochwertigen, beschrifteten Datensatz. Sie können Ihre Daten mit Amazon SageMaker Ground Truth beschriften. Wählen Sie einen der in Ground Truth [integrierten Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) oder erstellen Sie Ihren eigenen [benutzerdefinierten Beschriftung-Workflow](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html). Um die Genauigkeit Ihrer Datenbeschriftungen zu verbessern und die Gesamtkosten für die Beschriftung Ihrer Daten zu senken, verwenden Sie erweiterte Daten-Labeling-Funktionen von Ground Truth wie [automatisches Daten-Labeling](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html) und [Konsolidierung von Anmerkungen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html). 



**Topics**
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Verwenden Sie Amazon SageMaker Ground Truth Plus, um Daten zu kennzeichnen](gtp.md)
+ [Arbeitskräfte](sms-workforce-management.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)
+ [Verwendung von Amazon Erweiterte KI für Human Review](a2i-use-augmented-ai-a2i-human-review-loops.md)

# Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth
<a name="sms"></a>

Um ein Modell für Machine Learning zu trainieren, benötigen Sie einen großen, hochwertigen, beschrifteten Datensatz. Ground Truth hilft Ihnen dabei, hochwertige Trainingsdatensätze für Ihre Machine-Learning-Modelle zu erstellen. Mit Ground Truth können Sie Auftragnehmer von entweder Amazon Mechanical Turk, einen Anbieter Ihrer Wahl oder interne, private Arbeitskräfte zusammen mit Machine Learning für die Erstellung eines beschrifteten Datensatzes verwenden. Sie können die beschrifteten Datensatzausgabe aus Ground Truth verwenden, um Ihre eigenen Modelle zu trainieren. Sie können die Ausgabe auch als Trainingsdatensatz für ein Amazon SageMaker AI-Modell verwenden.

Abhängig von Ihrer ML-Anwendung können Sie einen der integrierten Ground-Truth-Aufgabentypen auswählen, damit Auftragnehmer bestimmte Beschriftungstypen für Ihre Daten generieren. Sie können auch einen benutzerdefinierten Kennzeichnungs-Workflow erstellen, um Auftragnehmern, die Ihre Daten beschriften, eine eigene Benutzeroberfläche und Tools zur Verfügung zu stellen. Weitere Informationen zu den integrierten Ground-Truth-Aufgabentypen finden Sie unter [Integrierte Aufgabentypen](sms-task-types.md). Weitere Informationen zum Erstellen eines benutzerdefinierten Kennzeichnungs-Workflows finden Sie unter [Benutzerdefinierte Kennzeichnung-Workflows](sms-custom-templates.md).

Um das Beschriften Ihres Trainingsdatensatzes zu automatisieren, steht Ihnen optional das *automatisierte Daten-Labeling* zur Verfügung. Hierbei handelt es sich um einen Ground-Truth-Prozess, der mithilfe von Machine Learning entscheidet, welche Daten durch Menschen beschriftet werden müssen. Das automatisierte Daten-Labeling kann die für das Labeling erforderliche Zeit und den damit verbundenen manuellen Aufwand reduzieren. Weitere Informationen finden Sie unter [Automatisieren des Daten-Labeling](sms-automated-labeling.md). Weitere Informationen zum Erstellen eines benutzerdefinierten Beschriftungs-Workflows finden Sie unter [Benutzerdefinierte Kennzeichnung-Workflows](sms-custom-templates.md).

Verwenden Sie entweder vorgefertigte oder benutzerdefinierte Tools zum Zuweisen von Labeling-Aufgaben für Ihre Trainingsdatensatz. Eine *Beschriftungsbenutzeroberflächenvorlage* ist eine Webseite, die Ground Truth verwendet, um Ihren Auftragnehmern Aufgaben und Anweisungen bereitzustellen. Die SageMaker AI-Konsole bietet integrierte Vorlagen für die Kennzeichnung von Daten. Sie können für Ihre ersten Schritte diese Vorlagen verwenden oder mithilfe von HTML 2.0-Komponenten Ihre eigenen Aufgaben und Anweisungen erstellen. Weitere Informationen finden Sie unter [Benutzerdefinierte Kennzeichnung-Workflows](sms-custom-templates.md). 

Verwenden Sie die Arbeitskräfte Ihrer Wahl für das Labeling Ihres Datensatzes. Für die Wahl Ihrer Arbeitskräfte bieten sich Ihnen folgende Optionen:
+ Die Arbeitskräfte von Amazon Mechanical Turk bestehen aus über 500.000 unabhängigen Vertragspartnern weltweit.
+ Sie können private Arbeitskräfte nutzen, die Sie aus Ihren Mitarbeitern oder Auftragnehmern zusammenstellen, welche sich um die Verarbeitung von Daten innerhalb Ihrer Organisation kümmern.
+ Ein Anbieter, den Sie in der finden können und der AWS Marketplace sich auf Datenkennzeichnungsdienste spezialisiert hat.

Weitere Informationen finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

Sie speichern Ihre Datensätze in Amazon-S3-Buckets. Die Buckets enthalten drei Dinge: Die zu beschriftenden Daten, eine Eingabe-Manifestdatei, die Ground Truth zum Lesen der Datendateien verwendet, und eine Ausgabe-Manifestdatei. Die Ausgabedatei enthält die Ergebnisse des Labeling-Auftrags. Weitere Informationen finden Sie unter [Verwenden von Eingabe- und Ausgabedaten](sms-data.md).

Ereignisse aus Ihren Labeling-Jobs werden bei Amazon CloudWatch unter der `/aws/sagemaker/LabelingJobs` Gruppe angezeigt. CloudWatch verwendet den Namen des Labeling-Jobs als Namen für den Log-Stream.

## Sie verwenden Ground Truth zum ersten Mal?
<a name="what-first-time"></a>

Wenn Sie Ground Truth zum ersten Mal verwenden, empfehlen wir Folgendes:

1. **[Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth](sms-getting-started.md) lesen** – In diesem Abschnitt werden Sie schrittweise durch die Einrichtung Ihres ersten Ground-Truth-Beschriftungsauftrags geführt.

1. **Entdecken Sie weitere Themen** – Gehen Sie je nach Bedarf wie folgt vor:
   + **Erkunden Sie die integrierten Aufgabentypen** – Verwenden Sie integrierte Aufgabentypen, um den Prozess der Erstellung eines Beschriftungsauftrags zu optimieren. Weitere Informationen zu den integrierten Ground-Truth-Aufgabentypen finden Sie unter [Integrierte Aufgabentypen](sms-task-types.md).
   + **Verwalten Sie Ihre Beschriftungsarbeitskraft** – Stellen Sie neue Arbeitsteams zusammen und verwalten Sie Ihre bestehende Arbeitskraft. Weitere Informationen finden Sie unter [Arbeitskräfte](sms-workforce-management.md).
   + **Erfahren Sie mehr über Streaming-Beschriftungsaufträge** – Erstellen Sie einen Streaming-Beschriftungsauftrag und senden Sie mithilfe eines ständig laufenden Beschriftungsauftrags neue Datensatzobjekte in Echtzeit an Ihre Worker. Auftragnehmer erhalten kontinuierlich neue Datenobjekte zum Beschriften, solange der Beschriftungsauftrag aktiv ist und neue Objekte an ihn gesendet werden. Weitere Informationen hierzu finden Sie unter [Ground Truth Streaming-Kennzeichnungsaufträge](sms-streaming-labeling-job.md).

1. **Weitere Informationen zu verfügbaren Vorgängen zur Automatisierung von Ground-Truth-Vorgängen finden Sie in der API-Referenz für [SageMaker KI-Dienste](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Operations_Amazon_SageMaker_Service.html).**

# Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth
<a name="sms-getting-started"></a>

Folgen Sie den Anweisungen in den folgenden Abschnitten, um mit der Nutzung von Amazon SageMaker Ground Truth zu beginnen. In den folgenden Abschnitten wird erläutert, wie Sie mithilfe der Konsole einen Kennzeichnungsauftrag für Begrenzungsrahmen erstellen, ihn öffentlichen oder privaten Arbeitskräften zuweisen und ihn an Ihre Arbeitskräfte senden. Außerdem erfahren Sie, wie Sie den Fortschritt eines Kennzeichnungsauftrags überwachen.

Dieses Video zeigt Ihnen, wie Sie Amazon SageMaker Ground Truth einrichten und verwenden. (Länge: 9:37)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/_FPI6KjDlCI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/_FPI6KjDlCI)


Wenn Sie einen benutzerdefinierten Beschriftungsauftrag erstellen möchten, lesen Sie die Anweisungen unter [Benutzerdefinierte Kennzeichnung-Workflows](sms-custom-templates.md).

Bevor Sie einen Beschriftungsauftrag erstellen, müssen Sie Ihren Datensatz in einen Amazon-S3-Bucket hochladen. Weitere Informationen finden Sie unter [Verwenden von Eingabe- und Ausgabedaten](sms-data.md).

**Topics**
+ [Bevor Sie beginnen](#sms-getting-started-step1)
+ [Erstellen eines Kennzeichnungsauftrags](#sms-getting-started-step2)
+ [Wählen von Arbeitskräften](#sms-getting-started-step3)
+ [Konfigurieren des Tools für Begrenzungsrahmen](#sms-getting-started-step4)
+ [Überwachen Ihres Kennzeichnungsauftrags](sms-getting-started-step5.md)

## Bevor Sie beginnen
<a name="sms-getting-started-step1"></a>

Bevor Sie mit der SageMaker KI-Konsole beginnen, einen Labeling-Job zu erstellen, müssen Sie den Datensatz für die Verwendung einrichten. Vorgehensweise:

1. Speichern Sie zwei Bilder unter öffentlich verfügbarem HTTP URLs. Die Bilder werden beim Erstellen der Anweisungen für die Ausführung eines Kennzeichnungsauftrags verwendet. Die Bilder sollten ein Seitenverhältnis von etwa 2:1 haben. Für diese Übung ist der Inhalt der Bilder nicht von Bedeutung.

1. Erstellen Sie einen Amazon-S3-Bucket für die Ein- und Ausgabedateien. Der Bucket muss sich in der gleichen Region befinden, in der Sie Ground Truth ausführen. Notieren Sie sich den Bucket-Namen, da Sie ihn in Schritt 2 benötigen.

   Ground Truth verlangt, dass an alle S3-Buckets, die Eingabe-Image-Daten für Labeling-Aufträge enthalten, eine CORS-Richtlinie angehängt ist. Weitere Informationen über diese Änderung finden Sie unter [CORS-Anforderung für Eingabebilddaten](sms-cors-update.md).

1. Sie können eine IAM-Rolle erstellen oder SageMaker KI eine Rolle mit der [AmazonSageMakerFullAccess](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonSageMakerFullAccess)IAM-Richtlinie erstellen lassen. Siehe [IAM-Rollen erstellen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create.html) und weisen Sie dem Benutzer, der den Beschriftungsauftrag erstellt, die folgende Berechtigungsrichtlinie zu:

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "sagemakergroundtruth",
               "Effect": "Allow",
               "Action": [
                   "cognito-idp:CreateGroup",
                   "cognito-idp:CreateUserPool",
                   "cognito-idp:CreateUserPoolDomain",
                   "cognito-idp:AdminCreateUser",
                   "cognito-idp:CreateUserPoolClient",
                   "cognito-idp:AdminAddUserToGroup",
                   "cognito-idp:DescribeUserPoolClient",
                   "cognito-idp:DescribeUserPool",
                   "cognito-idp:UpdateUserPool"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

## Erstellen eines Kennzeichnungsauftrags
<a name="sms-getting-started-step2"></a>

In diesem Schritt verwenden Sie die Konsole, um einen Kennzeichnungsauftrag zu erstellen. Sie teilen Amazon SageMaker Ground Truth den Amazon S3 S3-Bucket mit, in dem die Manifestdatei gespeichert ist, und konfigurieren die Parameter für den Job. Weitere Informationen zum Speichern von Daten in einem Amazon-S3-Bucket finden Sie unter [Verwenden von Eingabe- und Ausgabedaten](sms-data.md).

**So erstellen Sie einen Kennzeichnungsauftrag**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Wählen Sie im linken Navigationsbereich **Labeling jobs (Kennzeichnungsaufträge)** aus.

1. Wählen Sie **Create labeling job (Kennzeichnungsauftrag erstellen)** aus, um die Auftragserstellung zu starten.

1. Geben Sie im Abschnitt **Job overview (Auftragsübersicht)** folgende Informationen ein:
   + **Auftragsname** – Geben Sie dem Beschriftungsauftrag einen Namen, der ihn beschreibt. Dieser Name wird in Ihrer Auftragsliste angezeigt. Der Name muss in Ihrem Konto in einer AWS Region eindeutig sein.
   + **Name des Beschriftungsattributs** – Lassen Sie diese Option deaktiviert. Der Standardwert ist die beste Option für diesen einführenden Auftrag.
   + **Einrichtung der Eingabedaten** – Wählen Sie **Automatisierte Dateneinrichtung** aus. Mit dieser Option können Sie automatisch eine Verbindung zu Ihren Eingabedaten in S3 herstellen. 
   + **S3-Speicherort für Eingabedatensätze** – Geben Sie den S3-Speicherort ein, an dem Sie die Images in Schritt 1 hinzugefügt haben.
   + **S3-Speicherort für Ausgabedatensätze** – Der Speicherort, in den Ihre Ausgabedaten geschrieben werden.
   + **Datentyp** – Wählen Sie im Dropdown-Menü **Image** aus. Ground Truth verwendet alle Images, die am S3-Standort für Eingabedatensätze gefunden wurden, als Eingabe für Ihren Beschriftungsauftrag.
   + **IAM-Rolle** — Erstellen Sie eine IAM-Rolle mit angehängter IAM-Richtlinie oder wählen Sie sie aus. AmazonSageMakerFullAccess 

1. Wählen Sie im Abschnitt **Aufgabentyp** für das Feld **Aufgabenkategorie** die Option **Image** aus. 

1. Wählen Sie im Abschnitt **Aufgabenauswahl** die Option **Bounding Box** aus. 

1. Klicken Sie auf **Next (Weiter)**, um mit der Konfiguration Ihres Kennzeichnungsauftrags fortzufahren.

## Wählen von Arbeitskräften
<a name="sms-getting-started-step3"></a>

In diesem Schritt wählen Sie die Arbeitskräfte für die Kennzeichnung Ihres Datensatzes aus. Es wird empfohlen, eine private Belegschaft einzurichten, um Amazon SageMaker Ground Truth zu testen. Verwenden Sie E-Mail-Adressen, um Ihre Arbeitskräfte einzuladen. Wenn Sie in diesem Schritt private Arbeitskräfte einrichten, können Sie Ihren Amazon Cognito-Benutzerpool nicht zu einem späteren Zeitpunkt importieren. Wenn Sie eine private Belegschaft unter Verwendung eines Amazon-Cognito-Benutzerpools erstellen möchten, lesen Sie [Private Arbeitskraft verwalten (Amazon Cognito)](sms-workforce-management-private.md) und verwenden Sie stattdessen die Belegschaft von Mechanical Turk in diesem Lernprogramm.

**Tipp**  
Weitere Informationen zu den anderen Belegschaftsoptionen, die Sie mit Ground Truth nutzen können, finden Sie unter [Arbeitskräfte](sms-workforce-management.md). 

**So erstellen Sie private Arbeitskräfte:**

1. Wählen Sie im Bereich **Workers (Auftragnehmer)** die Option **Private (Privat)** aus.

1. Wenn Sie zum ersten Mal private Arbeitskräfte verwenden, geben Sie im Feld **Email addresses (E-Mail-Adressen)** bis zu 100 E-Mail-Adressen ein. Die Adressen müssen durch ein Komma voneinander getrennt werden. Sie sollten Ihre eigene E-Mail-Adresse hinzufügen, damit Sie Teil der Arbeitskräfte sind und Einsicht in die Kennzeichnungsaufträge für Datenobjekte haben.

1. Geben Sie im Feld **Organization name (Name der Organisation)** den Namen Ihrer Organisation ein. Diese Informationen werden für die Anpassung der E-Mail verwendet, die an eine Person gesendet wird, um sie zu Ihren privaten Arbeitskräften einzuladen. Sie können den Namen der Organisation ändern, nachdem der Benutzerpool über die Konsole erstellt wurde.

1. Geben Sie im Feld **Contact email (Kontakt-E-Mail)** eine E-Mail-Adresse ein, die Mitglieder der Arbeitskräfte verwenden, um Probleme mit dem Auftrag zu melden.

Wenn Sie sich selbst zu der privaten Belegschaft hinzufügen, erhalten Sie eine E-Mail ähnlich der Folgenden. **Amazon, Inc.** wird durch die Organisation ersetzt, die Sie in Schritt 3 des vorherigen Verfahrens eingegeben haben. Wählen Sie den Link in der E-Mail, um sich mit dem bereitgestellten temporären Passwort anzumelden. Wenn Sie dazu aufgefordert werden, ändern Sie Ihr Passwort. Wenn Sie sich erfolgreich angemeldet haben, wird das Worker-Portal angezeigt, in dem Ihre Labeling-Aufgaben angezeigt werden.

![\[Beispiel für eine E-Mail-Einladung zur Arbeit an einem Kennzeichnungsprojekt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/worker_portal_invite.png)


**Tipp**  
Den Link zum Mitarbeiterportal Ihrer privaten Belegschaft finden Sie im Bereich **Labeling Workforces** im Ground Truth Truth-Bereich der SageMaker KI-Konsole. Um den Link zu sehen, wählen Sie den Tab **Privat**. Der Link befindet sich unter der Überschrift **Anmelde-URL für das Labeling-Portal** in der **Übersicht über die private Belegschaft**.

Wenn Sie die Amazon Mechanical Turk-Belegschaft verwenden, um den Datensatz zu beschriften, erfolgt die Abrechnung nach Maßgabe der Labeling-Aufgaben, die für den Datensatz ausgeführt wurden.

**So setzen Sie die Belegschaft von Amazon Mechanical Turk ein:**

1. Wählen Sie im Bereich **Workers (Auftragnehmer)** die Option **Public (Öffentlich)** aus.

1. Legen Sie einen **Preis pro Aufgabe** fest.

1. Wählen Sie die Option **Der Datensatz enthält keinen jugendgefährdenden Inhalt** aus, um zu bestätigen, dass der Beispiel-Datensatz keinen jugendgefährdenden Inhalt enthält. Anhand dieser Informationen kann Amazon SageMaker Ground Truth externe Mitarbeiter von Mechanical Turk davor warnen, dass sie auf potenziell anstößige Inhalte in Ihrem Datensatz stoßen könnten.

1. Aktivieren Sie das Kontrollkästchen neben der folgenden Aussage, um zu bestätigen, dass der Beispieldatensatz keine persönlich identifizierbaren Informationen (PII) enthält. Dies ist eine Voraussetzung, um Mechanical Turk mit Ground Truth verwenden zu können. Wenn Ihre Eingabedaten personenbezogene Daten enthalten, wenden Sie sich an die private Belegschaft für dieses Tutorial. 

   **Sie verstehen und erklären sich damit einverstanden, dass die Belegschaft von Amazon Mechanical Turk aus unabhängigen Auftragnehmern auf der ganzen Welt besteht und dass Sie keine vertraulichen Informationen, personenbezogenen Daten oder geschützte Gesundheitsinformationen an diese Belegschaft weitergeben sollten.**

## Konfigurieren des Tools für Begrenzungsrahmen
<a name="sms-getting-started-step4"></a>

Anschließend konfigurieren Sie das Bounding Box-Tool, um Ihren Mitarbeitern Anweisungen zu geben. Sie können einen Auftragstitel so konfigurieren, dass er den Auftrag beschreibt und High-Level-Anweisungen für die Mitarbeiter enthält. Sie können sowohl schnelle Anweisungen als auch umfassende Anweisungen bereitstellen. Die schnellen Anweisungen werden neben dem zu kennzeichnenden Bild angezeigt. Umfassende Anweisungen enthalten detaillierte Anweisungen zum Ausführen der Aufgabe. In diesem Beispiel stellen Sie nur schnelle Anweisungen zur Verfügung. Sie finden ein Beispiel für umfassende Anweisungen über die Option **Full instructions (Umfassende Anweisungen)** am unteren Rand dieses Abschnitts.

**So konfigurieren Sie das Bounding Box-Tool**

1. Geben Sie im Feld **Task description (Auftragsbeschreibung)** kurze Anweisungen für den Auftrag ein. Beispiel:

   **Draw a box around any *objects* in the image.**

   *objects*Ersetzen Sie es durch den Namen eines Objekts, das in Ihren Bildern vorkommt.

1. Geben Sie im Feld **Labels (Kennzeichnungen)** einen Kategorienamen für die Objekte ein, um die der Mitarbeiter einen Begrenzungsrahmen ziehen sollte. Wenn Sie beispielsweise den Auftraggeber bitten, Rahmen um Fußballspieler zu ziehen, könnten Sie dieses Feld "Fußballspieler" nennen.

1. Der Abschnitt **Short instructions (Kurze Anweisungen)** ermöglicht es Ihnen, Anweisungen zu erstellen, die zusammen mit dem Bild, das Ihre Mitarbeiter kennzeichnen, auf dem Bildschirm angezeigt werden. Wir empfehlen Ihnen, ein Beispiel eines richtig und ein Beispiel eines falsch gezogenen Begrenzungsrahmens hinzufügen. Gehen Sie wie folgt vor, um Ihre eigenen Anweisungen zu erstellen:

   1. Wählen Sie den Text zwischen **GOOD EXAMPLE** und dem Bildplatzhalter aus. Ersetzen Sie den Text durch folgenden:

      **Draw the box around the object with a small border.**

   1. Wählen Sie den ersten Bildplatzhalter aus und löschen Sie ihn.

   1. Wählen Sie die Schaltfläche für das Bild aus und geben Sie die HTTPS-URL eines der Bilder ein, das Sie in Schritt 1 erstellt haben. Es ist auch möglich, Bilder direkt in den Abschnitt mit den Kurzanweisungen einzubetten. Dieser Abschnitt hat jedoch ein Kontingent von 100 Kilobyte (einschließlich Text). Wenn Ihre Bilder und Texte 100 Kilobyte überschreiten, erhalten Sie einen Fehler.

   1. Wählen Sie den Text zwischen **BAD EXAMPLE** und dem Bildplatzhalter aus. Ersetzen Sie den Text durch folgenden:

      **Don't make the bounding box too large or cut into the object.**

   1. Wählen Sie den zweiten Bildplatzhalter aus und löschen Sie ihn.

   1. Wählen Sie die Schaltfläche für das Bild aus und geben Sie die HTTPS-URL des anderen Bilds ein, das Sie in Schritt 1 erstellt haben.

1. Wählen Sie **Vorschau** aus, um eine Vorschau der Worker-Benutzeroberfläche anzuzeigen. Die Vorschau wird auf einer neuen Registerkarte geöffnet. Wenn Ihr Browser Popups blockiert, müssen Sie das Öffnen der Registerkarte möglicherweise manuell aktivieren. Wenn Sie der Vorschau eine oder mehrere Anmerkungen hinzufügen und dann **Senden** auswählen, wird eine Vorschau der Ausgabedaten angezeigt, die mit Ihrer Anmerkung erstellt wurden.

1. Nachdem Sie Ihre Anweisungen konfiguriert und überprüft haben, wählen Sie **Erstellen** aus, um den Beschriftungsauftrag zu erstellen.

Wenn Sie eine private Belegschaft eingesetzt haben, können Sie zum Worker-Portal navigieren, bei dem Sie sich für dieses Tutorial angemeldet haben in [Wählen von Arbeitskräften](#sms-getting-started-step3), um Ihre Labeling-Aufgaben zu sehen. Es kann einige Minuten dauern, bis die Aufgaben angezeigt werden.

Nachdem Sie einen Kennzeichnungsauftrag erstellt haben, können Sie [ihn überwachen oder beenden](sms-getting-started-step5.md).

# Überwachen Ihres Kennzeichnungsauftrags
<a name="sms-getting-started-step5"></a>

Nach dem Erstellen Ihres Kennzeichnungsauftrags, sehen Sie eine Liste aller Aufträge, die Sie erstellt haben. Mit dieser Liste können Sie den Status Ihrer Kennzeichnungsaufträge überwachen. Die Liste enthält folgende Felder:
+ **Name** – Der Name, den Sie dem Auftrag bei seiner Erstellung zugewiesen haben.
+ **Status** – Der Bearbeitungsstatus des Auftrags. Der Status kann "Complete (Abgeschlossen)", "Failed (Fehlgeschlagen)", "In progress (In Bearbeitung)" oder "Stopped (Gestoppt)" sein.
+ **Beschriftete Objekte/Gesamtzahl** – Zeigt die Gesamtzahl der Objekte im Beschriftungsauftrag und wie viele von ihnen beschriftet wurden.
+ **Zeitpunkt der Erstellung** – Das Datum und die Uhrzeit, an dem bzw. zu der Sie den Auftrag erstellt haben.

Sie können einen Auftrag darüber hinaus auch klonen, verknüpfen oder anhalten. Wählen Sie einen Job aus und klicken Sie dann auf eine der folgenden Optionen im Menü **Actions (Aktionen)**:
+ **Klonen** – Erstellt einen neuen Beschriftungsauftrag und kopiert dafür die Konfiguration des ausgewählten Auftrags. Sie können einen Auftrag klonen, wenn Sie an dem Auftrag eine Änderung vornehmen und ihn anschließend erneut ausführen möchten. Sie können beispielsweise einen Auftrag klonen, der an eine private Belegschaft gesendet wurde, um ihn auch an die Amazon Mechanical Turk-Belegschaft zu senden. Alternativ können Sie einen Auftrag klonen, um ihn erneut auf einem neuen Datensatz auszuführen, das am selben Speicherort gespeichert ist wie der ursprüngliche Auftrag.
+ **Verknüpfen** – Erstellt einen neuen Beschriftungsauftrag, der auf den Daten und Modellen (falls vorhanden) eines angehaltenen, fehlgeschlagenen oder abgeschlossenen Auftrags beruht. Weitere Informationen über Anwendungsfälle und deren Verwendung finden Sie unter [Verketten von Kennzeichnungsaufträgen](sms-reusing-data.md).
+ **Stoppen** – Stoppt einen laufenden Auftrag. Sie können eine angehaltene Aufgabe nicht neu starten. Sie können einen Auftrag klonen oder verknüpfen, um den Auftrag an der Stelle fortzusetzen, an der er unterbrochen wurde. Kennzeichnungen für alle bereits gekennzeichneten Objekte werden in die Ausgabedatei geschrieben. Weitere Informationen finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md).

# Beschriftungsimages
<a name="sms-label-images"></a>

Verwenden Sie Ground Truth, um Images zu beschriften. Wählen Sie einen der folgenden integrierten Aufgabentypen aus, um mehr über diesen Aufgabentyp zu erfahren. Jede Seite enthält Anweisungen, die Ihnen helfen, einen Beschriftungsauftrag mit diesem Aufgabentyp zu erstellen.

**Tipp**  
Weitere Informationen zu unterstützten Dateitypen und Eingabedatenkontingenten finden Sie unter [Eingabedaten](sms-data-input.md).

**Topics**
+ [Klassifizieren von Bildobjekten mithilfe eines Begrenzungsrahmens](sms-bounding-box.md)
+ [Identifizieren von Bildinhalten anhand der semantischen Segmentierung](sms-semantic-segmentation.md)
+ [Auto-Segmentierungstool](sms-auto-segmentation.md)
+ [Erstellen eines Bildklassifizierungsjobs (Single-Label)](sms-image-classification.md)
+ [Erstellen eines Bildklassifizierungsjobs (Multi-Label)](sms-image-classification-multilabel.md)
+ [Image Beschriftungsverifizierung](sms-label-verification.md)

# Klassifizieren von Bildobjekten mithilfe eines Begrenzungsrahmens
<a name="sms-bounding-box"></a>

Die zum Training eines Machine-Learning-Modells verwendeten Bilder enthalten oft mehrere Objekte. Um ein oder mehrere Objekte in Bildern zu klassifizieren und zu lokalisieren, verwenden Sie den Auftragstyp Amazon SageMaker Ground Truth Bounding Box Labeling. In diesem Zusammenhang bezeichnet Lokalisierung die Pixelposition des Begrenzungsrahmens. Sie erstellen einen Bounding-Box-Labeling-Job mithilfe des Ground-Truth-Abschnitts der Amazon SageMaker AI-Konsole oder der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Operation.

**Wichtig**  
Wenn Sie eine eigene Manifestdatei erstellen, verwenden Sie den Aufgabentyp `"source-ref"` zur Identifizierung des Speicherorts jeder Bilddatei in Amazon S3, die beschriftet werden soll. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen einer Labeling-Aufgabe für einen Begrenzungsrahmen (Konsole)
<a name="sms-creating-bounding-box-labeling-job-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Bounding-Box-Label-Job in der SageMaker AI-Konsole erstellen. Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Image** und als Aufgabentyp **Bounding Box** aus. 

Ground Truth stellt für die Beschriftungssaufgaben eine Worker-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie den Beschriftungsauftrag mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker den Auftrag ausführen können, und bis zu 50 Beschriftungen, aus denen die Worker auswählen können. 

![\[GIF, das zeigt, wie man für eine Kategorie einen Rahmen um ein Objekt zeichnet\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/bb-sample.gif)


## Erstellen einer Labeling-Aufgabe für Begrenzungsrahmen (API)
<a name="sms-creating-bounding-box-labeling-job-api"></a>

Verwenden Sie die SageMaker API-Operation, um einen Bounding-Box-Labeling-Job zu erstellen. `CreateLabelingJob` Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-BoundingBox`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-BoundingBox`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

```
response = client.create_labeling_job(
    LabelingJobName='example-bounding-box-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-BoundingBox',
        'TaskKeywords': [
            'Bounding Box',
        ],
        'TaskTitle': 'Bounding Box task',
        'TaskDescription': 'Draw bounding boxes around objects in an image',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-BoundingBox'
          }
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Bereitstellen einer Vorlage für Labeling-Aufgaben für Begrenzungsrahmen
<a name="sms-create-labeling-job-bounding-box-api-template"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions), [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions) und `header`. Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-bounding-box
    name="boundingBox"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="please draw box"
    labels="{{ task.input.labels | to_json | escape }}"
  >

    <full-instructions header="Bounding box instructions">
      <ol><li><strong>Inspect</strong> the image</li><li><strong>Determine</strong> 
      if the specified label is/are visible in the picture.</li>
      <li><strong>Outline</strong> each instance of the specified label in the image using the provided “Box” tool.</li></ol>
      <ul><li>Boxes should fit tight around each object</li>
      <li>Do not include parts of the object are overlapping or that cannot be seen, even though you think you can interpolate the whole shape.</li>
      <li>Avoid including shadows.</li>
      <li>If the target is off screen, draw the box up to the edge of the image.</li>    
    </full-instructions>
  
    <short-instructions>
      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
      <p>Enter description of a correct bounding box label and add images</p>
      <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3>
      <p>Enter description of an incorrect bounding box label and add images</p>
    </short-instructions>
  
  </crowd-bounding-box>
</crowd-form>
```

## Ausgabedaten für Begrenzungsrahmen
<a name="sms-bounding-box-output-data"></a>

Nach der Erstellung des Bounding Box Beschriftungsauftrags befinden sich bei Verwendung der API die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket oder im Feld **Ausgabedatensatz-Speicherort** im Abschnitt **Auftragsübersicht** der Konsole. 

Beispielsweise enthält die Ausgabemanifestdatei einer erfolgreich abgeschlossenen Aufgabe mit Begrenzungsrahmen einer Klasse Folgendes: 

```
[
  {
    "boundingBox": {
      "boundingBoxes": [
        {
          "height": 2832,
          "label": "bird",
          "left": 681,
          "top": 599,
          "width": 1364
        }
      ],
      "inputImageProperties": {
        "height": 3726,
        "width": 2662
      }
    }
  }
]
```

Der Parameter `boundingBoxes` identifiziert die Position des Begrenzungsrahmens, der um ein Objekt gezeichnet wird, das als „Vogel“ identifiziert wird, relativ zur linken oberen Ecke des Bildes, für die Pixel-Koordinate (0,0) festgelegt wird. Im vorherigen Beispiel geben **`left`** und **`top`** die Position des Pixels in der linken oberen Ecke des Begrenzungsrahmens relativ zur linken oberen Ecke des Bildes an. Die Abmessungen des Begrenzungsrahmens werden mit **`height`** und **`width`** identifiziert. Der Parameter `inputImageProperties` gibt die Pixel-Abmessungen des ursprünglichen Eingabebildes an.

Wenn Sie den Aufgabentyp mit Begrenzungsrahmen verwenden, können Sie Labeling-Aufträge mit Ein- und Mehrklassen-Begrenzungsrahmen erstellen. Die Ausgabemanifestdatei einer erfolgreich abgeschlossenen Aufgabe mit Begrenzungsrahmen für mehrere Klassen enthält Folgendes: 

```
[
  {
    "boundingBox": {
      "boundingBoxes": [
        {
          "height": 938,
          "label": "squirrel",
          "left": 316,
          "top": 218,
          "width": 785
        },
        {
          "height": 825,
          "label": "rabbit",
          "left": 1930,
          "top": 2265,
          "width": 540
        },
        {
          "height": 1174,
          "label": "bird",
          "left": 748,
          "top": 2113,
          "width": 927
        },
        {
          "height": 893,
          "label": "bird",
          "left": 1333,
          "top": 847,
          "width": 736
        }
      ],
      "inputImageProperties": {
        "height": 3726,
        "width": 2662
      }
    }
  }
]
```

Weitere Informationen zur Ausgabemanifestdatei zu einem Kennzeichnungsauftrag mit Begrenzungsrahmen finden Sie unter [Ausgabe des Begrenzungsrahmenauftrags](sms-data-output.md#sms-output-box).

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern Ihrer Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

# Identifizieren von Bildinhalten anhand der semantischen Segmentierung
<a name="sms-semantic-segmentation"></a>

Verwenden Sie eine Amazon SageMaker Ground Truth Labeling-Aufgabe zur semantischen Segmentierung, um den Inhalt eines Bilds auf Pixelebene zu identifizieren. Bei der semantischen Segmentierung klassifizieren die Auftragnehmer die Pixel des Bildes in eine Reihe von vordefinierten Beschriftungen oder Klassen. Ground Truth unterstützt Beschriftungsaufträge mit semantischer Segmentierung für einzelne und mehrere Klassen. Sie erstellen einen Labeling-Job für semantische Segmentierung mithilfe des Ground Truth Truth-Abschnitts der Amazon SageMaker AI-Konsole oder der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Operation. 

Für Bilder, die eine große Anzahl von Objekten enthalten, die segmentiert werden müssen, wird mehr Zeit benötigt. Damit Auftragnehmer (private oder Anbieterarbeitskräfte) diese Objekte in kürzerer Zeit und mit größerer Genauigkeit beschriften können, stellt Ground Truth ein AI-gestütztes Tool für die automatische Segmentierung bereit. Weitere Informationen finden Sie unter [Auto-Segmentierungstool](sms-auto-segmentation.md).

**Wichtig**  
Wenn Sie eine eigene Manifestdatei erstellen, verwenden Sie den Aufgabentyp `"source-ref"` zur Identifizierung des Speicherorts jeder Bilddatei in Amazon S3, die beschriftet werden soll. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen einer Labeling-Aufgabe für eine semantische Segmentierung (Konsole)
<a name="sms-creating-ss-labeling-job-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Labeling-Job für semantische Segmentierung in der AI-Konsole erstellen. SageMaker Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Bild** und als Aufgabentyp **Semantische Segmentierung** aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Auftragnehmer-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie die Labeling-Aufgabe mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können. 

![\[Das GIF zeigt ein Beispiel für die Erstellung eines Labeling-Jobs für semantische Segmentierung in der AI-Konsole. SageMaker\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/semantic_segmentation_sample.gif)


## Erstellen einer Labeling-Aufgabe für eine semantische Segmentierung (API)
<a name="sms-creating-ss-labeling-job-api"></a>

Verwenden Sie die API-Operation, um einen Labeling-Job für semantische Segmentierung zu erstellen. SageMaker `CreateLabelingJob` Diese API definiert diesen Vorgang für alle. AWS SDKs Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-SemanticSegmentation`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-SemanticSegmentation`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

```
response = client.create_labeling_job(
    LabelingJobName='example-semantic-segmentation-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-SemanticSegmentation,
        'TaskKeywords': [
            'Semantic Segmentation',
        ],
        'TaskTitle': 'Semantic segmentation task',
        'TaskDescription': 'For each category provided, segment out each relevant object using the color associated with that category',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-SemanticSegmentation'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Bereitstellen einer Vorlage für Labeling-Aufgaben für die semantische Segmentierung
<a name="sms-create-labeling-job-ss-api-template"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions), [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions) und `header`. 

Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-semantic-segmentation
    name="crowd-semantic-segmentation"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Please segment out all pedestrians."
    labels="{{ task.input.labels | to_json | escape }}"
  >
    <full-instructions header="Segmentation instructions">
      <ol><li><strong>Read</strong> the task carefully and inspect the image.</li>
      <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
      <li><strong>Choose</strong> the appropriate label that best suits an object and paint that object using the tools provided.</li></ol>
    </full-instructions>
    <short-instructions>
      <h2><span style="color: rgb(0, 138, 0);">Good example</span></h2>
      <p>Enter description to explain a correctly done segmentation</p>
      <p><br></p><h2><span style="color: rgb(230, 0, 0);">Bad example</span></h2>
      <p>Enter description of an incorrectly done segmentation</p>
    </short-instructions>
  </crowd-semantic-segmentation>
</crowd-form>
```

## Ausgabedaten der semantischen Segmentierung
<a name="sms-ss-ouput-data"></a>

Nach der Erstellung eines Beschriftungsauftrags für die semantische Segmentierung befinden sich bei Verwendung der API die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket oder im Feld **Ausgabedatensatz-Speicherort** im Abschnitt **Aufgabenübersicht** der Konsole. 

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern der Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

Ein Beispiel für eine Ausgabemanifestdatei für eine Labeling-Aufgabe für die semantische Segmentierung finden Sie unter [Ausgabe der semantischen 3D-Punktwolkensegmentierung](sms-data-output.md#sms-output-point-cloud-segmentation).

# Auto-Segmentierungstool
<a name="sms-auto-segmentation"></a>

Bildsegmentierung ist der Prozess der Aufteilung eines Bildes in mehrere Segmente oder Gruppen von gekennzeichneten Pixeln. In Amazon SageMaker Ground Truth werden bei der Identifizierung aller Pixel, auf die eine bestimmte Beschriftung zutrifft, solche Pixel durch eine Farbfüllung, oder „Maske“, überlagert. Einige Aufgaben eines Kennzeichnungsauftrags umfassen Bilder mit einer großen Anzahl der Objekte, die segmentiert werden müssen. Damit Auftragnehmer diese Objekte in kürzerer Zeit und mit größerer Genauigkeit beschriften können, stellt Ground Truth ein Auto-Segmentierungstool für Segmentierungsaufgaben bereit, die privaten Arbeitskräften und Arbeitskräften von Anbietern zugeordnet sind. Dieses Werkzeug verwendet ein Machine-Learning-Modell zur automatischen Segmentierung einzelner Objekte im Bild mit minimaler Eingabe von Arbeitskräften. Arbeitskräfte können die vom Auto-Segmentierungstool generierte Maske mithilfe anderer Werkzeuge in der Konsole für Arbeitskräfte verfeinern. Auf diese Weise können Arbeitskräfte Bildsegmentierungsaufgaben schneller und genauer durchführen, was zu niedrigeren Kosten und einer höheren Kennzeichnungsqualität führt. Auf der folgenden Seite finden Sie Informationen über das Tool und seine Verfügbarkeit.

**Anmerkung**  
Das Auto-Segmentierungstool ist für Segmentierungsaufgaben verfügbar, die an private Arbeitskräfte oder an Arbeitskräfte von Anbietern gesendet werden. Sie ist nicht für Aufgaben verfügbar, die an die öffentlichen Arbeitskräfte (Amazon Mechanical Turk) gesendet werden. 

## Werkzeugvorschau
<a name="sms-auto-segment-tool-preview"></a>

Wenn Arbeitskräften einen Kennzeichnungsauftrag zugewiesen wird, der das Auto-Segmentierungstool bereitstellt, erhalten sie detaillierte Anweisungen zur Verwendung des Werkzeugs. Eine Arbeitskraft sieht z. B. möglicherweise Folgendes in der Konsole für Arbeitskräfte: 

![\[Beispiel-Benutzeroberfläche mit Anweisungen zur Verwendung des Tools in der Auftragnehmerkonsole\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/semantic-segmentation.gif)


Arbeitskräfte können mit **Vollständige Anweisungen anzeigen** lernen, wie das Werkzeug zu verwenden ist. Arbeitskräfte müssen an vier Extrempunkten (oberster, unterster, ganz linker und ganz rechter Punkt) des relevanten Objekts jeweils einen Punkt platzieren. Das Werkzeug generiert dann automatisch eine Maske für das Objekt. Arbeitskräfte können die Maske mit den anderen bereitgestellten Werkzeugen oder mit dem Auto-Segmentierungstool für kleinere Teile des Objekts, die verpasst wurden, weiter verfeinern. 

## Werkzeugverfügbarkeit
<a name="sms-auto-segment-tool-availability"></a>

Das Auto-Segmentierungstool erscheint automatisch in den Konsolen Ihrer Auftragnehmer, wenn Sie einen semantischen Segmentierungskennzeichnungsauftrag über die Konsole von Amazon SageMaker AI erstellen. Während Sie einen semantischen Segmentierungsauftrag in der SageMaker-AI-Konsole erstellen, können Sie beim Erstellen von Auftragnehmeranweisungen eine Vorschau des Tools anzeigen. Informationen zum Erstellen eines Kennzeichnungsauftrags der semantischen Segmentierung in der SageMaker-AI-Konsole finden Sie unter [Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth](sms-getting-started.md). 

Wenn Sie einen benutzerdefinierten Instance-Segmentierungskennzeichnungsauftrag in der SageMaker-AI-Konsole oder einen Instance- oder semantischen Segmentierungskennzeichnungsauftrag mithilfe der Ground-Truth-API erstellen, müssen Sie eine benutzerdefinierte Aufgabenvorlage erstellen, um Konsole und Anweisungen für Ihre Auftragnehmer zu entwerfen. Um das Auto-Segmentierungstool in Ihre Konsole für Arbeitskräfte aufzunehmen, stellen Sie sicher, dass die folgenden Bedingungen in der benutzerdefinierten Aufgabenvorlage erfüllt sind:
+ Bei semantischen Segmentierungskennzeichnungsaufträgen, die mit der API erstellt wurden, ist `<crowd-semantic-segmentation>` in der Aufgabenvorlage vorhanden. Bei benutzerdefinierten Instance-Segmentierungskennzeichungsaufträgen ist das Tag `<crowd-instance-segmentation>` in der Aufgabenvorlage vorhanden.
+ Der Vorgang wird privaten Arbeitskräften oder Arbeitskräften von Anbietern zugewiesen. 
+ Die zu beschrifteten Bilder sind Amazon Simple Storage Service Amazon S3)-Objekte, die für die Auftragnehmer vorsigniert wurden, damit sie darauf zugreifen kann. Dies trifft bei Aufgabenvorlagen mit dem Filter `grant_read_access` zu. Informationen zum `grant_read_access`-Filter finden Sie unter [Hinzufügen von Automation mit Liquid](sms-custom-templates-step2-automate.md).

Im Folgenden finden Sie ein Beispiel für eine benutzerdefinierte Aufgabenvorlage für einen benutzerdefinierten Instance-Segmentierungskennzeichnungsauftrag, der das Tag `<crowd-instance-segmentation/>` und den Flüssigkeitsfilter `grant_read_access` enthält.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-instance-segmentation
    name="crowd-instance-segmentation"
    src="{{ task.input.taskObject | grant_read_access }}"
    labels="['Car','Road']"
   <full-instructions header="Segmentation instructions">
      Segment each instance of each class of objects in the image. 
    </full-instructions>

    <short-instructions>
      <p>Segment each instance of each class of objects in the image.</p>

      <h3 style="color: green">GOOD EXAMPLES</h3>
      <img src="path/to/image.jpg" style="width: 100%">
      <p>Good because A, B, C.</p>

      <h3 style="color: red">BAD EXAMPLES</h3>
      <img src="path/to/image.jpg" style="width: 100%">
      <p>Bad because X, Y, Z.</p>
    </short-instructions>
  </crowd-instance-segmentation>
</crowd-form>
```

# Erstellen eines Bildklassifizierungsjobs (Single-Label)
<a name="sms-image-classification"></a>

Verwenden Sie eine Amazon SageMaker Ground Truth Truth-Aufgabe zur Bildklassifizierung, wenn Mitarbeiter Bilder anhand von von Ihnen angegebenen vordefinierten Labels klassifizieren müssen. Workern werden Bilder gezeigt und sie werden aufgefordert, für jedes Bild eine Kennzeichnung auszuwählen. Sie können mithilfe des Ground Truth Truth-Abschnitts der Amazon SageMaker AI-Konsole oder mithilfe des [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Vorgangs einen Job zur Bildklassifizierung erstellen. 

**Wichtig**  
Wenn Sie eine eigene Manifestdatei erstellen, verwenden Sie den Aufgabentyp `"source-ref"` zur Identifizierung des Speicherorts jeder Bilddatei in Amazon S3, die beschriftet werden soll. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen einer Labeling-Aufgabe für die Bildklassifizierung (Konsole)
<a name="sms-creating-image-classification-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Job zur Bildklassifizierung in der SageMaker AI-Konsole erstellen. Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Bild** und wählen Sie als Aufgabentyp **Bildklassifizierung (Einzelne Beschriftung)** aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Arbeitnehmer-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie die Labeling-Aufgabe mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können. 

![\[Beispiel für eine Worker-Benutzeroberfläche für Kennzeichnungsaufgaben, bereitgestellt von Ground Truth\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/image-classification-example.png)


## Erstellen einer Labeling-Aufgabe für die Bildklassifizierung (API)
<a name="sms-creating-image-classification-api"></a>

Verwenden Sie den SageMaker API-Vorgang, um einen Job zur Kennzeichnung der Bildklassifizierung zu erstellen`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-ImageMultiClass`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-ImageMultiClass`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

```
response = client.create_labeling_job(
    LabelingJobName='example-image-classification-labeling-job',
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-ImageMultiClass,
        'TaskKeywords': [
            Image classification',
        ],
        'TaskTitle': Image classification task',
        'TaskDescription': 'Carefully inspect the image and classify it by selecting one label from the categories provided.',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-ImageMultiClass'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Bereitstellen einer Vorlage für Labeling-Aufgaben für die Bildklassifizierung
<a name="worker-template-image-classification"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions), [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions) und `header`. 

Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-image-classifier
    name="crowd-image-classifier"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="please classify"
    categories="{{ task.input.labels | to_json | escape }}"
  >
    <full-instructions header="Image classification instructions">
      <ol><li><strong>Read</strong> the task carefully and inspect the image.</li>
      <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
      <li><strong>Choose</strong> the appropriate label that best suits the image.</li></ol>
    </full-instructions>
    <short-instructions>
      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
      <p>Enter description to explain the correct label to the workers</p>
      <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3><p>Enter description of an incorrect label</p>
    </short-instructions>
  </crowd-image-classifier>
</crowd-form>
```

## Bildklassifizierungs-Ausgabedaten
<a name="sms-image-classification-output-data"></a>

Nach der Erstellung einer Labeling-Aufgabe für die Bildklassifizierung befinden sich bei Verwendung der API die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket oder im Feld **Output dataset location** im Abschnitt **Aufgabenübersicht** der Konsole. 

Weitere Informationen zu der von Ground Truth generierten Ausgabemanifestdatei und zur Dateistruktur, die zum Speichern Ihrer Ausgabedaten verwendet, finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

Ein Beispiel für eine Ausgabemanifestdatei für eine Labeling-Aufgabe für die Bildklassifizierung finden Sie unter [Ausgabe des Klassifizierungsauftrags](sms-data-output.md#sms-output-class).

# Erstellen eines Bildklassifizierungsjobs (Multi-Label)
<a name="sms-image-classification-multilabel"></a>

Verwenden Sie eine Amazon SageMaker Ground Truth Bildklassifizierungsaufgabe mit mehreren Labels, wenn Mitarbeiter mehrere Objekte in einem Bild klassifizieren müssen. Auf dem folgenden Bild beispielsweise sind ein Hund und eine Katze zu sehen. Sie können die Multi-Label-Bildklassifizierung verwenden, um die Bezeichnungen „Hund“ und „Katze“ mit diesem Bild zu verknüpfen. Auf der folgenden Seite finden Sie Informationen zum Erstellen eines Bildklassifizierungsjobs.

![\[Foto von Anusha Barwa auf Unsplash\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/dog-cat-photo.jpg)


Auftragnehmer, die an einer Aufgabe zur Multi-Label-Bildklassifizierung arbeiten, sollten alle anwendbaren Bezeichnungen (Label) auswählen, zumindest muss jedoch eine Bezeichnung ausgewählt werden. Beim Erstellen eines Auftrags mit diesem Aufgabentyp können Sie bis zu 50 Bezeichnungskategorien angeben. 

Wenn Sie einen Beschriftungsauftrag in der Konsole erstellen, stellt Ground Truth keine Kategorie „Keine“ für Fälle bereit, in denen keine der Beschriftungen auf ein Bild angewendet werden kann. Um den Auftragnehmern diese Option zur Verfügung zu stellen, fügen Sie beim Erstellen eines Multi-Label-Bildklassifizierungsauftrags eine Bezeichnung wie „Keine“ oder „Sonstiges“ hinzu. 

Verwenden Sie den Aufgabentyp [Erstellen eines Bildklassifizierungsjobs (Single-Label)](sms-image-classification.md), um Auftragnehmer auf die Auswahl einer einzelnen Bezeichnung für jedes Bild zu beschränken.

**Wichtig**  
Wenn Sie für diesen Aufgabentyp Ihre eigene Manifestdatei erstellen, verwenden Sie `"source-ref"`, um den Speicherort jeder Bilddatei in Amazon S3 zu identifizieren, die Sie beschriften möchten. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen eines Labeling-Auftrags für die Multi-Label-Bildklassifizierung (Konsole)
<a name="sms-creating-multilabel-image-classification-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie in der AI-Konsole einen Auftrag zur Klassifizierung von Bildern mit mehreren Labels erstellen. SageMaker Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Bild** und als Aufgabentyp **Bildklassifizierung (Multi-Beschriftung)** aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Worker-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie eine Labeling-Aufgabe in der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können. 

![\[Beispiel für eine Worker-Benutzeroberfläche für Kennzeichnungsaufgaben, bereitgestellt von Ground Truth\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/image-classification-multilabel-example.png)


## Erstellen eines Labeling-Auftrags für die Multi-Label-Bildklassifizierung (API)
<a name="sms-create-multi-select-image-classification-job-api"></a>

Verwenden Sie den SageMaker API-Vorgang, um einen Auftrag zur Kennzeichnung von Bildern mit mehreren Bezeichnungen zu erstellen. `CreateLabelingJob` Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-ImageMultiClassMultiLabel`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-ImageMultiClassMultiLabel`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

```
response = client.create_labeling_job(
    LabelingJobName='example-multi-label-image-classification-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-ImageMultiClassMultiLabel',
        'TaskKeywords': [
            'Image Classification',
        ],
        '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-ImageMultiClassMultiLabel'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Bereitstellen einer Vorlage für die Bildklassifizierung mit mehreren Kennzeichnungen
<a name="sms-custom-template-multi-image-label-classification"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions), [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions) und `header`. 

Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-image-classifier-multi-select
    name="crowd-image-classifier-multi-select"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Please identify all classes in image"
    categories="{{ task.input.labels | to_json | escape }}"
  >
    <full-instructions header="Multi Label Image classification instructions">
      <ol><li><strong>Read</strong> the task carefully and inspect the image.</li>
      <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
       <li><strong>Choose</strong> the appropriate labels that best suit the image.</li></ol>
    </full-instructions>
    <short-instructions>
      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
      <p>Enter description to explain the correct label to the workers</p>
      <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3>
      <p>Enter description of an incorrect label</p>
   </short-instructions>
  </crowd-image-classifier-multi-select>
</crowd-form>
```

## Ausgabedaten der Multi-Label-Bildklassifizierung
<a name="sms-image-classification-multi-output-data"></a>

Nachdem Sie einen Beschriftungsauftrag für die Multi-Beschriftung-Bildklassifizierung erstellt haben, befinden sich die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket, wenn Sie die API verwenden, oder im Feld **Speicherort des Ausgabedatensatzes** im Abschnitt **Auftragsübersicht** der Konsole. 

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern der Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

Ein Beispiel für Ausgabemanifestdateien für einen Labeling-Auftrag für die Multi-Label-Bildklassifizierung finden Sie unter [Ausgabe von Multi-Label-Klassifizierungsaufträgen](sms-data-output.md#sms-output-multi-label-classification).

# Image Beschriftungsverifizierung
<a name="sms-label-verification"></a>

Die Erstellung eines hochpräzisen Trainings-Datensatzes für Ihren Machine Learning(ML)-Algorithmus ist ein iterativer Prozess. In der Regel überprüfen Sie und passen Sie Ihre Kennzeichnungen kontinuierlich an, bis Sie davon überzeugt sind, dass sie die Grundwahrheit (Ground Truth) oder das, was direkt in der realen Welt zu beobachten ist, genau repräsentieren. Mit einer Amazon SageMaker Ground Truth-Beschriftungsverifizierungsaufgabe können Sie Auftragnehmer dazu anweisen, die Kennzeichnungen eines Datensatzes zu überprüfen und die Kennzeichnungsgenauigkeit zu verbessern. Arbeitskräfte können angeben, ob die vorhandenen Etiketten korrekt sind oder die Qualität der Etiketten bewerten. Sie können auch Kommentare hinzufügen, um ihre Argumentation zu erläutern. Amazon SageMaker Ground Truth unterstützt die Überprüfung von Etiketten für [Klassifizieren von Bildobjekten mithilfe eines Begrenzungsrahmens](sms-bounding-box.md) und [Identifizieren von Bildinhalten anhand der semantischen Segmentierung](sms-semantic-segmentation.md) Beschriftungen. Sie erstellen mithilfe des Ground-Truth-Abschnitts der Konsole von Amazon SageMaker AI oder mithilfe des Vorgangs [CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) einen Beschriftungsauftrag zur Überprüfung von Bildetiketten. 

Ground Truth stellt für die Labeling-Aufgaben eine Auftragnehmer-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie den Labeling-Auftrag mit der Konsole erstellen, können Sie die angezeigten Bilder und Inhalte ändern. Weitere Informationen zum Erstellen eines Beschriftungsauftrags in der Konsole mithilfe von Ground Truth finden Sie unter [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md).

![\[Beispiel für eine Worker-Konsole für Labeling-Aufgaben, bereitgestellt von Ground Truth\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/label-verification-example.png)


Sie können einen Beschriftungsverifizierungsauftrag über die SageMaker-AI-Konsole oder API erstellen. Informationen zum Erstellen eines Beschriftungsauftrages mithilfe der Ground Truth API-Operation `CreateLabelingJob`, finden Sie unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md).

# Textbeschriftung mit Ground Truth
<a name="sms-label-text"></a>

Verwenden Sie Ground Truth, um Text zu beschriften. Ground Truth unterstützt die Textbeschriftung für die Erkennung benannter Entitäten sowie für die Single-Label- und Multi-Label-Textklassifizierung. Die folgenden Themen enthalten Informationen zu diesen integrierten Aufgabentypen sowie Anweisungen zum Erstellen eines Beschriftungsauftrags mit diesem Aufgabentyp.

**Tipp**  
Weitere Informationen zu unterstützten Dateitypen und Eingabedatenkontingenten finden Sie unter [Eingabedaten](sms-data-input.md).

**Topics**
+ [Extrahieren von Textinformationen mithilfe der Erkennung benannter Entitäten](sms-named-entity-recg.md)
+ [Kategorisieren von Text anhand der Textklassifizierung (Single-Label)](sms-text-classification.md)
+ [Kategorisieren von Text anhand der Textklassifizierung (Multi-Label)](sms-text-classification-multilabel.md)

# Extrahieren von Textinformationen mithilfe der Erkennung benannter Entitäten
<a name="sms-named-entity-recg"></a>

Um Informationen aus unstrukturiertem Text zu extrahieren und sie in vordefinierte Kategorien zu klassifizieren, verwenden Sie eine Amazon SageMaker Ground Truth Named Entity Recognition (NER) -Labeling-Aufgabe. Traditionell beinhaltet NER das Sichten von Textdaten, um Nominalphrasen zu finden, die als *benannte Entitäten* bezeichnet werden, sowie das Kategorisieren dieser Nominalphrasen mit einer Kennzeichnung wie „Person“, „Organisation“ oder „Marke“. Sie können diese Aufgabe erweitern, um längere Textbereiche zu kennzeichnen und diese Sequenzen mit vordefinierten Kennzeichnungen zu kategorisieren, die von Ihnen angegeben werden. Sie können einen Labeling-Job zur Erkennung benannter Entitäten mithilfe des Ground-Truth-Bereichs der Amazon SageMaker AI-Konsole oder des [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Vorgangs erstellen.

Wenn Worker mit einem Kennzeichnungsauftrag zur Erkennung benannter Entitäten (Named Entity Recognition, NER) beauftragt werden, wenden sie Ihre Kennzeichnungen auf bestimmte Wörter oder Ausdrücke innerhalb eines größeren Textblocks an. Sie wählen eine Kennzeichnung aus und wenden sie dann an, indem Sie mit dem Cursor den Teil des Textes hervorheben, auf den die Kennzeichnung zutrifft. Das Tool zur Erkennung benannter Entitäten von Ground Truth unterstützt überlappende Anmerkungen, die kontextbezogene Beschriftungsauswahl und die Auswahl mehrerer Beschriftungen für ein einzelnes Highlight. Außerdem können Auftragnehmer ihre Tastaturen verwenden, um schnell Beschriftungen auszuwählen.

**Wichtig**  
Wenn Sie manuell eine Eingabemanifestdatei erstellen, verwenden Sie `"source"`, um den Text zu identifizieren, den Sie beschriften möchten. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen einer Named Entity Recognition-Labeling-Aufgabe (Konsole)
<a name="sms-creating-ner-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie in der SageMaker AI-Konsole einen Label-Job zur Erkennung benannter Entitäten erstellen. Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Text** und wählen Sie als Aufgabentyp **Named Entity Erkennung ** aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Worker-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie die Labeling-Aufgabe mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können. 

![\[Ein GIF, das zeigt, wie in der SageMaker AI-Konsole ein Labeling-Job für die Erkennung benannter Entitäten erstellt wird.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/nertool.gif)


## Erstellen einer Named Entity Recognition-Labeling-Aufgabe (API)
<a name="sms-creating-ner-api"></a>

Um mithilfe der SageMaker API-Operation einen Label-Job zur Erkennung benannter Entitäten zu erstellen`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren:
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-NamedEntityRecognition`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-NamedEntityRecognition`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 
+ Sie müssen den folgenden ARN für `[HumanTaskUiArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-HumanTaskUiArn)` zur Verfügung stellen:

  ```
  arn:aws:sagemaker:aws-region:394669845002:human-task-ui/NamedEntityRecognition
  ```

  Ersetzen Sie ihn durch den, `aws-region` mit dem AWS-Region Sie den Labeling-Job erstellt haben. Verwenden Sie beispielsweise `us-west-1`, wenn Sie einen Beschriftungsauftrag in USA West (Nordkalifornien) erstellen.
+ Geben Sie mithilfe des `instructions` Parameters Anweisungen für die Auftragnehmer in der Konfigurationsdatei für die Beschriftungskategorie ein. Sie können in den Feldern `shortInstruction` und `fullInstruction` eine String oder eine HTML-Auszeichnungssprache verwenden. Weitere Details finden Sie unter [Stellen Sie Anweisungen für Auftragnehmer in einer Konfigurationsdatei für die Beschriftungskategorie bereit](#worker-instructions-ner).

  ```
  "instructions": {"shortInstruction":"<h1>Add header</h1><p>Add Instructions</p>", "fullInstruction":"<p>Add additional instructions.</p>"}
  ```

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

```
response = client.create_labeling_job(
    LabelingJobName='example-ner-labeling-job',
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*',
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'HumanTaskUiArn': 'arn:aws:sagemaker:us-east-1:394669845002:human-task-ui/NamedEntityRecognition'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-NamedEntityRecognition',
        'TaskKeywords': [
            'Named entity Recognition',
        ],
        'TaskTitle': 'Named entity Recognition task',
        'TaskDescription': 'Apply the labels provided to specific words or phrases within the larger text block.',
        'NumberOfHumanWorkersPerDataObject': 1,
        'TaskTimeLimitInSeconds': 28800,
        'TaskAvailabilityLifetimeInSeconds': 864000,
        'MaxConcurrentTaskCount': 1000,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-NamedEntityRecognition'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Stellen Sie Anweisungen für Auftragnehmer in einer Konfigurationsdatei für die Beschriftungskategorie bereit
<a name="worker-instructions-ner"></a>

Sie müssen in der Konfigurationsdatei für die Etikettenkategorie, die Sie mit dem Parameter `LabelCategoryConfigS3Uri` in `CreateLabelingJob` angeben, Anweisungen für die Arbeiter angeben. Mithilfe dieser Anweisungen können Sie Einzelheiten zu der Aufgabe angeben, die Auftragnehmer ausführen sollen, und ihnen helfen, das Tool effizient zu nutzen.

Sie geben kurze und lange Anweisungen mit `shortInstruction` bzw. `fullInstruction` im `instructions` Parameter. Weitere Informationen zu diesen Instruktionstypen finden Sie unter [Erstellen von Anweisungsseiten](sms-creating-instruction-pages.md).

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei für Beschriftungskategorien mit Anweisungen, die für einen Beschriftungsauftrag zur Erkennung benannter Entitäten verwendet werden können.

```
{
  "document-version": "2018-11-28",
  "labels": [
    {
      "label": "label1",
      "shortDisplayName": "L1"
    },
    {
      "label": "label2",
      "shortDisplayName": "L2"
    },
    {
      "label": "label3",
      "shortDisplayName": "L3"
    },
    {
      "label": "label4",
      "shortDisplayName": "L4"
    },
    {
      "label": "label5",
      "shortDisplayName": "L5"
    }
  ],
  "instructions": {
    "shortInstruction": "<p>Enter description of the labels that workers have 
                        to choose from</p><br><p>Add examples to help workers understand the label</p>",
    "fullInstruction": "<ol>
                        <li><strong>Read</strong> the text carefully.</li>
                        <li><strong>Highlight</strong> words, phrases, or sections of the text.</li>
                        <li><strong>Choose</strong> the label that best matches what you have highlighted.</li>
                        <li>To <strong>change</strong> a label, choose highlighted text and select a new label.</li>
                        <li>To <strong>remove</strong> a label from highlighted text, choose the X next to the 
                        abbreviated label name on the highlighted text.</li>
                        <li>You can select all of a previously highlighted text, but not a portion of it.</li>
                        </ol>"
  }
}
```

## Named Entity Recognition-Ausgabedaten
<a name="sms-ner-output-data"></a>

Nach der Erstellung einer Named Entity Erkennung-Bechriftungsauftrag befinden sich die Ausgabedaten bei Verwendung der API in dem vom Parameter `S3OutputPath` angegebenen Amazon-S3-Bucket oder im Feld **Ausgabedatensatz-Speicherort** im Abschnitt **Auftragsübersicht** der Konsole. 

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern Ihrer Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

# Kategorisieren von Text anhand der Textklassifizierung (Single-Label)
<a name="sms-text-classification"></a>

Verwenden Sie die Textklassifizierung, um Artikel und Text in vordefinierte Kategorien zu einzuteilen. Sie können beispielsweise die Textklassifizierung verwenden, um die in einer Rezension vermittelte Stimmung oder die Emotionen zu identifizieren, die einem Textabschnitt zugrunde liegen. Verwenden Sie die Textklassifizierung von Amazon SageMaker Ground Truth, damit Mitarbeiter Text in von Ihnen definierte Kategorien sortieren können. Sie erstellen einen Auftrag zur Kennzeichnung der Textklassifizierung mithilfe des Ground Truth-Bereichs der Amazon SageMaker AI-Konsole oder der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Operation. 

**Wichtig**  
Wenn Sie manuell eine Eingabemanifestdatei erstellen, verwenden Sie `"source"`, um den Text zu identifizieren, den Sie beschriften möchten. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen einer Labeling-Aufgabe für die Textklassifizierung (Konsole)
<a name="sms-creating-text-classification-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Job zur Textklassifizierung in der SageMaker AI-Konsole erstellen. Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Text** und wählen Sie als Aufgabentyp **Textklassifizierung (einzelne Beschriftung)**“ aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Auftragnehmer-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie die Labeling-Aufgabe mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können. 

![\[Ein GIF, das zeigt, wie ein Job zur Textklassifizierung in der SageMaker AI-Konsole erstellt wird.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/single-label-text.gif)


## Erstellen einer Labeling-Aufgabe für die Textklassifizierung (API)
<a name="sms-creating-text-classification-api"></a>

Verwenden Sie die SageMaker API-Operation, um einen Job zur Textklassifizierung zur Kennzeichnung zu erstellen`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-TextMultiClass`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-TextMultiClass`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

```
response = client.create_labeling_job(
    LabelingJobName='example-text-classification-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-TextMultiClass,
        'TaskKeywords': [
            Text classification',
        ],
        'TaskTitle': Text classification task',
        'TaskDescription': 'Carefully read and classify this text using the categories provided.',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-TextMultiClass'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Bereitstellen einer Vorlage für Labeling-Aufgaben für die Textklassifizierung
<a name="worker-template-text-classification"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions), [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions) und `header`. 

Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-classifier
    name="crowd-classifier"
    categories="{{ task.input.labels | to_json | escape }}"
    header="classify text"
  >
    <classification-target style="white-space: pre-wrap">
      {{ task.input.taskObject }}
    </classification-target>
    <full-instructions header="Classifier instructions">
      <ol><li><strong>Read</strong> the text carefully.</li>
      <li><strong>Read</strong> the examples to understand more about the options.</li>
      <li><strong>Choose</strong> the appropriate labels that best suit the text.</li></ol>
    </full-instructions>
    <short-instructions>
      <p>Enter description of the labels that workers have to choose from</p>
      <p><br></p><p><br></p><p>Add examples to help workers understand the label</p>
      <p><br></p><p><br></p><p><br></p><p><br></p><p><br></p>
    </short-instructions>
  </crowd-classifier>
  </crowd-form>
```

## Textklassifizierungs-Ausgabedaten
<a name="sms-text-classification-output-data"></a>

Nach der Erstellung einer Labeling-Aufgabe für die Textklassifizierung befinden sich bei Verwendung der API die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket oder im Feld **Output dataset location** (Ausgabedatensatz-Speicherort) im Abschnitt **Auftrag Übersicht** (Aufgabenübersicht) der Konsole. 

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern Ihrer Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

Ein Beispiel für Ausgabemanifestdateien für eine Labeling-Aufgabe für die Textklassifizierung mit Mehrfachkennzeichnung finden Sie unter [Ausgabe des Klassifizierungsauftrags](sms-data-output.md#sms-output-class).

# Kategorisieren von Text anhand der Textklassifizierung (Multi-Label)
<a name="sms-text-classification-multilabel"></a>

Wenn Sie Artikel und Text in mehrere vordefinierte Kategorien einteilen möchten, verwenden Sie den Aufgabentyp für die Multi-Label-Textklassifizierung. Sie können diesen Aufgabentyp beispielsweise verwenden, um mehr als eine im Text vermittelte Emotion zu identifizieren. Die folgenden Abschnitte enthalten Informationen zum Erstellen einer Multi-Label-Textklassifizierungsaufgabe über die Konsole und die API.

Auftragnehmer, die an einer Aufgabe zur Multi-Label-Textklassifizierung arbeiten, sollten alle anwendbaren Bezeichnungen (Label) auswählen, zumindest muss jedoch eine Bezeichnung ausgewählt werden. Beim Erstellen eines Auftrags unter Verwendung dieses Aufgabentyps können Sie bis zu 50 Bezeichnungskategorien angeben. 

Amazon SageMaker Ground Truth bietet keine Kategorie „Keine“ für den Fall, dass keines der Labels zutrifft. Um den Auftragnehmern diese Option zur Verfügung zu stellen, fügen Sie beim Erstellen eines Multi-Label-Textklassifizierungsauftrags eine Bezeichnung wie „Keine“ oder „Sonstiges“ hinzu. 

Verwenden Sie den Aufgabentyp [Kategorisieren von Text anhand der Textklassifizierung (Single-Label)](sms-text-classification.md), um Auftragnehmer auf die Auswahl einer einzelnen Bezeichnung für jedes Dokument oder jede Textauswahl zu beschränken. 

**Wichtig**  
Wenn Sie manuell eine Eingabemanifestdatei erstellen, verwenden Sie `"source"`, um den Text zu identifizieren, den Sie beschriften möchten. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).

## Erstellen eines Labeling-Auftrags für die Multi-Label-Textklassifizierung (Konsole)
<a name="sms-creating-multilabel-text-classification-console"></a>

Sie können den Anweisungen folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie in der Amazon SageMaker AI-Konsole einen Auftrag zur Textklassifizierung mit mehreren Labels erstellen. Wählen Sie in Schritt 10 im Dropdown-Menü **Aufgabenkategorie** die Option **Text** und wählen Sie als Aufgabentyp **Textklassifizierung (Mehrfachbeschriftung)** aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Worker-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie die Labeling-Aufgabe mit der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Worker die Aufgabe ausführen können, und Kennzeichnungen, aus denen die Worker auswählen können. 

![\[Gif, das zeigt, wie man in der Amazon SageMaker AI-Konsole einen Auftrag zur Textklassifizierung mit mehreren Labels erstellt.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/multi-label-text.gif)


## Erstellen eines Labeling-Auftrags für die Multi-Label-Textklassifizierung (API)
<a name="sms-creating-multilabel-text-classification-api"></a>

Verwenden Sie den SageMaker API-Vorgang, um einen Auftrag zur Textklassifizierung mit mehreren Bezeichnungen zu erstellen. `CreateLabelingJob` Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Vorannotierende Lambda-Features für die Vorannotierung für diesen Aufgabentyp enden mit `PRE-TextMultiClassMultiLabel`. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Annotations-Konsolidierende Lambda-Features für die Annotationskonsolidierung für diesen Aufgabentyp enden mit `ACS-TextMultiClassMultiLabel`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). Alle Parameter in Rot sollten durch Ihre Spezifikationen und Ressourcen ersetzt werden. 

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

### Erstellen einer Vorlage für die Textklassifizierung mit Mehrfachkennzeichnung
<a name="custom-template-multi-label-text-classification"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage. Ändern Sie nur [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-quick-instructions), [https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-creating-instruction-pages.html#sms-creating-full-instructions) und `header`. 

Laden Sie diese Vorlage zu S3 hoch und geben Sie den S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-classifier-multi-select
    name="crowd-classifier-multi-select"
    categories="{{ task.input.labels | to_json | escape }}"
    header="Please identify all classes in the below text"
  >
    <classification-target style="white-space: pre-wrap">
      {{ task.input.taskObject }}
    </classification-target>
    <full-instructions header="Classifier instructions">
      <ol><li><strong>Read</strong> the text carefully.</li>
      <li><strong>Read</strong> the examples to understand more about the options.</li>
      <li><strong>Choose</strong> the appropriate labels that best suit the text.</li></ol>
    </full-instructions>
    <short-instructions>
      <p>Enter description of the labels that workers have to choose from</p>
      <p><br></p>
      <p><br></p><p>Add examples to help workers understand the label</p>
      <p><br></p><p><br></p><p><br></p><p><br></p><p><br></p>
    </short-instructions>
  </crowd-classifier-multi-select>
  </crowd-form>
```

Informationen zum Erstellen einer benutzerdefinierten Vorlage finden Sie unter [Benutzerdefinierte Kennzeichnung-Workflows](sms-custom-templates.md). 

## Ausgabedaten der Multi-Label-Textklassifizierung
<a name="sms-text-classification-multi-select-output-data"></a>

Nachdem Sie einen Beschriftungsauftrag für die Multi-Beschriftung-Textklassifizierung erstellt haben, befinden sich die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket, wenn Sie die API verwenden, oder im Feld **Speicherort des Ausgabedatensatzes** im **Auftragsübersicht** der Konsole. 

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern der Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

Ein Beispiel für Ausgabemanifestdateien für einen Labeling-Auftrag für die Multi-Label-Textklassifizierung finden Sie unter [Ausgabe von Multi-Label-Klassifizierungsaufträgen](sms-data-output.md#sms-output-multi-label-classification).

# Beschriften von Videos und Video-Frames
<a name="sms-video"></a>

Sie können Ground Truth verwenden, um Videos zu klassifizieren und Video-Frames (aus Videos extrahierte Standbilder) mit einem der drei integrierten Videoaufgabentypen mit Anmerkungen zu versehen. Diese Aufgabentypen optimieren den Prozess der Erstellung von Video- und Videoframe-Labeling-Jobs mithilfe der Amazon SageMaker AI-Konsole, API und sprachspezifischen Sprachen SDKs. 
+ Klassifizierung von Videoclips – Ermöglichen Sie Auftragnehmern, Videos in von Ihnen angegebene Kategorien zu klassifizieren. Sie können mit diesem Aufgabentyp beispielsweise veranlassen, dass Auftragnehmer Videos nach Themen wie Sport, Comedy, Musik und Bildung kategorisieren. Weitere Informationen hierzu finden Sie unter [Klassifizieren von Videos](sms-video-classification.md).
+ Kennzeichnungsaufträge für Video-Frames – Ermöglichen es Auftragnehmern, Video-Frames, die aus einem Video extrahiert wurden, mithilfe von Begrenzungsrahmen, Polylinien, Polygonen oder Schlüsselpunkt-Annotationstools mit Anmerkungen zu versehen. Ground Truth bietet zwei integrierte Aufgabentypen zur Kennzeichnung von Video-Frames:
  + *Objekterkennung für Video-Frames*: Ermöglicht es Auftragnehmern, Objekte in Video-Frames zu identifizieren und zu lokalisieren. 
  + *Objektverfolgung für Video-Frames*: Ermöglichen Sie es Auftragnehmern, die Bewegung von Objekten über Video-Frames hinweg zu verfolgen.
  + *Anpassungsaufträge für Video-Frames*: Auftragnehmer können Beschriftungen, Kennzeichnungskategorieattribute und Frame-Attribute aus einem früheren Kennzeichnungsauftrag zur Objekterkennung oder Objektverfolgung in Video-Frames anpassen.
  + *Überprüfungsaufträge für Video-Frames*: Auftragnehmer können Beschriftungen, Kennzeichnungskategorieattribute und Frame-Attribute aus einem früheren Kennzeichnungsauftrag zur Objekterkennung oder Objektverfolgung in Video-Frames überprüfen.

  Für Videodateien können Sie mit dem automatischen Frame-Extraktionstool von Ground Truth Video-Frames aus Ihren Videos extrahieren. Weitere Informationen hierzu finden Sie unter [Videoframe-Eingabedaten](sms-video-frame-input-data-overview.md).

**Tipp**  
Weitere Informationen zu unterstützten Dateitypen und Kontingenten für Eingabedaten finden Sie unter[Eingabedaten](sms-data-input.md).

**Topics**
+ [Klassifizieren von Videos](sms-video-classification.md)
+ [Videoframes](sms-video-task-types.md)
+ [Anweisungen für Auftragnehmer](sms-video-worker-instructions.md)

# Klassifizieren von Videos
<a name="sms-video-classification"></a>

Verwenden Sie eine Amazon SageMaker Ground Truth Truth-Aufgabe zur Videoklassifizierung, wenn Mitarbeiter Videos anhand von vordefinierten Labels klassifizieren müssen, die Sie angeben. Auftragnehmern werden Bilder gezeigt und sie werden aufgefordert, für jedes Bild eine Beschriftung auszuwählen. Sie erstellen einen Job zur Videoklassifizierung mithilfe des Ground Truth Truth-Bereichs der Amazon SageMaker AI-Konsole oder der [CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Operation. 

Ihre Videodateien müssen in einem Format codiert sein, das von dem Browser unterstützt wird, der von dem Arbeitsteam verwendet wird, das Ihre Daten beschriftet. Es wird empfohlen, dass Sie mithilfe der Worker-UI-Vorschau überprüfen, ob alle Videodateiformate in Ihrer Eingabemanifestdatei korrekt angezeigt werden. Mithilfe von Anweisungen für Auftragnehmer können Sie Ihren Auftragnehmer die unterstützten Browser mitteilen. Informationen zu den unterstützten Dateiformaten finden Sie unter [Unterstützte Datumsformate](sms-supported-data-formats.md).

**Wichtig**  
Wenn Sie für diesen Aufgabentyp eine eigene Manifestdatei erstellen, verwenden Sie `"source-ref"`, um den Speicherort jeder Videodatei in Amazon S3 anzugeben, die Sie beschriften möchten. Weitere Informationen finden Sie unter [Eingabedaten](sms-data-input.md).



## Erstellen eines Beschriftungsauftrages für die Videoklassifizierung (Konsole)
<a name="sms-creating-video-classification-console"></a>

Sie können den Anweisungen unter folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Job zur Videoklassifizierung in der SageMaker AI-Konsole erstellen. Wählen Sie in Schritt 10 aus der Dropdown-Liste **Aufgabenkategorie** die Option **Video** und wählen Sie als Aufgabentyp **Videoklassifizierung** aus. 

Ground Truth stellt für die Labeling-Aufgaben eine Worker-Benutzeroberfläche ähnlich der folgenden bereit. Wenn Sie einen Beschriftungsauftrag in der Konsole erstellen, müssen Sie Anweisungen bereitstellen, damit die Auftragnehmer den Auftrag ausführen können, und Beschriftungen, aus denen die Worker auswählen können. 

![\[Ein GIF, das zeigt, wie in der SageMaker AI-Konsole ein Job zur Videoklassifizierung erstellt wird.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/vid_classification.gif)


## Erstellen einer Labeling-Aufgabe für die Videoklassifizierung (API)
<a name="sms-creating-video-classification-api"></a>

In diesem Abschnitt werden Details beschrieben, die Sie wissen müssen, wenn Sie einen Kennzeichnungsauftrag mithilfe der SageMaker -API-Operation `CreateLabelingJob` erstellen. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)

Befolgen Sie diese Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Verwenden Sie eine vorannotierte Lambda-Funktion, die mit `PRE-VideoClassification` endet. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) 
+ Verwenden Sie eine annotationskonsolidierende Lambda-Funktion, die mit endet `ACS-VideoClassification`. Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3)-Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zum Erstellen eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). 

```
response = client.create_labeling_job(
    LabelingJobName='example-video-classification-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://bucket/path/manifest-with-input-data.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/path/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:region:*:workteam/private-crowd/*',
        'UiConfig': {
            'UiTemplateS3Uri': 's3://bucket/path/worker-task-template.html'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-VideoClassification',
        'TaskKeywords': [
            'Video Classification',
        ],
        'TaskTitle': 'Video classification task',
        'TaskDescription': 'Select a label to classify this video',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-VideoClassification'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

### Stellen Sie eine Vorlage für die Videoklassifizierung bereit
<a name="sms-custom-template-video-classification"></a>

Wenn Sie eine Labeling-Aufgabe unter Verwendung der API erstellen, müssen Sie in `UiTemplateS3Uri` eine Worker-Aufgabenvorlage bereitstellen. Kopieren und ändern Sie die folgende Vorlage, indem Sie `short-instructions`, `full-instructions` und `header` ändern. Laden Sie diese Vorlage zu Amazon S3 hoch und geben Sie den Amazon-S3-URI für diese Datei in `UiTemplateS3Uri` an.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

              <crowd-form>
                  <crowd-classifier
                    name="crowd-classifier"
                    categories="{{ task.input.labels | to_json | escape }}"
                    header="Please classify video"
                  >
                    <classification-target>
                       <video width="100%" controls/>
                        <source src="{{ task.input.taskObject | grant_read_access }}" type="video/mp4"/>
                        <source src="{{ task.input.taskObject | grant_read_access }}" type="video/webm"/>
                        <source src="{{ task.input.taskObject | grant_read_access }}" type="video/ogg"/>
                      Your browser does not support the video tag.
                      </video>
                    </classification-target>
                    <full-instructions header="Video classification instructions">
                      <ol><li><strong>Read</strong> the task carefully and inspect the video.</li>
                        <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
                        <li><strong>Choose</strong> the appropriate label that best suits the video.</li></ol>
                    </full-instructions>
                    <short-instructions>
                      <h3><span style="color: rgb(0, 138, 0);">Good example</span></h3>
                        <p>Enter description to explain the correct label to the workers</p>
                        <p><img src="https://d7evko5405gb7.cloudfront.net/fe4fed9b-660c-4477-9294-2c66a15d6bbe/src/images/quick-instructions-example-placeholder.png" style="max-width:100%"></p>
                        <h3><span style="color: rgb(230, 0, 0);">Bad example</span></h3>
                        <p>Enter description of an incorrect label</p>
                        <p><img src="https://d7evko5405gb7.cloudfront.net/fe4fed9b-660c-4477-9294-2c66a15d6bbe/src/images/quick-instructions-example-placeholder.png" style="max-width:100%"></p>
                    </short-instructions>
                  </crowd-classifier>
              </crowd-form>
```

## Videoklassifizierungs-Ausgabedaten
<a name="sms-vido-classification-output-data"></a>

Nach der Erstellung eines Beschriftungsauftrags für die Videoklassifizierung befinden sich bei Verwendung der API die Ausgabedaten in dem im `S3OutputPath` Parameter angegebenen Amazon-S3-Bucket oder im Feld **Ausgabedatensatz-Speicherort** im Abschnitt **Auftragübersicht** der Konsole. 

Um mehr über die von Ground Truth erzeugte Ausgabemanifestdatei und die Dateistruktur zu erfahren, die Ground Truth zum Speichern der Ausgabedaten verwendet, siehe [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

Ein Beispiel für Ausgabemanifestdateien für einen Beschriftungsauftrag für die Multi-Beschriftung-Videoklassifizierung finden Sie unter [Ausgabe des Klassifizierungsauftrags](sms-data-output.md#sms-output-class).

 

# Videoframes
<a name="sms-video-task-types"></a>

Sie können die in Ground Truth integrierten Videoframe-Aufgabentypen verwenden, damit Auftragnehmer Videoframes mithilfe von Begrenzungsrahmen, Polylinien, Polygonen oder Schlüsselpunkten kommentieren. Ein *Videoframe* ist eine Sequenz von Bildern, die aus einem Video extrahiert wurden.

Wenn Sie keine Videoframes haben, können Sie Videodateien (MP4 Dateien) bereitstellen und das automatische Frame-Extraktionstool von Ground Truth verwenden, um Videoframes zu extrahieren. Weitere Informationen hierzu finden Sie unter [Videodateien zur Verfügung stellen](sms-point-cloud-video-input-data.md#sms-point-cloud-video-frame-extraction).

Sie können die folgenden integrierten Videoaufgabentypen verwenden, um Videoframe-Labeling-Jobs mithilfe der Amazon SageMaker AI-Konsole, der API und SDKs sprachspezifisch zu erstellen.
+ **Objekterkennung in Videoframes** – Verwenden Sie diesen Aufgabentyp, wenn Sie möchten, dass Auftragnehmer Objekte in Videoframe-Sequenzen identifizieren und lokalisieren. Sie stellen eine Liste mit Kategorien bereit, und Auftragnehmer können jeweils eine Kategorie auswählen und Objekte, für die die Kategorie gilt, in allen Frames mit Anmerkungen versehen. Sie können diese Aufgabe zum Beispiel verwenden, um die Auftragnehmer aufzufordern, verschiedene Objekte in einer Szene zu identifizieren und zu lokalisieren, z. B. Autos, Fahrräder und Fußgänger.
+ **Objektverfolgung in Videoframes** – Verwenden Sie diesen Aufgabentyp, wenn Sie möchten, dass Auftragnehmer die Bewegung von Objekten in Sequenzen von Videoframes verfolgen. Wenn ein Worker einem einzelnen Frame eine Anmerkung hinzufügt, wird diese Anmerkung mit einer eindeutigen Instance-ID verknüpft. Der Worker fügt in allen anderen Frames Anmerkungen hinzu, die derselben ID zugeordnet sind, um dasselbe Objekt oder dieselbe Person zu identifizieren. Ein Auftragnehmer kann beispielsweise die Bewegung eines Fahrzeugs über eine Sequenz von Videoframes verfolgen, indem er in jedem Frame, in dem es erscheint, Begrenzungsrahmen mit derselben ID um das Fahrzeug herum zeichnet. 

In den folgenden Themen erfahren Sie mehr über diese integrierten Aufgabentypen und wie Sie einen Beschriftungsauftrag mit jedem Aufgabentyp erstellen können. Weitere Informationen zu den für diese Aufgabentypen verfügbaren Tools für Anmerkungen (Begrenzungsrahmen, Polylinien, Polygone und Schlüsselpunkte) finden Sie unter [Aufgabentypen](sms-video-overview.md#sms-video-frame-tools).

Bevor Sie einen Beschriftungsauftrag erstellen, empfehlen wir, dass Sie [Referenz für Aufträge zur Kennzeichnung von Video-Frames](sms-video-overview.md) lesen.

**Topics**
+ [Identifizieren Sie Objekte mithilfe der Videorahmen-Objekterkennung](sms-video-object-detection.md)
+ [Verfolgen von Objekten in Videoframes mithilfe der Videoframe-Objektverfolgung](sms-video-object-tracking.md)
+ [Referenz für Aufträge zur Kennzeichnung von Video-Frames](sms-video-overview.md)

# Identifizieren Sie Objekte mithilfe der Videorahmen-Objekterkennung
<a name="sms-video-object-detection"></a>

Sie können den Aufgabentyp zur Objekterkennung mit Videoframes verwenden, damit Auftragnehmer Objekte in einer Sequenz von Videoframes (aus einem Video extrahierte Bilder) mithilfe von Begrenzungsrahmen, Polylinien, Polygonen oder Werkzeugen zur *Keypoint-Anmerkung* identifizieren und lokalisieren können. Das von Ihnen gewählte Tool definiert den Aufgabentyp für Videoframes, den Sie erstellen. Sie können z. B. eine Aufgabe vom Typ Bounding-Box Videoframe-Objekterkennung verwenden, um verschiedene Objekte in einer Reihe von Videoframes zu identifizieren und zu lokalisieren, z. B. Autos, Fahrräder und Fußgänger. Sie können mithilfe der Amazon SageMaker AI Ground Truth Konsole, der SageMaker API und AWS SDKs sprachspezifisch einen Job zur Objekterkennung für Videobilder erstellen. Weitere Informationen hierzu finden Sie unter [Erstellen Sie einen Auftrag zur Erennung von Videoframe-Objekten](#sms-video-od-create-labeling-job), und wählen Sie Ihr bevorzugten Methode. Weitere Informationen zu den Annotationstools, aus denen Sie bei der Erstellung eines Beschriftungsauftrags wählen können, finden Sie unter [Aufgabentypen](sms-video-overview.md#sms-video-frame-tools).

Ground Truth bietet eine Benutzeroberfläche und Tools für Auftragnehmer, mit denen Sie Ihre Beschriftungsauftragsaufgaben erledigen können: [Zeigen Sie eine Vorschau der Worker-Benutzeroberfläche an](#sms-video-od-worker-ui).

Sie können einen Auftrag zur Anpassung von Anmerkungen erstellen, die in einem Beschriftungsauftrag zur Video-Objekterkennung erstellt wurden, indem Sie den Aufgabentyp Anpassung der Video-Objekterkennung verwenden. Weitere Informationen hierzu finden Sie unter [Auftrag zur Objekterkennung, -anpassung oder -verifizierung für Videoframes erstellen](#sms-video-od-adjustment).

## Zeigen Sie eine Vorschau der Worker-Benutzeroberfläche an
<a name="sms-video-od-worker-ui"></a>

Ground Truth stellt Auftragnehmern eine Web-Benutzerschnittstelle (UI) zur Verfügung, mit der sie ihre Aufgaben zur Erkennung von Videoframe-Objekten mit Anmerkungen erledigen können. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen. Wenn Sie ein neuer Benutzer sind, empfehlen wir Ihnen, mithilfe eines kleinen Eingabedatensatzes einen Beschriftungsauftrag über die Konsole zu erstellen, um eine Vorschau der Worker-Benutzeroberfläche anzuzeigen und sicherzustellen, dass Ihre Videoframes, Beschriftungen und Beschriftungsattribute erwartungsgemäß angezeigt werden. 

Die Benutzeroberfläche bietet Auftragnehmern die folgenden unterstützenden Tools zur Beschriftung, mit denen sie ihre Aufgaben zur Objekterkennung ausführen können:
+ Für alle Aufgaben können Auftragnehmer die Funktionen **In nächstes kopieren** und **In alle kopieren** verwenden, um eine Anmerkung in den nächsten Frame bzw. in alle nachfolgenden Frames zu kopieren. 
+ Für Aufgaben, die die Bounding-Box-Tools beinhalten, können Auftragnehmer die Funktion **Nächstes vorhersagen** verwenden, um einen Begrenzungsrahmen in einem einzigen Frame zu zeichnen, und Ground Truth dann die Position von Boxen mit derselben Beschriftungen in allen anderen Frames vorhersagen lassen. Auftragnehmer können dann Anpassungen vornehmen, um die vorhergesagte Position der Quader zu korrigieren. 

Das folgende Video zeigt, wie ein Auftragnehmer die Worker-Benutzeroberfläche mit dem Bounding-Box-Tool verwenden kann, um Ihre Aufgaben zur Objekterkennung zu erledigen.

![\[GIF, das zeigt, wie ein Auftragnehmer das Bounding-Box-Tool für seine Aufgaben zur Objekterkennung verwenden kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/kitti-od-general-labeling-job.gif)


## Erstellen Sie einen Auftrag zur Erennung von Videoframe-Objekten
<a name="sms-video-od-create-labeling-job"></a>

Sie können mithilfe der SageMaker AI-Konsole oder der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)API-Operation einen Auftrag zur Objekterkennung für Videobilder erstellen. 

In diesem Abschnitt wird davon ausgegangen, dass Sie das überprüft [Referenz für Aufträge zur Kennzeichnung von Video-Frames](sms-video-overview.md) und den Typ der Eingabedaten und die von Ihnen verwendete Verbindung zum Eingabedatensatz ausgewählt haben. 

### Erstellen eines Kennzeichnungsauftrags (Konsole)
<a name="sms-video-od-create-labeling-job-console"></a>

Sie können den Anweisungen unter folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Videoframe-Objektverfolgungsauftrag in der SageMaker AI-Konsole erstellen. Wählen Sie in Schritt 10 aus der Dropdown-Liste für die **Aufgabenkategorie** die Option **Video – Objekterkennung** aus. Wählen Sie den gewünschten Aufgabentyp aus, indem Sie unter **Aufgabenauswahl** eine der Karten auswählen.

![\[Ein GIF, das zeigt, wie ein Videoframe-Objektverfolgungsauftrag in der SageMaker AI-Konsole erstellt wird.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/task-type-vod.gif)


### Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-video-od-create-labeling-job-api"></a>

Mithilfe der SageMaker API-Operation erstellen Sie einen Label-Job zur Objekterkennung`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) 

[Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) bietet einen Überblick über die Operation `CreateLabelingJob`. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Sie müssen einen ARN für `HumanTaskUiArn` eingeben. Verwenden Sie `arn:aws:sagemaker:<region>:394669845002:human-task-ui/VideoObjectDetection`. Ersetzen Sie `<region>` durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. 

  Nehmen Sie keinen Eintrag für den `UiTemplateS3Uri` Parameter auf. 
+ Ihr [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName) muss mit `-ref` enden. Beispiel, `video-od-labels-ref`. 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Sequenz-Manifestdatei handeln. Sie können diese Manifestdatei mit der SageMaker AI-Konsole erstellen oder sie manuell erstellen und auf Amazon S3 hochladen. Weitere Informationen finden Sie unter [Einrichtung der Eingabedaten](sms-video-data-setup.md). 
+ Sie können nur private oder externe Arbeitsteams einsetzen, um Beschriftungsaufträge zur Objekterkennung für Videoframes zu erstellen. 
+ Sie geben Ihre Beschriftungen, Beschriftungskategorie und Rahmenattribute, den Aufgabentyp und die Arbeitsanweisungen in einer Beschriftungskategorie-Konfigurationsdatei an. Geben Sie den Aufgabentyp (Begrenzungsrahmen, Polylinien, Polygone oder Schlüsselpunkt) mit `annotationType` in Ihrer Konfigurationsdatei für die Beschriftungskategorie an. Weitere Informationen finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md), um zu erfahren, wie Sie diese Datei erstellen. 
+ Sie müssen vordefinierte Lambda-Funktionen ARNs für die Pre-Annotation und Post-Annotation (ACS) bereitstellen. Diese ARNs sind spezifisch für die AWS Region, in der Sie Ihren Labeling-Job erstellen. 
  + Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn). Verwenden Sie die Region, in der Sie Ihren Beschriftungsauftrag erstellen, um den richtigen ARN zu finden, der mit `PRE-VideoObjectDetection` endet. 
  + Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn). Verwenden Sie die Region, in der Sie Ihren Beschriftungsauftrag erstellen, um den richtigen ARN zu finden, der mit `ACS-VideoObjectDetection` endet. 
+ Die Anzahl der in `NumberOfHumanWorkersPerDataObject` angegebenen Auftragnehmer muss `1` sein. 
+ Das automatisierte Daten-Labeling wird für Beschriftungsaufträge für Videoframes nicht unterstützt. Geben Sie keine Werte für Parameter in `[LabelingJobAlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelingJobAlgorithmsConfig)` an. 
+ Beschriftungsauftrag der Objektverfolgung von Videoframes können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in `TaskTimeLimitInSeconds` festlegen (bis zu 7 Tage oder 604.800 Sekunden). 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3-)Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zur Erstellung eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). 

```
response = client.create_labeling_job(
    LabelingJobName='example-video-od-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://amzn-s3-demo-bucket/path/video-frame-sequence-input-manifest.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://amzn-s3-demo-bucket/prefix/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/prefix/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:us-east-1:*:workteam/private-crowd/*',
        'UiConfig': {
            'HumanTaskUiArn: 'arn:aws:sagemaker:us-east-1:394669845002:human-task-ui/VideoObjectDetection'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-VideoObjectDetection',
        'TaskKeywords': [
            'Video Frame Object Detection',
        ],
        'TaskTitle': 'Video frame object detection task',
        'TaskDescription': 'Classify and identify the location of objects and people in video frames',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-VideoObjectDetection'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

## Auftrag zur Objekterkennung, -anpassung oder -verifizierung für Videoframes erstellen
<a name="sms-video-od-adjustment"></a>

Sie können Beschriftungsverifizierungs- und Anpassungsaufträge über die Ground-Truth-Konsole oder die API `CreateLabelingJob` starten. Weitere Informationen zu Beschriftungsaufträgen zur Anpassung und Überprüfung sowie zu deren Erstellung finden Sie unter [Beschriftungsverifizierung und Anpassung](sms-verification-data.md).

## Format der Ausgabedaten
<a name="sms-video-od-output-data"></a>

Wenn Sie einen Vefolgungsbeschriftungsauftrag für Videoframes erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Auftragnehmer ihre Aufgaben abgeschlossen haben, werden die Beschriftungen an den Amazon S3-Ausgabespeicherort geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Informationen über das Format der Ausgabedaten der Videoframe-Objekterkennung finden Sie unter [Ausgabe der Video-Frame-Objekterkennung](sms-data-output.md#sms-output-video-object-detection). Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) mehr über das Ausgabedatenformat von Ground Truth. 

# Verfolgen von Objekten in Videoframes mithilfe der Videoframe-Objektverfolgung
<a name="sms-video-object-tracking"></a>

Sie können den Aufgabentyp Videoframe-Objektverfolgung verwenden, damit Auftragnehmer die Bewegung von Objekten in einer Sequenz von Videoframes (aus einem Video extrahierte Bilder) mithilfe von Begrenzungsrahmen, Polylinien, Polygonen oder Werkzeugen für *Keypoint-Anmerkungen* verfolgen. Das von Ihnen gewählte Tool definiert den Aufgabentyp für Videoframes, den Sie erstellen. Sie können z. B. den Aufgabentyp Bounding-Box-Videoframe zur Objektverfolgung verwenden, um Auftragnehmer zu bitten, die Bewegung von Objekten wie Autos, Fahrrädern und Fußgängern zu verfolgen, indem sie Rahmen um sie herum zeichnen. 

Sie stellen eine Liste mit Kategorien bereit, und jede Anmerkung, die ein Auftragnehmer zu einem Videoframe hinzufügt, wird anhand einer *Instance* dieser Kategorie identifiziert. Wenn Sie beispielsweise die Beschriftungskategorie Auto angeben, hat das erste Auto, das ein Auftragnehmer mit Anmerkungen versehen hat, die Instance-ID Auto:1. Das zweite Auto, das der Auftragnehmer anmerkt, hat die Instance-ID Auto:2. Um die Bewegung eines Objekts zu verfolgen, fügt der Auftragnehmer dem Objekt in allen Frames Anmerkungen hinzu, die derselben Instance-ID zugeordnet sind. 

Sie können mithilfe der Amazon SageMaker AI Ground Truth Konsole, der SageMaker API und AWS SDKs sprachspezifisch einen Job zur Objektverfolgung für Videoframes erstellen. Weitere Informationen hierzu finden Sie unter [Erstellen Sie einen Auftrag zur Erennung von Videoframe-Objekten](sms-video-object-detection.md#sms-video-od-create-labeling-job), und wählen Sie Ihr bevorzugten Methode. Weitere Informationen zu den Annotationstools, aus denen Sie bei der Erstellung eines Beschriftungsauftrags wählen können, finden Sie unter [Aufgabentypen](sms-video-overview.md#sms-video-frame-tools).

Ground Truth bietet eine Benutzeroberfläche und Tools für Auftragnehmer, mit denen Sie Ihre Beschriftungsauftragsaufgaben erledigen können: [Zeigen Sie eine Vorschau der Worker-Benutzeroberfläche an](sms-video-object-detection.md#sms-video-od-worker-ui).

Sie können einen Auftrag zur Anpassung von Anmerkungen erstellen, die in einem Beschriftungsauftrag zur Video-Objekterkennung erstellt wurden, indem Sie den Aufgabentyp Anpassung der Video-Objekterkennung verwenden. Weitere Informationen hierzu finden Sie unter [Auftrag zur Objekterkennung, -anpassung oder -verifizierung für Videoframes erstellen](sms-video-object-detection.md#sms-video-od-adjustment).

## Zeigen Sie eine Vorschau der Worker-Benutzeroberfläche an
<a name="sms-video-ot-worker-ui"></a>

Ground Truth stellt Auftragnehmern eine Web-Benutzeroberfläche (UI) zur Verfügung, mit der sie ihre Aufgaben zur Annotation von Videoframe-Objekten erledigen können. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen. Wenn Sie ein neuer Benutzer sind, empfehlen wir Ihnen, mithilfe eines kleinen Eingabedatensatzes einen Beschriftungsauftrag über die Konsole zu erstellen, um eine Vorschau der Auftragnehmer-Benutzeroberfläche anzuzeigen und sicherzustellen, dass Ihre Videoframes, Beschriftungen und Beschriftungsattribute erwartungsgemäß angezeigt werden. 

Die Benutzeroberfläche bietet Auftragnehmern die folgenden unterstützenden Tools zur Beschriftung, mit denen sie ihre Objektverfolgungsaufgaben erledigen können:
+ Für alle Aufgaben können Auftragnehmer die Funktionen **In nächstes kopieren** und **In alle kopieren** verwenden, um eine Anmerkung mit derselben eigenartigen ID in den nächsten Frame bzw. in alle nachfolgenden Frames zu kopieren. 
+ Bei Aufgaben, die die Bounding-Box-Tools beinhalten, können Auftragnehmer die Funktion **Nächstes vorhersagen** verwenden, um einen Begrenzungsrahmen in einem einzigen Frame zu zeichnen, und Ground Truth dann die Position von Boxen mit derselben einzigartigen ID in allen anderen Frames vorhersagen lassen. Auftragnehmer können dann Anpassungen vornehmen, um die vorhergesagte Position der Quader zu korrigieren. 

Das folgende Video zeigt, wie ein Auftragnehmer die Auftragnehmer-Benutzeroberfläche mit dem Bounding-Box-Tool verwenden kann, um Ihre Objektverfolgungsaufgaben zu erledigen.

![\[GIF, das zeigt, wie eine Arbeitskraft das Bounding-Box-Tool mit dem Feature „Nächstes vorhersagen“ verwenden kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/ot_predict_next.gif)


## Erstellen Sie einen Auftrag zur Verfolgungsbeschriftung von Videoframe-Objekten
<a name="sms-video-ot-create-labeling-job"></a>

Sie können mithilfe der SageMaker AI-Konsole oder der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)API-Operation einen Job zur Kennzeichnung von Videoframe-Objekten erstellen. 

In diesem Abschnitt wird davon ausgegangen, dass Sie das überprüft [Referenz für Aufträge zur Kennzeichnung von Video-Frames](sms-video-overview.md) und den Typ der Eingabedaten und die von Ihnen verwendete Verbindung zum Eingabedatensatz ausgewählt haben. 

### Erstellen eines Kennzeichnungsauftrags (Konsole)
<a name="sms-video-ot-create-labeling-job-console"></a>

Sie können den Anweisungen unter folgen[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um zu erfahren, wie Sie einen Videoframe-Objektverfolgungsauftrag in der SageMaker AI-Konsole erstellen. Wählen Sie in Schritt 10 aus der Dropdown-Liste für die **Aufgabenkategorie** die Option **Video – Objektverfolgung** aus. Wählen Sie den gewünschten Aufgabentyp aus, indem Sie unter **Aufgabenauswahl** eine der Karten auswählen.

![\[Ein GIF, das zeigt, wie ein Videoframe-Objektverfolgungsauftrag in der SageMaker AI-Konsole erstellt wird.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/task-type-vot.gif)


### Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-video-ot-create-labeling-job-api"></a>

Mithilfe der SageMaker API-Operation erstellen Sie einen Label-Job zur Objektverfolgung`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) 

[Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) bietet einen Überblick über die Operation `CreateLabelingJob`. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Sie müssen einen ARN für `HumanTaskUiArn` eingeben. Verwenden Sie `arn:aws:sagemaker:<region>:394669845002:human-task-ui/VideoObjectTracking`. Ersetzen Sie `<region>` durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. 

  Nehmen Sie keinen Eintrag für den `UiTemplateS3Uri` Parameter auf. 
+ Ihr [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName) muss mit `-ref` enden. Beispiel, `ot-labels-ref`. 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Sequenz-Manifestdatei handeln. Sie können diese Manifestdatei mit der SageMaker AI-Konsole erstellen oder sie manuell erstellen und auf Amazon S3 hochladen. Weitere Informationen finden Sie unter [Einrichtung der Eingabedaten](sms-video-data-setup.md). Wenn Sie einen Streaming-Beschriftungsauftrag erstellen, ist die Eingabe-Manifestdatei optional. 
+ Sie können nur private oder externe Arbeitsteams einsetzen, um Beschriftungsaufträge für die Objektverfolgung von Videoframes zu erstellen.
+ Sie geben Ihre Beschriftungen, Beschriftungskategorie und Rahmenattribute, den Aufgabentyp und die Arbeitsanweisungen in einer Beschriftungskategorie-Konfigurationsdatei an. Geben Sie den Aufgabentyp (Begrenzungsrahmen, Polylinien, Polygone oder Schlüsselpunkt) mit `annotationType` in Ihrer Konfigurationsdatei für die Beschriftungskategorie an. Weitere Informationen finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md), um zu erfahren, wie Sie diese Datei erstellen. 
+ Sie müssen vordefinierte Lambda-Funktionen ARNs für die Pre-Annotation und Post-Annotation (ACS) bereitstellen. Diese ARNs sind spezifisch für die AWS Region, in der Sie Ihren Labeling-Job erstellen. 
  + Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn). Verwenden Sie die Region, in der Sie Ihren Beschriftungsauftrag erstellen, um den richtigen ARN zu finden, der mit `PRE-VideoObjectTracking` endet. 
  + Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn). Verwenden Sie die Region, in der Sie Ihren Beschriftungsauftrag erstellen, um den richtigen ARN zu finden, der mit `ACS-VideoObjectTracking` endet. 
+ Die Anzahl der in `NumberOfHumanWorkersPerDataObject` angegebenen Auftragnehmer muss `1` sein. 
+ Das automatisierte Daten-Labeling wird für Beschriftungsaufträge für Videoframes nicht unterstützt. Geben Sie keine Werte für Parameter in `[LabelingJobAlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelingJobAlgorithmsConfig)` an. 
+ Beschriftungsauftrag der Objektverfolgung von Videoframes können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in `TaskTimeLimitInSeconds` festlegen (bis zu 7 Tage oder 604.800 Sekunden). 

Im Folgenden finden Sie ein Beispiel für eine [AWS -Python-SDK-(Boto3-)Anforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zur Erstellung eines Beschriftungsauftrags in der Region USA Ost (Nord-Virginia). 

```
response = client.create_labeling_job(
    LabelingJobName='example-video-ot-labeling-job,
    LabelAttributeName='label',
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': 's3://amzn-s3-demo-bucket/path/video-frame-sequence-input-manifest.json'
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://amzn-s3-demo-bucket/prefix/file-to-store-output-data',
        'KmsKeyId': 'string'
    },
    RoleArn='arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri='s3://bucket/prefix/label-categories.json',
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': 'arn:aws:sagemaker:us-east-1:*:workteam/private-crowd/*',
        'UiConfig': {
            'HumanTaskUiArn: 'arn:aws:sagemaker:us-east-1:394669845002:human-task-ui/VideoObjectTracking'
        },
        'PreHumanTaskLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:PRE-VideoObjectTracking',
        'TaskKeywords': [
            'Video Frame Object Tracking,
        ],
        'TaskTitle': 'Video frame object tracking task',
        'TaskDescription': Tracking the location of objects and people across video frames',
        'NumberOfHumanWorkersPerDataObject': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'MaxConcurrentTaskCount': 123,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': 'arn:aws:lambda:us-east-1:432418664414:function:ACS-VideoObjectTracking'
        },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
```

## Erstellen Sie einen Auftrag zur Anpassung oder Überprüfung der Beschriftung von Video-Frame-Objektverfolgung
<a name="sms-video-ot-adjustment"></a>

Sie können Beschriftungsverifizierungs- und Anpassungsaufträge über die Ground Truth-Konsole oder die `CreateLabelingJob` API starten. Weitere Informationen zu Beschriftungsaufträgen zur Anpassung und Überprüfung sowie zu deren Erstellung finden Sie unter [Beschriftungsverifizierung und Anpassung](sms-verification-data.md).

## Format der Ausgabedaten
<a name="sms-video-ot-output-data"></a>

Wenn Sie einen Beschriftungsauftrag der Objektverfolgung von Videoframes erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Auftragnehmer ihre Aufgaben abgeschlossen haben, werden die Beschriftungen an den Amazon S3-Ausgabeort geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Weitere Informationen über das Ausgabeformat der Video-Frame-Objektverfolgung finden Sie unter [Ausgabe der Video-Frame-Objektverfolgung](sms-data-output.md#sms-output-video-object-tracking). Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) mehr über das Ausgabedatenformat von Ground Truth. 

# Referenz für Aufträge zur Kennzeichnung von Video-Frames
<a name="sms-video-overview"></a>

Auf dieser Seite erfahren Sie mehr über die Aufgaben zur Kennzeichnung von Videoframes zur Objekterkennung und Objektverfolgung. Die Informationen auf dieser Seite gelten für diese beiden integrierten Aufgabentypen. 

Der Job zur Kennzeichnung von Videobildern ist aus folgenden Gründen einzigartig:
+ Sie können entweder Datenobjekte bereitstellen, die zur Kommentierung bereit sind (Videoframes), oder Sie können Videodateien bereitstellen und Ground Truth automatisch Videoframes extrahieren lassen. 
+ Auftragnehmer haben die Möglichkeit, ihre Arbeit unterwegs zu speichern. 
+ Sie können die Amazon Mechanical Turk Belegschaft nicht für die Erledigung Ihrer Etikettierungsaufgaben einsetzen. 
+ Ground Truth bietet eine Benutzeroberfläche für Auftragnehmer sowie unterstützende und grundlegende Kennzeichnungstools, mit denen Auftragnehmer Ihre Aufgaben erledigen können. Sie müssen keine Vorlage für eine Arbeitsaufgabe bereitstellen. 

In den folgenden Themen erfahren Sie mehr über das Kennzeichnen von Video-Frames.

**Topics**
+ [Eingabedaten](#sms-video-input-overview)
+ [Ausführungszeiten des Jobs](#sms-video-job-completion-times)
+ [Aufgabentypen](#sms-video-frame-tools)
+ [Arbeitskräfte](#sms-video-workforces)
+ [Benutzeroberfläche (UI) für Auftragnehmer](#sms-video-worker-task-ui)
+ [Anforderungen an die Genehmigung von Video-Frame-Aufträgen](#sms-security-permission-video-frame)

## Eingabedaten
<a name="sms-video-input-overview"></a>

Der Job zur Kennzeichnung von Videobildern verwendet *Sequenzen* von Videobildern. Eine einzelne Sequenz ist eine Reihe von Bildern, die aus einem einzigen Video extrahiert wurden. Sie können entweder Ihre eigenen Videoframesequenzen bereitstellen oder Ground Truth automatisch Videoframesequenzen aus Ihren Videodateien extrahieren lassen. Weitere Informationen hierzu finden Sie unter [Videodateien zur Verfügung stellen](sms-point-cloud-video-input-data.md#sms-point-cloud-video-frame-extraction).

Ground Truth verwendet Sequenzdateien, um alle Bilder in einer einzigen Sequenz zu identifizieren. Alle Sequenzen, die Sie in einen einzelnen Kennzeichnungsauftrag aufnehmen möchten, werden in einer Eingabemanifestdatei identifiziert. Jede Sequenz wird verwendet, um eine einzelne Worker-Aufgabe zu erstellen. Mit der automatischen Ground-Truth-Dateneinrichtung können Sie automatisch Sequenzdateien und eine Eingabemanifestdatei erstellen. Weitere Informationen hierzu finden Sie unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md). 

Informationen zum manuellen Erstellen von Sequenzdateien und einer Eingabemanifestdatei finden Sie unter [Erstellen einer Videoframe-Eingangsmanifestdatei](sms-video-manual-data-setup.md#sms-video-create-manifest). 

## Ausführungszeiten des Jobs
<a name="sms-video-job-completion-times"></a>

Die Bearbeitung von Aufträgen zur Kennzeichnung von Videos und Videorahmen kann Stunden in Anspruch nehmen. Sie können die Gesamtdauer festlegen, die Auftragnehmer an den einzelnen Aufgaben arbeiten können, wenn Sie einen Kennzeichnungsauftrag erstellen. Die maximale Zeit, die Sie festlegen können, die Auftragnehmer an Aufgaben arbeiten, beträgt 7 Tage. Der Standardwert lautet 3 Tage. 

Wir empfehlen dringend, dass Sie Aufgaben erstellen, die die Auftragnehmer innerhalb von 12 Stunden erledigen können. Auftragnehmer müssen die Benutzeroberfläche für Auftragnehmer während der Arbeit an einer Aufgabe geöffnet lassen. Sie können ihre Arbeit speichern, während sie arbeiten, und Ground Truth speichert ihre Arbeit alle 15 Minuten.

Wenn Sie den SageMaker `CreateLabelingJob` KI-API-Vorgang verwenden, legen Sie im `TaskTimeLimitInSeconds` Parameter von fest, wie lange eine Aufgabe den Mitarbeitern insgesamt zur Verfügung steht`HumanTaskConfig`.

Wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen, können Sie dieses Zeitlimit angeben, wenn Sie Ihren Arbeitskrafttyp und Ihr Arbeitsteam auswählen.

## Aufgabentypen
<a name="sms-video-frame-tools"></a>

Wenn Sie einen Kennzeichnungsauftrag zur Videoobjektverfolgung oder zur Erkennung von Videoobjekten erstellen, geben Sie die Art der Anmerkung an, die Auftragnehmer bei der Bearbeitung Ihrer Labeling-Aufgabe erstellen sollen. Der Annotationstyp bestimmt den Typ der Ausgabedaten, die Ground Truth zurückgibt, und definiert den *Aufgabentyp* für Ihre Labeling-Aufgabe. 

Wenn Sie einen Kennzeichnungsauftrag mithilfe der API-Operation erstellen [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html), geben Sie den Aufgabentyp mithilfe des Parameters der Kennzeichnungskategorie-Konfigurationsdatei `annotationType` an. Weitere Informationen hierzu finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md).

Die folgenden Aufgabentypen sind sowohl für Kennzeichnungsaufträge zur Videoobjektverfolgung als auch zur Erkennung von Videoobjekten verfügbar: 
+ **Begrenzungsrahmen** – Den Auftragnehmern stehen Tools zur Verfügung, mit denen sie Begrenzungsrahmen-Anmerkungen erstellen können. Ein Begrenzungsrahmen ist ein Rahmen, den ein Auftragnehmer um ein Objekt herum zeichnet, um die Pixelposition und die Kennzeichnung des Objekts im Rahmen zu identifizieren. 
+ **Polylinie** – Den Auftragnehmern stehen Werkzeuge zur Verfügung, mit denen sie Polylinien-Anmerkungen erstellen können. Eine Polylinie wird durch die Reihe von geordneten XY-Koordinaten definiert. Jeder der Polylinie hinzugefügte Punkt ist durch eine Linie mit dem vorherigen Punkt verbunden. Die Polylinie muss nicht geschlossen sein (Start- und Endpunkt müssen nicht identisch sein), und es gibt keine Einschränkungen in Bezug auf die Winkel, die zwischen den Linien gebildet werden. 
+ **Polygon** – Den Auftragnehmern stehen Werkzeuge zur Verfügung, mit denen sie Polygon-Anmerkungen erstellen können. Ein Polygon ist eine geschlossene Form, die durch eine Reihe von geordneten XY-Koordinaten definiert wird. Jeder Punkt, der dem Polygon hinzugefügt wird, ist durch eine Linie mit dem vorherigen Punkt verbunden, und es gibt keine Einschränkungen in Bezug auf die Winkel, die zwischen den Linien gebildet werden. Zwei Linien (Seiten) des Polygons können sich nicht kreuzen. Der Start- und Endpunkt eines Polygons müssen identisch sein. 
+ **Keypoint** – Den Auftragnehmern stehen Werkzeuge zur Verfügung, mit denen sie Keypoint-Anmerkungen erstellen können. Ein Keypoint ist ein einzelner Punkt, der einer XY-Koordinate im Videoframe zugeordnet ist.

## Arbeitskräfte
<a name="sms-video-workforces"></a>

Wenn Sie einen Auftrag zur Beschriftung von Videobildern erstellen, müssen Sie ein Arbeitsteam angeben, das die Kennzeichnungsaufträge ausführt. Sie können ein Arbeitsteam aus privaten Arbeitskräften Ihrer eigenen Mitarbeiter oder aus Anbieterarbeitskräften auswählen, die Sie in AWS Marketplace auswählen. Sie können die Belegschaft von Amazon Mechanical Turk nicht für die Kennzeichnung von Videobildern einsetzen. 

Weitere Informationen zu Anbieterarbeitskräften finden Sie unter [Abonnieren von Arbeitskräften eines Anbieters](sms-workforce-management-vendor.md).

Informationen zum Erstellen und Verwalten privater Arbeitskräfte finden Sie unter [Private Arbeitskräfte](sms-workforce-private.md).

## Benutzeroberfläche (UI) für Auftragnehmer
<a name="sms-video-worker-task-ui"></a>

Ground Truth bietet eine Benutzeroberfläche (UI), Werkzeuge und unterstützende Kennzeichnungsfeatures, die den Auftragnehmern helfen, Ihre VideoLabeling-Aufgaben zu erledigen. Sie können eine Vorschau der Benutzeroberfläche für Auftragnehmer anzeigen, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen.

Wenn Sie einen Beschriftungsauftrag mit der API-Operation `CreateLabelingJob` erstellen, müssen Sie eine von Ground Truth bereitgestellte ARN im Parameter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-UiTemplateS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-UiTemplateS3Uri) angeben, um die Auftragnehmer UI für Ihren Aufgabentyp zu spezifizieren. Sie können den SageMaker [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html)AI-API-Vorgang verwenden`HumanTaskUiArn`, um eine Vorschau der Worker-Benutzeroberfläche anzuzeigen. 

Sie stellen den Auftragnehmern Anweisungen, Kennzeichnungen und optional Attribute zur Verfügung, anhand derer die Auftragnehmer weitere Informationen zu Kennzeichnungen und Videoframes bereitstellen können. Diese Attribute werden als Kennzeichnungskategorie-Attribute bzw. Frame-Attribute bezeichnet. Sie werden alle in der Worker-Benutzeroberfläche angezeigt.

### Kennzeichnungskategorie- und Frame-Attribute
<a name="sms-video-label-attributes"></a>

Wenn Sie einen Kennzeichnungsauftrag zur Verfolgung von Videoobjekten oder zur Erkennung von Videoobjekten erstellen, können Sie ein oder mehrere *Kennzeichnungskategorieattribute* und *Frame-Attribute* hinzufügen:
+ **Kennzeichnungskategorieattribut** – Eine Liste mit Optionen (Zeichenketten), ein Textfeld in freier Form oder ein numerisches Feld, das einer oder mehreren Beschriftungen zugeordnet ist. Es wird von Auftragnehmern verwendet, um Metadaten zu einer Kennzeichnung bereitzustellen. 
+ **Frame-Attribut** – Eine Liste von Optionen (Zeichenketten), ein Textfeld in freier Form oder ein numerisches Feld, das auf jedem Videoframe erscheint, den ein Worker mit Anmerkungen versehen soll. Es wird von Auftragnehmern verwendet, um Metadaten zu Videoframes bereitzustellen. 

Darüber hinaus können Sie Kennzeichnungs- und Frame-Attribute verwenden, damit Auftragnehmer Kennzeichnungen in einem Job zur Überprüfung von Videoframe-Kennzeichnungen überprüfen lassen. 

In den folgenden Abschnitten erfahren Sie mehr über diese Attribute. Um zu erfahren, wie Sie Kennzeichnungskategorien und Rahmenattribute zu einem **Kennzeichnungsauftrag** hinzufügen können, verwenden Sie die Abschnitte Kennzeichnungsauftrag erstellen auf der [Aufgabentypseite](sms-video-task-types.md) Ihrer Wahl.

#### Attribute der Beschriftungskategorie
<a name="sms-video-label-category-attributes"></a>

Fügen Sie Labelkategorieattribute zu Beschriftungen hinzu, damit Auftragnehmer mehr Informationen zu den von ihnen erstellten Anmerkungen angeben können. Ein Label-Kategorieattribut wird einem einzelnen Etikett oder allen Labels hinzugefügt. Wenn ein Labelkategorieattribut auf alle Beschriftungen angewendet wird, wird es als *globales Labelkategorieattribut* bezeichnet. 

Wenn Sie z. B. die Kategorie *Auto* hinzufügen, möchten Sie vielleicht auch zusätzliche Daten über Ihre beschrifteten Autos erfassen, z. B. ob sie verdeckt sind oder wie groß das Auto ist. Sie können diese Metadaten mithilfe von Beschriftungskategorieattributen erfassen. Wenn Sie in diesem Beispiel das Attribut *verdeckt* zur Fahrzeugkennzeichnungskategorie hinzugefügt haben, können Sie dem *verdeckten* Attribut *teilweise*, *vollständig* oder *Nein* zuweisen und Auftragnehmern die Möglichkeit geben, eine dieser Optionen auszuwählen. 

Wenn Sie einen Auftrag zur Kennzeichnungsverifizierung erstellen, fügen Sie jeder Kennzeichnung, welche Auftragnehmer überprüfen sollen, Attribute der Kategorie Etiketten hinzu.

#### Attribute auf Frame-Ebene
<a name="sms-video-frame-attributes"></a>

Fügen Sie Frame-Attribute hinzu, um Auftragnehmern die Möglichkeit zu geben, mehr Informationen zu einzelnen Videoframes bereitzustellen. Jedes hinzugefügte Frame-Attribut wird auf allen Frames angezeigt. 

Sie können beispielsweise ein Zahlenrahmen-Attribut hinzufügen, damit Auftragnehmer die Anzahl der Objekte angeben können, die sie in einem bestimmten Rahmen sehen. 

In einem anderen Beispiel möchten Sie vielleicht ein Textfeld in freier Form bereitstellen, damit Auftragnehmer eine Antwort auf eine Frage geben können. 

Wenn Sie einen Auftrag zur Kennzeichnungsverifizierung erstellen, können Sie ein oder mehrere Frame-Attribute hinzufügen, um Auftragnehmer zu bitten, Feedback zu allen Kennzeichnungen in einem Videoframe zu geben.

### Anweisungen für Arbeitnehmer
<a name="sms-video-worker-instructions-general"></a>

Sie können Ihren Auftragnehmer Anweisungen zur Verfügung stellen, damit sie die Aufgaben zur Kennzeichnung der Videobilder erledigen können. Möglicherweise möchten Sie beim Verfassen Ihrer Anweisungen die folgenden Themen behandeln: 
+ Bewährte Methoden und Dinge, die beim Beschriften von Objekten zu vermeiden sind.
+ Die zur Verfügung gestellten Attribute der Kennzeichnungskategorie (für Objekterkennungs- und Objektverfolgungsaufgaben) und wie sie zu verwenden sind.
+ Zeitersparnis bei der Kennzeichnung durch die Verwendung von Tastaturkürzeln. 

Sie können Ihre Worker-Anweisungen mithilfe der SageMaker AI-Konsole hinzufügen, während Sie einen Labeling-Job erstellen. Wenn Sie einen Kennzeichnungsauftrag mithilfe der API-Operation `CreateLabelingJob` erstellen, geben Sie Auftragnehmeranweisungen in der Konfigurationsdatei der Beschriftungskategorie an. 

Zusätzlich zu Ihren Anweisungen stellt Ground Truth einen Link zur Verfügung, der den Auftragnehmern bei der Navigation und Nutzung des Worker-Portals hilft. Zeigen Sie diese Anweisungen an, indem Sie den Aufgabentyp auf [Anweisungen für Auftragnehmer](sms-video-worker-instructions.md) auswählen.

### Ablehnen von Aufgaben
<a name="sms-decline-task-video"></a>

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 Auftragnehmer pro Datensatzobjekt ([https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-NumberOfHumanWorkersPerDataObject](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-NumberOfHumanWorkersPerDataObject)) die Aufgabe ablehnt, wird das Datenobjekt als abgelaufen markiert und nicht an weitere Auftragnehmer gesendet.

## Anforderungen an die Genehmigung von Video-Frame-Aufträgen
<a name="sms-security-permission-video-frame"></a>

Wenn Sie einen Auftrag zur Kennzeichnung von Videobildern erstellen, müssen Sie zusätzlich zu den Berechtigungsanforderungen, die unter [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md) zu finden sind, eine CORS-Richtlinie zu Ihrem S3-Bucket hinzufügen, das Ihre Eingabemanifestdatei enthält. 

### CORS-Berechtigungsrichtlinie für Ihren S3-Bucket
<a name="sms-permissions-add-cors-video-frame"></a>

Wenn Sie einen Videobildkennzeichnungsauftrag erstellen, geben Sie in S3 Buckets an, in denen sich Ihre Eingabedaten und die Manifestdatei befinden und in denen Ihre Ausgabedaten gespeichert werden. Diese Buckets können gleich sein. Sie müssen Ihren Eingabe- und Ausgabebereichen die folgende CORS-Richtlinie (Cross-origin resource sharing) zuordnen. Wenn Sie die Amazon S3-Konsole verwenden, um die Richtlinie zu Ihrem Bucket hinzuzufügen, müssen Sie das JSON-Format verwenden.

**JSON**

```
[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "GET",
            "HEAD",
            "PUT"
        ],
        "AllowedOrigins": [
            "*"
        ],
        "ExposeHeaders": [
            "Access-Control-Allow-Origin"
        ],
        "MaxAgeSeconds": 3000
    }
]
```

**XML**

```
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>HEAD</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <ExposeHeader>Access-Control-Allow-Origin</ExposeHeader>
    <AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
```

Wie Sie eine CORS-Richtlinie zu einem S3-Bucket hinzufügen können, erfahren Sie unter [ Wie füge ich eine domainübergreifende Ressourcenfreigabe mit CORS hinzu?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html) im Amazon Simple Storage Service User Guide.

# Anweisungen für Auftragnehmer
<a name="sms-video-worker-instructions"></a>

Dieses Thema bietet einen Überblick über das Ground Truth-Worker-Portal und die verfügbaren Tools zum Durchführen Ihrer Labeling-Aufgabe für Video-Frames. Wählen Sie zunächst die Art der Aufgabe, an der Sie arbeiten, unter **Themen** aus.

**Wichtig**  
Es wird empfohlen, für die Aufgabe einen Google Chrome- oder Firefox-Webbrowser zu verwenden. 

Wählen Sie für Anpassungsaufträge den ursprünglichen Aufgabentyp des Kennzeichnungsauftrags aus, der die Beschriftungen erstellt hat, die Sie anpassen. Überprüfen und passen Sie die Beschriftungen in Ihrer Aufgabe nach Bedarf an.

**Topics**
+ [Navigieren der Benutzeroberfläche](sms-video-worker-instructions-worker-ui-ot.md)
+ [Massenbearbeitung von Kennzeichnungs- und Frame-Attributen](sms-video-frame-worker-instructions-ot-bulk-edit.md)
+ [Tool Guide](sms-video-worker-instructions-tool-guide.md)
+ [Symbolhandbuch](sms-video-worker-instructions-ot-icons.md)
+ [Shortcuts](sms-video-worker-instructions-ot-hot-keys.md)
+ [Grundlegendes zu den Optionen zum Freigeben, Anhalten, Fortsetzen und Ablehnen von Aufgaben](sms-video-worker-instructions-skip-reject-ot.md)
+ [Speichern Ihrer Arbeit und Übermitteln](sms-video-worker-instructions-saving-work-ot.md)
+ [Aufgaben zur Objektverfolgung mit Video-Frames](sms-video-ot-worker-instructions.md)
+ [Aufgaben zur Objekterkennung in Videoframes](sms-video-od-worker-instructions.md)

# Navigieren der Benutzeroberfläche
<a name="sms-video-worker-instructions-worker-ui-ot"></a>

Sie können mit der Navigationsleiste in der linken unteren Ecke der Benutzeroberfläche zwischen Video-Frames navigieren. 

Verwenden Sie die Wiedergabe-Schaltfläche, um sich automatisch durch die gesamte Frame-Sequenz zu bewegen. 

Verwenden Sie die Schaltflächen „Nächster Frame“ und „Vorheriger Frame“, um jeweils einen Frame vor oder zurück zu gehen. Sie können auch eine Frame-Nummer eingeben, um zu diesem Frame zu navigieren. 



Das folgende Video zeigt, wie Sie zwischen Video-Frames navigieren. 

![\[GIF, das zeigt, wie Sie zwischen Video-Frames navigieren\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/nav_video_ui.gif)


Sie können alle Video-Frames vergrößern und verkleinern. Sobald Sie in einen Video-Frame hineingezoomt haben, können Sie sich mithilfe des Verschieben-Symbols in diesem Frame bewegen. Wenn Sie in einem einzelnen Video-Frame eine neue Ansicht einrichten, indem Sie innerhalb dieses Frames zoomen und sich darin bewegen, werden alle Video-Frames auf dieselbe Ansicht eingestellt. Mit dem Symbol „Bildschirm anpassen“ können Sie alle Video-Frames auf ihre ursprüngliche Ansicht zurücksetzen. Weitere Anzeigeoptionen finden Sie unter [Symbolhandbuch](sms-video-worker-instructions-ot-icons.md). 

Wenn Sie sich in der Benutzeroberfläche für Auftragnehmer befinden, werden die folgenden Menüs angezeigt:
+ **Anweisungen** – Lesen Sie diese Anweisungen, bevor Sie mit der Aufgabe beginnen. Wählen Sie außerdem **Weitere Anweisungen** und lesen Sie sich diese Anweisungen durch. 
+ **Shortcuts** – Verwenden Sie dieses Menü, um Tastaturkürzel anzuzeigen, mit denen Sie in Video-Frames navigieren und die bereitgestellten Tools verwenden können. 
+ **Hilfe** – Verwenden Sie diese Option, um auf diese Dokumentation zurückzugreifen. 

# Massenbearbeitung von Kennzeichnungs- und Frame-Attributen
<a name="sms-video-frame-worker-instructions-ot-bulk-edit"></a>

Sie können Kennzeichnungsattribute und Frame-Attribute (Attribute) gleichzeitig bearbeiten. 

Wenn Sie ein Attribut gleichzeitig bearbeiten, geben Sie einen oder mehrere Frame-Bereiche an, auf die Sie die Bearbeitung anwenden möchten. Das von Ihnen ausgewählte Attribut wird in allen Frames in diesem Bereich bearbeitet, einschließlich der von Ihnen angegebenen Start- und End-Frames. Bei der Massenbearbeitung von Beschriftungsattributen *muss* der angegebene Bereich die Beschriftung enthalten, der das Beschriftungsattribut zugeordnet ist. Wenn Sie Frames angeben, die diese Beschriftung nicht enthalten, wird eine Fehlermeldung angezeigt. 

Bei der Massenbearbeitung eines Attributs *müssen* Sie zuerst den gewünschten Wert für das Attribut angeben. Wenn Sie beispielsweise ein Attribut von *Ja* in *Nein* ändern möchten, müssen Sie *Nein* auswählen und dann die Massenbearbeitung durchführen. 

Sie können auch einen neuen Wert für ein Attribut angeben, das noch nicht ausgefüllt wurde, und dann die Funktion zur Massenbearbeitung verwenden, um diesen Wert in mehreren Frames einzugeben. Wählen Sie dazu den gewünschten Wert für das Attribut aus und führen Sie die folgenden Schritte aus. 

**Zur Massenbearbeitung einer Beschriftung oder eines Attributs:**

1. Klicken Sie mit der rechten Maustaste auf das Attribut, für das Sie die Massenbearbeitung durchführen möchten.

1. Geben Sie mithilfe eines Gedankenstrichs (`-`) im Textfeld den Bereich der Frames an, auf den Sie die Massenbearbeitung anwenden möchten. Wenn Sie die Bearbeitung beispielsweise auf die Frames eins bis zehn anwenden möchten, geben Sie `1-10` ein. Wenn Sie die Bearbeitung auf die Frames zwei bis fünf, acht bis zehn und zwanzig anwenden möchten, geben Sie ein `2-5,8-10,20`.

1. Wählen Sie **Bestätigen** aus.

Wenn Sie eine Fehlermeldung erhalten, überprüfen Sie, ob Sie einen gültigen Bereich eingegeben haben und ob die Beschriftung, die mit dem Beschriftungsattribut verknüpft ist, das Sie bearbeiten (falls zutreffend), in allen angegebenen Frames vorhanden ist.

Mit den Optionen **In vorherige Frames duplizieren** und **In nächste Frames duplizieren** im Menü **Beschriftung** oben auf dem Bildschirm können Sie allen vorherigen oder nachfolgenden Frames schnell eine Beschriftung hinzufügen. 

# Tool Guide
<a name="sms-video-worker-instructions-tool-guide"></a>

Ihre Aufgabe umfasst ein oder mehrere Tools. Das bereitgestellte Tool bestimmt die Art der Anmerkungen, die Sie erstellen, um Objekte zu identifizieren und zu verfolgen. In der folgenden Tabelle erfahren Sie mehr über jedes der bereitgestellten Tools. 


****  

| Tool | Symbol | Action | Description | 
| --- | --- | --- | --- | 
|  Begrenzungsrahmen  |  ![\[Bounding Box-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Bounding%20Box.png)  |  Fügen Sie eine Anmerkung zu einem Begrenzungsrahmen hinzu.  |  Wählen Sie dieses Symbol aus, um einen Begrenzungsrahmen hinzuzufügen. Jeder Begrenzungsrahmen, den Sie hinzufügen, ist mit der Kategorie verknüpft, die Sie im Dropdown-Menü „Beschriftungskategorie“ ausgewählt haben. Wählen Sie den Begrenzungsrahmen oder die zugehörige Beschriftung aus, um ihn anzupassen.   | 
| Nächste voraussagen |  ![\[Symbol Nächstes vorhersagen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/PredictNext.png)  |  Sagen Sie die Begrenzungsrahmen im nächsten Frame voraus.  |  Wählen Sie einen Begrenzungsrahmen aus und wählen Sie dann dieses Symbol, um die Position dieses Rahmens im nächsten Frame vorauszusagen. Sie können das Symbol mehrmals hintereinander auswählen, um die Position des Quaders in mehreren Frames automatisch zu ermitteln. Wählen Sie dieses Symbol beispielsweise fünfmal aus, um die Position eines Begrenzungsrahmens in den nächsten 5 Frames vorauszusagen.   | 
|  Schlüsselpunkte  |  ![\[Keypoint-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Keypoint.png)  |  Fügen Sie eine Schlüsselpunkt-Anmerkung hinzu.  |  Wählen Sie dieses Symbol, um einen Schlüsselpunkt hinzuzufügen. Klicken Sie auf ein Objekt im Bild, um den Schlüsselpunkt an dieser Stelle zu platzieren.  Jeder Schlüsselpunkt, den Sie hinzufügen, ist mit der Kategorie verknüpft, die Sie aus dem Dropdown-Menü „Beschriftungskategorie“ auswählen. Wählen Sie einen Schlüsselpunkt oder die zugehörige Beschriftung aus, um ihn anzupassen.   | 
|  Polyline  |  ![\[Polylinie-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/polyline.png)  |  Fügen Sie eine Polylinien-Anmerkung hinzu.  |  Wählen Sie dieses Symbol, um eine Polylinie hinzuzufügen. Um eine Polylinie hinzuzufügen, klicken Sie kontinuierlich um das gewünschte Objekt, um neue Punkte hinzuzufügen. Um das Zeichnen einer Polylinie zu beenden, wählen Sie den letzten Punkt aus, den Sie ein zweites Mal platziert haben (dieser Punkt wird grün), oder drücken die **Eingabetaste** auf der Tastatur.  Jeder der Polylinie hinzugefügten Punkte ist durch eine Linie mit dem vorherigen Punkt verbunden. Die Polylinie muss nicht geschlossen sein (Start- und Endpunkt müssen nicht identisch sein), und es gibt keine Einschränkungen in Bezug auf die Winkel, die zwischen den Linien gebildet werden.  Jede Polylinie, die Sie hinzufügen, ist mit der Kategorie verknüpft, die Sie aus dem Dropdown-Menü „Beschriftungskategorie“ auswählen. Wählen Sie die Polylinie oder die zugehörige Beschriftung aus, um sie anzupassen.   | 
|  Polygon  |  ![\[Polygon-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Polygon.png)  |  Fügen Sie eine Polygon-Anmerkung hinzu.  |  Wählen Sie dieses Symbol aus, um eine Polygon hinzuzufügen. Um ein Polygon hinzuzufügen, klicken Sie kontinuierlich auf das gewünschte Objekt, um neue Punkte hinzuzufügen. Um das Zeichnen des Polygons zu beenden, wählen Sie den Startpunkt aus (dieser Punkt wird grün).  Ein Polygon ist eine geschlossene Form, die durch eine Reihe von Punkten definiert wird, die Sie platzieren. Jeder Punkt, der dem Polygon hinzugefügt wird, ist durch eine Linie mit dem vorherigen Punkt verbunden, und es gibt keine Einschränkungen in Bezug auf die Winkel, die zwischen den Linien gebildet werden. Start- und Endpunkt müssen identisch sein.  Jedes Polygon, das Sie hinzufügen, ist mit der Kategorie verknüpft, die Sie aus dem Dropdown-Menü „Beschriftungskategorie“ auswählen. Wählen Sie das Polygon oder die zugehörige Beschriftung aus, um sie anzupassen.   | 
|  In nächsten kopieren  |  ![\[Symbol In nächsten kopieren\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/copy_to_next.png)  |  Kopiert Anmerkungen in den nächsten Frame.   |  Wenn eine oder mehrere Anmerkungen im aktuellen Frame ausgewählt sind, werden diese Anmerkungen in den nächsten Frame kopiert. Wenn keine Anmerkungen ausgewählt sind, werden alle Anmerkungen im aktuellen Frame in den nächsten Frame kopiert.   | 
|  In alle kopieren  |  ![\[Symbol In alle kopieren\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/copy_to_all.png)  |  Kopiert Anmerkungen in alle nachfolgenden Frames.  |  Wenn eine oder mehrere Anmerkungen im aktuellen Frame ausgewählt sind, werden diese Anmerkungen in alle nachfolgenden Frames kopiert. Wenn keine Anmerkungen ausgewählt sind, werden alle Anmerkungen im aktuellen Frame in alle nachfolgenden Frames kopiert.   | 

# Symbolhandbuch
<a name="sms-video-worker-instructions-ot-icons"></a>

In dieser Tabelle erfahren Sie mehr über die Symbole, die in der Benutzeroberfläche angezeigt werden. Sie können einige dieser Symbole mithilfe der Tastaturkürzel im Menü **Shortcuts** automatisch auswählen. 


| Symbol | Action  | Description | 
| --- | --- | --- | 
|  ![\[Symbol Helligkeit\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Brightness.png)  |  Helligkeit  |  Wählen Sie dieses Symbol, um die Helligkeit aller Video-Frames anzupassen.   | 
|  ![\[Kontrast-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Contrast.png)  |  Kontrast  |  Wählen Sie dieses Symbol, um den Kontrast aller Video-Frames anzupassen.   | 
|  ![\[Hineinzoomen-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Zoom-in.png)  |  Hineinzoomen  |  Wählen Sie dieses Symbol, um in alle Video-Frames hineinzuzoomen.  | 
|  ![\[Herauszoomen-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Zoom-out.png)  |  Herauszoomen  |  Wählen Sie dieses Symbol, um aus allen Video-Frames herauszuzoomen.   | 
|  ![\[Verschieben-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Move.png)  |  Bildschirm verschieben  |  Nachdem Sie in einen Video-Frame hineingezoomt haben, wählen Sie dieses Symbol, um sich in diesem Video-Frame zu bewegen. Sie können sich mit der Maus im Video-Frame bewegen, indem Sie auf den Frame klicken und ihn in die gewünschte Richtung ziehen. Dadurch wird die Ansicht in allen Ansichts-Frames geändert.  | 
|  ![\[Symbol Bildschirm anpassen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Fit%20screen.png)  | Bildschirm anpassen |  Setzt alle Video-Frames auf ihre ursprüngliche Position zurück.   | 
|  ![\[Rückgängig-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Undo.png)  | Rückgängig |  Macht eine Aktion rückgängig. Sie können dieses Symbol verwenden, um einen Begrenzungsrahmen zu entfernen, den Sie gerade hinzugefügt haben, oder um eine Anpassung rückgängig zu machen, die Sie an einem Begrenzungsrahmen vorgenommen haben.   | 
|  ![\[Wiederherstellen-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Redo.png)  | Wiederholen | Wiederholt eine Aktion, die mit dem Symbol „Rückgängig“ rückgängig gemacht wurde. | 
|  ![\[Symbol Kennzeichnungen löschen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Delete.png)  | Beschriftung löschen | Löschen Sie eine Beschriftung. Dadurch wird der mit der Beschriftung verknüpfte Begrenzungsrahmen in einem einzelnen Frame gelöscht.  | 
|  ![\[Symbol Beschriftung ein- oder ausblenden\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Show_Hide.png)  | Beschriftung ein- oder ausblenden | Wählen Sie dieses Symbol, um eine Beschriftung anzuzeigen, die ausgeblendet wurde. Wenn dieses Symbol mit einem Schrägstrich versehen ist, wählen Sie es aus, um die Beschriftung auszublenden.  | 
|  ![\[Bearbeiten-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/Edit.png)  | Beschriftung bearbeiten | Wählen Sie dieses Symbol, um das Menü Instance bearbeiten zu öffnen. Verwenden Sie dieses Menü, um eine Beschriftungskategorie und eine ID zu bearbeiten und Kennzeichnungsattribute hinzuzufügen oder zu bearbeiten.  | 

# Shortcuts
<a name="sms-video-worker-instructions-ot-hot-keys"></a>

Mithilfe der im Menü **Shortcuts** aufgeführten Tastaturkürzel können Sie schnell Symbole auswählen, Anmerkungen rückgängig machen und wiederherstellen sowie Tools zum Hinzufügen und Bearbeiten von Anmerkungen verwenden. Wenn Sie beispielsweise einen Begrenzungsrahmen hinzugefügt haben, können Sie mit **P** die Position dieses Rahmens in nachfolgenden Frames schnell voraussagen. 

Bevor Sie Ihre Aufgabe starten, wird empfohlen, sich das Menü **Shortcuts** anzusehen und sich mit diesen Befehlen vertraut zu machen.

# Grundlegendes zu den Optionen zum Freigeben, Anhalten, Fortsetzen und Ablehnen von Aufgaben
<a name="sms-video-worker-instructions-skip-reject-ot"></a>

Wenn Sie die Labeling-Aufgabe öffnen, können Sie die Aufgabe über drei Schaltflächen oben rechts ablehnen (**Aufgabe ablehnen**), freigeben (**Aufgabe freigeben**) und beenden und zu einem späteren Zeitpunkt fortsetzen (**Anhalten und später fortsetzen**). In der folgenden Liste wird beschrieben, was passiert, wenn Sie eine dieser Optionen auswählen:
+ **Aufgabe ablehnen**: Sie sollten eine Aufgabe nur ablehnen, wenn etwas mit der Aufgabe nicht stimmt, z. B. wenn die Video-Frame-Bilder undeutlich sind oder ein Problem mit der Benutzeroberfläche vorliegt. Wenn Sie eine Aufgabe ablehnen, können Sie nicht zur Aufgabe zurückkehren.
+ **Aufgabe freigeben**: Verwenden Sie diese Option, um eine Aufgabe freizugeben und es anderen zu ermöglichen, daran zu arbeiten. Wenn Sie eine Aufgabe freigeben, verlieren Sie die gesamte an dieser Aufgabe geleistete Arbeit, und andere Auftragnehmer in Ihrem Team können sie übernehmen. Wenn genügend Auftragnehmer die Aufgabe übernehmen, können Sie möglicherweise nicht mehr zur Aufgabe zurückkehren. Wenn Sie diese Schaltfläche und dann **Bestätigen** auswählen, kehren Sie zum Worker-Portal zurück. Wenn die Aufgabe noch verfügbar ist, lautet ihr Status **Verfügbar**. Wenn andere Auftragnehmer sie übernehmen, verschwindet sie aus Ihrem Portal. 
+ **Anhalten und später fortsetzen**: Sie können die Schaltfläche **Anhalten und später fortsetzen** verwenden, um die Arbeit zu unterbrechen und zu einem späteren Zeitpunkt zur Aufgabe zurückzukehren. Sie sollten die Schaltfläche **Speichern** verwenden, um Ihre Arbeit zu speichern, bevor Sie **Anhalten und später fortsetzen** wählen. Wenn Sie diese Schaltfläche und danach **Bestätigen** wählen, kehren Sie zum Worker-Portal zurück. Der Aufgabenstatus lautet dann **Angehalten**. Sie können dieselbe Aufgabe auswählen, um die Arbeit daran fortzusetzen. 

  Beachten Sie, dass die Person, die Ihre Labeling-Aufgaben erstellt, ein Zeitlimit festlegt, bis zu dem alle Aufgaben erledigt sein müssen. Wenn Sie innerhalb dieser Frist nicht zu dieser Aufgabe zurückkehren und sie nicht abschließen, läuft sie ab und Ihre Arbeit wird nicht eingereicht. Weitere Informationen erhalten Sie bei Ihrem Administrator. 

![\[GIF, das die Positionen der Optionen Aufgabe ablehnen, Aufgabe freigeben und Anhalten und später fortsetzen in der UI zeigt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/reject-decline-task.gif)


# Speichern Ihrer Arbeit und Übermitteln
<a name="sms-video-worker-instructions-saving-work-ot"></a>

Sie sollten Ihre Arbeit regelmäßig mit der Schaltfläche **Speichern** speichern. Ground Truth speichert Ihre Arbeit automatisch alle 15 Minuten. 

Wenn Sie eine Aufgabe öffnen, müssen Sie Ihre Arbeit daran abschließen, bevor Sie auf **Absenden** klicken. 

# Aufgaben zur Objektverfolgung mit Video-Frames
<a name="sms-video-ot-worker-instructions"></a>

Bei Aufgaben zur Objektverfolgung in Video-Frames müssen Sie die Bewegung von Objekten über Video-Frames hinweg verfolgen. Ein Video-Frame ist ein Standbild aus einer Videoszene. Sie können die Auftragnehmer-Benutzeroberfläche verwenden, um zwischen Video-Frames zu navigieren und mithilfe der bereitgestellten Tools eindeutige Objekte zu identifizieren und ihre Bewegung von einem zum nächsten Video-Frame zu verfolgen. In den folgenden Themen erfahren Sie, wie Sie in Ihrer Auftragnehmer-Benutzeroberfläche navigieren, die bereitgestellten Tools verwenden und Ihre Aufgabe durchführen. 

Es wird empfohlen, für die Aufgabe einen Google Chrome- oder Firefox-Webbrowser zu verwenden. 

**Wichtig**  
Wenn Sie beim Öffnen Ihrer Aufgabe feststellen, dass bereits Anmerkungen zu einem oder mehreren Video-Frames hinzugefügt wurden, passen Sie diese Anmerkungen an und fügen Sie nach Bedarf weitere Anmerkungen hinzu. 

**Topics**
+ [Ihre Aufgabe](sms-video-worker-instructions-ot-task.md)

# Ihre Aufgabe
<a name="sms-video-worker-instructions-ot-task"></a>

Wenn Sie an einer Aufgabe der Video–Frame-Objektverfolgung arbeiten, müssen Sie eine Kategorie aus dem Menü **Beschriftungskategorie** auf der rechten Seite des Worker-Portals auswählen, um Anmerkungen hinzuzufügen. Nachdem Sie eine Kategorie ausgewählt haben, verwenden Sie die bereitgestellten Tools, um die Objekte, für die die Kategorie gilt, mit Anmerkungen zu versehen. Diese Anmerkung wird mit einer eindeutigen Beschriftungs-ID verknüpft, die nur für dieses Objekt verwendet werden sollte. Verwenden Sie dieselbe Beschriftungs-ID, um zusätzliche Anmerkungen für dasselbe Objekt in allen Video-Frames zu erstellen, in denen es vorkommt. Weitere Informationen zu den bereitgestellten Tools finden Sie unter [Tool Guide](sms-video-worker-instructions-tool-guide.md).

Nachdem Sie eine Beschriftung hinzugefügt haben, sehen Sie im Menü **Beschriftungen** möglicherweise einen nach unten zeigeneiden Pfeil neben der Beschriftung. Wählen Sie diesen Pfeil aus und wählen Sie dann für jedes angezeigte Kennzeichnungsattribut eine Option aus, um weitere Informationen zu dieser Beschriftung bereitzustellen.

Möglicherweise werden im Menü **Beschriftungen** Frames-Attribute angezeigt. Diese Attribute werden in jedem Frame Ihrer Aufgabe angezeigt. Verwenden Sie diese Attributaufforderungen, um zusätzliche Informationen zu jedem Frame einzugeben. 

![\[Beispiel für einen Frame-Attribut-Prompt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/frame-attributes.png)


Nachdem Sie eine Bezeichnung hinzugefügt haben, können Sie schnell einen Attributwert für eine Beschriftungskategorie hinzufügen und bearbeiten, indem Sie im Menü **Beschriftungen** den nach unten zeigenden Pfeil neben der Bezeichnung verwenden. Wenn Sie im Menü **Beschriftungen** auf das Stiftsymbol neben der Beschriftung klicken, wird das Menü **Instance bearbeiten** angezeigt. In diesem Menü können Sie die Beschriftungs-ID, die Kennzeichnungskategorie und die Kennzeichnungskategorieattribute bearbeiten. 

![\[GIF, das zeigt, wie Sie die Anmerkung für Beschriftungen im Rahmen bearbeiten können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/kitti-ot-general.gif)


Um eine Anmerkung zu bearbeiten, wählen Sie im Menü **Beschriftungen** die Beschriftung der Anmerkung aus, die Sie bearbeiten möchten, oder wählen Sie die Anmerkung im Frame aus. Wenn Sie eine Anmerkung bearbeiten oder löschen, wird dadurch nur die Anmerkung in einem einzelnen Frame geändert. 

Wenn Sie an einer Aufgabe arbeiten, die ein Begrenzungsrahmentool beinhaltet, verwenden Sie das Symbol „Nächste voraussagen“, um die Position aller Begrenzungsrahmen vorauszusagen, die Sie in einem Frame im nächsten Frame gezeichnet haben. Wenn Sie einen einzelnen Rahmen und dann das Symbol „Nächste voraussagen“ auswählen, wird nur dieser Rahmen im nächsten Frame vorhergesagt. Wenn Sie dem aktuellen Frame keine Rahmen hinzugefügt haben, erhalten Sie eine Fehlermeldung. Sie müssen dem Frame mindestens einen Rahmen hinzufügen, bevor Sie diese Funktion verwenden. 

Nachdem Sie das Symbol „Nächstes vorhersagen“ verwendet haben, überprüfen Sie die Position der einzelnen Rahmen im nächsten Frame und nehmen Sie gegebenenfalls Anpassungen an der Position und Größe der Rahmen vor. 

Die folgende Grafik zeigt, wie Sie das Tool „Nächste voraussagen“ verwenden:

![\[GIF, das zeigt, wie Sie die vorhergesagten Rahmen für den nächsten Frame anpassen können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/kitti-ot-predict-next.gif)


Bei allen anderen Tools können Sie mit den Tools **In nächsten kopieren** und **In alle kopieren** verwenden, um Ihre Anmerkungen in den nächsten bzw. in alle Frames zu kopieren. 

# Aufgaben zur Objekterkennung in Videoframes
<a name="sms-video-od-worker-instructions"></a>

Bei der Objekterkennung in Video-Frames müssen Sie mithilfe von Anmerkungen die Position von Objekten in Video-Frames klassifizieren und identifizieren. Ein Video-Frame ist ein Standbild aus einer Videoszene. Sie können mithilfe der Arbeitnehmer-Benutzeroberfläche zwischen Video-Frames navigieren und Anmerkungen erstellen, um Objekte zu identifizieren. In den folgenden Themen erfahren Sie, wie Sie in Ihrer Auftragnehmer-Benutzeroberfläche navigieren, die bereitgestellten Tools verwenden und Ihre Aufgabe durchführen. 

Es wird empfohlen, für die Aufgabe einen Google Chrome-Webbrowser zu verwenden. 

**Wichtig**  
Wenn Sie beim Öffnen Ihrer Aufgabe feststellen, dass bereits Anmerkungen zu einem oder mehreren Video-Frames hinzugefügt wurden, passen Sie diese Anmerkungen an und fügen Sie nach Bedarf weitere Anmerkungen hinzu. 

**Topics**
+ [Ihre Aufgabe](sms-video-worker-instructions-od-task.md)

# Ihre Aufgabe
<a name="sms-video-worker-instructions-od-task"></a>

Wenn Sie an einer Aufgabe der Video–Frame-Objekterkennung arbeiten, müssen Sie eine Kategorie aus dem Menü **Beschriftungskategorie** auf der rechten Seite des Worker-Portals auswählen, um Anmerkungen hinzuzufügen. Nachdem Sie eine Kategorie ausgewählt haben, zeichnen Sie Anmerkungen um Objekte, für die diese Kategorie gilt. Weitere Informationen zu den Tools, die in Ihrer Auftragnehmer-Benutzeroberfläche angezeigt werden, finden Sie unter [Tool Guide](sms-video-worker-instructions-tool-guide.md).

Nachdem Sie eine Beschriftung hinzugefügt haben, sehen Sie im Menü **Beschriftungen** möglicherweise einen nach unten zeigenden Pfeil neben der Beschriftung. Wählen Sie diesen Pfeil aus und wählen Sie dann für jedes angezeigte Kennzeichnungsattribut eine Option aus, um weitere Informationen zu dieser Beschriftung bereitzustellen.

![\[GIF, das zeigt, wie ein Auftragnehmer das Bounding-Box-Tool für seine Aufgaben zur Objekterkennung verwenden kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/kitti-od-general-labeling-job.gif)


Möglicherweise werden im Menü **Beschriftungen** Frames-Attribute angezeigt. Diese Attribute werden in jedem Frame Ihrer Aufgabe angezeigt. Verwenden Sie diese Attributaufforderungen, um zusätzliche Informationen zu jedem Frame einzugeben. 

![\[Beispiel für einen Frame-Attribut-Prompt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/frame-attributes.png)


Um eine Anmerkung zu bearbeiten, wählen Sie im Menü **Beschriftungen** die Beschriftung der Anmerkung aus, die Sie bearbeiten möchten, oder wählen Sie die Anmerkung im Frame aus. Wenn Sie eine Anmerkung bearbeiten oder löschen, wird dadurch nur die Anmerkung in einem einzelnen Frame geändert. 

Wenn Sie an einer Aufgabe arbeiten, die ein Begrenzungsrahmentool beinhaltet, verwenden Sie das Symbol „Nächste voraussagen“, um die Position aller Begrenzungsrahmen vorauszusagen, die Sie in einem Frame im nächsten Frame gezeichnet haben. Wenn Sie einen einzelnen Rahmen und dann das Symbol „Nächste voraussagen“ auswählen, wird nur dieser Rahmen im nächsten Frame vorhergesagt. Wenn Sie dem aktuellen Frame keine Rahmen hinzugefügt haben, erhalten Sie eine Fehlermeldung. Sie müssen dem Frame mindestens einen Rahmen hinzufügen, bevor Sie diese Funktion verwenden. 

**Anmerkung**  
Das Feature „Nächste voraussagen“ überschreibt keine manuell erstellten Anmerkungen. Es werden nur Anmerkungen hinzugefügt. Wenn Sie „Nächste voraussagen“ verwenden und daher mehr als einen Begrenzungsrahmen um ein einzelnes Objekt herum haben, löschen Sie alle Rahmen bis auf einen. Jedes Objekt sollte nur mit einem einzigen Rahmen identifiziert werden. 

Nachdem Sie das Symbol „Nächstes vorhersagen“ verwendet haben, überprüfen Sie die Position der einzelnen Rahmen im nächsten Frame und nehmen Sie gegebenenfalls Anpassungen an der Position und Größe der Rahmen vor. 

Die folgende Grafik zeigt, wie Sie das Tool „Nächste voraussagen“ verwenden:

![\[GIF, das zeigt, wie eine Arbeitskraft die vorhergesagten Rahmen für den nächsten Frame anpassen kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/video/kitti-video-od.gif)


Bei allen anderen Tools können Sie mit den Tools **In nächsten kopieren** und **In alle kopieren** verwenden, um Ihre Anmerkungen in den nächsten bzw. in alle Frames zu kopieren. 

# Verwenden von Ground Truth zum Beschriften von 3D-Punktwolken
<a name="sms-point-cloud"></a>

Erstellen Sie einen 3D-Punktwolken-Kennzeichnungsauftrag, damit Auftragnehmer Objekte in 3D-Punktwolken beschriften, die von 3D-Sensoren wie Light Detection and Ranging-Sensoren (LiDAR) und Tiefenkameras oder anhand der 3D-Rekonstruktion generiert werden, bei der von einem Agenten wie einer Drohne erfasst Bilder zusammengefügt werden. 

## 3D-Punktwolken
<a name="sms-point-cloud-define"></a>

Punktwolken bestehen aus dreidimensionalen (3D) visuellen Daten, die aus Punkten bestehen. Jeder Punkt wird mit drei Koordinaten beschrieben, in der Regel `x`, `y` und `z`. Um der Punktwolke Farbe oder Variationen der Punktintensität hinzuzufügen, können Punkte mit zusätzlichen Attributen beschrieben werden, z. B. `i` für die Intensität oder Werte für die roten (`r`), grünen (`g`) und blauen (`b`) 8-Bit-Farbkanäle. Wenn Sie einen Ground Truth-3D-Punktwolken-Beschriftungsauftrag erstellen, können Sie Punktwolken- und optional Sensorfusionsdaten bereitstellen. 

Die folgende Abbildung zeigt eine einzelne 3D-Punktwolkenszene, die von Ground Truth gerendert wird und in der Auftragnehmer-Benutzeroberfläche der semantischen Segmentierung angezeigt wird.

![\[GIF, das zeigt, wie Auftragnehmer die 3D-Punktwolke und das 2D-Bild gemeinsam zum Zeichnen von Objekten verwenden können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss_paint_sf.gif)


### LiDAR
<a name="sms-point-cloud-data-types-lidar"></a>

Ein LiDAR-Sensor (Light Detection and Ranging) ist ein gängiger Sensortyp, der zum Sammeln von Messungen verwendet wird, um Punktwolkendaten zu generieren. LiDAR ist eine Fernerkundungsmethode, die Licht in Form eines gepulsten Lasers verwendet, um die Entfernungen von Objekten zum Sensor zu messen. Sie können 3D-Punktwolkendaten, die von einem LiDAR-Sensor generiert werden, für einen Ground Truth-3D-Punktwolken-Beschriftungsauftrag bereitstellen, indem Sie die unter [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md) beschriebenen Rohdatenformate verwenden.

### Sensorfusion
<a name="sms-point-cloud-data-types-sensor"></a>

Ground Truth-3D-Punktwolken-Beschriftungsaufträge enthalten eine Sensorfusionsfunktion, die die Videokamerasensorfusion für alle Aufgabentypen unterstützt. Einige Sensoren sind mit mehreren LiDAR-Geräten und Videokameras ausgestattet, die Bilder erfassen und mit einem LiDAR-Frame verknüpfen. Damit Ersteller von Anmerkungen Ihre Aufgaben mit hoher Sicherheit visuell erledigen können, können Sie mithilfe der Ground Truth-Sensorfusionsfunktion Anmerkungen (Beschriftungen) aus einer 3D-Punktwolke auf 2D-Kamerabilder und umgekehrt mithilfe der extrinsischen Matrix von 3D-Scannern (wie LiDAR) und extrinsischen sowie intrinsischen Matrizen von Kameras projizieren. Weitere Informationen hierzu finden Sie unter [Sensorfusion](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-sensor-fusion).

## Beschriften von 3D-Punktwolken
<a name="sms-point-cloud-annotation-define"></a>

Ground Truth stellt eine Benutzeroberfläche (UI) und Werkzeuge bereit, die Auftragnehmer zum Beschriften oder *Annotieren* von 3D-Punktwolken verwenden. Wenn Sie die Aufgabentypen Objekterkennung oder semantische Segmentierung verwenden, können Auftragnehmer einen einzelnen Punktwolkenframe mit Anmerkungen versehen. Wenn Sie die Objektverfolgung verwenden, beschriften Auftragnehmer eine Sequenz von Frames. Sie können die Objektverfolgung verwenden, um Objektbewegungen über alle Frames hinweg in einer Sequenz zu verfolgen. 

Im Folgenden wird veranschaulicht, wie ein Auftragnehmer das Ground Truth-Worker-Portal und die Werkzeuge zum Annotieren einer 3D-Punktwolke für eine Objekterkennungsaufgabe verwendet. Ähnliche visuelle Beispiele für andere Aufgabentypen finden Sie unter [3D-Punktwolken-Aufgabentypen](sms-point-cloud-task-types.md).

![\[GIF, das zeigt, wie ein Auftragnehmer eine 3D-Punktwolke im Ground-Truth-Auftragnehmerportal kennzeichnen kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_detection/ot_basic_tools.gif)


### Hilfsmittel zur Beschriftung von Punktwolkenanmerkungen
<a name="sms-point-cloud-assistive-labeling-tools"></a>

Ground Truth bietet Hilfsmittel zur Beschriftung, mit denen Auftragnehmer Ihre Punktwolken-Annotierensaufgaben schneller und präziser erledigen können. Für Informationen zu Hilfsmitteln zur Beschriftung, die in der Auftragnehmer-Benutzeroberfläche für jeden Aufgabentyp enthalten sind, [wählen Sie einen Aufgabentyp aus](sms-point-cloud-task-types.md) und beziehen Sie sich auf den Abschnitt **Anzeigen der Aufgabenoberfläche für Auftragnehmer** auf dieser Seite.

## Nächste Schritte
<a name="sms-point-cloud-next-steps-getting-started"></a>

Sie können sechs Arten von Aufgaben erstellen, wenn Sie Ground Truth-3D-Punktwolken-Beschriftungsaufträge verwenden. Verwenden Sie die Themen in [3D-Punktwolken-Aufgabentypen](sms-point-cloud-task-types.md), um mehr über diese *Aufgabentypen* zu erfahren und zu lernen, wie Sie einen Kennzeichnungsauftrag mit dem gewünschten Aufgabentyp erstellen. 

Der 3D-Punktwolken-Bescshriftungsauftrag unterscheidet sich von anderen Ground Truth-Beschriftungsmodalitäten. Bevor Sie einen Kennzeichnungsauftrag erstellen, empfehlen wir, dass Sie [Übersicht über 3D-Punktwolken-Kennzeichnungsjobs](sms-point-cloud-general-information.md) lesen. Überprüfen Sie außerdem die Kontingente für Eingabedaten unter [Kontingente für 3D-Punktwolken- und Video-Frame-Kennzeichnungsaufträge](input-data-limits.md#sms-input-data-quotas-other).

**Wichtig**  
Wenn Sie eine Notebook-Instance verwenden, die vor dem 5. Juni 2020 erstellt wurde, um dieses Notebook auszuführen, müssen Sie diese Notebook-Instance beenden und neu starten, damit das Notebook funktioniert. 

**Topics**
+ [3D-Punktwolken](#sms-point-cloud-define)
+ [Beschriften von 3D-Punktwolken](#sms-point-cloud-annotation-define)
+ [Nächste Schritte](#sms-point-cloud-next-steps-getting-started)
+ [3D-Punktwolken-Aufgabentypen](sms-point-cloud-task-types.md)
+ [Übersicht über 3D-Punktwolken-Kennzeichnungsjobs](sms-point-cloud-general-information.md)
+ [Anweisungen für Arbeitnehmer](sms-point-cloud-worker-instructions.md)

# 3D-Punktwolken-Aufgabentypen
<a name="sms-point-cloud-task-types"></a>

Sie können die Ground-Truth-3D-Punktwolken-Beschriftungsmodalität für eine Vielzahl von Anwendungsfällen verwenden. In der folgenden Liste werden die einzelnen 3D-Punktwolken-Aufgabentypen kurz beschrieben. Weitere Details und Anweisungen zum Erstellen einer Labeling-Aufgabe mit einem bestimmten Aufgabentyp erhalten Sie, indem Sie den Namen des Aufgabentyps auswählen, um die Seite des Aufgabentyps anzuzeigen. 
+ [3D-Punktwolken-Objekterkennung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-object-detection.html) – Verwenden Sie diesen Aufgabentyp, wenn Auftragnehmer Objekte in einer 3D-Punktwolke suchen und klassifizieren sollen, indem sie 3D-Quader hinzufügen und an Objekte anpassen. 
+ [3D-Punktwolken-Objektverfolgung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-object-tracking.html) – Verwenden Sie diesen Aufgabentyp, wenn Auftragnehmer 3D-Quader hinzufügen und an Objekte anpassen sollen, um ihre Bewegung über eine Sequenz von 3D-Punktwolken-Frames zu verfolgen. Mit diesem Aufgabentyp können Sie beispielsweise Auftragnehmer auffordern, die Bewegung von Fahrzeugen über mehrere Punktwolkenframes zu verfolgen.
+ [Semantische 3D-Punktwolkensegmentierung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-semantic-segmentation.html) – Verwenden Sie diesen Aufgabentyp, wenn Auftragnehmer eine semantische Segmentierungsmaske auf Punktebene erstellen sollen, indem Sie Objekte in einer 3D-Punktwolke mit verschiedenen Farben malen, wobei jede Farbe einer der von Ihnen angegebenen Klassen zugewiesen ist. 
+  3D-Punktwolken-Anpassungsaufgabentypen – Jeder der oben genannten Aufgabentypen verfügt über einen zugeordneten *Anpassungsaufgabentyp*, mit dem Sie Anmerkungen überprüfen und anpassen können, die aus einer 3D-Punktwolken-Beschriftungssaufgabe generiert wurden. Weitere Informationen zum Erstellen eines Anpassungskennzeichnungsauftrags für diese Aufgabe finden Sie auf der Seite „Aufgabentyp“ des zugeordneten Typs. 

# Klassifizieren von Objekten in einer 3D-Punktwolke mit Objekterkennung
<a name="sms-point-cloud-object-detection"></a>

Verwenden Sie diesen Aufgabentyp, wenn Auftragnehmer Objekte in einer 3D-Punktwolke klassifizieren sollen, indem Sie 3D-Quader rund um Objekte zeichnen. Mit diesem Aufgabentyp können Sie beispielsweise Auftragnehmer auffordern, verschiedene Objekttypen in einer Punktwolke zu identifizieren, z. B. Autos, Fahrräder und Fußgänger. Auf der folgenden Seite finden Sie wichtige Informationen über den Kennzeichnungsauftrag sowie die Schritte zur Erstellung des Auftrags.

Für diesen Aufgabentyp ist das *Datenobjekt* , das Auftragnehmer beschriften, eine Sequenz von Punktwolkenframes. Ground Truth rendert eine 3D-Punktwolke mithilfe der von Ihnen bereitgestellten Punktwolkendaten. Sie können auch Kameradaten bereitstellen, um Auftragnehmern mehr visuelle Informationen über Szenen im Frame zu geben und Arbeitskräften dabei zu helfen, 3D-Quader rund um Objekte zu zeichnen. 

Ground Truth stellt Auftragnehmern Werkzeuge zur Verfügung, um Objekte mit 9 Freiheitsgraden (x,y,z,rx,ry,rz,l,w,h) in drei Dimensionen sowohl in der 3D-Szene als auch in projizierten Seitenansichten (oben, seitlich und hinten) zu kommentieren. Wenn Sie Sensorfusionsinformationen bereitstellen (z. B. Kameradaten) und ein Auftragnehmer einen Quader hinzufügt, um ein Objekt in der 3D-Punktwolke zu identifizieren, wird der Quader angezeigt und kann in den 2D-Bildern geändert werden. Nachdem ein Quader hinzugefügt wurde, werden alle Änderungen an diesem Quader in der 2D- oder 3D-Szene in die andere Ansicht projiziert.

Sie können einen Auftrag erstellen, um Anmerkungen anzupassen, die in einem Kennzeichnungsauftrag der 3D-Punktwolken-Objekterkennung erstellt wurden, indem Sie den Anpassungsaufgabentyp „3D-Punktwolken-Objekterkennung“ verwenden. 

Wenn Sie ein neuer Benutzer der Ground-Truth-3D-Punktwolken-Beschriftungsmodalität sind, empfehlen wir Ihnen, sich [Übersicht über 3D-Punktwolken-Kennzeichnungsjobs](sms-point-cloud-general-information.md) anzusehen. Diese Beschriftungsmodalität unterscheidet sich von anderen Ground-Truth-Aufgabentypen, und diese Seite bietet einen Überblick über wichtige Details, die Sie bei der Erstellung eines 3D-Punktwolken-Beschriftungsauftrags beachten sollten.

**Topics**
+ [Anzeigen der Aufgabenoberfläche für Auftragnehmer](#sms-point-cloud-object-detection-worker-ui)
+ [Erstellen eines Kennzeichnungsauftrags der 3D-Punktwolken-Objekterkennung](#sms-point-cloud-object-detection-create-labeling-job)
+ [Erstellen eines Beschriftungsauftrags der 3D-Punktwolken-Objekterkennung](#sms-point-cloud-object-detection-adjustment-verification)
+ [Format der Ausgabedaten](#sms-point-cloud-object-detection-output-data)

## Anzeigen der Aufgabenoberfläche für Auftragnehmer
<a name="sms-point-cloud-object-detection-worker-ui"></a>

Ground Truth stellt Auftragnehmern ein Webportal und Tools zur Verfügung, mit denen sie Ihre Anmerkungsaufgaben der 3D-Punktwolken-Objekterkennung erledigen können. Wenn Sie den Beschriftungsauftrag erstellen, geben Sie den Amazon-Ressourcennamen (ARN) für eine vorgefertigte Ground-Truth-Benutzeroberfläche für Auftragnehmer im `HumanTaskUiArn` Parameter an. Wenn Sie einen Kennzeichnungsauftrag mit diesem Aufgabentyp in der Konsole erstellen, wird diese Benutzeroberfläche für Auftragnehmer automatisch verwendet. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen. Wenn Sie ein neuer Benutzer sind, wird empfohlen, einen Kennzeichnungsauftrag über die Konsole zu erstellen, um sicherzustellen, dass Ihre Beschriftungsattribute, Punktwolkenframes und ggf. Bilder erwartungsgemäß angezeigt werden. 

Im Folgenden finden Sie ein GIF der Aufgabenoberfläche für Auftragnehmer der 3D-Punktwolkenobjekterkennung. Wenn Sie Kameradaten für die Sensorfusion im Weltkoordinatensystem bereitstellen, werden Bilder mit Szenen im Punktwolken-Frame abgeglichen. Diese Bilder werden im Worker-Portal angezeigt, wie im folgenden GIF gezeigt. 

![\[GIF, das zeigt, wie ein Auftragnehmer eine 3D-Punktwolke im Ground-Truth-Auftragnehmerportal kennzeichnen kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_detection/ot_basic_tools.gif)


Auftragnehmer können mithilfe der Tastatur und der Maus in der 3D-Szene navigieren. Sie können Folgendes:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern.
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Sobald ein Auftragnehmer einen Quader in der 3D-Szene platziert hat, wird eine Seitenansicht mit den drei projizierten Seitenansichten angezeigt: oben, seitlich und hinten. Diese Seitenansichten zeigen Punkte in und rund um den platzierten Quader an und helfen Auftragnehmern dabei, Quadergrenzen in diesem Bereich zu verfeinern. Auftragnehmer können jede dieser Seitenansichten mit der Maus vergrößern und verkleinern. 

Das folgende Video zeigt Bewegungen um die 3D-Punktwolke und in der Seitenansicht. 

![\[GIF, das Bewegungen rund um die 3D-Punktwolke und die Seitenansicht zeigt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_detection/navigate_od_worker_ui.gif)


Weitere Ansichtsoptionen und -funktionen sind im Menü **Ansicht** der Benutzeroberfläche für Auftragnehmer verfügbar. Auf der [Anweisungsseite für Auftragnehmer](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-worker-instructions-object-detection) finden Sie eine umfassende Übersicht über die UI für Auftragnehmer. 

**Hilfsmittel zur Beschriftung**  
Ground Truth hilft Auftragnehmern, 3D-Punktwolken schneller und genauer mit Hilfe von Machine Learning und Computer-Vision-gestützten Hilfsmitteln zur Beschriftung für 3D-Punktwolken-Objektverfolgungsaufgaben zu kommentieren. Für diesen Aufgabentyp stehen die folgenden Hilfsmittel zur Beschriftung zur Verfügung:
+ **Ausrichten** – Auftragnehmer können einen Quader um ein Objekt herum hinzufügen und eine Tastenkombination oder eine Menüoption verwenden, damit das -Autofit-Werkzeug den Quader fest um das Objekt herum ausrichtet. 
+ **Auf Boden platzieren** – Nachdem ein Auftragnehmer der 3D-Szene einen Quader hinzugefügt hat, kann er den Quader automatisch am Boden ausrichten. Beispielsweise kann der Auftragnehmer diese Funktion verwenden, um einen Quader an der Straße oder dem Bürgersteig in der Szene auszurichten. 
+ **Multi-View-Beschriftung** – Nachdem ein Auftragnehmer der 3D-Szene einen 3D-Quader hinzugefügt hat, werden in einem Seitenbereich Vorder-, Seiten- und obere Perspektiven angezeigt, um dem Auftragnehmer dabei zu helfen, den Quader fest um das Objekt herum auszurichten. In all diesen Ansichten enthält der Quader einen Pfeil, der die Ausrichtung oder den Fahrkurs des Objekts angibt. Wenn der Auftragnehmer den Quader anpasst, wird die Anpassung in Echtzeit in allen Ansichten angezeigt (d. h. in 3D, oben, seitlich und vorne). 
+ **Sensorfusion** – Wenn Sie Daten für die Sensorfusion bereitstellen, können Auftragnehmer Anmerkungen in 3D-Szenen und 2D-Bildern anpassen, und die Anmerkungen werden in Echtzeit in die andere Ansicht projiziert. Darüber hinaus haben Auftragnehmer die Möglichkeit, die Richtung der Kamera und das Kamera-Frustum anzuzeigen.
+ **Ansichtsoptionen** – Ermöglicht Auftragnehmern das einfache Ausblenden oder Anzeigen von Quadern, Beschriftungstext, eines Bodengitters und zusätzlicher Punktattribute wie Farbe oder Intensität. Auftragnehmer können auch zwischen perspektivischen und orthogonalen Projektionen wählen. 

## Erstellen eines Kennzeichnungsauftrags der 3D-Punktwolken-Objekterkennung
<a name="sms-point-cloud-object-detection-create-labeling-job"></a>

Sie können mithilfe der SageMaker AI-Konsole oder der API-Operation einen 3D-Punktwolken-Labeling-Job erstellen [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html). Um einen Kennzeichnungsauftrag für diesen Aufgabentyp zu erstellen, benötigen Sie Folgendes: 
+ Eine Einzelframe-Eingabemanifestdatei. Informationen zum Erstellen dieser Art von Manifestdatei finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). Wenn Sie ein neuer Benutzer von Ground-Truth-3D-Punktwolken-Beschriftungsmodalitäten sind, sollten Sie sich auch [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md) ansehen. 
+ Ein Arbeitsteam aus privaten oder Anbieterarbeitskräften. Sie können Amazon Mechanical Turk nicht für die Etikettierung von Videobildern verwenden. Informationen zum Erstellen von Arbeitskräften und Arbeitsteams finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

Stellen Sie außerdem sicher, dass Sie die [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md) angesehen und erfüllt haben. 

In einem der folgenden Abschnitte erfahren Sie, wie Sie einen Kennzeichnungsauftrag mithilfe der Konsole oder einer API erstellen. 

### Erstellen eines Kennzeichnungsauftrags (Konsole)
<a name="sms-point-cloud-object-detection-create-labeling-job-console"></a>

Sie können den Anweisungen folgen, um zu erfahren, wie Sie [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md) in der SageMaker AI-Konsole einen Auftrag zur 3D-Punktwolken-Objekterkennung erstellen. Beachten Sie beim Erstellen Ihres Kennzeichnungsauftrags Folgendes: 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Einzelframe-Manifestdatei handeln. Weitere Informationen finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). 
+ Optional können Sie Beschriftungskategorieattribute angeben. Auftragnehmer können Anmerkungen eines oder mehrere dieser Attribute zuweisen, um weitere Informationen zu diesem Objekt bereitzustellen. Sie können beispielsweise das Attribut *okkludiert* verwenden, damit Auftragnehmer erkennen, wenn ein Objekt teilweise behindert wird.
+ Das automatisierte Daten-Labeling und Anmerkungskonsolidierung wird für 3D-Punktwolken-Labeling-Aufgaben nicht unterstützt.
+ Kennzeichnungsaufträge der 3D-Punktwolken-Objekterkennung können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge festlegen, wenn Sie Ihr Arbeitsteam auswählen (bis zu 7 Tage oder 604800 Sekunden). 

### Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-point-cloud-object-detection-create-labeling-job-api"></a>

In diesem Abschnitt werden Details behandelt, die Sie wissen müssen, wenn Sie mithilfe der SageMaker API-Operation einen Labeling-Job erstellen`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) 

[Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) bietet einen Überblick über die `CreateLabelingJob`-Operation. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Sie müssen einen ARN für `HumanTaskUiArn` eingeben. Verwenden Sie `arn:aws:sagemaker:<region>:394669845002:human-task-ui/PointCloudObjectDetection`. Ersetzen Sie `<region>` durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. 

  Für den Parameter `UiTemplateS3Uri` sollte kein Eintrag vorhanden sein. 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Einzelframe-Manifestdatei handeln. Weitere Informationen finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). 
+ Sie geben Ihre Beschriftungen und Anweisungen für Auftragnehmer in einer Konfigurationsdatei der Beschriftungskategorie an. Informationen zum Erstellen dieser Datei finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md). 
+ Sie müssen vordefinierte Lambda-Funktionen ARNs für die Pre-Annotation und Post-Annotation (ACS) bereitstellen. Diese ARNs sind spezifisch für die AWS Region, die Sie für die Erstellung Ihres Labeling-Jobs verwenden. 
  + Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden. Wenn Sie beispielsweise Ihren Kennzeichnungsauftrag in us-east-1 erstellen, wird der ARN `arn:aws:lambda:us-east-1:432418664414:function:PRE-3DPointCloudObjectDetection` sein. 
  + Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden. Wenn Sie beispielsweise Ihren Kennzeichnungsauftrag in us-east-1 erstellen, wird der ARN `arn:aws:lambda:us-east-1:432418664414:function:ACS-3DPointCloudObjectDetection` sein. 
+ Die Anzahl der in `NumberOfHumanWorkersPerDataObject` angegebenen Auftragnehmer muss `1` sein. 
+ Das automatisierte Daten-Labeling wird für 3D-Punktwolken-Kennzeichnungsaufträge nicht unterstützt. Sie sollten keine Werte für Parameter in `[LabelingJobAlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelingJobAlgorithmsConfig)` angeben.
+ Kennzeichnungsaufträge der 3D-Punktwolken-Objekterkennung können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in `TaskTimeLimitInSeconds` festlegen (bis zu 7 Tage oder 604.800 Sekunden). 

## Erstellen eines Beschriftungsauftrags der 3D-Punktwolken-Objekterkennung
<a name="sms-point-cloud-object-detection-adjustment-verification"></a>

Sie können einen Beschriftungsverifizierungsauftrag über die Ground-Truth-Konsole oder `CreateLabelingJob` API erstellen. Weitere Informationen zu Beschriftungsaufträgen zur Anpassung und Überprüfung sowie zur Erstellung eines solchen Auftrags finden Sie unter [Beschriftungsverifizierung und Anpassung](sms-verification-data.md).

Wenn Sie einen Korrekturbeschriftungsauftrag erstellen, können Ihre Eingabedaten für den Beschriftungsauftrag Beschriftungen sowie Maße für Gier-, Neigungs- und Rollwinkel aus einem früheren Etikettierauftrag oder einer externen Quelle enthalten. Im Anpassungsauftrag werden Tonhöhe und Neigung in der Arbeitnehmer-Benutzeroberfläche visualisiert, können aber nicht geändert werden. Die Gierbewegung ist einstellbar. 

Ground Truth verwendet Tait-Bryan-Winkel mit den folgenden intrinsischen Rotationen, um Gieren, Neigen und Rollen in der Arbeitnehmer-Benutzeroberfläche zu visualisieren. Zunächst wird das Fahrzeug entsprechend der Z-Achse gedreht (Gierbewegung). Als nächstes wird das gedrehte Fahrzeug entsprechend der intrinsischen Y'-Achse (Neigung) gedreht. Schließlich wird das Fahrzeug entsprechend der intrinsischen X“-Achse gedreht (Rollbewegung). 

## Format der Ausgabedaten
<a name="sms-point-cloud-object-detection-output-data"></a>

Wenn Sie einen Kennzeichnungsauftrag der 3D-Punktwolken-Objekterkennung erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Auftragnehmer ihre Aufgaben ausführen, werden Beschriftungen in den Amazon-S3-Bucket geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Das Ausgabedatenformat bestimmt, was Sie in Ihrem Amazon S3 S3-Bucket sehen, wenn Ihr Labeling-Auftragsstatus ([LabelingJobStatus](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeLabelingJob.html#API_DescribeLabelingJob_ResponseSyntax)) lautet`Completed`. 

Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) mehr über das Ausgabedatenformat von Ground Truth. Weitere Informationen zum Ausgabedatenformat der 3D-Punktwolken-Objekterkennung finden Sie unter [Ausgabe der 3D-Punktwolken-Objekterkennung](sms-data-output.md#sms-output-point-cloud-object-detection). 

# Grundlegendes zum Aufgabentyp der 3D-Punktwolken-Objektverfolgung
<a name="sms-point-cloud-object-tracking"></a>

Verwenden Sie diesen Aufgabentyp, wenn Auftragnehmer 3D-Quader um Objekte hinzufügen und anpassen sollen, um ihre Bewegung über 3D-Punktwolkenframes hinweg zu verfolgen. Mit diesem Aufgabentyp können Sie beispielsweise Auftragnehmer auffordern, die Bewegung von Fahrzeugen über mehrere Punktwolkenframes zu verfolgen. 

Für diesen Aufgabentyp ist das Datenobjekt, das Auftragnehmer beschriften, eine Sequenz von Punktwolkenframes. Eine *Sequenz* wird als eine zeitliche Reihe von Punktwolkenframes definiert. Ground Truth rendert eine Reihe von 3D-Punktwolken-Visualisierungen anhand einer von Ihnen vorgegebenen Sequenz, und die Arbeitnehmer können in der Benutzeroberfläche zwischen diesen 3D-Punktwolken-Frames wechseln. 

Ground Truth stellt Auftragnehmern Werkzeuge zur Verfügung, um Objekte mit 9 Freiheitsgraden () (x, y, z, rx, ry, rz, l, w, h) in drei Dimensionen sowohl in der 3D-Szene als auch in projizierten Seitenansichten (oben, seitlich und hinten) zu kommentieren. Wenn ein Auftragnehmer einen Quader um ein Objekt zieht, erhält dieser Quader eine eindeutige ID, z. B. `Car:1` für ein Auto in der Sequenz und `Car:2` für ein anderes. Auftragnehmer verwenden diese ID, um dasselbe Objekt in mehreren Frames zu beschriften.

Sie können auch Kameradaten bereitstellen, um Auftragnehmern mehr visuelle Informationen über Szenen im Frame zu geben und Arbeitskräften dabei zu helfen, 3D-Quader rund um Objekte zu zeichnen. Wenn ein Auftragnehmer einen 3D-Quader hinzufügt, um ein Objekt entweder im 2D-Bild oder in der 3D-Punktwolke zu identifizieren, wird der Quader in der anderen Ansicht angezeigt. 

Sie können Anmerkungen anpassen, die in einem Kennzeichnungsauftrag der 3D-Punktwolken-Objekterkennung erstellt wurden, indem Sie den Anpassungsaufgabentyp „3D-Punktwolken-Objektverfolgung“ verwenden. 

Wenn Sie ein neuer Benutzer der Ground-Truth-3D-Punktwolken-Beschriftungsmodalität sind, empfehlen wir Ihnen einen Blick auf [Übersicht über 3D-Punktwolken-Kennzeichnungsjobs](sms-point-cloud-general-information.md). Diese Beschriftungsmodalität unterscheidet sich von anderen Ground-Truth-Aufgabentypen, und diese Seite bietet einen Überblick über wichtige Details, die Sie bei der Erstellung eines 3D-Punktwolken-Beschriftungsauftrags beachten sollten.

In den folgenden Themen wird erklärt, wie ein 3D-Punktwolken-Objektverfolgungsauftrag erstellt wird. Außerdem wird gezeigt, wie die Benutzeroberfläche für Arbeitsaufgaben aussieht (was Auftragnehmer sehen, wenn sie an dieser Aufgabe arbeiten), und es wird ein Überblick über die Ausgabedaten gegeben, die Sie erhalten, wenn Auftragnehmer ihre Aufgaben erledigen. Das letzte Thema enthält nützliche Informationen zum Erstellen von Aufträgen zur Anpassung oder Überprüfung der Kennzeichnung von Objekten.

**Topics**
+ [Erstellen eines Kennzeichnungsauftrags der 3D-Punktwolken-Objektverfolgung](sms-point-cloud-object-tracking-create-labeling-job.md)
+ [Anzeigen der Auftragnehmer-Aufgabenoberfläche für eine 3D-Punktwolken-Objektverfolgungsaufgabe](sms-point-cloud-object-tracking-worker-ui.md)
+ [Ausgabedaten für einen Kennzeichnungsauftrag der 3D-Punktwolken-Objektverfolgung](sms-point-cloud-object-tracking-output-data.md)
+ [Informationen zum Erstellen eines 3D-Punktwolken-Objektverfolgungsanpassungs- oder Verifizierungsbeschriftungsauftrags](sms-point-cloud-object-tracking-adjustment-verification.md)

# Erstellen eines Kennzeichnungsauftrags der 3D-Punktwolken-Objektverfolgung
<a name="sms-point-cloud-object-tracking-create-labeling-job"></a>

Sie können einen Auftrag zur Kennzeichnung von 3D-Punktwolken mithilfe der SageMaker AI-Konsole oder der API-Operation erstellen. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) Um einen Kennzeichnungsauftrag für diesen Aufgabentyp zu erstellen, benötigen Sie Folgendes: 
+ Eine Sequenz-Eingabemanifestdatei. Informationen zum Erstellen dieser Art von Manifestdatei finden Sie unter [Erstellen eines Eingabemanifests für Punktwolkensequenzen](sms-point-cloud-multi-frame-input-data.md). Wenn Sie ein neuer Benutzer von -3D-Punktwolken-Beschriftungsmodalitäten sind, empfehlen wir Ihnen, sich [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md) anzusehen. 
+ Ein Arbeitsteam aus privaten oder Anbieterarbeitskräften. Sie können Amazon Mechanical Turk nicht für 3D-Punktwolkenbeschriftungsaufträge verwenden. Informationen zum Erstellen von Arbeitskräften und Arbeitsteams finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

Stellen Sie außerdem sicher, dass Sie die [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md) angesehen und erfüllt haben. 

Informationen zum Erstellen eines Kennzeichnungsauftrags mit der Konsole oder einer API finden Sie in den folgenden Abschnitten. 

## Erstellen eines Kennzeichnungsauftrags (Konsole)
<a name="sms-point-cloud-object-tracking-create-labeling-job-console"></a>

Sie können den Anweisungen folgen, um zu erfahren, wie Sie [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md) in der SageMaker AI-Konsole einen Auftrag zur 3D-Punktwolken-Objektverfolgung erstellen. Beachten Sie beim Erstellen Ihres Kennzeichnungsauftrags Folgendes: 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Sequenz-Manifestdatei handeln. Weitere Informationen finden Sie unter [Erstellen eines Eingabemanifests für Punktwolkensequenzen](sms-point-cloud-multi-frame-input-data.md). 
+ Optional können Sie Beschriftungskategorieattribute angeben. Auftragnehmer können Anmerkungen eines oder mehrere dieser Attribute zuweisen, um weitere Informationen zu diesem Objekt bereitzustellen. Sie können beispielsweise das Attribut *okkludiert* verwenden, damit Auftragnehmer erkennen, wenn ein Objekt teilweise behindert wird.
+ Das automatisierte Daten-Labeling und Anmerkungskonsolidierung wird für 3D-Punktwolken-Labeling-Aufgaben nicht unterstützt. 
+ Kennzeichnungsaufträge der 3D-Punktwolken-Objektverfolgung können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge festlegen, wenn Sie Ihr Arbeitsteam auswählen (bis zu 7 Tage oder 604800 Sekunden). 

## Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-point-cloud-object-tracking-create-labeling-job-api"></a>

In diesem Abschnitt werden Details behandelt, die Sie wissen müssen, wenn Sie mithilfe der SageMaker API-Operation einen Labeling-Job erstellen`CreateLabelingJob`. Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) 

[Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) bietet einen Überblick über die Operation `CreateLabelingJob`. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Sie müssen einen ARN für `HumanTaskUiArn` eingeben. Verwenden Sie `arn:aws:sagemaker:<region>:394669845002:human-task-ui/PointCloudObjectTracking`. Ersetzen Sie `<region>` durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. 

  Für den Parameter `UiTemplateS3Uri` sollte kein Eintrag vorhanden sein. 
+ Ihr [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName) muss mit `-ref` enden. Beispiel, `ot-labels-ref`. 
+ Ihre Eingabemanifestdatei muss eine Punktwolkenframesequenz-Manifestdatei sein. Weitere Informationen finden Sie unter [Erstellen eines Eingabemanifests für Punktwolkensequenzen](sms-point-cloud-multi-frame-input-data.md). 
+ Sie legen Ihre Etiketten, Etikettenkategorie und Rahmenattribute sowie Arbeitsanweisungen in einer Konfigurationsdatei für Etikettenkategorien fest. Weitere Informationen finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md), um zu erfahren, wie Sie diese Datei erstellen. 
+ Sie müssen vordefinierte Lambda-Funktionen ARNs für die Pre-Annotation und Post-Annotation (ACS) bereitstellen. Diese ARNs sind spezifisch für die AWS Region, in der Sie Ihren Labeling-Job erstellen. 
  + Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden, der mit `PRE-3DPointCloudObjectTracking` endet. 
  + Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden, der mit `ACS-3DPointCloudObjectTracking` endet. 
+ Die Anzahl der in `NumberOfHumanWorkersPerDataObject` angegebenen Auftragnehmer sollte `1` sein. 
+ Das automatisierte Daten-Labeling wird für 3D-Punktwolken-Kennzeichnungsaufträge nicht unterstützt. Sie sollten keine Werte für Parameter in `[LabelingJobAlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelingJobAlgorithmsConfig)` angeben. 
+ Kennzeichnungsaufträge der 3D-Punktwolken-Objektverfolgung können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in `TaskTimeLimitInSeconds` festlegen (bis zu 7 Tage oder 604.800 Sekunden). 

# Anzeigen der Auftragnehmer-Aufgabenoberfläche für eine 3D-Punktwolken-Objektverfolgungsaufgabe
<a name="sms-point-cloud-object-tracking-worker-ui"></a>

Ground Truth stellt den Mitarbeitern ein Webportal und Werkzeuge zur Verfügung, mit denen sie ihre 3D-Punktwolken-Objektverfolgungsaufgaben mit Anmerkungen versehen können. Wenn Sie den Beschriftungsauftrag erstellen, geben Sie im `HumanTaskUiArn` Parameter den Amazon-Ressourcenname (ARN) für eine vorgefertigte Ground-Truth-UI an. Wenn Sie einen Kennzeichnungsauftrag mit diesem Aufgabentyp in der Konsole erstellen, wird diese Benutzeroberfläche automatisch verwendet. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen. Wenn Sie ein neuer Benutzer sind, wird empfohlen, einen Kennzeichnungsauftrag über die Konsole zu erstellen, um sicherzustellen, dass Ihre Beschriftungsattribute, Punktwolkenframes und ggf. Bilder erwartungsgemäß angezeigt werden. 

Im Folgenden finden Sie ein GIF der Auftragnehmer-Aufgabenoberfläche für die 3D-Punktwolken-Objektverfolgung, das veranschaulicht, wie der Auftragnehmer in den Punktwolkenframes in der Sequenz navigieren kann. Die Anmerkungswerkzeuge sind Teil der Benutzeroberfläche der Arbeitsaufgaben. Sie sind für die Vorschauoberfläche nicht verfügbar. 

![\[GIF, das zeigt, wie der Auftragnehmer in der Sequenz durch die Punktwolken-Frames navigieren kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_tracking/nav_frames.gif)


Sobald Auftragnehmer einen einzelnen Quader hinzufügen, wird dieser Quader in allen Frames der Sequenz mit derselben ID repliziert. Sobald die Arbeitnehmer den Quader in einem anderen Frame anpassen, wird Ground Truth die Bewegung dieses Objekts interpolieren und alle Quader zwischen den manuell angepassten Frames anpassen. Das folgende GIF veranschaulicht diese Interpolationsfunktion. In der Navigationsleiste unten links zeigen rote Bereiche manuell angepasste Frames an. 

![\[GIF, das zeigt, wie die Position eines Quaders zwischen den Frames abgeleitet wird\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_tracking/label-interpolation.gif)


Wenn Sie Kameradaten für die Sensorfusion bereitstellen, werden Bilder mit Szenen in Punktwolkenframes abgeglichen. Diese Bilder werden im Worker-Portal angezeigt, wie im folgenden GIF gezeigt. 

Auftragnehmer können mithilfe der Tastatur und der Maus in der 3D-Szene navigieren. Sie können Folgendes:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern.
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Sobald ein Auftragnehmer einen Quader in der 3D-Szene platziert hat, wird eine Seitenansicht mit den drei projizierten Seitenansichten angezeigt: oben, seitlich und hinten. Diese Seitenansichten zeigen Punkte in und rund um den platzierten Quader an und helfen Auftragnehmern dabei, Quadergrenzen in diesem Bereich zu verfeinern. Auftragnehmer können jede dieser Seitenansichten mit der Maus vergrößern und verkleinern. 

Das folgende Video zeigt Bewegungen um die 3D-Punktwolke und in der Seitenansicht. 

![\[GIF, das Bewegungen rund um die 3D-Punktwolke zeigt, die eine Straßenszene darstellt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_tracking/nav_general_UI.gif)


Weitere Ansichtsoptionen und Funktionen sind verfügbar. Auf der [Anweisungsseite für Auftragnehmer](https://docs.aws.amazon.com//sagemaker/latest/dg/sms-point-cloud-worker-instructions-object-tracking.html) finden Sie eine umfassende Übersicht über die UI für Auftragnehmer. 

## Werkzeuge für Auftragnehmer
<a name="sms-point-cloud-object-tracking-worker-tools"></a>

Auftragnehmer können durch die 3D-Punktwolke navigieren, indem sie Vergrößern und Verkleinern und sich mit der Maus und den Tastenkombinationen in alle Richtungen in der Wolke bewegen. Wenn Auftragnehmer auf einen Punkt in der Punktwolke klicken, zoomt die Benutzeroberfläche automatisch in diesen Bereich. Auftragnehmer können verschiedene Werkzeuge verwenden, um 3D-Quader um Objekte zu zeichnen. Weitere Informationen finden Sie unter **Hilfsmittel zur Beschriftung**. 

Nachdem Auftragnehmer einen 3D-Quader in der Punktwolke platziert haben, können sie diese Quader mit einer Vielzahl von Ansichten anpassen, damit sie eng an Autos anliegen: direkt im 3D-Quader, in einer Seitenansicht mit drei vergrößerten Perspektiven der Punktwolke um den Rahmen, und wenn Sie Bilder für die Sensorfusion einschließen, direkt im 2D-Bild. 

Ansichtsoptionen, mit denen Auftragnehmer Beschriftungstext, ein Bodengitter und zusätzliche Punktattribute problemlos ausblenden oder anzeigen können. Auftragnehmer können auch zwischen perspektivischen und orthogonalen Projektionen wählen. 

**Hilfsmittel zur Beschriftung**  
Ground Truth hilft Arbeitnehmern, 3D-Punktwolken schneller und genauer zu beschriften, indem sie UX-, Machine Learning und Computer-Vision-gestützte Beschriftungshilfsmittel für 3D-Punktwolken-Objektverfolgungsaufgaben einsetzen. Für diesen Aufgabentyp stehen die folgenden Hilfsmittel zur Beschriftung zur Verfügung:
+ **Automatisches Ausfüllen von Etiketten** – Wenn ein Arbeitnehmer einen Quader zu einem Rahmen hinzufügt, wird automatisch ein Quader mit denselben Abmessungen und derselben Ausrichtung zu allen Rahmen in der Sequenz hinzugefügt. 
+ **Label-Interpolation** – Nachdem ein Arbeitnehmer ein einzelnes Objekt in zwei Frames gelabelt hat, verwendet Ground Truth diese Annotationen, um die Bewegung des Objekts zwischen diesen beiden Frames zu interpolieren. Die Beschriftungsinterpolation kann ein- und ausgeschaltet werden.
+ **Massenverwaltung von Beschriftungen und Attributen** – Die Arbeitnehmer können Anmerkungen, Attribute von Beschriftungskategorien und Rahmenattribute in großen Mengen hinzufügen, löschen und umbenennen. 
  + Auftragnehmer können Anmerkungen für ein bestimmtes Objekt vor oder nach einem Frame manuell löschen. Beispielsweise kann ein Auftragnehmer alle Beschriftungen für ein Objekt nach Frame 10 löschen, wenn sich dieses Objekt nach diesem Frame nicht mehr in der Szene befindet. 
  + Wenn ein Auftragnehmer versehentlich alle Anmerkungen für ein Objekt massenhaft löscht, kann er sie wieder hinzufügen. Wenn ein Auftragnehmer beispielsweise alle Anmerkungen für ein Objekt vor Frame 100 löscht, kann er sie diesen Frames massenhaft hinzufügen. 
  + Auftragnehmer können eine Beschriftung in einem Frame umbenennen und alle 3D-Quader, denen diese Beschriftung zugewiesen ist, werden mit dem neuen Namen für alle Frames aktualisiert. 
  + Arbeitnehmer können die Massenbearbeitung verwenden, um Label-Kategorieattribute und Rahmenattribute in mehreren Frames hinzuzufügen oder zu bearbeiten.
+ **Einrasten** – Arbeitnehmer können einen Quader um ein Objekt hinzufügen und einen Tastaturbefehl oder eine Menüoption verwenden, um das Ground-Truth-Werkzeug den Quader eng um die Objektgrenzen einrasten zu lassen. 
+ **Befestigung am Boden** Nachdem ein Auftragnehmer der 3D-Szene einen Quader hinzugefügt hat, kann er den Quader automatisch am Boden ausrichten. Beispielsweise kann der Auftragnehmer diese Funktion verwenden, um einen Quader an der Straße oder dem Bürgersteig in der Szene auszurichten. 
+ **Multi-View-Beschriftung** Nachdem ein Auftragnehmer der 3D-Szene einen 3D-Quader hinzugefügt hat, werden in einem Seitenbereich die Vorder- und zwei Seitenperspektiven angezeigt, um dem Auftragnehmer dabei zu helfen, den Quader fest um das Objekt herum auszurichten. Auftragnehmer können die 3D-Punktwolke mit Anmerkungen versehen, der Seitenbereich und die Anpassungen werden in den anderen Ansichten in Echtzeit angezeigt. 
+ **Sensorfusion** – Wenn Sie Daten für die Sensorfusion bereitstellen, können Auftragnehmer Anmerkungen in 3D-Szenen und 2D-Bildern anpassen, und die Anmerkungen werden in Echtzeit in die andere Ansicht projiziert. 
+ **Automatisches Zusammenführen von Quadern** – Worker können zwei Quader automatisch über alle Frames hinweg zusammenführen, wenn sie feststellen, dass Quader mit unterschiedlichen Bezeichnungen tatsächlich ein einziges Objekt darstellen. 
+ **Ansichtsoptionen** – Ermöglicht Auftragnehmern das einfache Ausblenden oder Anzeigen von Beschriftungstext, eines Bodengitters und zusätzlicher Punktattribute wie Farbe oder Intensität. Auftragnehmer können auch zwischen perspektivischen und orthogonalen Projektionen wählen. 

# Ausgabedaten für einen Kennzeichnungsauftrag der 3D-Punktwolken-Objektverfolgung
<a name="sms-point-cloud-object-tracking-output-data"></a>

Wenn Sie einen Kennzeichnungsauftrag der 3D-Punktwolken-Objektverfolgung erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Arbeitnehmer ihre Aufgaben abgeschlossen haben, werden ihre Anmerkungen in den Amazon-S3-Bucket geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Das Ausgabedatenformat bestimmt, was Sie in Ihrem Amazon S3 S3-Bucket sehen, wenn Ihr Labeling-Auftragsstatus ([LabelingJobStatus](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeLabelingJob.html#API_DescribeLabelingJob_ResponseSyntax)) lautet`Completed`. 

Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) mehr über das Ausgabedatenformat von Ground Truth. Weitere Informationen zum Ausgabedatenformat der 3D-Punktwolken-Objektverfolgung finden Sie unter [Ausgabe der 3D-Punktwolken-Objektverfolgung](sms-data-output.md#sms-output-point-cloud-object-tracking). 

# Informationen zum Erstellen eines 3D-Punktwolken-Objektverfolgungsanpassungs- oder Verifizierungsbeschriftungsauftrags
<a name="sms-point-cloud-object-tracking-adjustment-verification"></a>

Sie können Beschriftungsverifizierungs- und Anpassungsaufträge über die Ground-Truth-Konsole oder die API `CreateLabelingJob` starten. Weitere Informationen zu Aufträgen zur Anpassung und Überprüfung von Beschriftungen und zum Erstellen eines solchen Auftrags finden Sie unter [Beschriftungsverifizierung und Anpassung](sms-verification-data.md).

Wenn Sie einen Korrekturbeschriftungsauftrag erstellen, können Ihre Eingabedaten für den Beschriftungsauftrag Beschriftungen sowie Maße für Gier-, Neigungs- und Rollwinkel aus einem früheren Etikettierauftrag oder einer externen Quelle enthalten. Im Anpassungsauftrag werden Tonhöhe und Neigung in der Arbeitnehmer-Benutzeroberfläche visualisiert, können aber nicht geändert werden. Die Gierbewegung ist einstellbar. 

Ground Truth verwendet Tait-Bryan-Winkel mit den folgenden intrinsischen Rotationen, um Gieren, Neigen und Rollen in der Arbeitnehmer-Benutzeroberfläche zu visualisieren. Zunächst wird das Fahrzeug entsprechend der Z-Achse gedreht (Gierbewegung). Als nächstes wird das gedrehte Fahrzeug entsprechend der intrinsischen Y'-Achse (Neigung) gedreht. Schließlich wird das Fahrzeug entsprechend der intrinsischen X“-Achse gedreht (Rollbewegung). 

# Grundlegendes zum Aufgabentyp der semantischen 3D-Punktwolkensegmentierung
<a name="sms-point-cloud-semantic-segmentation"></a>

Die semantische Segmentierung beinhaltet die Klassifizierung einzelner Punkte einer 3D-Punktwolke in vordefinierte Kategorien. Verwenden Sie diesen Aufgabentyp, wenn Auftragnehmer eine semantische Segmentierungsmaske auf Punktebene für 3D-Punktwolken erstellen sollen. Wenn Sie beispielsweise die Klassen `car`, `pedestrian` und `bike` angeben, wählen Auftragnehmer jeweils eine Klasse aus und färben alle Punkte, auf die diese Klasse zutrifft, mit derselben Farbe in der Punktwolke. 

Für diesen Aufgabentyp ist das Datenobjekt, das Auftragnehmer beschriften, eine Sequenz von Punktwolkenframes. Ground Truth generiert anhand der von Ihnen bereitgestellten Punktwolkendaten eine 3D-Punktwolkenvisualisierung. Sie können auch Kameradaten bereitstellen, um Auftragnehmern mehr visuelle Informationen über Szenen im Frame zur Verfügung zu stellen und ihnen dabei zu helfen, Objekte zu malen. Wenn ein Auftragnehmer ein Objekt entweder im 2D-Bild oder in der 3D-Punktwolke malt, wird die Farbe in der anderen Ansicht angezeigt. 

Sie können auch Anmerkungen anpassen oder verifizieren, die in einem Kennzeichnungsauftrag der 3D-Punktwolken-Objekterkennung erstellt wurden, indem Sie den Anpassungs- oder Kennzeichnungsaufgabentyp „Semantische 3D-Punktwolkensegmentierung“ verwenden. Weitere Informationen zu Beschriftungsaufträgen zur Anpassung und Überprüfung sowie zu deren Erstellung finden Sie unter [Beschriftungsverifizierung und Anpassung](sms-verification-data.md).

Wenn Sie ein neuer Benutzer der Ground-Truth-3D-Punktwolken-Beschriftungsmodalität sind, empfehlen wir Ihnen, sich [Übersicht über 3D-Punktwolken-Kennzeichnungsjobs](sms-point-cloud-general-information.md) anzusehen. Diese Beschriftungsmodalität unterscheidet sich von anderen Ground-Truth-Aufgabentypen. Dieses Thema bietet einen Überblick über wichtige Details, die Sie beim Erstellen eines 3D-Punktwolken-Beschriftungsauftrags beachten sollten.

In den folgenden Themen wird erklärt, wie ein semantischer 3D-Punktwolken-Segmentierungsauftrag erstellt wird. Außerdem wird gezeigt, wie die Benutzeroberfläche für Arbeitsaufgaben aussieht (was Auftragnehmer sehen, wenn sie an dieser Aufgabe arbeiten), und es wird ein Überblick über die Ausgabedaten gegeben, die Sie erhalten, wenn Auftragnehmer ihre Aufgaben erledigen.

**Topics**
+ [Erstellen eines Kennzeichnungsauftrags der semantischen 3D-Punktwolkensegmentierung](sms-point-cloud-semantic-segmentation-create-labeling-job.md)
+ [Anzeigen der Aufgabenoberfläche für Auftragnehmer bei einem Auftrag zur semantischen 3D-Punktwolkensegmentierung](sms-point-cloud-semantic-segmentation-worker-ui.md)
+ [Ausgabedaten für einen Auftrag zur semantischen 3D-Punktwolkensegmentierung](sms-point-cloud-semantic-segmentation-input-data.md)

# Erstellen eines Kennzeichnungsauftrags der semantischen 3D-Punktwolkensegmentierung
<a name="sms-point-cloud-semantic-segmentation-create-labeling-job"></a>

Sie können mithilfe der SageMaker KI-Konsole oder der API-Operation einen Auftrag zur Kennzeichnung von 3D-Punktwolken erstellen. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) Um einen Kennzeichnungsauftrag für diesen Aufgabentyp zu erstellen, benötigen Sie Folgendes: 
+ Eine Einzelframe-Eingabemanifestdatei. Informationen zum Erstellen dieser Art von Manifestdatei finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). Wenn Sie ein neuer Benutzer von -3D-Punktwolken-Beschriftungsmodalitäten sind, empfehlen wir Ihnen, sich [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md) anzusehen. 
+ Ein Arbeitsteam aus privaten oder Anbieterarbeitskräften. Sie können Amazon Mechanical Turk-Auftragnehmer nicht für 3D-Punktwolken-Beschriftungsaufträge verwenden. Informationen zum Erstellen von Arbeitskräften und Arbeitsteams finden Sie unter [Arbeitskräfte](sms-workforce-management.md).
+ Eine Konfigurationsdatei der Beschriftungskategorie. Weitere Informationen finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md). 

Stellen Sie außerdem sicher, dass Sie die [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md) angesehen und erfüllt haben. 

In einem der folgenden Abschnitte erfahren Sie, wie Sie einen Kennzeichnungsauftrag mithilfe der Konsole oder einer API erstellen. 

## Erstellen eines Kennzeichnungsauftrags (Konsole)
<a name="sms-point-cloud-semantic-segmentation-console"></a>

Sie können den Anweisungen folgen, um zu erfahren, wie Sie [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md) in der SageMaker AI-Konsole einen Job zur semantischen Segmentierung von 3D-Punktwolken erstellen. Beachten Sie beim Erstellen Ihres Kennzeichnungsauftrags Folgendes: 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Einzelframe-Manifestdatei handeln. Weitere Informationen finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). 
+ Das automatisierte Daten-Labeling und Anmerkungskonsolidierung wird für 3D-Punktwolken-Labeling-Aufgaben nicht unterstützt. 
+ Kennzeichnungsaufträge der semantischen 3D-Punktwolkensegmentierung können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge festlegen, wenn Sie Ihr Arbeitsteam auswählen (bis zu 7 Tage oder 604800 Sekunden). 

## Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-point-cloud-semantic-segmentation-api"></a>

In diesem Abschnitt werden Details behandelt, die Sie wissen müssen, wenn Sie mithilfe der SageMaker API-Operation einen Labeling-Job erstellen. `CreateLabelingJob` Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) 

Die Seite [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) bietet einen Überblick über die `CreateLabelingJob`-Operation. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Sie müssen einen ARN für `HumanTaskUiArn` eingeben. Verwenden Sie `arn:aws:sagemaker:<region>:394669845002:human-task-ui/PointCloudSemanticSegmentation`. Ersetzen Sie `<region>` durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. 

  Für den Parameter `UiTemplateS3Uri` sollte kein Eintrag vorhanden sein. 
+ Ihr [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName) muss mit `-ref` enden. Beispiel, `ss-labels-ref`. 
+ Bei Ihrer Eingabemanifestdatei muss es sich um eine Einzelframe-Manifestdatei handeln. Weitere Informationen finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). 
+ Sie geben Ihre Beschriftungen und Anweisungen für Auftragnehmer in einer Konfigurationsdatei der Beschriftungskategorie an. Informationen zum Erstellen dieser Datei finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md). 
+ Sie müssen eine vordefinierte Lambda-Funktion ARNs für die Pre-Annotation und Post-Annotation (ACS) angeben. Diese ARNs sind spezifisch für die AWS Region, die Sie für die Erstellung Ihres Labeling-Jobs verwenden. 
  + Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden. Wenn Sie beispielsweise Ihren Kennzeichnungsauftrag in us-east-1 erstellen, wird der ARN `arn:aws:lambda:us-east-1:432418664414:function:PRE-3DPointCloudSemanticSegmentation` sein. 
  + Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden. Wenn Sie beispielsweise Ihren Kennzeichnungsauftrag in us-east-1 erstellen, wird der ARN `arn:aws:lambda:us-east-1:432418664414:function:ACS-3DPointCloudSemanticSegmentation` sein. 
+ Die Anzahl der in `NumberOfHumanWorkersPerDataObject` angegebenen Auftragnehmer sollte `1` sein. 
+ Das automatisierte Daten-Labeling wird für 3D-Punktwolken-Kennzeichnungsaufträge nicht unterstützt. Sie sollten keine Werte für Parameter in `[LabelingJobAlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelingJobAlgorithmsConfig)` angeben. 
+ Kennzeichnungsaufträge der semantischen 3D-Punktwolkensegmentierung können mehrere Stunden in Anspruch nehmen. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in `TaskTimeLimitInSeconds` festlegen (bis zu 7 Tage oder 604800 Sekunden). 

# Anzeigen der Aufgabenoberfläche für Auftragnehmer bei einem Auftrag zur semantischen 3D-Punktwolkensegmentierung
<a name="sms-point-cloud-semantic-segmentation-worker-ui"></a>

Ground Truth stellt Auftragnehmern ein Webportal und Tools zur Verfügung, mit denen sie Ihre Anmerkungsaufgaben der semantischen 3D-Punktwolkensegmentierung erledigen können. Wenn Sie den Beschriftungsauftrag erstellen, geben Sie den Amazon-Ressourcennamen (ARN) für eine vorgefertigte Ground-Truth-Benutzeroberfläche im `HumanTaskUiArn`-Parameter an. Wenn Sie einen Kennzeichnungsauftrag mit diesem Aufgabentyp in der Konsole erstellen, wird diese Benutzeroberfläche automatisch verwendet. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen. Wenn Sie ein neuer Benutzer sind, wird empfohlen, einen Kennzeichnungsauftrag über die Konsole zu erstellen, um sicherzustellen, dass Ihre Beschriftungsattribute, Punktwolkenframes und ggf. Bilder erwartungsgemäß angezeigt werden. 

Im Folgenden finden Sie ein GIF der Aufgabenoberfläche für Auftragnehmer der semantischen 3D-Punktwolkensegmentierung. Wenn Sie Kameradaten für die Sensorfusion bereitstellen, werden Bilder mit Szenen im Punktwolken-Frame abgeglichen. Auftragnehmer können Objekte entweder in der 3D-Punktwolke oder im 2D-Bild malen und die Farbe wird an der entsprechenden Position im anderen Medium angezeigt. Diese Bilder werden im Worker-Portal angezeigt, wie im folgenden GIF gezeigt. 

![\[GIF, das zeigt, wie Auftragnehmer die 3D-Punktwolke und das 2D-Bild gemeinsam zum Zeichnen von Objekten verwenden können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss_paint_sf.gif)


Auftragnehmer können mithilfe der Tastatur und der Maus in der 3D-Szene navigieren. Sie können Folgendes:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern.
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Das folgende Video zeigt Bewegungen um die 3D-Punktwolke. Auftragnehmer können alle Seitenansichten und Menüs ausblenden und neu erweitern. In diesem GIF wurden die Seitenansichten und Menüs ausgeblendet. 

![\[GIF, das zeigt, wie Auftragnehmer in der 3D-Punktwolke navigieren können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss_nav_worker_portal.gif)


Das folgende GIF veranschaulicht, wie ein Auftragnehmer mehrere Objekte schnell beschriften, bemalte Objekte mithilfe der Option „Farbe entfernen“ verfeinern und dann nur Punkte anzeigen kann, die gemalt wurden. 

![\[GIF, das zeigt, wie ein Auftragnehmer mehrere Objekte kennzeichnen kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss-view-options.gif)


Weitere Ansichtsoptionen und Funktionen sind verfügbar. Auf der [Anweisungsseite für Auftragnehmer](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-worker-instructions-semantic-segmentation.html) finden Sie eine umfassende Übersicht über die UI für Auftragnehmer. 

**Werkzeuge für Auftragnehmer**  
Auftragnehmer können durch die 3D-Punktwolke navigieren, indem sie Vergrößern und Verkleinern und sich mit der Maus und den Tastenkombinationen in alle Richtungen in der Wolke bewegen. Wenn Sie einen semantischen Segmentierungsauftrag erstellen, stehen Auftragnehmern die folgenden Werkzeuge zur Verfügung: 
+ Ein Pinsel, um Objekte zu malen und die Farbe zu entfernen. Auftragnehmer malen Objekte, indem sie eine Beschriftungskategorie auswählen und dann in der 3D-Punktwolke malen. Auftragnehmer entfernen die Farbe von Objekten, indem Sie im Menü der Beschriftungskategorie die Option „Farbe entfernen“ auswählen und den Pinsel zum Entfernen der Farbe verwenden. 
+ Ein Polygonwerkzeug, mit dem Auftragnehmer einen Bereich in der Punktwolke auswählen und malen können. 
+ Ein Hintergrund-Malwerkzeug, mit dem Auftragnehmer hinter Objekten malen können, die sie bereits mit Anmerkungen versehen haben, ohne die ursprünglichen Anmerkungen zu ändern. Zum Beispiel können Auftragnehmer dieses Werkzeug verwenden, um die Straße zu malen, nachdem alle Autos auf der Straße gemalt wurden. 
+ Ansichtsoptionen mit denen Auftragnehmer Beschriftungstext, ein Bodengitter und zusätzliche Punktattribute wie Farbe oder Intensität leicht ausblenden oder anzeigen können. Auftragnehmer können auch zwischen perspektivischen und orthogonalen Projektionen wählen. 

# Ausgabedaten für einen Auftrag zur semantischen 3D-Punktwolkensegmentierung
<a name="sms-point-cloud-semantic-segmentation-input-data"></a>

Wenn Sie einen Kennzeichnungsauftrag der semantischen 3D-Punktwolkensegmentierung erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Auftragnehmer ihre Aufgaben ausführen, werden ihre Anmerkungen in den Amazon-S3-Bucket geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Das Ausgabedatenformat bestimmt, was Sie in Ihrem Amazon S3 S3-Bucket sehen, wenn Ihr Labeling-Auftragsstatus ([LabelingJobStatus](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeLabelingJob.html#API_DescribeLabelingJob_ResponseSyntax)) lautet`Completed`. 

Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) mehr über das Ausgabedatenformat von Ground Truth. Weitere Informationen zum Ausgabedatenformat der 3D-Punktwolken-Objekterkennung finden Sie unter [Ausgabe der semantischen 3D-Punktwolkensegmentierung](sms-data-output.md#sms-output-point-cloud-segmentation). 

# Grundlegendes zum Aufgabentyp der 3D-2D-Punktwolken-Objektverfolgung
<a name="sms-point-cloud-3d-2d-object-tracking"></a>

Verwenden Sie diesen Aufgabentyp, wenn Sie möchten, dass Auftragnehmer 3D-Point-Cloud-Anmerkungen mit 2D-Bildanmerkungen verknüpfen und auch 2D-Bildanmerkungen zwischen verschiedenen Kameras verknüpfen. Derzeit unterstützt Ground Truth Quader für Anmerkungen in einer 3D-Point-Cloud und Bounding Boxes für Anmerkungen in 2D-Videos. Sie können diesen Aufgabentyp beispielsweise verwenden, um Auftragnehmer zu bitten, die Bewegung eines Fahrzeugs in einer 3D-Point-Cloud mit seinem 2D-Video zu verknüpfen. Mithilfe der 3D-2D-Verknüpfung können Sie auf einfache Weise Point-Cloud-Daten (wie die Entfernung eines Quaders) mit Videodaten (Begrenzungsrahmen) für bis zu 8 Kameras korrelieren.

 Ground Truth stellt Auftragnehmern Tools zur Verfügung, mit denen sie Quader in einer 3D-Point-Cloud und Begrenzungsrahmen in bis zu 8 Kameras mit derselben Annotationsoberfläche kommentieren können. Auftragnehmer können auch verschiedene Begrenzungsrahmen für dasselbe Objekt über verschiedene Kameras hinweg verknüpfen. Beispielsweise kann ein Begrenzungsrahmen in Kamera1 mit einem Begrenzungsrahmen in Kamera2 verknüpft werden. Auf diese Weise können Sie ein Objekt anhand einer eindeutigen ID über mehrere Kameras hinweg korrelieren. 

**Anmerkung**  
Derzeit unterstützt SageMaker KI das Erstellen eines 3D-2D-Linkjobs mithilfe der Konsole nicht. Informationen zum Erstellen eines 3D-2D-Verbindungsauftrags mithilfe der SageMaker API finden Sie unter. [Erstellen eines Kennzeichnungsauftrags (API)](sms-3d-2d-point-cloud-object-tracking-create-labeling-job.md#sms-point-cloud-3d-2d-object-tracking-create-labeling-job-api) 

In den folgenden Themen wird erklärt, wie ein Kennzeichnungsauftrag zur 3D-2D-Punktwolken-Objektverfolgung erstellt wird. Außerdem wird gezeigt, wie die Benutzeroberfläche für Arbeitsaufgaben aussieht (was Auftragnehmer sehen, wenn sie an dieser Aufgabe arbeiten), und es wird ein Überblick über die Ausgabedaten gegeben, die Sie erhalten, wenn Auftragnehmer ihre Aufgaben erledigen.

**Topics**
+ [Erstellen eines Objektverfolgungs-Kennzeichnungsauftrags in der 3D-2D-Punktwolke](sms-3d-2d-point-cloud-object-tracking-create-labeling-job.md)
+ [Anzeigen der Aufgabenoberfläche für einen Kennzeichnungsauftrag zur 3D-2D-Objektverfolgung](sms-point-cloud-3d-2d-object-tracking-worker-ui.md)
+ [Ausgabedaten für einen Kennzeichnungsauftrag zur 3D-2D-Objektverfolgung](sms-point-cloud-3d-2d-object-tracking-output-data.md)

# Erstellen eines Objektverfolgungs-Kennzeichnungsauftrags in der 3D-2D-Punktwolke
<a name="sms-3d-2d-point-cloud-object-tracking-create-labeling-job"></a>

Mithilfe der SageMaker API-Operation können Sie einen Auftrag zur Kennzeichnung von 3D-2D-Punktwolken erstellen. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) Um einen Kennzeichnungsauftrag für diesen Aufgabentyp zu erstellen, benötigen Sie Folgendes: 
+ Ein Arbeitsteam aus privaten oder Anbieterarbeitskräften. Sie können Amazon Mechanical Turk nicht für 3D-Punktwolkenbeschriftungsaufträge verwenden. Informationen zum Erstellen von Arbeitskräften und Arbeitsteams finden Sie unter [Arbeitskräfte](sms-workforce-management.md).
+ Fügen Sie eine CORS-Richtlinie zu einem S3-Bucket hinzu, das Eingabedaten in der Amazon S3-Konsole enthält. Um die erforderlichen CORS-Header für den S3-Bucket festzulegen, der Ihre Eingabebilder in der S3-Konsole enthält, folgen Sie den Anweisungen unter [CORS-Berechtigungsanforderung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-cors-update.html).
+ Stellen Sie außerdem sicher, dass Sie die [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md) angesehen und erfüllt haben. 

In den folgenden Abschnitten erfahren Sie, wie Sie einen Beschriftungsauftrag mithilfe der API erstellen können. 

## Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-point-cloud-3d-2d-object-tracking-create-labeling-job-api"></a>

In diesem Abschnitt werden Details behandelt, die Sie wissen müssen, wenn Sie mithilfe der SageMaker API-Operation einen 3D-2D-Objektverfolgungs-Labeling-Job erstellen. `CreateLabelingJob` Diese API definiert diesen Vorgang für alle AWS SDKs. Eine Liste der sprachspezifischen Sprachen, die für diesen Vorgang SDKs unterstützt werden, **finden Sie im Abschnitt Siehe auch** von. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) 

[Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md) bietet einen Überblick über die Operation `CreateLabelingJob`. Befolgen Sie diese Anweisungen, und führen Sie die folgenden Schritte aus, während Sie Ihre Anforderung konfigurieren: 
+ Sie müssen einen ARN für `HumanTaskUiArn` eingeben. Verwenden Sie `arn:aws:sagemaker:<region>:394669845002:human-task-ui/PointCloudObjectTracking`. Ersetzen Sie `<region>` durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. 

  Für den Parameter `UiTemplateS3Uri` sollte kein Eintrag vorhanden sein. 
+ Ihr [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName) muss mit `-ref` enden. Beispiel, `ot-labels-ref`. 
+ Ihre Eingabemanifestdatei muss eine Punktwolkenframesequenz-Manifestdatei sein. Weitere Informationen finden Sie unter [Erstellen eines Eingabemanifests für Punktwolkensequenzen](sms-point-cloud-multi-frame-input-data.md). Sie müssen auch eine Konfigurationsdatei für die Beschriftungskategorie bereitstellen, wie oben erwähnt.
+ Sie müssen vordefinierte Lambda-Funktionen ARNs für die Pre-Annotation und Post-Annotation (ACS) bereitstellen. Diese ARNs sind spezifisch für die AWS Region, in der Sie Ihren Labeling-Job erstellen. 
  + Informationen zum Lambda-ARN zur Vorkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden, der mit `PRE-3DPointCloudObjectTracking` endet. 
  + Informationen zum Lambda-ARN zur Nachkommentierung finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn). Verwenden Sie die Region, in der Sie Ihren Kennzeichnungsauftrag erstellen, um den richtigen ARN zu finden, der mit `ACS-3DPointCloudObjectTracking` endet. 
+ Die Anzahl der in `NumberOfHumanWorkersPerDataObject` angegebenen Auftragnehmer sollte `1` sein. 
+ Das automatisierte Daten-Labeling wird für 3D-Punktwolken-Kennzeichnungsaufträge nicht unterstützt. Sie sollten keine Werte für Parameter in `[LabelingJobAlgorithmsConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelingJobAlgorithmsConfig)` angeben. 
+ 3D-2D-Objektverfolgungs-Beschriftungsaufträge können mehrere Stunden dauern. Sie können ein längeres Zeitlimit für diese Kennzeichnungsaufträge in `TaskTimeLimitInSeconds` festlegen (bis zu 7 Tage oder 604.800 Sekunden). 

**Anmerkung**  
Nachdem Sie erfolgreich einen 3D-2D-Objektverfolgungsauftrag erstellt haben, wird dieser in der Konsole unter Beschriftungsauftrag angezeigt. Der Aufgabentyp für den Auftrag wird als **Point Cloud-Objektverfolgung** angezeigt.

## Format der Eingabedaten
<a name="sms-point-cloud-3d-2d-object-tracking-input-data"></a>

Sie können mithilfe der SageMaker API-Operation, einen Auftrag zur 3D-2D-Objektverfolgung erstellen. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) Um einen Kennzeichnungsauftrag für diesen Aufgabentyp zu erstellen, benötigen Sie Folgendes:
+ Eine Sequenz-Eingabemanifestdatei. Informationen zum Erstellen dieser Art von Manifestdatei finden Sie unter [Erstellen eines Eingabemanifests für Punktwolkensequenzen](sms-point-cloud-multi-frame-input-data.md). Wenn Sie ein neuer Benutzer von Ground-Truth-3D-Point-Cloud-Beschriftungsmodalitäten sind, empfehlen wir Ihnen, sich [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md) anzusehen. 
+ Sie geben Ihre Beschriftungen und Anweisungen für Auftragnehmer in einer Konfigurationsdatei der Beschriftungskategorie an. Weitere Informationen finden Sie unter [Erstellen einer Beschriftungskategorie-Konfigurationsdatei mit Beschriftungskategorie und Rahmenattributen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-label-cat-config-attributes.html), um zu erfahren, wie Sie diese Datei erstellen. Das folgende Beispiel zeigt eine Konfigurationsdatei für Beschriftungskategorien zum Erstellen eines 3D-2D-Objektverfolgungsauftrags.

  ```
  {
      "document-version": "2020-03-01",
      "categoryGlobalAttributes": [
          {
              "name": "Occlusion",
              "description": "global attribute that applies to all label categories",
              "type": "string",
              "enum":[
                  "Partial",
                  "Full"
              ]
          }
      ],
      "labels":[
          {
              "label": "Car",
              "attributes": [
                  {
                      "name": "Type",
                      "type": "string",
                      "enum": [
                          "SUV",
                          "Sedan"
                      ]
                  } 
              ]
          },
          {
              "label": "Bus",
              "attributes": [
                  {
                      "name": "Size",
                      "type": "string",
                      "enum": [
                          "Large",
                          "Medium",
                          "Small"
                      ]
                  }
              ]
          }
      ],
      "instructions": {
          "shortIntroduction": "Draw a tight cuboid around objects after you select a category.",
          "fullIntroduction": "<p>Use this area to add more detailed worker instructions.</p>"
      },
      "annotationType": [
          {
              "type": "BoundingBox"
          },
          {
              "type": "Cuboid"
          }
      ]
  }
  ```
**Anmerkung**  
Sie müssen `BoundingBox` und `Cuboid` als AnnotationType in der Konfigurationsdatei für die Beschriftungskategorie angeben, um einen 3D-2D-Objektverfolgungsauftrag zu erstellen. 

# Anzeigen der Aufgabenoberfläche für einen Kennzeichnungsauftrag zur 3D-2D-Objektverfolgung
<a name="sms-point-cloud-3d-2d-object-tracking-worker-ui"></a>

Ground Truth stellt den Auftragsnehmern ein Webportal und Tools zur Verfügung, mit denen sie ihre 3D-2D-Objektverfolgungsaufgaben erledigen können. Wenn Sie den Kennzeichnungsauftrag erstellen, geben Sie den Amazon-Ressourcennamen (ARN) für eine vorgefertigte Ground-Truth-UI im `HumanTaskUiArn` Parameter an. Um die UI zu verwenden, wenn Sie einen Beschriftungsauftrag für diesen Aufgabentyp mithilfe der API erstellen, müssen Sie die Option `HumanTaskUiArn` verwenden. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche interagieren, wenn Sie einen Etiketteriauftrag über die API erstellen. Die Tools zum Kommentieren sind Teil der Auftragnehmer-Aufgabe-Oberfläche. Sie sind für die Vorschauoberfläche nicht verfügbar. Die folgende Abbildung zeigt die Auftragnehmer-Aufgabe-Oberfläche, die für die Annotationsaufgabe zur 3D-2D-Punktwolken-Objektverfolgung verwendet wird.

![\[Die Auftragnehmer-Aufgabe-Schnittstelle, die für die Annotationsaufgabe zur 3D-2D-Punktwolken-Objektverfolgung verwendet wird.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms-sensor-fusion.png)


Wenn die Interpolation standardmäßig aktiviert ist. Sobald Auftragnehmer einen einzelnen Quader hinzufügen, wird dieser Quader in allen Frames der Sequenz mit derselben ID repliziert. Sobald die Auftragnehmer den Quader in einem anderen Frame anpassen, interpoliert die Bewegung dieses Objekts und passt alle Quader zwischen den manuell angepassten Frames an. Darüber hinaus kann im Bereich Kameraansicht ein Quader mit einer Projektion dargestellt werden (mit der Taste B für „Beschriftungen umschalten“ in der Kameraansicht), die dem Auftragnehmer eine Referenz aus den Kamerabildern bietet. Die Genauigkeit der Projektion zwischen Quader und Bild basiert auf der Genauigkeit der Kalibrierungen, die in den extrinsischen und intrinsischen Daten erfasst werden.

Wenn Sie Kameradaten für die Sensorfusion bereitstellen, werden Bilder mit Szenen in Punktwolkenframes abgeglichen. Beachten Sie, dass die Kameradaten zeitlich mit den Point-Cloud-Daten synchronisiert werden sollten, um eine genaue Abbildung der Point-Cloud-Bilddaten über jeden Frame in der Sequenz zu gewährleisten, wie in der folgenden Abbildung gezeigt.

![\[Die Manifestdatei, das Worker-Portal mit Point-Cloud-Daten und den Kameradaten.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/3d_2d_link_ss.png)


Die Manifest-Datei enthält die extrinsischen und intrinsischen Daten sowie die Pose, sodass die quaderförmige Projektion auf dem Kamerabild mit der **P-Taste** angezeigt werden kann.

Auftragnehmer können mithilfe der Tastatur und der Maus in der 3D-Szene navigieren. Sie können Folgendes:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern.
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Sobald ein Auftragnehmer einen Quader in der 3D-Szene platziert hat, wird eine Seitenansicht mit den drei projizierten Seitenansichten angezeigt: oben, seitlich und hinten. Diese Seitenansichten zeigen Punkte in und rund um den platzierten Quader an und helfen Auftragnehmern dabei, Quadergrenzen in diesem Bereich zu verfeinern. Auftragnehmer können jede dieser Seitenansichten mit der Maus vergrößern und verkleinern.

Der Auftragnehmer sollte zuerst den Quader auswählen, um in einer beliebigen Kameraansicht einen entsprechenden Begrenzungsrahmen zu zeichnen. Dadurch werden der Quader und der Begrenzungsrahmen mit einem gemeinsamen Namen und einer eindeutigen ID verknüpft.

Der Auftragnehmer kann auch zuerst einen Begrenzungsrahmen zeichnen, ihn auswählen und den entsprechenden Quader zeichnen, um sie zu verbinden.

Weitere Ansichtsoptionen und Funktionen sind verfügbar. Auf der [Anweisungsseite für Auftragnehmer](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-worker-instructions-object-tracking.html) finden Sie eine umfassende Übersicht über die UI für Auftragnehmer. 

## Werkzeuge für Auftragnehmer
<a name="sms-point-cloud-object-tracking-worker-tools"></a>

Auftragnehmer können durch die 3D-Punktwolke navigieren, indem sie Vergrößern und Verkleinern und sich mit der Maus und den Tastenkombinationen in alle Richtungen in der Wolke bewegen. Wenn Auftragnehmer auf einen Point in der Ponit-Cloud klicken, zoomt die Benutzeroberfläche automatisch in diesen Bereich. Auftragnehmer können verschiedene Werkzeuge verwenden, um 3D-Quader um Objekte zu zeichnen. Weitere Informationen finden Sie unter **Hilfsmittel zur Beschriftung**. 

Nachdem Auftragnehmer einen 3D-Quader in der Punktwolke platziert haben, können sie diese Quader in verschiedenen Ansichten so anpassen, dass sie eng um das Auto herum passen: direkt in der 3D-Point-Cloud, in einer Seitenansicht mit drei gezoomten Perspektiven der Point-Cloud um die Box herum und, wenn Sie Bilder für die Sensorfusion einbeziehen, direkt im 2D-Bild. 

Zusätzliche Ansichtsoptionen ermöglichen es den Auftragnehmern, Beschriftungstext, ein Bodennetz und zusätzliche Punktattribute einfach auszublenden oder anzuzeigen. Auftragnehmer können auch zwischen perspektivischen und orthogonalen Projektionen wählen. 

**Hilfsmittel zur Beschriftung**  
Ground Truth hilft Arbeitnehmern, 3D-Punktwolken schneller und genauer zu beschriften, indem sie UX-, Machine Learning und Computer-Vision-gestützte Beschriftungshilfsmittel für 3D-Punktwolken-Objektverfolgungsaufgaben einsetzen. Für diesen Aufgabentyp stehen die folgenden Hilfsmittel zur Beschriftung zur Verfügung:
+ **Beschriftung automatisch ausfüllen**  – Wenn ein Auftragnehmer einem Frame einen Quader hinzufügt, wird dieser Quader automatisch allen Frames in der Sequenz hinzugefügt. 
+ **Beschriftungsinterpolation** – Nachdem ein Auftragnehmer ein einzelnes Objekt in zwei Frames beschriftet hat, verwendet diese Anmerkungen, um die Bewegung dieses Objekts zwischen diesen beiden Frames zu interpolieren. Die Beschriftungsinterpolation kann ein- und ausgeschaltet werden. Das ist standardmäßig aktiviert. Wenn beispielsweise ein Auftragnehmer, der mit 5 Frames arbeitet, in Frame 2 einen Quader hinzufügt, wird dieser in alle 5 Frames kopiert. Wenn der Auftragnehmer dann in Bild 4 Anpassungen vornimmt, wirken Bilder 2 und 4 nun wie zwei Punkte, durch die eine Linie gezogen wird. Der Quader wird dann in den Frames 1, 3 und 5 interpoliert.
+ **Massenverwaltung von Beschriftungen und Attributen** – Auftragnehmer können Anmerkungen hinzufügen, löschen und umbenennen, Kategorieattribute beschriften und Rahmenattribute gleichzeitig hinzufügen, löschen und umbenennen.
  + Auftragnehmer können Anmerkungen für ein bestimmtes Objekt vor oder nach einem Frame manuell löschen. Beispielsweise kann ein Auftragnehmer alle Beschriftungen für ein Objekt nach Frame 10 löschen, wenn sich dieses Objekt nach diesem Frame nicht mehr in der Szene befindet. 
  + Wenn ein Auftragnehmer versehentlich alle Anmerkungen für ein Objekt massenhaft löscht, kann er sie wieder hinzufügen. Wenn ein Auftragnehmer beispielsweise alle Anmerkungen für ein Objekt vor Frame 100 löscht, kann er sie diesen Frames massenhaft hinzufügen. 
  + Auftragnehmer können eine Beschriftung in einem Frame umbenennen und alle 3D-Quader, denen diese Beschriftung zugewiesen ist, werden mit dem neuen Namen für alle Frames aktualisiert. 
  + Arbeitnehmer können die Massenbearbeitung verwenden, um Label-Kategorieattribute und Rahmenattribute in mehreren Frames hinzuzufügen oder zu bearbeiten.
+ **Einrasten** – Arbeitnehmer können einen Quader um ein Objekt hinzufügen und einen Tastaturbefehl oder eine Menüoption verwenden, um das Ground-Truth-Werkzeug den Quader eng um die Objektgrenzen einrasten zu lassen. 
+ **Befestigung am Boden** Nachdem ein Auftragnehmer der 3D-Szene einen Quader hinzugefügt hat, kann er den Quader automatisch am Boden ausrichten. Beispielsweise kann der Auftragnehmer diese Funktion verwenden, um einen Quader an der Straße oder dem Bürgersteig in der Szene auszurichten. 
+ **Multi-View-Beschriftung** – Nachdem ein Auftragnehmer der 3D-Szene einen 3D-Quader hinzugefügt hat, werden in einem Seitenbereich die Vorder- und zwei Seitenperspektiven angezeigt, um dem Auftragnehmer dabei zu helfen, den Quader fest um das Objekt herum auszurichten. Auftragnehmer können die 3D-Punktwolke mit Anmerkungen versehen, der Seitenbereich und die Anpassungen werden in den anderen Ansichten in Echtzeit angezeigt. 
+ **Sensorfusion** – Wenn Sie Daten für die Sensorfusion bereitstellen, können Auftragnehmer Anmerkungen in 3D-Szenen und 2D-Bildern anpassen, und die Anmerkungen werden in Echtzeit in die andere Ansicht projiziert. Weitere Informationen zu den Daten für die Sensorfusion finden Sie unter [Grundlegendes zu Koordinatensystemen und Sensorfusion](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-sensor-fusion-details.html#sms-point-cloud-sensor-fusion).
+ **Quader automatisch zusammenführen** – Auftragnehmer können automatisch zwei Quader über alle Frames hinweg zusammenführen, wenn sie feststellen, dass Quader mit unterschiedlichen Beschriftungen tatsächlich ein einzelnes Objekt darstellen. 
+ **Ansichtsoptionen** – Ermöglicht Auftragnehmern das einfache Ausblenden oder Anzeigen von Beschriftungstext, eines Bodengitters und zusätzlicher Punktattribute wie Farbe oder Intensität. Auftragnehmer können auch zwischen perspektivischen und orthogonalen Projektionen wählen. 

# Ausgabedaten für einen Kennzeichnungsauftrag zur 3D-2D-Objektverfolgung
<a name="sms-point-cloud-3d-2d-object-tracking-output-data"></a>

Wenn Sie einen 3D-2D-Objektverfolgungs-Beschriftungsauftrag erstellen, werden Aufgaben an Auftragnehmer gesendet. Wenn diese Arbeitnehmer ihre Aufgaben abgeschlossen haben, werden ihre Anmerkungen in den Amazon-S3-Bucket geschrieben, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Das Ausgabedatenformat bestimmt, was Sie in Ihrem Amazon S3 S3-Bucket sehen, wenn Ihr Labeling-Auftragsstatus ([LabelingJobStatus](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeLabelingJob.html#API_DescribeLabelingJob_ResponseSyntax)) lautet`Completed`. 

Wenn Sie ein neuer Benutzer von Ground Truth sind, erfahren Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) mehr über das Ausgabedatenformat von Ground Truth. Weitere Informationen zum Ausgabedatenformat der 3D-Point-Cloud-Objektverfolgung finden Sie unter [3D-2D-Objektverfolgung, Punktwolke, Ausgabe der Objektverfolgung](sms-data-output.md#sms-output-3d-2d-point-cloud-object-tracking). 

# Übersicht über 3D-Punktwolken-Kennzeichnungsjobs
<a name="sms-point-cloud-general-information"></a>

Dieses Thema bietet einen Überblick über die einzigartigen Features eines Ground Truth 3D-Punktwolken-Beschriftungsauftrags. Mithilfe der 3D-Punktwolken-Kennzeichnungsaufträge können Auftragnehmer Objekte in einer 3D-Punktwolke beschriften, die von 3D-Sensoren wie LiDAR und Tiefenkameras oder anhand der 3D-Rekonstruktion generiert werden, bei der von einem Agenten wie einer Drohne erfasst Bilder zusammengefügt werden. 

## Vorverarbeitungszeit der Jobs
<a name="sms-point-cloud-job-creation-time"></a>

Wenn Sie einen 3D-Punktwolken-Kennzeichnungsauftrag erstellen, müssen Sie eine [Eingabemanifestdatei](sms-point-cloud-input-data.md) bereitstellen. Die Eingabemanifestdatei kann wie folgt sein:
+ Eine *Frame-Eingabemanifestdatei*, die einen einzelnen Punktwolkenframe in jeder Zeile aufweist. 
+ Eine *Sequenz-Eingabemanifestdatei*, die eine einzelne Sequenz in jeder Zeile aufweist. Eine Sequenz wird als eine zeitliche Reihe von Punktwolkenframes definiert. 

Für beide Arten von Manifestdateien hängt die *Vorverarbeitungszeit* (d. h. die Zeit, bevor Ground Truth beginnt, Aufgaben an Ihre Arbeiter zu senden) von der Gesamtzahl und Größe der Punktwolkenrahmen ab, die Sie in Ihrer Eingabemanifestdatei angeben. Bei Frame-Eingabemanifestdateien ist dies die Anzahl der Zeilen in Ihrer Manifestdatei. Bei Sequenz-Manifestdateien ist dies die Anzahl der Frames in jeder Sequenz multipliziert mit der Gesamtzahl der Sequenzen oder Zeilen in Ihrer Manifestdatei. 

Darüber hinaus werden die Anzahl der Punkte pro Punktwolke und die Anzahl der verschmolzenen Sensordatenobjekte (wie Bilder) in die Vorverarbeitungszeiten der Aufträge einbezogen. Im Durchschnitt kann Ground Truth 200 Punktwolkenrahmen in etwa 5 Minuten vorverarbeiten. Wenn Sie einen 3D-Punktwolken-Kennzeichnungsauftrag mit einer großen Anzahl von Punktwolkenframes erstellen, kann es zu längeren Auftragsvorverarbeitungszeiten kommen. Wenn Sie beispielsweise eine Sequenz-Eingabemanifestdatei mit 4 Punktwolkensequenzen erstellen und jede Sequenz 200 Punktwolken enthält, verarbeitet Ground Truth 800 Punktwolken vor, so dass die Vorverarbeitungszeit für Ihren Auftrag etwa 20 Minuten betragen könnte. Während dieser Zeit lautet der Status Ihres Kennzeichnungsauftrags `InProgress`. 

Während der Bearbeitung Ihres Auftrags zur Kennzeichnung von 3D-Punktwolken erhalten Sie CloudWatch Meldungen, die Sie über den Status Ihres Auftrags informieren. Um diese Meldungen zu identifizieren, suchen Sie in Ihren Kennzeichnungsauftragsprotokollen nach `3D_POINT_CLOUD_PROCESSING_STATUS`. 

Bei **Manifestdateien für die Frame-Eingabe** enthalten Ihre CloudWatch Protokolle eine Meldung, die der folgenden ähnelt:

```
{
    "labeling-job-name": "example-point-cloud-labeling-job",
    "event-name": "3D_POINT_CLOUD_PROCESSING_STATUS",
    "event-log-message": "datasetObjectId from: 0 to 10, status: IN_PROGRESS"
}
```

Die Ereignisprotokollmeldung `datasetObjectId from: 0 to 10, status: IN_PROGRESS` identifiziert die Anzahl der Frames aus Ihrem Eingabemanifest, die verarbeitet wurden. Jedes Mal, wenn ein Frame verarbeitet wurde, erhalten Sie eine neue Meldung. Wenn beispielsweise ein einzelner Frame verarbeitet wurde, erhalten Sie eine weitere Meldung, die `datasetObjectId from: 1 to 10, status: IN_PROGRESS` angibt. 

Bei **Manifestdateien für Sequenzeingaben** CloudWatch enthalten Ihre Protokolle eine Meldung, die der folgenden ähnelt:

```
{
    "labeling-job-name": "example-point-cloud-labeling-job",
    "event-name": "3D_POINT_CLOUD_PROCESSING_STATUS",
    "event-log-message": "datasetObjectId: 0, status: IN_PROGRESS"
}
```

Die Ereignisprotokollmeldung `datasetObjectId from: 0, status: IN_PROGRESS` identifiziert die Anzahl der Sequenzen aus Ihrem Eingabemanifest, die verarbeitet wurden. Jedes Mal, wenn eine Sequenz verarbeitet wurde, erhalten Sie eine neue Meldung. Wenn beispielsweise eine einzelne Sequenz verarbeitet wurde, erhalten Sie eine Meldung, die `datasetObjectId from: 1, status: IN_PROGRESS` angibt, wenn die nächste Sequenz mit der Verarbeitung beginnt. 

## Ausführungszeiten des Jobs
<a name="sms-point-cloud-job-completion-times"></a>

3D-Punktwolken-Kennzeichnungsaufträge können für Auftragnehmer Stunden in Anspruch nehmen. Sie können die Gesamtdauer festlegen, die Auftragnehmer an den einzelnen Aufgaben arbeiten können, wenn Sie einen Kennzeichnungsauftrag erstellen. Die maximale Zeit, die Sie festlegen können, die Auftragnehmer an Aufgaben arbeiten, beträgt 7 Tage. Der Standardwert lautet 3 Tage. 

Es wird dringend empfohlen, Aufgaben zu erstellen, die Auftragnehmer innerhalb von 12 Stunden erledigen können. Auftragnehmer müssen die Benutzeroberfläche für Auftragnehmer während der Arbeit an einer Aufgabe geöffnet lassen. Sie können ihre Arbeit speichern, während sie arbeiten, und Ground Truth speichert ihre Arbeit alle 15 Minuten.

Wenn Sie den SageMaker `CreateLabelingJob` KI-API-Vorgang verwenden, legen Sie im `TaskTimeLimitInSeconds` Parameter von fest, wie lange eine Aufgabe den Mitarbeitern insgesamt zur Verfügung steht`HumanTaskConfig`. 

Wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen, können Sie dieses Zeitlimit angeben, wenn Sie Ihren Arbeitskrafttyp und Ihr Arbeitsteam auswählen.

## Arbeitskräfte
<a name="sms-point-cloud-workforces"></a>

Wenn Sie einen 3D-Punktwolken-Kennzeichnungsauftrag erstellen, müssen Sie ein Arbeitsteam angeben, das Ihre Punktwolken-Anmerkungsaufgaben abschließt. Sie können ein Arbeitsteam aus privaten Arbeitskräften Ihrer eigenen Mitarbeiter oder aus Anbieterarbeitskräften auswählen, die Sie in AWS Marketplace auswählen. Sie können die Arbeitskräfte von Amazon Mechanical Turk nicht für 3D-Punktwolken-Beschriftungsaufträge verwenden. 

Weitere Informationen zu Anbieterarbeitskräften finden Sie unter [Abonnieren von Arbeitskräften eines Anbieters](sms-workforce-management-vendor.md).

Informationen zum Erstellen und Verwalten privater Arbeitskräfte finden Sie unter [Private Arbeitskräfte](sms-workforce-private.md).

## Benutzeroberfläche (UI) für Auftragnehmer
<a name="sms-point-cloud-worker-task-ui"></a>

Ground Truth bietet eine Benutzeroberfläche (UI), Werkzeuge und unterstützende Beschriftungsfeatures, die den Auftragnehmern helfen, ihre 3D-Punktwolken-Labeling-Aufgaben zu erledigen. 

Sie können eine Vorschau der Benutzeroberfläche für Auftragnehmer anzeigen, wenn Sie einen Kennzeichnungsauftrag in der Konsole erstellen.

Wenn Sie einen Beschriftungsauftrag mit der API-Operation `CreateLabelingJob` erstellen, müssen Sie eine von Ground Truth bereitgestellte ARN im Parameter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-UiTemplateS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-UiTemplateS3Uri) angeben, um die Auftragnehmer UI für Ihren Aufgabentyp zu spezifizieren. Sie können den SageMaker [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html)AI-API-Vorgang verwenden`HumanTaskUiArn`, um eine Vorschau der Worker-Benutzeroberfläche anzuzeigen. 

Sie stellen Auftragnehmeranweisungen, Beschriftungen und optional Beschriftungskategorieattribute bereit, die in der Auftragnehmer-Benutzeroberfläche angezeigt werden.

### Attribute der Beschriftungskategorie
<a name="sms-point-cloud-label-and-frame-attributes"></a>

Wenn Sie einen 3D-Punktwolken-Objektverfolgungs- oder Objekterkennungsbeschriftungsauftrag erstellen, können Sie ein oder mehrere *Beschriftungskategorieattribute* hinzufügen. Sie können allen 3D-Punktwolken-Aufgabentypen *Rahmenattribute* hinzufügen: 
+ **Kategorieattribut für Beschriftungen** – Eine Liste mit Optionen (Zeichenketten), ein Textfeld in freier Form oder ein numerisches Feld, das einer oder mehreren Beschriftungen zugeordnet ist. Es wird von Auftragnehmern verwendet, um Metadaten zu einem Etikett bereitzustellen. 
+ **Rahmenattribut** – Eine Liste von Optionen (Zeichenketten), ein Textfeld in freier Form oder ein numerisches Feld, das in jedem Punktwolken-Frame erscheint, den ein Auftragnehmer mit Anmerkungen versehen soll. Es wird von Auftragnehmern verwendet, um Metadaten zu Frames bereitzustellen. 

Darüber hinaus können Sie Beschriftungen und Rahmenattribute verwenden, damit Auftragnehmer Beschriftungen in einem 3D-Punktwolken-Label-Verifizierungsjob überprüfen lassen. 

In den folgenden Abschnitten erfahren Sie mehr über diese Attribute. Um zu erfahren, wie Sie Beschriftungskategorie und Frame-Attribute hinzufügen, verwenden Sie den Abschnitt **Kennzeichnungsauftrag erstellen** auf der [Aufgabentypseite](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-task-types) Ihrer Wahl.

#### Attribute der Beschriftungskategorie
<a name="sms-point-cloud-label-attributes"></a>

Fügen Sie Labelkategorieattribute zu Beschriftungen hinzu, damit Auftragnehmer mehr Informationen zu den von ihnen erstellten Anmerkungen angeben können. Ein Label-Kategorieattribut wird einem einzelnen Etikett oder allen Labels hinzugefügt. Wenn ein Labelkategorieattribut auf alle Beschriftungen angewendet wird, wird es als *globales Labelkategorieattribut* bezeichnet. 

Wenn Sie z. B. die Kategorie *Auto* hinzufügen, möchten Sie vielleicht auch zusätzliche Daten über Ihre beschrifteten Autos erfassen, z. B. ob sie verdeckt sind oder wie groß das Auto ist. Sie können diese Metadaten mithilfe von Beschriftungskategorieattributen erfassen. Wenn Sie in diesem Beispiel das Attribut *verdeckt* zur Fahrzeugkennzeichnungskategorie hinzugefügt haben, können Sie dem *verdeckten* Attribut *teilweise*, *vollständig* oder *Nein* zuweisen und Auftragnehmern die Möglichkeit geben, eine dieser Optionen auszuwählen. 

Wenn Sie einen Auftrag zur Labelverifizierung erstellen, fügen Sie jedem Etikett, das Mitarbeiter überprüfen sollen, Attribute der Kategorie Etiketten hinzu.

#### Rahmenattribute
<a name="sms-point-cloud-frame-attributes"></a>

Fügen Sie Rahmenattribute hinzu, um Auftragnehmern die Möglichkeit zu geben, mehr Informationen zu einzelnen Punktwolkenrahmen bereitzustellen. Sie können bis zu 10 Frame-Attribute angeben, und diese Attribute werden auf allen Frames angezeigt.

Beispielsweise können Sie ein Rahmen-Attribut hinzufügen, das es den Auftragnehmern ermöglicht, eine Zahl einzugeben. Möglicherweise möchten Sie dieses Attribut verwenden, damit Auftragnehmer die Anzahl der Objekte angeben können, die sie in einem bestimmten Rahmen sehen. 

In einem anderen Beispiel könnten Sie ein Textfeld in freier Form bereitstellen, um Auftragnehmern die Möglichkeit zu geben, eine Frage in freier Form zu beantworten.

Wenn Sie einen Auftrag zur Überprüfung von Bezeichnungen erstellen, können Sie ein oder mehrere Rahmenattribute hinzufügen, um Auftragnehmer zu bitten, Feedback zu allen Beschriftungen in einem Punktwolkenrahmen zu geben. 

### Anweisungen für Arbeitnehmer
<a name="sms-point-cloud-worker-instructions-general"></a>

Sie können Auftragnehmeranweisungen bereitstellen, damit Ihre Auftragnehmer Ihre Punktwolken-Labeling-Aufgaben erledigen können. Sie können diese Anweisungen verwenden, um Folgendes zu tun:
+ Bewährte Methoden und Dinge, die beim Beschriften von Objekten zu vermeiden sind.
+ Erläuterung der angegebenen Beschriftungskategorieattribute (für Objekterkennungs- und Objektverfolgungsaufgaben) und deren Verwendung.
+ Tipps, wie Sie beim Beschriften Zeit sparen können, indem Sie Tastenkombinationen verwenden. 

Sie können Ihre Worker-Anweisungen mithilfe der SageMaker AI-Konsole hinzufügen, während Sie einen Labeling-Job erstellen. Wenn Sie einen Kennzeichnungsauftrag mithilfe der API-Operation `CreateLabelingJob` erstellen, geben Sie Auftragnehmeranweisungen in der Konfigurationsdatei der Beschriftungskategorie an. 

Zusätzlich zu Ihren Anweisungen stellt Ground Truth einen Link zur Verfügung, der den Auftragnehmern bei der Navigation und Nutzung des Worker-Portals hilft. Zeigen Sie diese Anweisungen an, indem Sie den Aufgabentyp auf [Anweisungen für Arbeitnehmer](sms-point-cloud-worker-instructions.md) auswählen. 

### Ablehnen von Aufgaben
<a name="sms-decline-task-point-cloud"></a>

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 Auftragnehmer pro Datensatzobjekt ([https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-NumberOfHumanWorkersPerDataObject](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-NumberOfHumanWorkersPerDataObject)) die Aufgabe ablehnt, wird das Datenobjekt als abgelaufen markiert und nicht an weitere Mitarbeiter gesendet.

# Berechtigungsvoraussetzungen für 3D-Punktwolken-Kennzeichnungsjobs
<a name="sms-security-permission-3d-point-cloud"></a>

Wenn Sie einen 3D-Punktwolken-Kennzeichnungsauftrag erstellen, müssen Sie zusätzlich zu den Berechtigungsanforderungen in [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md), Ihrem S3-Bucket, der Ihre Eingabemanifestdatei enthält, eine CORS-Richtlinie hinzufügen. 

## Hinzufügen einer CORS-Berechtigungsrichtlinie zum S3-Bucket
<a name="sms-permissions-execution-role"></a>

Wenn Sie einen 3D-Punktwolken-Kennzeichnungsauftrag erstellen, geben Sie Buckets in S3 an, in denen sich die Eingabedaten und die Manifestdatei befinden und in denen die Ausgabedaten gespeichert werden. Diese Buckets können gleich sein. Sie müssen Ihren Eingabe- und Ausgabebereichen die folgende CORS-Richtlinie (Cross-origin resource sharing) zuordnen. Wenn Sie die Amazon S3-Konsole verwenden, um die Richtlinie zu Ihrem Bucket hinzuzufügen, müssen Sie das JSON-Format verwenden.

**JSON**

```
[
        {
            "AllowedHeaders": [
                "*"
            ],
            "AllowedMethods": [
                "GET",
                "HEAD",
                "PUT"
            ],
            "AllowedOrigins": [
                "*"
            ],
            "ExposeHeaders": [
                "Access-Control-Allow-Origin"
            ],
            "MaxAgeSeconds": 3000
        }
    ]
```

**XML**

```
<?xml version="1.0" encoding="UTF-8"?>
    <CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <AllowedMethod>HEAD</AllowedMethod>
        <AllowedMethod>PUT</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <ExposeHeader>Access-Control-Allow-Origin</ExposeHeader>
        <AllowedHeader>*</AllowedHeader>
    </CORSRule>
    </CORSConfiguration>
```

Wie Sie eine CORS-Richtlinie zu einem S3-Bucket hinzufügen können, erfahren Sie unter [Wie füge ich eine domainübergreifende Ressourcenfreigabe mit CORS hinzu?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html) im Amazon Simple Storage Service User Guide.

# Anweisungen für Arbeitnehmer
<a name="sms-point-cloud-worker-instructions"></a>

Dieses Thema bietet einen Überblick über das Ground-Truth-Worker-Portal und die verfügbaren Werkzeuge, um Ihre 3D-Punktwolken-Labeling-Aufgabe abzuschließen. Wählen Sie zunächst die Art der Aufgabe, an der Sie arbeiten, unter **Themen** aus. 

Wählen Sie für Anpassungsaufträge den ursprünglichen Aufgabentyp des Kennzeichnungsauftrags aus, der die Beschriftungen erstellt hat, die Sie anpassen. Überprüfen und passen Sie die Beschriftungen in Ihrer Aufgabe nach Bedarf an. 

**Wichtig**  
Es wird empfohlen, die Aufgabe mit einem Google Chrome- oder Firefox-Webbrowser auszuführen.

**Topics**
+ [Semantische 3D-Punktwolkensegmentierung](sms-point-cloud-worker-instructions-semantic-segmentation.md)
+ [3D-Punktwolken-Objekterkennung](sms-point-cloud-worker-instructions-object-detection.md)
+ [3D-Punktwolken-Objektverfolgung](sms-point-cloud-worker-instructions-object-tracking.md)

# Semantische 3D-Punktwolkensegmentierung
<a name="sms-point-cloud-worker-instructions-semantic-segmentation"></a>

Verwenden Sie diese Seite, um sich mit der Benutzeroberfläche und den verfügbaren Tools vertraut zu machen, um Ihre semantische 3D-Punktwolken-Segmentierungsaufgabe abzuschließen.

**Topics**
+ [Ihre Aufgabe](#sms-point-cloud-worker-instructions-ss-task)
+ [Navigieren der Benutzeroberfläche](#sms-point-cloud-worker-instructions-worker-ui-ss)
+ [Symbolhandbuch](#sms-point-cloud-worker-instructions-ss-icons)
+ [Shortcuts](#sms-point-cloud-worker-instructions-ss-hot-keys)
+ [Freigeben, Anhalten und Fortsetzen sowie Ablehnen von Aufgaben](#sms-point-cloud-worker-instructions-skip-reject-ss)
+ [Speichern Ihrer Arbeit und Übermitteln](#sms-point-cloud-worker-instructions-saving-work-ss)

## Ihre Aufgabe
<a name="sms-point-cloud-worker-instructions-ss-task"></a>

Wenn Sie an einer semantischen 3D-Punktwolken-Segmentierungsaufgabe arbeiten, müssen Sie eine Kategorie aus dem Menü **Anmerkungen** auf der rechten Seite des Worker-Portals über das Dropdown-Menü **Beschriftungskategorien** auswählen. Nachdem Sie eine Kategorie ausgewählt haben, verwenden Sie die Pinsel- und Polygonwerkzeuge, um jedes Objekt in der 3D-Punktwolke zu malen, für das diese Kategorie gilt. Wenn Sie beispielsweise die Kategorie **Auto** auswählen, verwenden Sie diese Werkzeuge, um alle Autos in der Punktwolke zu malen. Das folgende Video veranschaulicht, wie Sie mit dem Pinselwerkzeug ein Objekt malen. 

Wenn Sie ein oder mehrere Bilder in Ihrem Worker-Portal sehen, können Sie in den Bildern oder in der 3D-Punktwolke malen, und die Farbe wird auf dem anderen Medium angezeigt. 

Möglicherweise werden im Menü **Beschriftungen** Frame-Attribute angezeigt. Verwenden Sie diese Attributaufforderungen, um zusätzliche Informationen zur Punktwolke einzugeben. 

![\[Beispiel für einen Frame-Attribut-Prompt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/frame-attributes.png)


**Wichtig**  
Wenn Sie sehen, dass Objekte beim Öffnen der Aufgabe bereits gemalt wurden, passen Sie diese Anmerkungen an.

Das folgende Video enthält ein Bild, das mit Anmerkungen versehen werden kann. Möglicherweise wird in Ihrer Aufgabe kein Bild angezeigt. 

![\[GIF, das zeigt, wie Auftragnehmer die 3D-Punktwolke und das 2D-Bild gemeinsam zum Zeichnen von Objekten verwenden können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss_paint_sf.gif)


Nachdem Sie ein oder mehrere Objekte mit einer Beschriftungskategorie gemalt haben, können Sie diese Kategorie im Menü „Beschriftungskategorie“ auf der rechten Seite auswählen, um nur die für diese Kategorie gezeichneten Punkte anzuzeigen. 

![\[GIF, das zeigt, wie Auftragnehmer in der 3D-Punktwolke navigieren können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss-view-options.gif)


## Navigieren der Benutzeroberfläche
<a name="sms-point-cloud-worker-instructions-worker-ui-ss"></a>

Sie können mit der Tastatur und der Maus in der 3D-Szene navigieren. Du kannst:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern.
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Das folgende Video zeigt Bewegungen um die 3D-Punktwolke und in der Seitenansicht. Sie können alle Seitenansichten mit dem Vollbildsymbol ausblenden und neu erweitern. In diesem GIF wurden die Seitenansichten und Menüs ausgeblendet.

![\[GIF, das zeigt, wie ein Auftragnehmer die 3D-Punktwolke in der Benutzeroberfläche der Punktwolkenansicht verwenden kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/semantic_seg/ss_nav_worker_portal.gif)


Wenn Sie sich in der Benutzeroberfläche für Auftragnehmer befinden, werden die folgenden Menüs angezeigt:
+ **Anweisungen** – Lesen Sie diese Anweisungen, bevor Sie mit der Aufgabe beginnen.
+ **Shortcuts** – Verwenden Sie dieses Menü, um Tastenkombinationen anzuzeigen, mit denen Sie in der Punktwolke navigieren und die bereitgestellten Anmerkungswerkzeuge verwenden können. 
+ **Ansicht** – Verwenden Sie dieses Menü, um verschiedene Ansichtsoptionen ein- und auszuschalten. Sie können dieses Menü beispielsweise verwenden, um der Punktwolke ein Bodengitter hinzuzufügen und die Projektion der Punktwolke auszuwählen. 
+ **3D-Punktwolke** – Verwenden Sie dieses Menü, um den Punkten in der Punktwolke zusätzliche Attribute hinzuzufügen, z. B. Farbe und Pixelintensität. Beachten Sie, dass einige oder alle dieser Optionen möglicherweise nicht verfügbar sind.
+ **Malen** – Verwenden Sie dieses Menü, um die Funktionalität des Pinsels zu ändern. 

Wenn Sie eine Aufgabe öffnen, ist das Symbol „Szene verschieben“ aktiviert, und Sie können sich mit der Maus und den Navigationsschaltflächen im Punktwolkenbereich des Bildschirms um die Punktwolke bewegen. Um zur ursprünglichen Ansicht zurückzukehren, die beim ersten Öffnen der Aufgabe angezeigt wird, wählen Sie das Symbol „Szene zurücksetzen“ aus. 

Nachdem Sie das Malsymbol ausgewählt haben, können Sie der Punktwolke und den Bildern (falls enthalten) Farbe hinzufügen. Sie müssen das Symbol „Szene verschieben“ erneut auswählen, um in einen anderen Bereich in der 3D-Punktwolke oder dem Bild zu wechseln. 

Um alle Fenster auf der rechten Seite zu reduzieren und die 3D-Punktwolke als Vollbild anzuzeigen, wählen Sie das Vollbildsymbol aus. 

Für die Kamerabilder und Seitenbereiche stehen Ihnen folgende Ansichtsoptionen zur Verfügung:
+ **C** – Zeigen Sie den Kamerawinkel in der Punktwolkenansicht an.
+ **F** – Zeigen Sie das Frustum oder das Sichtfeld der Kamera an, die verwendet wurde, um das Bild in der Punktwolkenansicht zu erfassen. 
+ **P** – Zeigen Sie die Punktwolke an, die auf dem Bild überlagert ist. 

## Symbolhandbuch
<a name="sms-point-cloud-worker-instructions-ss-icons"></a>

In dieser Tabelle erfahren Sie mehr über die Symbole, die in Ihrem Aufgabenportal für Auftragnehmer verfügbar sind. 


| Symbol | Name | Description | 
| --- | --- | --- | 
|  ![\[Pinsel-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/brush.png)  |  Pinsel  |  Wählen Sie dieses Symbol aus, um das Pinselwerkzeug zu aktivieren. Zur Verwendung mit diesem Werkzeug wählen Sie die Objekte aus, die Sie mit der Maus malen möchten, und bewegen Sie sie über diese. Nachdem Sie es ausgewählt haben, wird alles, was Sie malen, der Kategorie zugeordnet, die Sie ausgewählt haben.  | 
|  ![\[Polygon-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/polygon.png)  |  Polygon  |  Wählen Sie dieses Symbol aus, um das Polygon-Malwerkzeug zu verwenden. Verwenden Sie dieses Werkzeug, um Polygone um Objekte zu zeichnen, die Sie malen möchten. Nachdem Sie es ausgewählt haben, wird alles, um das Sie ein Polygon zeichnen, der Kategorie zugeordnet, die Sie ausgewählt haben.  | 
|  ![\[Symbol Szene zurücksetzen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/fit_scene.png)  |  Zurücksetzen der Szene  | Wählen Sie dieses Symbol aus, um die Ansicht der Punktwolke, die Seitenbereiche und gegebenenfalls alle Bilder auf ihre ursprüngliche Position zurückzusetzen, als die Aufgabe zum ersten Mal geöffnet wurde.  | 
|  ![\[Symbol Szene verschieben\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/move_scene.png)  |  Verschieben der Szene  |  Wählen Sie dieses Symbol aus, um die Szene zu verschieben. Standardmäßig wird dieses Symbol ausgewählt, wenn Sie eine Aufgabe zum ersten Mal starten.   | 
|  ![\[Vollbild-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/fullscreen.png)  |  Vollbild   |  Wählen Sie dieses Symbol aus, um die 3D-Punktwolkenvisualisierung als Vollbild anzuzeigen und alle Seitenbereiche zu reduzieren.  | 
|  ![\[Lineal-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/Ruler_icon.png)  |  Lineal  |  Verwenden Sie dieses Symbol, um Entfernungen in der Punktwolke in Metern zu messen. Sie können dieses Tool verwenden, wenn Sie in Ihren Anweisungen aufgefordert werden, alle Objekte in einer bestimmten Entfernung vom Mittelpunkt des Quaders oder dem Objekt, das zur Datenerfassung verwendet wurde, mit Anmerkungen zu versehen. Wenn Sie dieses Symbol auswählen, können Sie den Startpunkt (erste Markierung) an einer beliebigen Stelle in der Punktwolke platzieren, indem Sie ihn mit der Maus auswählen. Das Tool verwendet automatisch Interpolation, um eine Markierung auf dem Punkt zu platzieren, der der ausgewählten Position innerhalb des Grenzwertabstands am nächsten ist. Andernfalls wird die Markierung auf dem Boden platziert. Wenn Sie versehentlich einen Startpunkt platziert haben, können Sie die Markierungsplatzierung mit der Escape-Taste rückgängig machen.  Nachdem Sie die erste Markierung platziert haben, wird eine gepunktete Linie und eine dynamische Beschriftung angezeigt, die angibt, wie weit Sie sich von der ersten Markierung entfernt haben. Klicken Sie auf eine andere Stelle in der Punktwolke, um eine zweite Markierung zu platzieren. Wenn Sie die zweite Markierung platzieren, wird die gepunktete Linie zu einer durchgezogenen Linie und ist der Abstand festgelegt.  Nachdem Sie eine Entfernung festgelegt haben, können Sie sie bearbeiten, indem Sie eine der Markierungen auswählen. Sie können ein Lineal löschen, indem Sie eine beliebige Stelle auf dem Lineal auswählen und die Löschtaste auf der Tastatur drücken.   | 

## Shortcuts
<a name="sms-point-cloud-worker-instructions-ss-hot-keys"></a>

Mit den im Menü **Shortcuts** aufgeführten Shortcuts können Sie durch die 3D-Punktwolke navigieren und das Malwerkzeug verwenden. 

Bevor Sie Ihre Aufgabe starten, wird empfohlen, sich das Menü **Shortcuts** anzusehen und sich mit diesen Befehlen vertraut zu machen. 

## Freigeben, Anhalten und Fortsetzen sowie Ablehnen von Aufgaben
<a name="sms-point-cloud-worker-instructions-skip-reject-ss"></a>

Wenn Sie die Labeling-Aufgabe öffnen, können Sie die Aufgabe über drei Schaltflächen oben rechts ablehnen (**Aufgabe ablehnen**), freigeben (**Aufgabe freigeben**) und beenden und zu einem späteren Zeitpunkt fortsetzen (**Anhalten und später fortsetzen**). In der folgenden Liste wird beschrieben, was passiert, wenn Sie eine dieser Optionen auswählen:
+ **Aufgabe ablehnen**: Sie sollten eine Aufgabe nur ablehnen, wenn etwas mit der Aufgabe nicht stimmt, z. B. wenn ein Problem mit der 3D-Punktwolke, Bildern oder der Benutzeroberfläche vorliegt. Wenn Sie eine Aufgabe ablehnen, können Sie nicht zur Aufgabe zurückkehren.
+ **Aufgabe freigeben**: Wenn Sie eine Aufgabe freigeben, geht die gesamte, an dieser Aufgabe geleistete Arbeit verloren. Wenn die Aufgabe freigegeben wird, können andere Auftragnehmer in Ihrem Team sie übernehmen. Wenn genügend Auftragnehmer die Aufgabe übernehmen, können Sie möglicherweise nicht mehr zur Aufgabe zurückkehren. Wenn Sie diese Schaltfläche und dann **Bestätigen** auswählen, kehren Sie zum Worker-Portal zurück. Wenn die Aufgabe noch verfügbar ist, lautet ihr Status **Verfügbar**. Wenn andere Auftragnehmer sie übernehmen, verschwindet sie aus Ihrem Portal. 
+ **Anhalten und später fortsetzen**: Sie können die Schaltfläche **Anhalten und später fortsetzen** verwenden, um die Arbeit zu unterbrechen und zu einem späteren Zeitpunkt zur Aufgabe zurückzukehren. Sie sollten die Schaltfläche **Speichern** verwenden, um Ihre Arbeit zu speichern, bevor Sie **Anhalten und später fortsetzen** wählen. Wenn Sie diese Schaltfläche und danach **Bestätigen** wählen, kehren Sie zum Worker-Portal zurück. Der Aufgabenstatus lautet dann **Angehalten**. Sie können dieselbe Aufgabe auswählen, um die Arbeit daran fortzusetzen. 

  Beachten Sie, dass die Person, die Ihre Labeling-Aufgaben erstellt, ein Zeitlimit festlegt, bis zu dem alle Aufgaben erledigt sein müssen. Wenn Sie innerhalb dieser Frist nicht zu dieser Aufgabe zurückkehren und sie nicht abschließen, läuft sie ab und Ihre Arbeit wird nicht eingereicht. Weitere Informationen erhalten Sie bei Ihrem Administrator. 

## Speichern Ihrer Arbeit und Übermitteln
<a name="sms-point-cloud-worker-instructions-saving-work-ss"></a>

Sie sollten Ihre Arbeit regelmäßig speichern. Ground Truth speichert Ihre Arbeit automatisch alle 15 Minuten. 

Wenn Sie eine Aufgabe öffnen, müssen Sie Ihre Arbeit daran abschließen, bevor Sie auf **Absenden** klicken. 

# 3D-Punktwolken-Objekterkennung
<a name="sms-point-cloud-worker-instructions-object-detection"></a>

Verwenden Sie diese Seite, um sich mit der Benutzeroberfläche und den verfügbaren Tools vertraut zu machen, um Ihre Aufgabe der 3D-Punktwolkenobjekterkennung abzuschließen.

**Topics**
+ [Ihre Aufgabe](#sms-point-cloud-worker-instructions-od-task)
+ [Navigieren der Benutzeroberfläche](#sms-point-cloud-worker-instructions-worker-ui-od)
+ [Symbolhandbuch](#sms-point-cloud-worker-instructions-od-icons)
+ [Shortcuts](#sms-point-cloud-worker-instructions-od-hot-keys)
+ [Freigeben, Anhalten und Fortsetzen sowie Ablehnen von Aufgaben](#sms-point-cloud-worker-instructions-skip-reject-od)
+ [Speichern Ihrer Arbeit und Übermitteln](#sms-point-cloud-worker-instructions-saving-work-od)

## Ihre Aufgabe
<a name="sms-point-cloud-worker-instructions-od-task"></a>

Wenn Sie an einer Aufgabe der 3D-Punktwolkenobjekterkennung arbeiten, müssen Sie eine Kategorie aus dem Menü **Anmerkungen** auf der rechten Seite des Worker-Portals mithilfe des Menüs **Beschriftungskategorien** auswählen. Nachdem Sie eine Kategorie ausgewählt haben, verwenden Sie die Werkzeuge „Quader hinzufügen“ und „Quader anpassen“, um einen Quader rund um Objekte in der 3D-Punktwolke anzupassen, für die diese Kategorie gilt. Nachdem Sie einen Quader platziert haben, können Sie seine Abmessungen, Position und Ausrichtung direkt in der Punktwolke und den drei auf der rechten Seite angezeigten Feldern ändern. 

Wenn Sie ein oder mehrere Bilder in Ihrem Worker-Portal sehen, können Sie auch Quader in den Bildern oder in der 3D-Punktwolke ändern, und die Änderungen werden auf dem anderen Medium angezeigt. 

Wenn Sie sehen, dass Quader bereits zur 3D-Punktwolke hinzugefügt wurden, wenn Sie Ihre Aufgabe öffnen, passen Sie diese Quader an und fügen Sie nach Bedarf zusätzliche Quader hinzu. 

Um einen Quader zu bearbeiten, einschließlich Verschieben, Neuausrichten und Ändern von Quaderabmessungen, müssen Sie Tastenkombinationen verwenden. Sie können eine vollständige Liste der Tastenkombinationen im Menü **Shortcuts** in der Benutzeroberfläche anzeigen. Im Folgenden finden Sie wichtige Tastenkombinationen, mit denen Sie sich vertraut machen sollten, bevor Sie mit der Labeling-Aufgabe beginnen. 


****  

| Mac-Befehl | Windows-Befehl | Action | 
| --- | --- | --- | 
|  Cmd \$1 Ziehen  |  Strg \$1 Ziehen  |  Ändern Sie die Abmessungen des Quaders.  | 
|  Option \$1 Ziehen  |  Alt \$1 Ziehen  |   Bewegen Sie den Quader.   | 
|  Umschalttaste \$1 Ziehen  |  Umschalttaste \$1 Ziehen  |  Drehen Sie den Quader.   | 
|  Option \$1 O  |  Alt \$1 O  |  Passen Sie den Quader fest um die Punkte an, um die er gezeichnet wurde. Bevor Sie die Option verwenden, stellen Sie sicher, dass der Quader das Objekt von Interesse vollständig umgibt.   | 
|  Option \$1 G  |  Alt \$1 G  |  Platzieren Sie den Quader auf dem Boden.   | 

Einzelne Beschriftungen können ein oder mehrere Beschriftungsattribute haben. Wenn einer Beschriftung ein Beschriftungsattribut zugeordnet ist, wird dieses angezeigt, wenn Sie im Menü **Beschriftungs-ID** den nach unten zeigenden Pfeil neben der Beschriftung auswählen. Geben Sie die erforderlichen Werte für alle Beschriftungsattribute ein. 

Möglicherweise werden im Menü **Beschriftungen** Frame-Attribute angezeigt. Verwenden Sie diese Attributaufforderungen, um zusätzliche Informationen zu jedem Frame einzugeben. 

![\[Beispiel für einen Frame-Attribut-Prompt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/frame-attributes.png)


## Navigieren der Benutzeroberfläche
<a name="sms-point-cloud-worker-instructions-worker-ui-od"></a>

Sie können mit Tastatur und Maus in der 3D-Szene navigieren. Sie können:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern. 
+ Sie können die Tasten [ und ] auf Ihrer Tastatur verwenden, um eine Beschriftung zu vergrößern und von einer Beschriftung zur nächsten zu wechseln. Wenn keine Beschriftung ausgewählt ist und Sie [ oder ] auswählen, vergrößert die Benutzeroberfläche die erste Beschriftung in der Liste **Beschriftungs-ID**. 
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Nachdem Sie einen Quader in der 3D-Szene platziert haben, wird eine Seitenansicht mit drei projizierten Ansichten angezeigt: oben, seitlich und hinten. Diese Seitenansichten zeigen Punkte in und rund um den platzierten Quader an und helfen Auftragnehmern dabei, Quadergrenzen in diesem Bereich zu verfeinern. Auftragnehmer können jede dieser Seitenansichten mit der Maus vergrößern und verkleinern. 

Das folgende Video zeigt Bewegungen um die 3D-Punktwolke und in der Seitenansicht. 

![\[GIF, das Bewegungen rund um die 3D-Punktwolke und die Seitenansicht zeigt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_detection/navigate_od_worker_ui.gif)


Wenn Sie sich in der Benutzeroberfläche für Auftragnehmer befinden, werden die folgenden Menüs angezeigt:
+ **Anweisungen** – Lesen Sie diese Anweisungen, bevor Sie mit der Aufgabe beginnen.
+ **Shortcuts** – Verwenden Sie dieses Menü, um Tastenkombinationen anzuzeigen, mit denen Sie in der Punktwolke navigieren und die bereitgestellten Anmerkungswerkzeuge verwenden können. 
+ **Beschriftung** – Verwenden Sie dieses Menü, um einen Quader zu ändern. Wählen Sie zuerst einen Quader und dann eine Option aus diesem Menü aus. Dieses Menü enthält Hilfsmittel zur Beschriftung wie das Platzieren eines Quaders auf dem Boden und das automatische Anpassen des Quaders an die Grenzen des Objekts. 
+ **Ansicht** – Verwenden Sie dieses Menü, um verschiedene Ansichtsoptionen ein- und auszuschalten. Sie können dieses Menü beispielsweise verwenden, um der Punktwolke ein Bodengitter hinzuzufügen und die Projektion der Punktwolke auszuwählen. 
+ **3D-Punktwolke** – Verwenden Sie dieses Menü, um den Punkten in der Punktwolke zusätzliche Attribute hinzuzufügen, z. B. Farbe und Pixelintensität. Beachten Sie, dass diese Optionen möglicherweise nicht verfügbar sind.

Wenn Sie eine Aufgabe öffnen, ist das Symbol „Szene verschieben“ aktiviert, und Sie können sich mit der Maus und den Navigationsschaltflächen im Punktwolkenbereich des Bildschirms um die Punktwolke bewegen. Um zur ursprünglichen Ansicht zurückzukehren, die beim ersten Öffnen der Aufgabe angezeigt wird, wählen Sie das Symbol „Szene zurücksetzen“ aus. Durch das Zurücksetzen der Ansicht werden Ihre Anmerkungen nicht geändert. 

Nachdem Sie das Symbol „Quader hinzufügen“ ausgewählt haben, können Sie der 3D-Punktwolkenvisualisierung Quader hinzufügen. Sobald Sie einen Quader hinzugefügt haben, können Sie ihn in den drei Ansichten (oben, seitlich und vorne) und in den Bildern (falls enthalten) anpassen. 

![\[GIF, das zeigt, wie ein Auftragnehmer eine 3D-Punktwolke im Ground-Truth-Auftragnehmerportal kennzeichnen kann\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_detection/ot_basic_tools.gif)


Sie müssen das Symbol „Szene verschieben“ erneut auswählen, um in einen anderen Bereich in der 3D-Punktwolke oder dem Bild zu wechseln. 

Um alle Fenster auf der rechten Seite zu reduzieren und die 3D-Punktwolke als Vollbild anzuzeigen, wählen Sie das Vollbildsymbol aus. 

Wenn Kamerabilder enthalten sind, haben Sie möglicherweise die folgenden Ansichtsoptionen:
+ **C** – Zeigen Sie den Kamerawinkel in der Punktwolkenansicht an.
+ **F** – Zeigen Sie das Frustum oder das Sichtfeld der Kamera an, die verwendet wurde, um das Bild in der Punktwolkenansicht zu erfassen. 
+ **P** – Zeigen Sie die Punktwolke an, die auf dem Bild überlagert ist.
+ **B** – Zeigen Sie Quader im Bild an. 

Das folgende Video veranschaulicht, wie Sie diese Ansichtsoptionen verwenden. Die Option **F** wird verwendet, um das Sichtfeld der Kamera (der graue Bereich) anzuzeigen, die Option **C** zeigt die Richtung der Kamera sowie den Winkel der Kamera (blaue Linien) und die Option **B** wird verwendet, um den Quader anzuzeigen. 

![\[GIF, das zeigt, wie verschiedene Anzeigeoptionen verwendet werden\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/view-options-side.gif)


## Symbolhandbuch
<a name="sms-point-cloud-worker-instructions-od-icons"></a>

Verwenden Sie diese Tabelle, um mehr über die Symbole zu erfahren, die Sie in Ihrem Aufgabenportal für Auftragnehmer sehen. 


| Symbol | Name | Description | 
| --- | --- | --- | 
|  ![\[Symbol Quader hinzufügen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/add_cuobid.png)  |  Quader hinzufügen  |  Wählen Sie dieses Symbol aus, um einen Quader hinzuzufügen. Jeder Quader, den Sie hinzufügen, ist der ausgewählten Kategorie zugeordnet.   | 
|  ![\[Symbol Quader bearbeiten\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/edit_cuboid.png)  |  Quader bearbeiten  |  Wählen Sie dieses Symbol aus, um einen Quader zu bearbeiten. Nachdem Sie einen Quader hinzugefügt haben, können Sie seine Abmessungen, Position und Ausrichtung bearbeiten. Nachdem ein Quader hinzugefügt wurde, wechselt er automatisch in den Modus „Quader bearbeiten“.   | 
|  ![\[Lineal-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/Ruler_icon.png)  |  Lineal  |  Verwenden Sie dieses Symbol, um Entfernungen in der Punktwolke in Metern zu messen. Sie können dieses Tool verwenden, wenn Sie in Ihren Anweisungen aufgefordert werden, alle Objekte in einer bestimmten Entfernung vom Mittelpunkt des Quaders oder dem Objekt, das zur Datenerfassung verwendet wurde, mit Anmerkungen zu versehen. Wenn Sie dieses Symbol auswählen, können Sie den Startpunkt (erste Markierung) an einer beliebigen Stelle in der Punktwolke platzieren, indem Sie ihn mit der Maus auswählen. Das Tool verwendet automatisch Interpolation, um eine Markierung auf dem Punkt zu platzieren, der der ausgewählten Position innerhalb des Grenzwertabstands am nächsten ist. Andernfalls wird die Markierung auf dem Boden platziert. Wenn Sie versehentlich einen Startpunkt platziert haben, können Sie die Markierungsplatzierung mit der Escape-Taste rückgängig machen.  Nachdem Sie die erste Markierung platziert haben, wird eine gepunktete Linie und eine dynamische Beschriftung angezeigt, die angibt, wie weit Sie sich von der ersten Markierung entfernt haben. Klicken Sie auf eine andere Stelle in der Punktwolke, um eine zweite Markierung zu platzieren. Wenn Sie die zweite Markierung platzieren, wird die gepunktete Linie zu einer durchgezogenen Linie und ist der Abstand festgelegt.  Nachdem Sie eine Entfernung festgelegt haben, können Sie sie bearbeiten, indem Sie eine der Markierungen auswählen. Sie können ein Lineal löschen, indem Sie eine beliebige Stelle auf dem Lineal auswählen und die Löschtaste auf der Tastatur drücken.   | 
|  ![\[Symbol Szene zurücksetzen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/fit_scene.png)  |  Zurücksetzen der Szene  |  Wählen Sie dieses Symbol aus, um die Ansicht der Punktwolke, die Seitenbereiche und gegebenenfalls alle Bilder auf ihre ursprüngliche Position zurückzusetzen, als die Aufgabe zum ersten Mal geöffnet wurde.   | 
|  ![\[Symbol Szene verschieben\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/move_scene.png)  |  Verschieben der Szene  |  Wählen Sie dieses Symbol aus, um die Szene zu verschieben. Standardmäßig wird dieses Symbol ausgewählt, wenn Sie eine Aufgabe zum ersten Mal starten.   | 
|  ![\[Vollbild-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/fullscreen.png)  |  Vollbild   |  Wählen Sie dieses Symbol aus, um die 3D-Punktwolkenvisualisierung als Vollbild anzuzeigen und alle Seitenbereiche zu reduzieren.  | 
|  ![\[Symbol Kennzeichnungen anzeigen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/show.png)  | Beschriftungen anzeigen |  Zeigen Sie Beschriftungen in der 3D-Punktwolkenvisualisierung und gegebenenfalls in Bildern an.   | 
|  ![\[Symbol Kennzeichnungen ausblenden\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/hide.png)  | Beschriftungen ausblenden |  Blenden Sie Beschriftungen in der 3D-Punktwolkenvisualisierung und gegebenenfalls in Bildern aus.   | 
|  ![\[Symbol Kennzeichnungen löschen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/delete.png)  | Beschriftungen löschen |  Löschen Sie eine Beschriftung.   | 

## Shortcuts
<a name="sms-point-cloud-worker-instructions-od-hot-keys"></a>

Mit den im Menü **Shortcuts** aufgeführten Shortcuts können Sie durch die 3D-Punktwolke navigieren und Werkzeuge zum Hinzufügen und Bearbeiten von Quadern verwenden. 

Bevor Sie Ihre Aufgabe starten, wird empfohlen, sich das Menü **Shortcuts** anzusehen und sich mit diesen Befehlen vertraut zu machen. Sie müssen einige der 3D-Quader-Steuerelemente verwenden, um Ihren Quader zu bearbeiten. 

## Freigeben, Anhalten und Fortsetzen sowie Ablehnen von Aufgaben
<a name="sms-point-cloud-worker-instructions-skip-reject-od"></a>

Wenn Sie die Labeling-Aufgabe öffnen, können Sie die Aufgabe über drei Schaltflächen oben rechts ablehnen (**Aufgabe ablehnen**), freigeben (**Aufgabe freigeben**) und beenden und zu einem späteren Zeitpunkt fortsetzen (**Anhalten und später fortsetzen**). In der folgenden Liste wird beschrieben, was passiert, wenn Sie eine dieser Optionen auswählen:
+ **Aufgabe ablehnen**: Sie sollten eine Aufgabe nur ablehnen, wenn etwas mit der Aufgabe nicht stimmt, z. B. wenn ein Problem mit der 3D-Punktwolke, Bildern oder der Benutzeroberfläche vorliegt. Wenn Sie eine Aufgabe ablehnen, können Sie nicht zur Aufgabe zurückkehren.
+ **Aufgabe freigeben**: Wenn Sie eine Aufgabe freigeben, geht die gesamte, an dieser Aufgabe geleistete Arbeit verloren. Wenn die Aufgabe freigegeben wird, können andere Auftragnehmer in Ihrem Team sie übernehmen. Wenn genügend Auftragnehmer die Aufgabe übernehmen, können Sie möglicherweise nicht mehr zur Aufgabe zurückkehren. Wenn Sie diese Schaltfläche und dann **Bestätigen** auswählen, kehren Sie zum Worker-Portal zurück. Wenn die Aufgabe noch verfügbar ist, lautet ihr Status **Verfügbar**. Wenn andere Auftragnehmer sie übernehmen, verschwindet sie aus Ihrem Portal. 
+ **Anhalten und später fortsetzen**: Sie können die Schaltfläche **Anhalten und später fortsetzen** verwenden, um die Arbeit zu unterbrechen und zu einem späteren Zeitpunkt zur Aufgabe zurückzukehren. Sie sollten die Schaltfläche **Speichern** verwenden, um Ihre Arbeit zu speichern, bevor Sie **Anhalten und später fortsetzen** wählen. Wenn Sie diese Schaltfläche und danach **Bestätigen** wählen, kehren Sie zum Worker-Portal zurück. Der Aufgabenstatus lautet dann **Angehalten**. Sie können dieselbe Aufgabe auswählen, um die Arbeit daran fortzusetzen. 

  Beachten Sie, dass die Person, die Ihre Labeling-Aufgaben erstellt, ein Zeitlimit festlegt, bis zu dem alle Aufgaben erledigt sein müssen. Wenn Sie innerhalb dieser Frist nicht zu dieser Aufgabe zurückkehren und sie nicht abschließen, läuft sie ab und Ihre Arbeit wird nicht eingereicht. Weitere Informationen erhalten Sie bei Ihrem Administrator. 

## Speichern Ihrer Arbeit und Übermitteln
<a name="sms-point-cloud-worker-instructions-saving-work-od"></a>

Sie sollten Ihre Arbeit regelmäßig speichern. Ground Truth speichert Ihre Arbeit automatisch alle 15 Minuten. 

Wenn Sie eine Aufgabe öffnen, müssen Sie Ihre Arbeit daran abschließen, bevor Sie auf **Absenden** klicken.

# 3D-Punktwolken-Objektverfolgung
<a name="sms-point-cloud-worker-instructions-object-tracking"></a>

Verwenden Sie diese Seite, um sich mit der Benutzeroberfläche und den verfügbaren Tools vertraut zu machen, um Ihre Aufgabe der 3D-Punktwolkenobjekterkennung abzuschließen.

**Topics**
+ [Ihre Aufgabe](#sms-point-cloud-worker-instructions-ot-task)
+ [Navigieren der Benutzeroberfläche](#sms-point-cloud-worker-instructions-worker-ui-ot)
+ [Massenbearbeitung der Beschriftungskategorie und der Frame-Attribute](#sms-point-cloud-worker-instructions-ot-bulk-edit)
+ [Symbolhandbuch](#sms-point-cloud-worker-instructions-ot-icons)
+ [Shortcuts](#sms-point-cloud-worker-instructions-ot-hot-keys)
+ [Freigeben, Anhalten und Fortsetzen sowie Ablehnen von Aufgaben](#sms-point-cloud-worker-instructions-skip-reject-ot)
+ [Speichern Ihrer Arbeit und Übermitteln](#sms-point-cloud-worker-instructions-saving-work-ot)

## Ihre Aufgabe
<a name="sms-point-cloud-worker-instructions-ot-task"></a>

Wenn Sie an einer Aufgabe der 3D-Punktwolkenobjektverfolgung arbeiten, müssen Sie eine Kategorie aus dem Menü **Anmerkungen** auf der rechten Seite des Worker-Portals mithilfe des Menüs **Beschriftungskategorien** auswählen. Nachdem Sie eine Kategorie ausgewählt haben, verwenden Sie die Werkzeuge „Quader hinzufügen“ und „Quader anpassen“, um einen Quader rund um Objekte in der 3D-Punktwolke anzupassen, für die diese Kategorie gilt. Nachdem Sie einen Quader platziert haben, können Sie seine Position, Abmessungen und Ausrichtung direkt in der Punktwolke und den drei auf der rechten Seite angezeigten Feldern ändern. Wenn Sie ein oder mehrere Bilder in Ihrem Worker-Portal sehen, können Sie auch Quader in den Bildern oder in der 3D-Punktwolke ändern, und die Änderungen werden auf dem anderen Medium angezeigt. 

**Wichtig**  
Wenn Sie sehen, dass Quader bereits zu den 3D-Punktwolkenframes hinzugefügt wurden, wenn Sie Ihre Aufgabe öffnen, passen Sie diese Quader an und fügen Sie nach Bedarf zusätzliche Quader hinzu. 

Um einen Quader zu bearbeiten, einschließlich Verschieben, Neuausrichten und Ändern von Quaderabmessungen, müssen Sie Tastenkombinationen verwenden. Sie können eine vollständige Liste der Tastenkombinationen im Menü **Shortcuts** in der Benutzeroberfläche anzeigen. Im Folgenden finden Sie wichtige Tastenkombinationen, mit denen Sie sich vertraut machen sollten, bevor Sie mit der Labeling-Aufgabe beginnen. 


****  

| Mac-Befehl | Windows-Befehl | Action | 
| --- | --- | --- | 
|  Cmd \$1 Ziehen  |  Strg \$1 Ziehen  |  Ändern Sie die Abmessungen des Quaders. | 
|  Option \$1 Ziehen  |  Alt \$1 Ziehen  |   Bewegen Sie den Quader.   | 
|  Umschalttaste \$1 Ziehen  |  Umschalttaste \$1 Ziehen  |  Drehen Sie den Quader.   | 
|  Option \$1 O  |  Alt \$1 O  |  Passen Sie den Quader fest um die Punkte an, um die er gezeichnet wurde. Bevor Sie die Option verwenden, stellen Sie sicher, dass der Quader das Objekt von Interesse vollständig umgibt.   | 
|  Option \$1 G  |  Alt \$1 G  |  Platzieren Sie den Quader auf dem Boden.   | 

Wenn Sie Ihre Aufgabe öffnen, werden zwei Frames geladen. Wenn Ihre Aufgabe mehr als zwei Frames enthält, müssen Sie die Navigationsleiste in der linken unteren Ecke oder das Symbol „Frames laden“ verwenden, um zusätzliche Frames zu laden. Sie sollten Beschriftungen in allen Frames anmerken und anpassen, bevor Sie sie übermitteln. 

Nachdem Sie einen Quader fest um die Grenzen eines Objekts angepasst haben, navigieren Sie mit der Navigationsleiste in der unteren linken Ecke der Benutzeroberfläche zu einem anderen Frame. Wenn das gleiche Objekt an eine neue Position verschoben wurde, fügen Sie einen weiteren Quader hinzu und passen Sie ihn eng an die Grenzen des Objekts an. Jedes Mal, wenn Sie manuell einen Quader hinzufügen, wird die Frame-Sequenzleiste in der unteren linken Ecke des Bildschirms rot angezeigt, wo sich dieser Frame zeitlich in der Sequenz befindet.

Ihre Benutzeroberfläche leitet automatisch die Position dieses Objekts in allen anderen Frames ab, nachdem Sie einen Quader platziert haben. Das nennt man *Interpolation*. Sie können die Bewegung dieses Objekts und die abgeleiteten und manuell erstellten Quader mithilfe der Pfeile sehen. Passen Sie abgeleitete Quader nach Bedarf an. Das folgende Video zeigt, wie Sie zwischen Frames navigieren. Das folgende Video zeigt, wie Ihre Benutzeroberfläche automatisch die Position des Quaders in allen dazwischen liegenden Frames ableiten wird, wenn Sie einen Quader in einem Frame hinzufügen und dann in einem anderen anpassen.

![\[GIF, das zeigt, wie die Position eines Quaders zwischen den Frames abgeleitet wird\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_tracking/label-interpolation.gif)


**Tipp**  
Sie können die automatische Quaderinterpolation über Frames hinweg mithilfe der Menüoption „3D-Punktwolke“ ausschalten. Wählen Sie im oberen Menü die Option **3D-Punktwolke** und dann **Quader über Frames interpolieren** aus. Dadurch wird diese Option deaktiviert und die Quaderinterpolation gestoppt. Sie können dieses Element erneut auswählen, um die Quaderinterpolation wieder zu aktivieren.   
Die Deaktivierung der Quaderinterpolation hat keine Auswirkungen auf Quader, die bereits über mehrere Frames interpoliert wurden. 

Einzelne Beschriftungen können ein oder mehrere Beschriftungsattribute haben. Wenn einer Beschriftung ein Beschriftungsattribut zugeordnet ist, wird dieses angezeigt, wenn Sie im Menü **Beschriftungs-ID** den nach unten zeigenden Pfeil neben der Beschriftung auswählen. Geben Sie die erforderlichen Werte für alle Beschriftungsattribute ein. 

Möglicherweise werden im Menü **Beschriftungs-ID** Frame-Attribute angezeigt. Diese Attribute werden in jedem Frame Ihrer Aufgabe angezeigt. Verwenden Sie diese Attributaufforderungen, um zusätzliche Informationen zu jedem Frame einzugeben. 

![\[Beispiel für einen Frame-Attribut-Prompt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/frame-attributes.png)


## Navigieren der Benutzeroberfläche
<a name="sms-point-cloud-worker-instructions-worker-ui-ot"></a>

Sie können mit Tastatur und Maus in der 3D-Szene navigieren. Sie können:
+ Auf bestimmte Objekte in der Punktwolke zu doppelklicken, um sie zu vergrößern.
+ Sie können die Tasten [ und ] auf Ihrer Tastatur verwenden, um eine Beschriftung zu vergrößern und von einer Beschriftung zur nächsten zu wechseln. Wenn keine Beschriftung ausgewählt ist und Sie [ oder ] auswählen, vergrößert die Benutzeroberfläche die erste Beschriftung in der Liste **Beschriftungs-ID**. 
+ Einen Maus-Scroller oder ein Trackpad zu verwenden, um die Punktwolke zu vergrößern und zu verkleinern.
+ Die Pfeiltasten auf der Tastatur und die Tasten Q, E, A und D zu verwenden, um nach oben, unten, links, rechts zu bewegen. Verwenden Sie die Tastaturtasten W und S zum Vergrößern und Verkleinern. 

Nachdem Sie einen Quader in der 3D-Szene platziert haben, wird eine Seitenansicht mit drei projizierten Ansichten angezeigt: oben, seitlich und hinten. Diese Seitenansichten zeigen Punkte in und rund um den platzierten Quader an und helfen Auftragnehmern dabei, Quadergrenzen in diesem Bereich zu verfeinern. Auftragnehmer können jede dieser Seitenansichten mit der Maus vergrößern und verkleinern. 

Das folgende Video zeigt Bewegungen um die 3D-Punktwolke und in der Seitenansicht. 

![\[GIF, das zeigt, wie ein Auftragnehmer die 3D- oder 2D-Ansicht verwenden kann, um einen Quader anzupassen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_tracking/view-options-worker-ui.gif)


Wenn Sie sich in der Benutzeroberfläche für Auftragnehmer befinden, werden die folgenden Menüs angezeigt:
+ **Anweisungen** – Lesen Sie diese Anweisungen, bevor Sie mit der Aufgabe beginnen.
+ **Shortcuts** – Verwenden Sie dieses Menü, um Tastenkombinationen anzuzeigen, mit denen Sie in der Punktwolke navigieren und die bereitgestellten Anmerkungswerkzeuge verwenden können. 
+ **Beschriftung** – Verwenden Sie dieses Menü, um einen Quader zu ändern. Wählen Sie zuerst einen Quader und dann eine Option aus diesem Menü aus. Dieses Menü enthält Hilfsmittel zur Beschriftung wie das Platzieren eines Quaders auf dem Boden und das automatische Anpassen des Quaders an die Grenzen des Objekts. 
+ **Ansicht** – Verwenden Sie dieses Menü, um verschiedene Ansichtsoptionen ein- und auszuschalten. Sie können dieses Menü beispielsweise verwenden, um der Punktwolke ein Bodengitter hinzuzufügen und die Projektion der Punktwolke auszuwählen.
+ **3D-Punktwolke** – Verwenden Sie dieses Menü, um den Punkten in der Punktwolke zusätzliche Attribute hinzuzufügen, z. B. Farbe und Pixelintensität. Beachten Sie, dass diese Optionen möglicherweise nicht verfügbar sind.

Wenn Sie eine Aufgabe öffnen, ist das Symbol „Szene verschieben“ aktiviert, und Sie können sich mit der Maus und den Navigationsschaltflächen im Punktwolkenbereich des Bildschirms um die Punktwolke bewegen. Um zur ursprünglichen Ansicht zurückzukehren, die beim ersten Öffnen der Aufgabe angezeigt wird, wählen Sie das Symbol „Szene zurücksetzen“ aus. 

Nachdem Sie das Symbol „Quader hinzufügen“ ausgewählt haben, können Sie der Punktwolke und den Bildern (falls enthalten) Quader hinzufügen. Sie müssen das Symbol „Szene verschieben“ erneut auswählen, um in einen anderen Bereich in der 3D-Punktwolke oder dem Bild zu wechseln. 

Um alle Fenster auf der rechten Seite zu reduzieren und die 3D-Punktwolke als Vollbild anzuzeigen, wählen Sie das Vollbildsymbol aus. 

Wenn Kamerabilder enthalten sind, haben Sie möglicherweise die folgenden Ansichtsoptionen:
+ **C** – Zeigen Sie den Kamerawinkel in der Punktwolkenansicht an.
+ **F** – Zeigen Sie das Frustum oder das Sichtfeld der Kamera an, die verwendet wurde, um das Bild in der Punktwolkenansicht zu erfassen. 
+ **P** – Zeigen Sie die Punktwolke an, die auf dem Bild überlagert ist.
+ **B** – Zeigen Sie Quader im Bild an. 

Das folgende Video veranschaulicht, wie Sie diese Ansichtsoptionen verwenden. Die Option **F** wird verwendet, um das Sichtfeld der Kamera (der graue Bereich) anzuzeigen, die Option **C** zeigt die Richtung der Kamera sowie den Winkel der Kamera (blaue Linien) und die Option **B** wird verwendet, um den Quader anzuzeigen. 

![\[GIF, das zeigt, wie verschiedene Anzeigeoptionen verwendet werden\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/view-options-side.gif)


### Löschen von Quadern
<a name="sms-point-cloud-instructions-ot-delete"></a>

Sie können eine Quader- oder Beschriftungs-ID auswählen und:
+ einen einzelnen Quader im aktuellen Frame löschen, den Sie gerade betrachten.
+ alle Quader mit dieser Beschriftungs-ID vor oder nach dem Frame löschen, den Sie gerade betrachten.
+ alle Quader mit dieser Beschriftungs-ID in allen Frames löschen. 

Ein häufiger Anwendungsfall für das Löschen von Quadern ist, wenn das Objekt die Szene verlässt.

Sie können eine oder mehrere dieser Optionen verwenden, um sowohl manuell platzierte als auch interpolierte Quader mit derselben Beschriftungs-ID zu löschen.
+ Um alle Quader vor oder hinter dem Frame zu löschen, in dem Sie sich gerade befinden, wählen Sie den Quader aus, wählen Sie oben in der Benutzeroberfläche den Menüeintrag **Beschriftung** und dann eine der Optionen **In vorherigen Frames löschen** oder **In nächsten Frames löschen**. Im Menü „Shortcuts“ finden Sie die Tastenkombinationen, die Sie für diese Optionen verwenden können.
+ Um eine Beschriftung in allen Frames zu löschen, wählen Sie **In allen Frames löschen** aus dem **Beschriftungen** oder verwenden Sie die Tastenkombination **Umschalttaste \$1 Löschen** auf Ihrer Tastatur.
+ Um einen einzelnen Quader aus einem einzelnen Frame zu löschen, wählen Sie den Quader aus und klicken Sie entweder auf das Papierkorbsymbol (![\[Trash can icon representing deletion or removal functionality.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/delete.png)) neben dieser Beschriftungs-ID in der Seitenleiste **Beschriftungs-ID** auf der rechten Seite oder verwenden Sie die Löschtaste auf der Tastatur, um den Quader zu löschen.

Wenn Sie mehr als einen Quader mit derselben Beschriftung in verschiedenen Frames manuell platziert haben, werden beim Löschen eines der manuell platzierten Quader alle interpolierten Quader angepasst. Diese Anpassung erfolgt, weil die Benutzeroberfläche bei der Berechnung der Position des interpolierten Quaders manuell platzierte Quader als Ankerpunkte verwendet. Wenn Sie einen dieser Ankerpunkte entfernen, muss die Benutzeroberfläche die Position der interpolierten Quader neu berechnen.

Wenn Sie einen Quader aus einem Frame löschen, ihn aber später zurückholen möchten, können Sie die Optionen **In vorherigen Frames duplizieren** oder **In nächste Frames duplizieren** im Menü **Beschriftung** verwenden, um den Quader in alle vorherigen bzw. alle nachfolgenden Frames zu kopieren.

## Massenbearbeitung der Beschriftungskategorie und der Frame-Attribute
<a name="sms-point-cloud-worker-instructions-ot-bulk-edit"></a>

Sie können Beschriftungsattribute und Frame-Attribute gleichzeitig bearbeiten. 

Wenn Sie ein Attribut gleichzeitig bearbeiten, geben Sie einen oder mehrere Frame-Bereiche an, auf die Sie die Bearbeitung anwenden möchten. Das von Ihnen ausgewählte Attribut wird in allen Frames in diesem Bereich bearbeitet, einschließlich der von Ihnen angegebenen Start- und End-Frames. Bei der Massenbearbeitung von Beschriftungsattributen *muss* der angegebene Bereich die Beschriftung enthalten, der das Beschriftungsattribut zugeordnet ist. Wenn Sie Frames angeben, die diese Beschriftung nicht enthalten, wird eine Fehlermeldung angezeigt.

Bei der Massenbearbeitung eines Attributs *müssen* Sie zuerst den gewünschten Wert für das Attribut angeben. Wenn Sie beispielsweise ein Attribut von *Ja* in *Nein* ändern möchten, müssen Sie *Nein* auswählen und dann die Massenbearbeitung durchführen. 

Sie können auch einen neuen Wert für ein Attribut angeben, das noch nicht ausgefüllt wurde, und dann die Funktion zur Massenbearbeitung verwenden, um diesen Wert in mehreren Frames einzugeben. Wählen Sie dazu den gewünschten Wert für das Attribut aus und führen Sie die folgenden Schritte aus. 

**Zur Massenbearbeitung einer Beschriftung oder eines Attributs:**

1. Klicken Sie mit der rechten Maustaste auf das Attribut, für das Sie die Massenbearbeitung durchführen möchten.

1. Geben Sie mithilfe eines Gedankenstrichs (`-`) im Textfeld den Bereich der Frames an, auf den Sie die Massenbearbeitung anwenden möchten. Wenn Sie die Bearbeitung beispielsweise auf die Frames eins bis zehn anwenden möchten, geben Sie `1-10` ein. Wenn Sie die Bearbeitung auf die Frames zwei bis fünf, acht bis zehn und zwanzig anwenden möchten, geben Sie ein `2-5,8-10,20`.

1. Wählen Sie **Bestätigen** aus.

Wenn Sie eine Fehlermeldung erhalten, überprüfen Sie, ob Sie einen gültigen Bereich eingegeben haben und ob die Beschriftung, die mit dem Beschriftungsattribut verknüpft ist, das Sie bearbeiten (falls zutreffend), in allen angegebenen Frames vorhanden ist.

Mit den Optionen **In vorherige Frames duplizieren** und **In nächste Frames duplizieren** im Menü **Beschriftung** oben auf dem Bildschirm können Sie allen vorherigen oder nachfolgenden Frames schnell eine Beschriftung hinzufügen. 

## Symbolhandbuch
<a name="sms-point-cloud-worker-instructions-ot-icons"></a>

Verwenden Sie diese Tabelle, um mehr über die Symbole zu erfahren, die Sie in Ihrem Aufgabenportal für Auftragnehmer sehen. 


| Symbol | Name | Description | 
| --- | --- | --- | 
|  ![\[Symbol Quader hinzufügen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/add_cuobid.png)  |  Quader hinzufügen  |  Wählen Sie dieses Symbol aus, um einen Quader hinzuzufügen. Jeder Quader, den Sie hinzufügen, ist der ausgewählten Kategorie zugeordnet.   | 
|  ![\[Symbol Quader bearbeiten\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/edit_cuboid.png)  |  Quader bearbeiten  |  Wählen Sie dieses Symbol aus, um einen Quader zu bearbeiten. Nachdem Sie einen Quader hinzufügen, können Sie seine Abmessungen, Position und Ausrichtung bearbeiten. Nachdem ein Quader hinzugefügt wurde, wechselt er automatisch in den Modus „Quader bearbeiten“.   | 
|  ![\[Lineal-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/Ruler_icon.png)  |  Lineal  |  Verwenden Sie dieses Symbol, um Entfernungen in der Punktwolke in Metern zu messen. Sie können dieses Tool verwenden, wenn Sie in Ihren Anweisungen aufgefordert werden, alle Objekte in einer bestimmten Entfernung vom Mittelpunkt des Quaders oder dem Objekt, das zur Datenerfassung verwendet wurde, mit Anmerkungen zu versehen. Wenn Sie dieses Symbol auswählen, können Sie den Startpunkt (erste Markierung) an einer beliebigen Stelle in der Punktwolke platzieren, indem Sie ihn mit der Maus auswählen. Das Tool verwendet automatisch Interpolation, um eine Markierung auf dem Punkt zu platzieren, der der ausgewählten Position innerhalb des Grenzwertabstands am nächsten ist. Andernfalls wird die Markierung auf dem Boden platziert. Wenn Sie versehentlich einen Startpunkt platziert haben, können Sie die Markierungsplatzierung mit der Escape-Taste rückgängig machen.  Nachdem Sie die erste Markierung platziert haben, wird eine gepunktete Linie und eine dynamische Beschriftung angezeigt, die angibt, wie weit Sie sich von der ersten Markierung entfernt haben. Klicken Sie auf eine andere Stelle in der Punktwolke, um eine zweite Markierung zu platzieren. Wenn Sie die zweite Markierung platzieren, wird die gepunktete Linie zu einer durchgezogenen Linie und ist der Abstand festgelegt.  Nachdem Sie eine Entfernung festgelegt haben, können Sie sie bearbeiten, indem Sie eine der Markierungen auswählen. Sie können ein Lineal löschen, indem Sie eine beliebige Stelle auf dem Lineal auswählen und die Löschtaste auf der Tastatur drücken.   | 
|  ![\[Symbol Szene zurücksetzen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/fit_scene.png)  |  Zurücksetzen der Szene  | Wählen Sie dieses Symbol aus, um die Ansicht der Punktwolke, die Seitenbereiche und gegebenenfalls alle Bilder auf ihre ursprüngliche Position zurückzusetzen, als die Aufgabe zum ersten Mal geöffnet wurde.  | 
|  ![\[Symbol Szene verschieben\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/move_scene.png)  |  Verschieben der Szene  |  Wählen Sie dieses Symbol aus, um die Szene zu verschieben. Standardmäßig wird dieses Symbol ausgewählt, wenn Sie eine Aufgabe zum ersten Mal starten.   | 
|  ![\[Vollbild-Symbol\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/fullscreen.png)  |  Vollbild   |  Wählen Sie dieses Symbol aus, um die 3D-Punktwolkenvisualisierung als Vollbild anzuzeigen und alle Seitenbereiche zu reduzieren.  | 
|  ![\[Symbol Frames laden\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/load_screen.png)  |  Frames laden  |  Wählen Sie dieses Symbol aus, um weitere Frames zu laden.   | 
|  ![\[Symbol Kennzeichnungen ausblenden\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/hide.png)  | Beschriftungen ausblenden |  Blenden Sie Beschriftungen in der 3D-Punktwolkenvisualisierung und gegebenenfalls in Bildern aus.   | 
|  ![\[Symbol Kennzeichnungen anzeigen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/show.png)  | Beschriftungen anzeigen |  Zeigen Sie Beschriftungen in der 3D-Punktwolkenvisualisierung und gegebenenfalls in Bildern an.   | 
|  ![\[Symbol Kennzeichnungen löschen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/icons/label-icons/delete.png)  | Beschriftungen löschen |  Löschen Sie eine Beschriftung. Diese Option kann nur zum Löschen von Beschriftungen verwendet werden, die Sie manuell erstellt oder angepasst haben.   | 

## Shortcuts
<a name="sms-point-cloud-worker-instructions-ot-hot-keys"></a>

Mit den im Menü **Shortcuts** aufgeführten Shortcuts können Sie durch die 3D-Punktwolke navigieren und Werkzeuge zum Hinzufügen und Bearbeiten von Quadern verwenden. 

Bevor Sie Ihre Aufgabe starten, wird empfohlen, sich das Menü **Shortcuts** anzusehen und sich mit diesen Befehlen vertraut zu machen. Sie müssen einige der 3D-Quader-Steuerelemente verwenden, um Ihren Quader zu bearbeiten. 

## Freigeben, Anhalten und Fortsetzen sowie Ablehnen von Aufgaben
<a name="sms-point-cloud-worker-instructions-skip-reject-ot"></a>

Wenn Sie die Labeling-Aufgabe öffnen, können Sie die Aufgabe über drei Schaltflächen oben rechts ablehnen (**Aufgabe ablehnen**), freigeben (**Aufgabe freigeben**) und beenden und zu einem späteren Zeitpunkt fortsetzen (**Anhalten und später fortsetzen**). In der folgenden Liste wird beschrieben, was passiert, wenn Sie eine dieser Optionen auswählen:
+ **Aufgabe ablehnen**: Sie sollten eine Aufgabe nur ablehnen, wenn etwas mit der Aufgabe nicht stimmt, z. B. wenn ein Problem mit den 3D-Punktwolken, Bildern oder der Benutzeroberfläche vorliegt. Wenn Sie eine Aufgabe ablehnen, können Sie nicht zur Aufgabe zurückkehren.
+ **Aufgabe freigeben**: Verwenden Sie diese Option, um eine Aufgabe freizugeben und es anderen zu ermöglichen, daran zu arbeiten. Wenn Sie eine Aufgabe freigeben, verlieren Sie die gesamte an dieser Aufgabe geleistete Arbeit, und andere Auftragnehmer in Ihrem Team können sie übernehmen. Wenn genügend Auftragnehmer die Aufgabe übernehmen, können Sie möglicherweise nicht mehr zur Aufgabe zurückkehren. Wenn Sie diese Schaltfläche und dann **Bestätigen** auswählen, kehren Sie zum Worker-Portal zurück. Wenn die Aufgabe noch verfügbar ist, lautet ihr Status **Verfügbar**. Wenn andere Auftragnehmer sie übernehmen, verschwindet sie aus Ihrem Portal. 
+ **Anhalten und später fortsetzen**: Sie können die Schaltfläche **Anhalten und später fortsetzen** verwenden, um die Arbeit zu unterbrechen und zu einem späteren Zeitpunkt zur Aufgabe zurückzukehren. Sie sollten die Schaltfläche **Speichern** verwenden, um Ihre Arbeit zu speichern, bevor Sie **Anhalten und später fortsetzen** wählen. Wenn Sie diese Schaltfläche und danach **Bestätigen** wählen, kehren Sie zum Worker-Portal zurück. Der Aufgabenstatus lautet dann **Angehalten**. Sie können dieselbe Aufgabe auswählen, um die Arbeit daran fortzusetzen.

  Beachten Sie, dass die Person, die Ihre Labeling-Aufgaben erstellt, ein Zeitlimit festlegt, bis zu dem alle Aufgaben erledigt sein müssen. Wenn Sie innerhalb dieser Frist nicht zu dieser Aufgabe zurückkehren und sie nicht abschließen, läuft sie ab und Ihre Arbeit wird nicht eingereicht. Weitere Informationen erhalten Sie bei Ihrem Administrator. 

## Speichern Ihrer Arbeit und Übermitteln
<a name="sms-point-cloud-worker-instructions-saving-work-ot"></a>

Sie sollten Ihre Arbeit regelmäßig speichern. Ground Truth speichert Ihre Arbeit automatisch alle 15 Minuten. 

Wenn Sie eine Aufgabe öffnen, müssen Sie Ihre Arbeit daran abschließen, bevor Sie auf **Absenden** klicken. 

# Beschriftungsverifizierung und Anpassung
<a name="sms-verification-data"></a>

Wenn die Beschriftungen in einem Datensatz validiert werden müssen, bietet Amazon SageMaker Ground Truth Funktionen, mit denen Mitarbeiter überprüfen können, ob die Beschriftungen korrekt sind, oder frühere Beschriftungen anpassen können. Diese Auftragstypen fallen in zwei verschiedene Kategorien:
+ *Kennzeichnungsverifizierung* – Die Mitarbeiter geben an, ob die vorhandenen Kennzeichnungen korrekt sind, oder bewerten deren Qualität und können zur Begründung Kommentare hinzufügen. Die Mitarbeiter können Beschriftungen nicht ändern oder anpassen. 

  Wenn Sie einen Auftrag zur Anpassung oder Verifizierung von 3D-Punktwolken- oder Videoframe-Beschriftung erstellen, können Sie festlegen, dass die Attribute der Kennzeichnungskategorien (nicht unterstützt für die semantische Segmentierung von 3D-Punktwolken) und die Frame-Attribute von Mitarbeitern bearbeitet werden können. 
+ *Beschriftungsanpassung* – Mitarbeiter passen frühere Anmerkungen und ggf. die Kennzeichnungskategorie und Frame-Attribute an, um sie zu korrigieren. 

Die folgenden in Ground Truth [integrierten Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) unterstützen Kennzeichnungsverifizierungs- und -anpassungsaufträge:
+ Begrenzungsrahmen
+ Semantische Segmentierung 
+ Erkennung von 3D-Punktwolkenobjekten, Verfolgung von 3D-Punktwolkenobjekten und semantische Segmentierung von 3D-Punktwolken
+ Alle Aufgabentypen zur Erkennung und Verfolgung von Videoframe-Objekten – Begrenzungsrahmen, Polylinie, Polygon und Keypoint

**Tipp**  
Für Aufgaben zur Überprüfung der Kennzeichnung von 3D-Punktwolken und Videoframes wird empfohlen, zum Kennzeichnungsauftrag neue Kennzeichnungskategorieattribute oder Frame-Attribute hinzuzufügen. Mitarbeiter können mit Hilfe dieser Attribute einzelne Beschriftungen oder den gesamten Rahmen überprüfen. Weitere Informationen zu Kennzeichnungskategorien und Frame-Attributen finden Sie unter [Benutzeroberfläche (UI) für Auftragnehmer](sms-point-cloud-general-information.md#sms-point-cloud-worker-task-ui) für 3D-Punktwolken und [Benutzeroberfläche (UI) für Auftragnehmer](sms-video-overview.md#sms-video-worker-task-ui) für Videoframes. 

Sie können mithilfe der SageMaker KI-Konsole oder der API Jobs zur Überprüfung und Anpassung von Etiketten starten. 

## Vorsichtsmaßnahmen und Überlegungen
<a name="sms-data-verify-cautions"></a>

Um erwartetes Verhalten beim Erstellen eines Kennzeichnungsverifizierungs- oder Anpassungsauftrags zu erhalten, überprüfen Sie Ihre Eingabedaten sorgfältig. 
+ Wenn Sie Bilddaten verwenden, achten Sie darauf, dass Ihre Manifestdatei hexadezimale RGB-Farbinformationen enthält. 
+ Zur Einsparung von Verarbeitungskosten filtern Sie Ihre Daten, um sicherzustellen, dass Sie keine unerwünschten Objekte in das Eingabemanifest Ihres Kennzeichnungsauftrags einbeziehen.
+ Fügen Sie die erforderlichen Amazon S3-Berechtigungen hinzu, damit Ihre Eingabedaten korrekt verarbeitet werden. 

Wenn Sie mithilfe der Ground Truth API einen Kennzeichnungsverifizierungs- oder -anpassungsauftrag erstellen, *müssen* Sie einen anderen `LabelAttributeName` verwenden als den ursprünglichen Kennzeichnungsauftrag.

### Anforderungen an Farbinformationen für semantische Segmentierungsjobs
<a name="sms-data-verify-color-info"></a>

Um Farbinformationen bei Verifizierungs- oder Anpassungsaufgaben richtig zu reproduzieren, braucht das Werkzeug hexadezimale RGB-Farbinformationen im Manifest (z. B. \$1FFFFFF für Weiß). Bei der Einrichtung eines Verifizierungs- oder Anpassungsauftrags für semantische Segmentierung untersucht das Tool das Manifest, um festzustellen, ob diese Informationen vorhanden sind. Wenn Amazon Ground Truth es nicht finden kann, zeigt Amazon SageMaker Ground Truth eine Fehlermeldung an und beendet die Auftragseinrichtung.

In früheren Iterationen des semantischen Segmentierungswerkzeugs wurden Farbinformationen für Kategorien nicht im hexadezimalen RGB-Format in das Ausgabemanifest ausgegeben. Diese Funktion wurde in das Ausgabemanifest eingeführt, als die Verifizierungs- und Anpassungs-Workflows eingeführt wurden. Daher sind ältere Ausgabemanifeste nicht mit diesem neuen Workflow kompatibel.

### Filtern Ihrer Daten vor dem Starten des Jobs
<a name="sms-data-verify-filter"></a>

Amazon SageMaker Ground Truth verarbeitet alle Objekte in Ihrem Eingabemanifest. Wenn Sie einen teilweise gekennzeichneten Datensatz haben, können Sie ein benutzerdefiniertes Manifest erstellen, indem Sie eine [Amazon S3 Auswahlabfrage](https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html) auf Ihr Eingabemanifest anwenden. Nicht gekennzeichnete Objekte schlagen einzeln fehl, führen jedoch nicht zum Fehlschlagen des Auftrags und verursachen möglicherweise Verarbeitungskosten. Durch Herausfiltern von Objekten, die Sie nicht verifiziert möchten, können Sie Kosten einsparen.

Wenn Sie einen Überprüfungsauftrag über die Konsole erstellen, können Sie die dort bereitgestellten Filterwerkzeuge verwenden. Wenn Sie Aufträge mit der API erstellen, machen Sie das Filtern Ihrer Daten bei Bedarf zum Bestandteil Ihres Workflows.

**Topics**
+ [Vorsichtsmaßnahmen und Überlegungen](#sms-data-verify-cautions)
+ [Anforderungen für die Erstellung von Beschriftungsverifizierungs- und -anpassungsjobs](sms-data-verify-adjust-prereq.md)
+ [Erstellen eines Beschriftungsverifizierungsjobs (Konsole)](sms-data-verify-start-console.md)
+ [Erstellen eines Beschriftungsanpassungsjobs (Konsole)](sms-data-adjust-start-console.md)
+ [Starten eines Beschriftungsverifizierungs- oder -anpassungsjobs (API)](sms-data-verify-start-api.md)
+ [Beschriftungsverifizierungs- und Anpassungsdaten im Ausgabemanifest](sms-data-verify-manifest.md)

# Anforderungen für die Erstellung von Beschriftungsverifizierungs- und -anpassungsjobs
<a name="sms-data-verify-adjust-prereq"></a>

Um einen Beschriftungsverifizierungs- oder -anpassungsjob zu erstellen, müssen Sie die folgenden Kriterien erfüllen. 
+ Für Kennzeichnungsaufträge ohne Streaming: Die von Ihnen verwendete Eingabe-Manifestdatei muss den Kennzeichnungsattributnamen (`LabelAttributeName`) der Beschriftungen enthalten, die Sie anpassen möchten. Wenn Sie einen erfolgreich abgeschlossenen Kennzeichnungsauftrag verketten, wird die Ausgabe-Manifestdatei als Eingabemanifestdatei für den neuen Verkettungsauftrag verwendet. Weitere Informationen über das Format der Ausgabe-Manifestdatei, die Ground Truth für jeden Aufgabentyp erstellt, finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md).

  Für Kennzeichnungsaufträge mit Streaming: Die Amazon SNS-Nachricht, die Sie an das Amazon SNS-Eingabethema des Kennzeichnungsverifizierungs- und -anpassungsauftrags gesendet haben, muss den Kennzeichnungsattributnamen der Beschriftungen enthalten, die Sie anpassen oder verifizieren möchten. Ein Beispiel dafür, wie Sie einen Labeling-Job zur Anpassung oder Überprüfung mit Streaming-Labeling-Jobs erstellen können, finden Sie in diesem [Jupyter Notebook-Beispiel](https://github.com/aws/amazon-sagemaker-examples/blob/master/ground_truth_labeling_jobs/ground_truth_streaming_labeling_jobs/ground_truth_create_chained_streaming_labeling_job.ipynb) unter. GitHub
+ Der Aufgabentyp des Kennzeichnungsverifizierungs- und -anpassungsauftrags muss dem Aufgabentyp des ursprünglichen Auftrags entsprechen, es sei denn, Sie verwenden den [Image Beschriftungsverifizierung](sms-label-verification.md) Aufgabentyp zur Überprüfung der Bildbeschriftungen mit Begrenzungsrahmen oder semantischer Segmentierung. Im nächsten Aufzählungspunkt finden Sie weitere Informationen zu den Anforderungen für den Aufgabentyp für Videoframes.
+ Für Aufgaben zur Überprüfung und Anpassung von Videoframe-Anmerkungen müssen Sie denselben Aufgabentyp für die Annotation verwenden, mit dem Sie die Anmerkungen aus dem obigen Kennzeichnungsauftrag erstellt haben. Wenn Sie z. B. einen Auftrag zur Objekterkennung in Videobildern erstellen, bei dem Mitarbeiter Begrenzungsrahmen um Objekte zeichnen sollen, und Sie anschließend einen Auftrag zur Anpassung der Videoobjekterkennung erstellen, müssen Sie als Aufgabentyp für Anmerkungen *Begrenzungsrahmen* angeben. Weitere Informationen zu Aufgabentypen für Videoframe-Anmerkungen finden Sie unter [Aufgabentypen](sms-video-overview.md#sms-video-frame-tools).
+ Der Aufgabentyp, den Sie für den Kennzeichnungsverifizierungs- und -anpassungsauftrag auswählen, muss einen Audit-Workflow unterstützen. Die folgenden in Ground Truth [integrierten Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) unterstützen Kennzeichnungsverifizierungs- und -anpassungsaufträge: Begrenzungsrahmen, semantische Segmentierung, 3D-Punktwolkenobjekterkennung, 3D-Punktwolkenobjektverfolgung und semantische 3D-Punktwolkensegmentierung sowie alle Aufgabentypen zur Erkennung und Verfolgung von Objekten in Videoframes – Begrenzungsrahmen, Polylinie, Polygon und Keypoint.

# Erstellen eines Beschriftungsverifizierungsjobs (Konsole)
<a name="sms-data-verify-start-console"></a>

In den folgenden Abschnitten erfahren Sie, wie Sie einen Kennzeichnungsverifizierungsauftrag für Ihren Aufgabentyp erstellen. Kennzeichnungsaufträge mit Begrenzungsrahmen und semantischer Segmentierung werden erstellt, indem Sie in der Konsole den Aufgabentyp **Kennzeichnungsverifizierung** auswählen. Um einen Verifizierungsauftrag für Aufgabentypen mit 3D-Punktwolken und Videoframes zu erstellen, müssen Sie denselben Aufgabentyp auswählen wie für den ursprünglichen Kennzeichnungsauftrag und festlegen, dass Vorhandene Kennzeichnungen angezeigt werden. 

## Beschriftungsverifizierungsjob für Bilder erstellen (Konsole)
<a name="sms-data-verify-start-console-bb-ss"></a>

Gehen Sie wie folgt vor, um mit der Konsole einen Verifizierungsauftrag für Begrenzungsrahmen oder semantische Segmentierung zu erstellen. Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits einen Kennzeichnungsauftrag für Begrenzungsrahmen oder semantische Segmentierung erstellt haben und dass sein Status Abgeschlossen ist. Dies ist der Kennzeichnungsauftrag, der die Beschriftungen erzeugt, die Sie verifiziert haben möchten.

**So erstellen Sie einen Kennzeichnungsverifizierungsauftrag für Bilder:**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)und wählen Sie **Labeling Jobs** aus.

1. Starten Sie einen neuen Kennzeichnungsauftrag, indem Sie einen früheren Auftrag [verketten](sms-reusing-data.md) oder von Grund auf neu beginnen und ein Eingabemanifest mit beschrifteten Datenobjekten angeben.

1. Wählen Sie im Bereich **Aufgabentyp** die Option **Kennzeichnungsverifizierung** aus.

1. Wählen Sie **Weiter** aus.

1. Wählen Sie im Abschnitt **Auftragnehmer** die Art der Arbeitskräfte aus, die Sie verwenden möchten. Weitere Informationen zu Ihren Optionen für Arbeitskräfte finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

1. (Optional) Wenn Sie Ihre Arbeitskräfte ausgewählt haben, geben Sie das **Aufgaben-timeout** und die **Ablaufzeit der Aufgabe** an.

1. Im Bereich **Anzeigeoptionen für vorhandene Kennzeichnungen** zeigt das System die verfügbaren Namen der Kennzeichnungsattributnamen in Ihrem Manifest an. Wählen Sie den Kennzeichnungsattributnamen, der die Kennzeichnungen identifiziert, die von den Mitarbeitern überprüft werden sollen. Ground Truth versucht, diese Werte durch Analyse des Manifests zu erkennen und einzusetzen. Möglicherweise müssen Sie den richtigen Wert jedoch einstellen. 

1. Mit den Anweisungsbereichen des Werkzeugdesigners können Sie einen Kontext dazu bereitzustellen, was die vorherigen Beschrifter tun sollten und was die aktuellen Prüfer überprüfen müssen.

   Sie können neue Beschriftungen hinzufügen, aus denen die Mitarbeiter auswählen können, um Beschriftungen zu überprüfen. Sie können Mitarbeiter z. B. bitten, die Bildqualität zu überprüfen und ihnen die Bezeichnungen *Klar* und *Unscharf* zu geben. Die Mitarbeiter haben außerdem die Möglichkeit, einen Kommentar hinzuzufügen, um ihre Auswahl zu erläutern. 

1. Wählen Sie **Vorschau zeigen**, um zu überprüfen, ob das Tool die vorherigen Kennzeichnungen korrekt anzeigt und die Kennzeichnungsverifizierungsaufgabe übersichtlich präsentiert.

1. Wählen Sie **Erstellen** aus. Damit wird Ihr Kennzeichnungsauftrag erstellt und gestartet.

## Erstellen eines Beschriftungsverifizierungsjobs für Punktwolken oder Videoframes (Konsole)
<a name="sms-data-verify-start-console-frame"></a>

Gehen Sie wie folgt vor, um mit Hilfe der Konsole einen Kennzeichnungsverifizierungsauftrag für 3D-Punktwolken oder Videoframes zu erstellen. Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits einen Kennzeichnungsauftrag mit dem Aufgabentyp erstellt haben, der die Typen von Beschriftungen erzeugt, die überprüft werden sollen, und dass der Status Abgeschlossen lautet.

**So erstellen Sie einen Kennzeichnungsverifizierungsauftrag für Bilder:**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)und wählen Sie **Labeling-Jobs** aus.

1. Starten Sie einen neuen Kennzeichnungsauftrag, indem Sie einen früheren Auftrag [verketten](sms-reusing-data.md) oder von Grund auf neu beginnen und ein Eingabemanifest mit gekennzeichneten Datenobjekten angeben.

1. Wählen Sie im Bereich **Aufgabentyp** denselben Aufgabentyp wie den Kennzeichnungsauftrag aus, den Sie verkettet haben. Wenn es sich bei dem ursprünglichen Kennzeichnungsauftrag z. B. um einen Keypoint-Kennzeichnungsauftrag zur Objekterkennung in Videobildern handelte, wählen Sie diesen Aufgabentyp aus. 

1. Wählen Sie **Weiter** aus.

1. Wählen Sie im Abschnitt **Auftragnehmer** die Art der Arbeitskräfte aus, die Sie verwenden möchten. Weitere Informationen zu Ihren Optionen für Arbeitskräfte finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

1. (Optional) Wenn Sie Ihre Arbeitskräfte ausgewählt haben, geben Sie **Aufgaben-Timeout** und **Ablaufzeit der Aufgabe** an.

1. Betätigen Sie den Schalter neben **Vorhandene Kennzeichnungen anzeigen**.

1. Wählen Sie **Überprüfung** aus.

1. Wählen Sie für **Kennzeichnungsattributname** den Namen aus Ihrem Manifest aus, der den Kennzeichnungen entspricht, die zur Überprüfung angezeigt werden sollen. Sie sehen nur die Kennzeichnungsattributnamen für Beschriftungen, die dem Aufgabentyp entsprechen, den Sie auf dem vorangehenden Bildschirm ausgewählt haben. Ground Truth versucht, diese Werte durch Analyse des Manifests zu erkennen und einzusetzen. Sie müssen den richtigen Wert jedoch ggf. einstellen.

1. Mit den Anweisungsbereichen des Werkzeugdesigners können Sie einen Kontext dazu bereitzustellen, was die vorherigen Beschrifter tun sollten und was die aktuellen Prüfer überprüfen müssen. 

   Sie können keine Beschriftungen ändern oder neue hinzufügen. Sie können Kennzeichnungskategorieattribute oder Frame-Attribute entfernen, ändern und neue hinzufügen. Es wird empfohlen, neue Kennzeichnungskategorieattribute oder Frame-Attribute zum Kennzeichnungsauftrag hinzuzufügen. Die Mitarbeiter können mit Hilfe dieser Attribute einzelne Beschriftungen oder den gesamten Rahmen überprüfen. 

   Standardmäßig können bereits vorhandene Kennzeichnungskategorieattribute und Frame-Attribute von den Mitarbeitern nicht bearbeitet werden. Wenn Sie die Bearbeitung von Kennzeichnungskategorie- oder Frame-Attributen zulassen wollen, aktivieren Sie für dieses Attribut das Kontrollkästchen **Zulassen, dass Mitarbeiter dieses Attribut bearbeiten**.

   Weitere Informationen zu Kennzeichnungskategorie- oder Frame-Attributen finden Sie unter [Benutzeroberfläche (UI) für Auftragnehmer](sms-point-cloud-general-information.md#sms-point-cloud-worker-task-ui) für 3D-Punktwolken und [Benutzeroberfläche (UI) für Auftragnehmer](sms-video-overview.md#sms-video-worker-task-ui) für Videoframes. 

1. Wählen Sie **Vorschau zeigen**, um zu überprüfen, ob das Tool die vorherigen Kennzeichnungen korrekt anzeigt und die Kennzeichnungsverifizierungsaufgabe übersichtlich präsentiert.

1. Wählen Sie **Erstellen** aus. Dadurch wird Ihr Kennzeichnungsauftrag erstellt und gestartet.

# Erstellen eines Beschriftungsanpassungsjobs (Konsole)
<a name="sms-data-adjust-start-console"></a>

In den folgenden Abschnitten erfahren Sie, wie Sie einen Kennzeichnungsverifizierungsauftrag für Ihren Aufgabentyp erstellen.

**Topics**
+ [Erstellen eines Bildbeschriftungs-Anpassungsjobs (Konsole)](#sms-data-adjust-start-console-bb-ss)
+ [Erstellen eines Beschriftungsanpassungsjobs für Punktwolken oder Videoframes (Konsole)](#sms-data-adjust-start-console-frame)

## Erstellen eines Bildbeschriftungs-Anpassungsjobs (Konsole)
<a name="sms-data-adjust-start-console-bb-ss"></a>

Gehen Sie wie folgt vor, um mit Hilfe der Konsole einen Anpassungsauftrag für fie Beschriftung für Begrenzungsrahmen der semantische Segmentierung zu erstellen. Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits einen Kennzeichnungsauftrag für Begrenzungsrahmen oder semantische Segmentierung erstellt haben und dass sein Status Abgeschlossen ist. Dies ist der Kennzeichnungsauftrag, der die Beschriftungen erzeugt, die Sie angepasst haben möchten.

**Beschriftungsanpassungsauftrag für Bilder erstellen (Konsole)**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)und wählen Sie **Labeling Jobs** aus.

1. Starten Sie einen neuen Kennzeichnungsauftrag, indem Sie einen früheren Auftrag [verketten](sms-reusing-data.md) oder von Grund auf neu beginnen und ein Eingabemanifest mit beschrifteten Datenobjekten angeben.

1. Wählen Sie denselben Aufgabentyp wie für den ursprünglichen Kennzeichnungsauftrag.

1. Wählen Sie **Weiter** aus.

1. Wählen Sie im Abschnitt **Auftragnehmer** die Art der Arbeitskräfte aus, die Sie verwenden möchten. Weitere Informationen zu Ihren Optionen für Arbeitskräfte finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

1. (Optional) Wenn Sie Ihre Arbeitskräfte ausgewählt haben, geben Sie **Aufgaben-Timeout** und **Ablaufzeit der Aufgabe** an.

1. Erweitern Sie die **Anzeigeoptionen für vorhandene Kennzeichnungen**, indem Sie auf den Pfeil neben dem Titel klicken.

1. Aktivieren Sie das Kontrollkästchen neben **Ich möchte Vorhandene Kennzeichnungen aus dem Datensatz für diesen Auftrag anzeigen**.

1. Wählen Sie für den **Kennzeichnungsattributnamen** den Namen aus Ihrem Manifest, der den Kennzeichnungen entspricht, die für die Anpassung angezeigt werden sollen. Sie sehen nur die Kennzeichnungsattributnamen für Beschriftungen, die dem Aufgabentyp entsprechen, den Sie auf dem vorangegangenen Bildschirm ausgewählt haben. Ground Truth versucht, diese Werte durch Analyse des Manifests zu erkennen und einzusetzen. Sie müssen den richtigen Wert jedoch ggf. einstellen.

1. Verwenden Sie die Anleitungsbereiche des Werkzeugdesigners, um einen Kontext dazu bereitzustellen, was die vorherigen Beschrifter tun sollten und was die aktuellen Prüfer überprüfen und anpassen müssen.

1. Wählen Sie **See preview (Vorschau anzeigen)** um zu überprüfen, ob das Werkzeug die vorherigen Kennzeichnungen korrekt anzeigt und die Aufgabe übersichtlich präsentiert.

1. Wählen Sie **Erstellen** aus. Damit wird Ihr Kennzeichnungsauftrag erstellt und gestartet.

## Erstellen eines Beschriftungsanpassungsjobs für Punktwolken oder Videoframes (Konsole)
<a name="sms-data-adjust-start-console-frame"></a>

Gehen Sie wie folgt vor, um mit Hilfe der Konsole einen Auftrag zur Anpassung von 3D-Punktwolken oder Videoframes zu erstellen. Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits einen Kennzeichnungsauftrag mit dem Aufgabentyp erstellt haben, der die Typen von Beschriftungen erzeugt, die überprüft werden sollen, und dass der Status Abgeschlossen lautet.

**So erstellen Sie einen Kennzeichnungsanpassungsauftrag für 3D-Punktwolken oder Video-Frames (Konsole)**

1. Öffnen Sie die SageMaker AI-Konsole: [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/) und wählen Sie **Labeling-Jobs** aus.

1. Starten Sie einen neuen Kennzeichnungsauftrag, indem Sie einen früheren Auftrag [verketten](sms-reusing-data.md) oder von Grund auf neu beginnen und ein Eingabemanifest mit beschrifteten Datenobjekten angeben.

1. Wählen Sie denselben Aufgabentyp wie für den ursprünglichen Kennzeichnungsauftrag.

1. Betätigen Sie den Schalter neben **Vorhandene Kennzeichnungen anzeigen**.

1. Wählen Sie **Anpassung** aus.

1. Wählen Sie für **Kennzeichnungsattributname** den Namen aus Ihrem Manifest aus, der den Kennzeichnungen entspricht, die Sie für die Anpassung anzeigen möchten. Sie sehen nur die Kennzeichnungsattributnamen für Beschriftungen, die dem Aufgabentyp entsprechen, den Sie auf dem vorangegangenen Bildschirm ausgewählt haben. Ground Truth versucht, diese Werte durch Analyse des Manifests zu erkennen und einzusetzen. Sie müssen den richtigen Wert jedoch ggf. einstellen.

1. Verwenden Sie die Anweisungsbereiche des Tool-Designers, damit er Ihnen den Kontext dafür angibt, was die Kennzeichner vorher zu tun hatten und was die aktuellen Einsteller überprüfen müssen. 

   Sie können vorhandene Kennzeichnungen nicht entfernen oder ändern, Sie können jedoch neue Beschriftungen hinzufügen. Sie können Kennzeichnungskategorieattribute oder Frame-Attribute entfernen, ändern und neue hinzufügen.

   Standardmäßig können bereits vorhandene Kennzeichnungskategorie- und Frame-Attribute von Mitarbeitern bearbeitet werden. Wenn Sie festlegen möchten, dass ein Attribut für eine Kennzeichnungskategorie oder ein Frame-Attribut nicht bearbeitet werden kann, deaktivieren Sie für dieses Attribut das Kontrollkästchen **zulassen, dass Mitarbeiter dieses Attribut bearbeiten**.

   Weitere Informationen zu Kennzeichnungskategorie- oder Frame-Attributen finden Sie unter [Benutzeroberfläche (UI) für Auftragnehmer](sms-point-cloud-general-information.md#sms-point-cloud-worker-task-ui) 3D-Punktwolken und [Benutzeroberfläche (UI) für Auftragnehmer](sms-video-overview.md#sms-video-worker-task-ui) Videoframes. 

1. Wählen Sie **See preview (Vorschau anzeigen)** um zu überprüfen, ob das Werkzeug die vorherigen Kennzeichnungen korrekt anzeigt und die Aufgabe übersichtlich präsentiert.

1. Wählen Sie **Erstellen** aus. Damit wird Ihr Kennzeichnungsauftrag erstellt und gestartet.

# Starten eines Beschriftungsverifizierungs- oder -anpassungsjobs (API)
<a name="sms-data-verify-start-api"></a>

Starten Sie einen Kennzeichnungsverifizierungs- oder Anpassungsauftrag, indem Sie einen erfolgreich abgeschlossenen Auftrag verketten oder einen neuen Auftrag mit der Operation [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) von Grund auf neu starten. Das Verfahren entspricht fast völlig der Einrichtung eines neuen Kennzeichnungsauftrags mit `CreateLabelingJob`, allerdings mit einigen Änderungen. In den folgenden Abschnitten erfahren Sie, welche Änderungen erforderlich sind, um einen Kennzeichnungsauftrag zu verketten, um einen Anpassungs- oder Kennzeichnungsverifizierungsauftrag zu erstellen. 

Wenn Sie mithilfe der Ground Truth API einen Kennzeichnungsverifizierungs- oder -anpassungsauftrag erstellen, *müssen* Sie einen anderen `LabelAttributeName` verwenden als den ursprünglichen Kennzeichnungsauftrag. Der ursprüngliche Kennzeichnungsauftrag ist der Auftrag, der zum Erstellen der Beschriftungen verwendet wird, die Sie angepasst oder verifiziert haben wollen. 

**Wichtig**  
Die Konfigurationsdatei für die Kennzeichnungskategorien, die Sie für einen Anpassungs- oder Verifizierungsauftrags in [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelCategoryConfigS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelCategoryConfigS3Uri) identifizieren, `CreateLabelingJob` muss dieselben Beschriftungen enthalten, die auch im ursprünglichen Kennzeichnungsauftrag verwendet wurden. Sie können neue Beschriftungen hinzufügen. Für 3D-Punktwolken- und Videoframe-Aufträge können Sie zu der Konfigurationsdatei für die Kennzeichnungskategorien neue Kennzeichnungskategorien- und Frame-Attribute hinzufügen.

## Begrenzungsrahmen und Semantische Segmentierung
<a name="sms-data-verify-start-api-image"></a>

Um einen Kennzeichnungsverifizierungs- oder -anpassungsauftrag für Begrenzungsrahmen oder semantische Segmentierungen zu erstellen, verwenden Sie die folgenden Richtlinien, um API-Attribute für den Vorgang `CreateLabelingJob` anzugeben. 
+ Verwenden Sie den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelAttributeName) Parameter, um den Namen de Bezeichnung anzugeben, die Sie für geprüfte oder angepasste Kennzeichnungen verwenden möchten. Sie müssen ein anderes `LabelAttributeName` als das für den ursprünglichen Kennzeichnungsauftrag verwendete verwenden.
+ Wenn Sie den Auftrag verketten, werden die Kennzeichnungen aus dem vorangehenden Kennzeichnungsauftrag, der angepasst oder überprüft werden soll, in der benutzerdefinierten Benutzeroberflächenvorlage angegeben. Informationen zum Erstellen einer benutzerdefinierten Vorlage finden Sie unter [Erstellen benutzerdefinierter Auftragnehmervorlagen](a2i-custom-templates.md).

  Identifizieren Sie den Speicherort der UI-Vorlage im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html)Parameter. SageMaker AI stellt Widgets bereit, die Sie in Ihrer benutzerdefinierten Vorlage verwenden können, um alte Beschriftungen anzuzeigen. Verwenden Sie das Attribut `initial-value` in einem der folgenden Crowd-Elemente, um die Kennzeichnungen zu extrahieren, die überprüft oder angepasst werden müssen, und fügen Sie sie in die Aufgabenvorlage ein:
  + [crowd-semantic-segmentation](sms-ui-template-crowd-semantic-segmentation.md) – Verwenden Sie dieses Crowd-Element in Ihrer benutzerdefinierten UI-Aufgabenvorlage, um semantische Segmentierungsbeschriftungen anzugeben, die überprüft oder angepasst werden müssen.
  + [crowd-bounding-box](sms-ui-template-crowd-bounding-box.md) – Verwenden Sie dieses Crowd-Element in Ihrer benutzerdefinierten UI-Aufgabenvorlage, um Begrenzungsrahmenbeschriftungen anzugeben, die überprüft oder angepasst werden müssen.
+ Der Parameter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelCategoryConfigS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelCategoryConfigS3Uri) muss dieselben Kennzeichnungskategorien enthalten wie der vorherige Kennzeichnungsauftrag.
+ Verwenden Sie das Bounding Box oder das ARNs Lambda zur Anpassung oder Überprüfung der semantischen Segmentierung für und: [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn)
  + Bei der Bounding-Box enden die Lambda-Funktion der Anpassungsbeschriftung mit `AdjustmentBoundingBox` und die Lambda-Funktion zur Überprüfung ARNs enden mit. ARNs `VerificationBoundingBox`
  + Bei der semantischen Segmentierung endet die Lambda-Funktion des Anpassungs-Labeling-Jobs mit `AdjustmentSemanticSegmentation` und die Verifizierungs-Lambda-Funktion ARNs endet mit. ARNs `VerificationSemanticSegmentation`

## 3D-Punktwolke und Videoframe
<a name="sms-data-verify-start-api-frame"></a>
+ Verwenden Sie den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelAttributeName) Parameter, um den Namen der Ausgabebezeichnung anzugeben, die bei geprüften oder angepassten Kennzeichnungen verwendet werden sollen. Sie müssen ein anderes `LabelAttributeName` als das für den ursprünglichen Kennzeichnungsauftrag verwendete verwenden. 
+ Sie müssen die Benutzeroberfläche für menschliche Tätigkeiten Amazon Resource Name (ARN) verwenden (`HumanTaskUiArn`), die für den ursprünglichen Kennzeichnungsauftrag verwendet wurde. Informationen zur Unterstützung finden Sie unter. ARNs [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-HumanTaskUiArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-HumanTaskUiArn)
+ In der Konfigurationsdatei für die Kennzeichnungskategorie müssen Sie im `auditLabelAttributeName` Parameter den Kennzeichnungsattributnamen ([https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelAttributeName)) des vorangehenden Kennzeichnungsauftrags angeben, mit dem Sie den Kennzeichnungsverifizierungs- und -anpassungsauftrag erstellt haben.
+ Mit Hilfe des Parameters `editsAllowed` in der Konfigurationsdatei Ihrer Beschriftungskategorie, die durch den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelCategoryConfigS3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#SageMaker-CreateLabelingJob-request-LabelCategoryConfigS3Uri) Parameter identifiziert wird, geben Sie an, ob es sich bei Ihrem Kennzeichnungsauftrag um einen *Überprüfungs-* oder *Anpassungs-* Kennzeichnungsauftrag handelt. 
  + Bei Kennzeichnungsaufträgen zur *Verifizierung* müssen Sie den `editsAllowed` Parameter verwenden, um anzugeben, dass nicht alle Beschriftungen geändert werden können. `editsAllowed` muss in jedem Eintrag in `"none"` auf `labels` gesetzt werden. Optional können Sie angeben, ob die Kennzeichnungskategorieattribute und die Frame-Attribute von Mitarbeitern angepasst werden können. 
  + Optional können Sie für *Anpassungs*-beschriftungsaufträge den `editsAllowed` Parameter verwenden, um Beschriftungen, Kennzeichnungskategorieattribute und Frame-Attribute anzugeben, die von Mitarbeitern geändert werden können oder nicht. Wenn Sie diesen Parameter nicht verwenden, können alle Beschriftungen, Kennzeichnungenkategorieattribute und Frame-Attribute angepasst werden.

  Weitere Informationen zum `editsAllowed` Parameter und zur Konfiguration Ihrer Kennzeichnungskategorie-Konfigurationsdatei finden Sie unter [Schema der Konfigurationsdatei für Kennzeichnungskategorien](sms-label-cat-config-attributes.md#sms-label-cat-config-attributes-schema). 
+ Verwenden Sie das Lambda zur Anpassung von 3D-Punktwolken oder Videoframes [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn)sowohl ARNs [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html#sagemaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn)für Anpassungen als auch für Kennzeichnungsaufgaben zur Überprüfung:
  + Bei 3D-Punktwolken ARNs endet die Lambda-Funktion für die Anpassung und Überprüfung des Labeling-Jobs jeweils mit `Adjustment3DPointCloudSemanticSegmentation``Adjustment3DPointCloudObjectTracking`, und `Adjustment3DPointCloudObjectDetection` für die semantische Segmentierung von 3D-Punktwolken, Objekterkennung und Objektverfolgung. 
  + Bei Videoframes ARNs endet die Lambda-Funktion des Einstellungs- und Verifizierungs-Labeling-Jobs jeweils mit der Objekterkennung `AdjustmentVideoObjectDetection` und der Objektverfolgung `AdjustmentVideoObjectTracking` für Videobilder. 

Ground Truth speichert die Ausgabedaten eines Kennzeichnungsverifizierungs- oder Anpassungsauftrags in dem S3-Bucket, den Sie im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobOutputConfig.html#SageMaker-Type-LabelingJobOutputConfig-S3OutputPath](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobOutputConfig.html#SageMaker-Type-LabelingJobOutputConfig-S3OutputPath) Parametern des [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) Vorgangs angegeben haben. Weitere Informationen zu den Ausgabedaten aus einem Kennzeichnungsverifizierungs- oder Anpassungs-Kennzeichnungsauftrag finden Sie unter [Beschriftungsverifizierungs- und Anpassungsdaten im Ausgabemanifest](sms-data-verify-manifest.md).

# Beschriftungsverifizierungs- und Anpassungsdaten im Ausgabemanifest
<a name="sms-data-verify-manifest"></a>

Amazon SageMaker Ground Truth schreibt Daten zur Labelverifizierung in das Ausgabemanifest innerhalb der Metadaten für das Etikett. Es fügt den Metadaten zwei Eigenschaften hinzu:
+ Eine `type`-Eigenschaft mit dem Wert „`groundtruth/label-verification`“.
+ Eine `worker-feedback`-Eigenschaft mit einem Array von `comment`-Werten. Diese Eigenschaft wird hinzugefügt, wenn der Auftragnehmer Kommentare eingibt. Wenn keine Kommentare vorhanden sind, wird das Feld nicht angezeigt.

Das folgende Beispiel-Ausgabemanifest zeigt, wie Kennzeichnungsverifizierungsdaten angezeigt werden:

```
{
  "source-ref":"S3 bucket location", 
  "verify-bounding-box":"1",    
  "verify-bounding-box-metadata":  
  {
    "class-name": "bad", 
    "confidence": 0.93, 
    "type": "groundtruth/label-verification", 
    "job-name": "verify-bounding-boxes",
    "human-annotated": "yes",
    "creation-date": "2018-10-18T22:18:13.527256",
    "worker-feedback": [
      {"comment": "The bounding box on the bird is too wide on the right side."},
      {"comment": "The bird on the upper right is not labeled."}
    ]
  }
}
```

Die Auftragnehmer-Ausgabe von Anpassungsaufgaben ähnelt der Auftragnehmer-Ausgabe der ursprünglichen Aufgabe, außer dass sie die angepassten Werte und eine `adjustment-status`-Eigenschaft mit dem Wert „`adjusted`“ oder „`unadjusted`“ enthält, um anzugeben, ob eine Anpassung vorgenommen wurde.

Auf der Seite [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md) finden Sie weitere Beispiele für die Ausgabe verschiedener Aufgaben.

# Benutzerdefinierte Kennzeichnung-Workflows
<a name="sms-custom-templates"></a>

Diese Themen helfen Ihnen beim Einrichten eines Ground-Truth-Kennzeichnungsauftrags, der eine benutzerdefinierte Kennzeichnungsvorlage verwendet. Mit einer benutzerdefinierten Kennzeichnungsvorlage können Sie eine benutzerdefinierte Benutzeroberfläche für das Auftragnehmerportal erstellen, mit der Auftragnehmer Daten kennzeichnen können. Die Vorlage kann mit HTML, CSS JavaScript, der [Liquid-Vorlagensprache](https://shopify.github.io/liquid/) und [Crowd-HTML-Elementen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-ui-template-reference.html) erstellt werden.

## -Übersicht
<a name="sms-custom-templates-overview"></a>

Wenn Sie zum ersten Mal einen benutzerdefinierten Kennzeichnungs-Workflow in Ground Truth erstellen, finden Sie in der folgenden Liste eine allgemeine Zusammenfassung der erforderlichen Schritte.

1. *Einrichten Ihrer Arbeitskräfte* – Um einen benutzerdefinierten Kennzeichnungs-Workflow zu erstellen, benötigen Sie Arbeitskräfte. In diesem Thema erfahren Sie, wie Sie Arbeitskräfte konfigurieren.

1. *Erstellen einer benutzerdefinierten Vorlage* – Um eine benutzerdefinierte Vorlage zu erstellen, müssen Sie die Daten aus Ihrer Eingabemanifestdatei den Variablen in Ihrer Vorlage korrekt zuordnen.

1. *Verwenden optionaler Lambda-Funktionen für die Verarbeitung* – So können Sie steuern, wie Daten aus Ihrem Eingabemanifest zu Ihrer Auftragnehmervorlage hinzugefügt werden und wie Anmerkungen von Auftragnehmern in der Ausgabedatei Ihres Auftrags protokolliert werden.

In diesem Thema finden Sie auch drei end-to-end Demos, die Ihnen helfen sollen, besser zu verstehen, wie Sie benutzerdefinierte Etikettenvorlagen verwenden können.

**Anmerkung**  
Die Beispiele in den folgenden Links enthalten alle Lambda-Funktionen zur Vorverarbeitung und Nachbearbeitung. Diese Lambda-Funktionen sind optional.
+ [Demo-Vorlage: Kommentieren von Bildern mit `crowd-bounding-box`](sms-custom-templates-step2-demo1.md)
+ [Demo-Vorlage: Kennzeichnen von Absichten mit `crowd-classifier`](sms-custom-templates-step2-demo2.md)
+ [Erstellen Sie mit Amazon SageMaker Ground Truth einen benutzerdefinierten Workflow zur Datenkennzeichnung](https://aws.amazon.com/blogs/machine-learning/build-a-custom-data-labeling-workflow-with-amazon-sagemaker-ground-truth/)

**Topics**
+ [-Übersicht](#sms-custom-templates-overview)
+ [Einrichten Ihrer Arbeitskräfte](sms-custom-templates-step1.md)
+ [Erstellen einer benutzerdefinierte Vorlage für Auftragnehmeraufgaben](sms-custom-templates-step2.md)
+ [Hinzufügen von Automation mit Liquid](sms-custom-templates-step2-automate.md)
+ [Verarbeitung von Daten in einem benutzerdefinierten Etikettierungs-Workflow mit AWS Lambda](sms-custom-templates-step3.md)
+ [Demo-Vorlage: Kommentieren von Bildern mit `crowd-bounding-box`](sms-custom-templates-step2-demo1.md)
+ [Demo-Vorlage: Kennzeichnen von Absichten mit `crowd-classifier`](sms-custom-templates-step2-demo2.md)
+ [Erstellen eines benutzerdefinierten Workflows mithilfe der API](sms-custom-templates-step4.md)

# Einrichten Ihrer Arbeitskräfte
<a name="sms-custom-templates-step1"></a>

In diesem Schritt verwenden Sie die Konsole, um festzulegen, welchen Worker-Typ Sie verwenden möchten und um die erforderliche Unterauswahl für den Worker-Typ vorzunehmen. Es wird davon ausgegangen, dass Sie die Schritte bis zu diesem Punkt im Abschnitt [Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth](sms-getting-started.md) bereits ausgeführt und die **Custom labeling task (Benutzerdefinierte Labeling-Aufgabe)** als **Task type (Aufgabentyp)** ausgewählt haben.

**So konfigurieren Sie Ihre Arbeitskräfte**

1. Zuerst wählen Sie eine Option aus den **Worker types (Worker-Typen)** aus. Es gibt derzeit drei verfügbare Typen:
   + **Public (Öffentlich)** verwendet eine On-Demand-Workforce von unabhängigen Vertragspartnern, die von Amazon Mechanical Turk unterstützt werden. Sie werden pro Aufgabe bezahlt.
   + **Private (Privat)** verwendet Ihre Mitarbeiter oder Auftragnehmer für die Verarbeitung von Daten, die innerhalb Ihres Unternehmens bleiben müssen.
   + Der **Anbieter** verwendet Drittanbieter, die sich auf die Bereitstellung von Datenkennzeichnungsdiensten spezialisiert haben und über den AWS Marketplace erhältlich sind.

1. Wenn Sie die Option **Public (Öffentlich)** auswählen, werden Sie aufgefordert, die **Anzahl der Worker pro Datensatzobjekt** festzulegen. Wenn mehr als ein Worker dieselbe Aufgabe auf demselben Objekt ausführt, kann dies zur Erhöhung der Genauigkeit Ihrer Ergebnisse beitragen. Der Standard ist drei. Sie können diesen je nach benötigter Genauigkeit erhöhen oder verringern.

   Außerdem werden Sie anhand eines Dropdown-Menüs aufgefordert, einen **Preis pro Aufgabe** festzulegen. Das Menü empfiehlt Preispunkte, abhängig davon, wie lange die Ausführung der Aufgabe dauert.

   Die empfohlene Methode, dies zu bestimmen, besteht darin, zuerst einen kurzen Test Ihrer Aufgabe mit **privaten** Arbeitskräften durchzuführen. Dies liefert eine realistische Schätzung, wie lange die Aufgabe benötigen wird. Sie können dann den Bereich im Menü **Price per task (Preis pro Aufgabe)** auswählen, innerhalb den Ihre Schätzung fällt. Wenn die durchschnittliche Zeit über 5 Minuten liegt, ziehen Sie eine Unterteilung Ihre Aufgabe in kleinere Einheiten in Betracht.

## Next
<a name="templates-step1-next"></a>

[Erstellen einer benutzerdefinierte Vorlage für Auftragnehmeraufgaben](sms-custom-templates-step2.md)

# Erstellen einer benutzerdefinierte Vorlage für Auftragnehmeraufgaben
<a name="sms-custom-templates-step2"></a>

Um einen benutzerdefinierten Kennzeichnungsauftrag zu erstellen, müssen Sie die Worker-Aufgabenvorlage aktualisieren, die Eingabedaten aus Ihrer Manifestdatei den in der Vorlage verwendeten Variablen zuordnen und die Ausgabedaten Amazon S3 zuordnen. Weitere Informationen zu erweiterten Features, die Liquid-Automatisierung verwenden, finden Sie unter [Hinzufügen von Automation mit Liquid](sms-custom-templates-step2-automate.md).

In den folgenden Abschnitten wird jeder erforderliche Schritt beschrieben.

## Worker-Aufgabenvorlage
<a name="sms-custom-templates-step2-template"></a>

Eine *Vorlage für Auftragnehmeraufgaben* ist eine Datei, die Ground Truth zur Anpassung der Worker-Benutzeroberfläche (UI) verwendet. Sie können eine Worker-Aufgabenvorlage mit HTML, CSS JavaScript, der [Liquid-Vorlagensprache](https://shopify.github.io/liquid/) und [Crowd-HTML-Elementen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-ui-template-reference.html) erstellen. Liquid wird verwendet, um die Vorlage zu automatisieren. Crowd-HTML-Elemente werden genutzt, um gängige Annotationstools einzubinden und die Logik für das Senden an Ground Truth bereitzustellen.

In den folgenden Themen erfahren Sie, wie Sie eine Worker-Aufgabenvorlage erstellen können. Ein Repository mit Beispielvorlagen für Ground Truth Worker-Aufgaben finden Sie unter [GitHub](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis).

### Verwenden Sie die Base-Worker-Aufgabenvorlage in der SageMaker AI-Konsole
<a name="sms-custom-templates-step2-base"></a>

Mithilfe eines Vorlageneditors in der Ground-Truth-Konsole können Sie eine Vorlage erstellen. Dieser Editor enthält eine Reihe von vorgefertigten Basisvorlagen. Er unterstützt das automatische Ausfüllen von HTML- und Crowd-HTML-Elementcode.

**So greifen Sie auf den Ground-Truth-Editor für benutzerdefinierte Vorlagen zu:**

1. Folgen Sie den Anweisungen in [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md).

1. Wählen Sie dann **Benutzerdefiniert** für den **Aufgabentyp** des Kennzeichnungsauftrags aus.

1. Wählen Sie **Weiter** aus. Anschließend können Sie im Abschnitt **Einrichtung der benutzerdefinierten Labeling-Aufgabe** auf den Vorlageneditor und die Basisvorlagen zugreifen. 

1. (Optional) Wählen Sie im Dropdown-Menü unter **Vorlagen** eine Basisvorlage aus. Wenn Sie eine Vorlage lieber von Grund auf neu erstellen möchten, wählen Sie im Dropdown-Menü die Option **Benutzerdefiniert** aus, um ein minimales Vorlagengerüst zu erhalten.

Im folgenden Abschnitt erfahren Sie, wie Sie eine in der Konsole entwickelte Vorlage lokal visualisieren können.

#### Lokales Visualisieren Ihrer Worker-Aufgabenvorlagen
<a name="sms-custom-template-step2-UI-local"></a>

Sie müssen die Konsole verwenden, um zu testen, wie Ihre Vorlage eingehende Daten verarbeitet. Um das Erscheinungsbild der HTML- und benutzerdefinierten Elemente Ihrer Vorlage zu testen, können Sie Ihren Browser verwenden.

**Anmerkung**  
Variablen werden nicht analysiert. Möglicherweise müssen Sie sie durch Beispielinhalte ersetzen, während Sie Ihre Inhalte lokal anzeigen.

Der folgende Beispielcodeausschnitt lädt den erforderlichen Code zum Rendern der benutzerdefinierten HTML-Elemente. Verwenden Sie dies, wenn Sie das Erscheinungsbild Ihrer Vorlage lieber in Ihrem bevorzugten Editor und nicht in der Konsole entwickeln möchten.

**Example**  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
```

### Erstellen eines einfachen HTML-Aufgabenbeispiels
<a name="sms-custom-templates-step2-sample"></a>

Da Sie nun über die Basisvorlage für Worker-Aufgaben verfügen, können Sie anhand dieses Themas eine einfache HTML-basierte Aufgabenvorlage erstellen.

Es folgt ein Beispieleintrag aus einer Eingabemanifestdatei.

```
{
  "source": "This train is really late.",
  "labels": [ "angry" , "sad", "happy" , "inconclusive" ],
  "header": "What emotion is the speaker feeling?"
}
```

In der HTML-Aufgabenvorlage müssen die Variablen aus der Eingabemanifestdatei der Vorlage zugeordnet werden. Die Variable aus dem Beispiel-Eingabemanifest würde anhand der folgenden Syntax zugeordnet: **task.input.source**, **task.input.labels** und **task.input.header**.

Im Folgenden finden Sie ein einfaches Beispiel für eine HTML-Worker-Aufgabenvorlage für die Tweet-Analyse. Alle Aufgaben beginnen und enden mit den `<crowd-form> </crowd-form>`-Elementen. Wie bei Standard-HTML-`<form>`-Elementen sollte der gesamte Formularcode zwischen ihnen platziert werden. Ground Truth generiert die Aufgaben der Auftragnehmer direkt aus dem in der Vorlage angegebenen Kontext, es sei denn, Sie implementieren ein Lambda mit Vorverarbeitung. Das von Ground Truth zurückgegebene `taskInput`-Objekt oder [Lambda zur Vorverarbeitung](sms-custom-templates-step3-lambda-requirements.md#sms-custom-templates-step3-prelambda) ist das `task.input`-Objekt in Ihren Vorlagen.

Für eine einfache Tweet-Analyseaufgabe verwenden Sie das `<crowd-classifier>`-Element. Es erfordert die folgenden Attribute:
+ *name* – der Name Ihrer Ausgabevariablen. Anmerkungen von Auftragnehmern werden unter diesem Variablennamen in Ihrem Ausgabemanifest gespeichert.
+ *categories (Kategorien)* – ein JSON-formatiertes Array der möglichen Antworten.
+ *header (Header)* – ein Titel für das Anmerkungstool.

Das `<crowd-classifier>`-Element benötigt mindestens die drei folgenden untergeordneten Elemente.
+ *<classification-target>* – der Text, den der Auftragnehmer basierend auf den Optionen klassifiziert, die im `categories`-Attribut oben angegeben wurden
+ *<full-instructions>* – Anweisungen, die über den Link „Vollständige Anweisungen anzeigen“ im Tool verfügbar sind Dies kann leer bleiben, aber es wird empfohlen, dass Sie gute Anweisungen geben, um bessere Ergebnisse zu erzielen.
+ *<short-instructions>* – eine kurze Beschreibung der Aufgabe, die in der Seitenleiste des Tools angezeigt wird Dies kann leer bleiben, aber es wird empfohlen, dass Sie gute Anweisungen geben, um bessere Ergebnisse zu erzielen.

Eine einfache Version dieses Tools würde wie folgt aussehen. Die Variable **\$1\$1 task.input.source \$1\$1** gibt die Quelldaten aus Ihrer Eingabemanifestdatei an. **\$1\$1 task.input.labels \$1 to\$1json \$1\$1** ist ein Beispiel für einen variablen Filter, durch den das Array in eine JSON-Darstellung umgewandelt wird. Das `categories`-Attribut muss JSON sein.

**Example für die Verwendung von `crowd-classifier` mit dem Beispiel-Eingabemanifest JSON**  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-classifier
    name="tweetFeeling"
    categories="='{{ task.input.labels | to_json }}'"
    header="{{ task.input.header }}'"
  >
     <classification-target>
       {{ task.input.source }}
     </classification-target>

    <full-instructions header="Sentiment Analysis Instructions">
      Try to determine the sentiment the author
      of the tweet is trying to express.
      If none seem to match, choose "cannot determine."
    </full-instructions>

    <short-instructions>
      Pick the term that best describes the sentiment of the tweet.
    </short-instructions>

  </crowd-classifier>
</crowd-form>
```

Sie können den Code kopieren und in den Editor des Workflows zur Erstellung von Ground Truth Labeling-Jobs einfügen, um eine Vorschau [des Tools anzuzeigen, oder eine Demo dieses Codes ausprobieren CodePen.](https://codepen.io/MTGT/full/OqBvJw)

 [https://codepen.io/MTGT/full/OqBvJw](https://codepen.io/MTGT/full/OqBvJw) 

## Eingabedaten, externe Ressourcen und Ihre Aufgabenvorlage
<a name="sms-custom-templates-step2-template-input"></a>

Die folgenden Abschnitte beschreiben die Verwendung externer Ressourcen, die Anforderungen an das Eingabedatenformat und, wann die Verwendung der Lambda-Funktionen zur Vorverarbeitung in Betracht gezogen werden sollte.

### Anforderungen an das Eingabedatenformat
<a name="sms-custom-template-input-manifest"></a>

Wenn Sie eine Eingabemanifestdatei für Ihren benutzerdefinierten Ground-Truth-Kennzeichnungsauftrag erstellen, müssen Sie die Daten in Amazon S3 speichern. Die Eingabemanifestdateien müssen auch in derselben Datei gespeichert werden, AWS-Region in der Ihr benutzerdefinierter Ground Truth Truth-Labeling-Job ausgeführt werden soll. Darüber hinaus kann sie in jedem Amazon-S3-Bucket gespeichert werden, auf den die IAM-Servicerolle zugreifen kann, die Sie verwenden, um Ihren benutzerdefinierten Kennzeichnungsauftrag in Ground Truth auszuführen.

Eingabemanifestdateien müssen das durch Zeilenumbruch getrennte JSON- oder JSON-Zeilenformat verwenden. Jede Zeile wird durch einen Standardzeilenumbruch getrennt, **\$1n** oder **\$1r\$1n**. Jede Zeile muss auch ein gültiges JSON-Objekt sein. 

Darüber hinaus muss jedes JSON-Objekt in der Manifestdatei einen der folgenden Schlüssel enthalten: `source-ref` oder `source`. Der Wert der Schlüssel wird wie folgt festgelegt:
+ `source-ref` – Die Quelle des Objekts ist das im Wert angegebene Amazon-S3-Objekt. Verwenden Sie diesen Wert, wenn es sich bei dem Objekt um ein binäres Objekt handelt, z. B. ein Bild.
+ `source` – Die Quelle des Objekts ist der Wert. Verwenden Sie diesen Wert, wenn das Objekt ein Textwert ist.

Weitere Informationen zum Formatieren Ihrer Eingabemanifestdateien finden Sie unter [Eingabemanifestdateien](sms-input-data-input-manifest.md).

### Lambda-Funktion zur Vorverarbeitung
<a name="sms-custom-template-input-lambda"></a>

Sie können optional eine *Lambda-Funktion zur Vorverarbeitung* angeben, um zu verwalten, wie Daten aus Ihrer Eingabemanifestdatei vor der Kennzeichnung behandelt werden. Wenn Sie das Schlüssel-Wert-Paar `isHumanAnnotationRequired` angegeben haben, müssen Sie eine Lambda-Funktion zur Vorverarbeitung verwenden. Wenn Ground Truth der Lambda-Funktion zur Vorverarbeitung eine Anforderung im JSON-Format sendet, verwendet sie die folgenden Schemas.

**Example Datenobjekt, das mit dem Schlüssel-Wert-Paar `source-ref` identifiziert wurde**  

```
{
  "version": "2018-10-16",
  "labelingJobArn": arn:aws:lambda:us-west-2:555555555555:function:my-function
  "dataObject" : {
    "source-ref": s3://input-data-bucket/data-object-file-name
  }
}
```

**Example Datenobjekt, das mit dem Schlüssel-Wert-Paar `source` identifiziert wurde**  

```
{
      "version": "2018-10-16",
      "labelingJobArn" : arn:aws:lambda:us-west-2:555555555555:function:my-function
      "dataObject" : {
        "source": Sue purchased 10 shares of the stock on April 10th, 2020
      }
    }
```

Es folgt die erwartete Reaktion der Lambda-Funktion, wenn `isHumanAnnotationRequired` verwendet wird.

```
{
  "taskInput": {
    "source": "This train is really late.",
    "labels": [ "angry" , "sad" , "happy" , "inconclusive" ],
    "header": "What emotion is the speaker feeling?"
  },
  "isHumanAnnotationRequired": False
}
```

### Verwenden externer Assets
<a name="sms-custom-template-step2-UI-external"></a>

Benutzerdefinierte Vorlagen von Amazon SageMaker Ground Truth ermöglichen das Einbetten externer Skripts und Stylesheets. Der folgende Codeblock zeigt beispielsweise, wie Sie Ihrer Vorlage ein Stylesheet hinzufügen würden, das sich unter `https://www.example.com/my-enhancement-styles.css` befindet.

**Example**  

```
<script src="https://www.example.com/my-enhancment-script.js"></script>
<link rel="stylesheet" type="text/css" href="https://www.example.com/my-enhancement-styles.css">
```

Wenn Fehler auftreten, stellen Sie sicher, dass Ihr Ursprungsserver den richtigen MIME-Typ und die richtigen Kodierungskopfzeilen mit den Assets sendet.

MIME- und Kodierungstypen für Remote-Skripts sind beispielsweise: `application/javascript;CHARSET=UTF-8`.

Der MIME- und Kodierungs-Typ für Remote-Stylesheets ist: `text/css;CHARSET=UTF-8`.

## Ausgabedaten und Ihre Aufgabenvorlage
<a name="sms-custom-templates-step2-template-output"></a>

Die folgenden Abschnitte beschreiben die Ausgabedaten eines benutzerdefinierten Kennzeichnungsauftrags und, wann die Verwendung einer Lambda-Funktion zur Vorverarbeitung in Betracht gezogen werden sollte.

### Ausgabedaten
<a name="sms-custom-templates-data"></a>

Wenn Ihr benutzerdefinierter Kennzeichnungsauftrag abgeschlossen ist, werden die Daten im Amazon-S3-Bucket gespeichert, der bei der Erstellung des Kennzeichnungsauftrags angegeben wurde. Die Daten werden in einer `output.manifest`-Datei gespeichert.

**Anmerkung**  
*labelAttributeName*ist eine Platzhaltervariable. In Ihrer Ausgabe ist dies entweder der Name Ihres Kennzeichnungsauftrags oder der Kennzeichnungsattributname, den Sie bei der Erstellung des Kennzeichnungsauftrags angeben.
+ `source` oder `source-ref` – entweder die Zeichenfolge oder eine S3-URI, um deren Kennzeichnung die Auftragnehmer gebeten wurden 
+ `labelAttributeName` – ein Wörterbuch, das konsolidierte Kennzeichnungsinhalte aus der [Lambda-Funktion zur Vorverarbeitung](sms-custom-templates-step3-lambda-requirements.md#sms-custom-templates-step3-postlambda) enthält. Wenn keine Lambda-Funktion zur Vorverarbeitung angegeben ist, ist dieses Wörterbuch leer.
+ `labelAttributeName-metadata` – Metadaten aus Ihrem benutzerdefinierten Kennzeichnungsauftrag, die von Ground Truth hinzugefügt wurden 
+ `worker-response-ref` – die S3-URI des Buckets, in dem die Daten gespeichert sind. Wenn eine Lambda-Funktion zur Vorverarbeitung angegeben wird, wird dieses Schlüssel-Wert-Paar nicht angezeigt.

In diesem Beispiel wird das JSON-Objekt aus Gründen der Lesbarkeit formatiert, in der tatsächlichen Ausgabedatei befindet sich das JSON-Objekt in einer einzelnen Zeile.

```
{
  "source" : "This train is really late.",
  "labelAttributeName" : {},
  "labelAttributeName-metadata": { # These key values pairs are added by Ground Truth
    "job_name": "test-labeling-job",
    "type": "groundTruth/custom",
    "human-annotated": "yes",
    "creation_date": "2021-03-08T23:06:49.111000",
    "worker-response-ref": "s3://amzn-s3-demo-bucket/test-labeling-job/annotations/worker-response/iteration-1/0/2021-03-08_23:06:49.json"
  }
}
```

### Verwenden der Lambda-Nachbearbeitung zur Konsolidierung der Ergebnisse Ihrer Auftragnehmer
<a name="sms-custom-templates-consolidation"></a>

Standardmäßig speichert Ground Truth die Antworten der Auftragnehmer unbearbeitet in Amazon S3. Um eine genauere Kontrolle darüber zu haben, wie Antworten behandelt werden, können Sie eine *Lambda-Funktion zur Nachbearbeitung* angeben. Beispielsweise könnte eine Lambda-Funktion zur Nachbearbeitung verwendet werden, um Anmerkungen zu konsolidieren, wenn mehrere Auftragnehmer dasselbe Datenobjekt gekennzeichnet haben. Weitere Informationen zum Erstellen von Lambda-Funktionen zur Nachbearbeitung finden Sie unter [Lambda zur Nachbearbeitung](sms-custom-templates-step3-lambda-requirements.md#sms-custom-templates-step3-postlambda).

Wenn Sie eine Lambda-Funktion zur Nachbearbeitung verwenden möchten, muss sie als Teil der [https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html](https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_AnnotationConsolidationConfig.html) in einer `CreateLabelingJob`-Anforderung angegeben werden.

Weitere Informationen zur Funktionsweise der Konsolidierung von Anmerkungen finden Sie unter [Anmerkungskonsolidierung](sms-annotation-consolidation.md).

# Hinzufügen von Automation mit Liquid
<a name="sms-custom-templates-step2-automate"></a>

Unser benutzerdefiniertes Vorlagensystem verwendet [Liquid](https://shopify.github.io/liquid/) zur Automatisierung. Es handelt sich um eine Open-Source-Inline-Auszeichnungssprache. In Liquid handelt es sich beim Text zwischen einzelnen geschweiften Klammern und Prozentzeichen um eine Anweisung oder einen *Tag*, die bzw. der einen Vorgang wie Steuerungsablauf oder Iteration durchführt. Text zwischen doppelten geschweiften Klammern ist eine Variable oder ein *Objekt* zum Ausgeben des Werts.

Am häufigsten wird Liquid zum Analysieren der Daten aus Ihrer Eingabe-Manifestdatei und zum Auslesen der relevanten Variablen verwendet, um die Aufgabe zu erstellen. Ground Truth generiert die Aufgaben automatisch, sofern keine Lambda-Vorverarbeitung angegeben ist. Das von Ground Truth oder [Lambda zur Vorverarbeitung](sms-custom-templates-step3-lambda-requirements.md#sms-custom-templates-step3-prelambda) zurückgegebene `taskInput`-Objekt ist das `task.input`-Objekt in Ihren Vorlagen.

Die Eigenschaften in Ihrem Eingabemanifest werden als `event.dataObject` an Ihre Vorlage übergeben.

**Example Datenobjekt des Manifests**  

```
{
  "source": "This is a sample text for classification",
  "labels": [ "angry" , "sad" , "happy" , "inconclusive" ],
  "header": "What emotion is the speaker feeling?"
}
```

**Example Beispiel-HTML unter Verwendung von Variablen**  

```
<crowd-classifier 
  name='tweetFeeling'
  categories='{{ task.input.labels | to_json }}'
  header='{{ task.input.header }}' >
<classification-target>
  {{ task.input.source }}
</classification-target>
```

Beachten Sie im vorherigen Beispiel das Hinzufügen von ` | to_json` zur `labels`-Eigenschaft. Hierbei handelt es sich um einen Filter, durch den das Eingabemanifest-Array in eine JSON-Darstellung des Arrays umgewandelt wird. Variablenfilter werden im nächsten Abschnitt erläutert.

Die folgende Liste enthält zwei Arten von Liquid-Tags, die für Sie nützlich sein könnten, um die Verarbeitung von Vorlageneingabedaten zu automatisieren. Wenn Sie einen der folgenden Tag-Typen auswählen, werden Sie zur Liquid-Dokumentation weitergeleitet.
+ [Steuerungsablauf](https://shopify.github.io/liquid/tags/control-flow/): Beinhaltet Programmierlogik-Operatoren wie `if/else`, `unless` und `case/when`.
+ [Iteration](https://shopify.github.io/liquid/tags/iteration/): Ermöglicht das wiederholte Ausführen von Codeblöcken mithilfe von Anweisungen wie for-Schleifen. 

  Ein Beispiel für eine HTML-Vorlage, die Liquid-Elemente verwendet, um eine For-Schleife zu erstellen, finden Sie unter [translation-review-and-correction.liquid.html](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis/blob/8ae02533ea5a91087561b1daecd0bc22a37ca393/text/translation-review-and-correction.liquid.html) in. GitHub 

Weitere Informationen und Dokumentationen finden Sie auf der [Liquid-Homepage](https://shopify.github.io/liquid/).

## Variablenfilter
<a name="sms-custom-templates-step2-automate-filters"></a>

Zusätzlich zu den Standard-[Liquid-Filtern](https://shopify.github.io/liquid/filters/abs/) und Aktionen bietet Ground Truth einige zusätzliche Filter. Filter werden angewendet, indem ein Pipe-Zeichen (`|`) nach dem Variablennamen platziert und dann ein Filtername angegeben wird. Filter können verkettet werden in Form von:

**Example**  

```
{{ <content> | <filter> | <filter> }}
```

### Autoescape und explizites Escape
<a name="sms-custom-templates-step2-automate-filters-autoescape"></a>

Standardmäßig werden Eingaben durch HTML geschützt, um Verwirrung zwischen Ihrem variablen Text und HTML zu verhindern. Sie können den `escape`-Filter explizit hinzufügen, um es für den Leser der Quelle Ihrer Vorlage ersichtlicher zu machen, dass das Escaping durchgeführt wird.

### escape\$1once
<a name="sms-custom-templates-step2-automate-escapeonce"></a>

`escape_once` stellt sicher, dass, wenn Sie Ihren Code bereits durch Escape-Zeichen geschützt haben, er nicht zusätzlich erneut durch Escape-Zeichen geschützt wird. Damit beispielsweise &amp; nicht zu &amp;amp; wird.

### skip\$1autoescape
<a name="sms-custom-templates-step2-automate-skipautoescape"></a>

`skip_autoescape` ist nützlich, wenn Ihre Inhalte als HTML verwendet werden sollen. Beispiel: Sie haben ein paar Textabsätze und einige Bilder in den vollständigen Anweisungen für einen Begrenzungsrahmen.

**Sparsames Verwenden von `skip_autoescape`**  
Die bewährte Methode bei Vorlagen besteht darin, die Übergabe von funktionalem Code oder Markup mit `skip_autoescape` zu vermeiden, es sei denn, Sie sind absolut sicher, dass Sie strenge Kontrolle darüber haben, was übergeben wird. Wenn Sie Benutzereingaben übergeben, können Sie Ihre Worker einem Cross-Site-Scripting-Angriff aussetzen.

### to\$1json
<a name="sms-custom-templates-step2-automate-tojson"></a>

`to_json`kodiert, was Sie an JSON (JavaScript Object Notation) weitergeben. Wenn Sie ein Objekt bereitstellen, wird dieses serialisiert.

### grant\$1read\$1access
<a name="sms-custom-templates-step2-automate-grantreadaccess"></a>

`grant_read_access` nimmt einen S3-URI entgegen und codiert ihn in eine HTTPS-URL mit einem kurzlebigen Zugriffstoken für diese Ressource. Dadurch ist es möglich, Auftragnehmern Foto-, Audio- oder Videoobjekte anzuzeigen, die in S3-Buckets gespeichert sind, auf die nicht anders öffentlich zugegriffen werden kann.

### s3\$1presign
<a name="sms-custom-templates-step2-automate-s3"></a>

 Der `s3_presign`-Filter funktioniert genauso wie der `grant_read_access`-Filter. `s3_presign` nimmt einen Amazon-S3-URI und kodiert ihn in eine HTTPS-URL mit einem kurzlebigen Zugriffstoken für diese Ressource. Dadurch ist es möglich, Foto-, Audio- oder Videoobjekte anzuzeigen, die in S3-Buckets gespeichert sind, auf die Auftragnehmer nicht anders öffentlich zugreifen können.

**Example von Variablenfiltern**  
Input  

```
auto-escape: {{ "Have you read 'James & the Giant Peach'?" }}
explicit escape: {{ "Have you read 'James & the Giant Peach'?" | escape }}
explicit escape_once: {{ "Have you read 'James &amp; the Giant Peach'?" | escape_once }}
skip_autoescape: {{ "Have you read 'James & the Giant Peach'?" | skip_autoescape }}
to_json: {{ jsObject | to_json }}                
grant_read_access: {{ "s3://amzn-s3-demo-bucket/myphoto.png" | grant_read_access }}
s3_presign: {{ "s3://amzn-s3-demo-bucket/myphoto.png" | s3_presign }}
```

**Example**  
Ausgabe  

```
auto-escape: Have you read &#39;James &amp; the Giant Peach&#39;?
explicit escape: Have you read &#39;James &amp; the Giant Peach&#39;?
explicit escape_once: Have you read &#39;James &amp; the Giant Peach&#39;?
skip_autoescape: Have you read 'James & the Giant Peach'?
to_json: { "point_number": 8, "coords": [ 59, 76 ] }
grant_read_access: https://s3.amazonaws.com/amzn-s3-demo-bucket/myphoto.png?<access token and other params>
s3_presign: https://s3.amazonaws.com/amzn-s3-demo-bucket/myphoto.png?<access token and other params>
```

**Example einer automatisierten Klassifizierungsvorlage.**  
Um das einfache Textklassifizierungsbeispiel zu automatisieren, ersetzen Sie den Tweet-Text mit einer Variablen.  
Die Textklassifizierungsvorlage befindet sich unten mit hinzugefügter Automatisierung. Sie changes/additions sind fett hervorgehoben.  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-classifier 
    name="tweetFeeling"
    categories="['positive', 'negative', 'neutral', 'cannot determine']"
    header="Which term best describes this tweet?" 
  >
    <classification-target>
       {{ task.input.source }}
    </classification-target>

    <full-instructions header="Analyzing a sentiment">
      Try to determine the feeling the author 
      of the tweet is trying to express. 
      If none seem to match, choose "other."
    </full-instructions>

    <short-instructions>
      Pick the term best describing the sentiment 
      of the tweet. 
    </short-instructions>

  </crowd-classifier>
</crowd-form>
```
Die Tweet-Text im vorherigen Beispiel wird jetzt durch ein Objekt ersetzt. Das `entry.taskInput`-Objekt verwendet `source` (oder einen anderen Namen, den Sie in Ihrem Lambda der Vorverarbeitung angeben) als Eigenschaftennamen für den Text, und es wird direkt in HTML eingefügt, wenn es sich zwischen doppelten geschweiften Klammern befindet.

# Verarbeitung von Daten in einem benutzerdefinierten Etikettierungs-Workflow mit AWS Lambda
<a name="sms-custom-templates-step3"></a>

In diesem Thema erfahren Sie, wie Sie optionale [AWS Lambda](https://aws.amazon.com/lambda/)-Funktionen bereitstellen, wenn Sie einen benutzerdefinierten Kennzeichnungs-Workflow erstellen. Sie können zwei Arten von Lambda-Funktionen angeben, die Sie in Ihrem benutzerdefinierten Kennzeichnungs-Workflow verwenden möchten.
+ *Lambda zur Vorverarbeitung*: Diese Funktion initiiert verarbeitet jedes Datenobjekt vor, das an Ihren Kennzeichnungsauftrag gesendet wird, bevor es an Worker gesendet wird.
+ *Lambda zur Nachbearbeitung*: Diese Funktion verarbeitet die Ergebnisse, sobald Worker eine Aufgabe einreichen. Wenn Sie mehrere Worker pro Datenobjekt angeben, kann diese Funktion Logik zur Konsolidierung von Anmerkungen enthalten.

Wenn Sie ein neuer Benutzer von Lambda und Ground Truth sind, empfehlen wir Ihnen, die Seiten in diesem Abschnitt wie folgt zu verwenden:

1. Sehen Sie sich sich zunächst [Verwenden der Lambda-Funktionen zur Vorverarbeitung und zur NachbearbeitungVerwenden der Lambda-Funktionen](sms-custom-templates-step3-lambda-requirements.md) an.

1. Nutzen Sie dann die Seite [Fügen Sie die erforderlichen Berechtigungen für die Verwendung AWS Lambda mit Ground Truth hinzu](sms-custom-templates-step3-lambda-permissions.md), um mehr über die Sicherheits- und Berechtigungsanforderungen für die Verwendung Ihrer Lambda-Funktionen zur Vorverarbeitung und Nachbearbeitung in einem benutzerdefinierten Ground-Truth-Kennzeichnungsauftrag zu erfahren.

1. Als Nächstes müssen Sie die Lambda-Konsole aufrufen oder Lambdas verwenden, um Ihre APIs Funktionen zu erstellen. Im Abschnitt [Erstellen von Lambda-Funktionen mithilfe von Ground-Truth-Vorlagen](sms-custom-templates-step3-lambda-create.md) erfahren Sie, wie Sie Lambda-Funktionen erstellen.

1. Unter [Testen der Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung](sms-custom-templates-step3-lambda-test.md) erfahren Sie, wie Sie Ihre Lambda-Funktionen aktualisieren können.

1. Nachdem Sie Lambda-Funktionen zur Vorverarbeitung und zu Nachbearbeitung erstellt haben, wählen Sie sie im Abschnitt **Lambda-Funktionen** aus, der sich hinter dem Code-Editor für Ihren benutzerdefinierten HTML-Code in der Ground-Truth-Konsole befindet. Informationen zur Verwendung dieser Funktionen in einer `CreateLabelingJob`-API-Anfrage finden Sie unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md).

Ein Tutorial zum benutzerdefinierten Kennzeichnungs-Workflow, das Beispiele für Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung enthält, finden Sie unter [Demo-Vorlage: Kommentieren von Bildern mit `crowd-bounding-box`](sms-custom-templates-step2-demo1.md).

**Topics**
+ [Verwenden der Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung](sms-custom-templates-step3-lambda-requirements.md)
+ [Fügen Sie die erforderlichen Berechtigungen für die Verwendung AWS Lambda mit Ground Truth hinzu](sms-custom-templates-step3-lambda-permissions.md)
+ [Erstellen von Lambda-Funktionen mithilfe von Ground-Truth-Vorlagen](sms-custom-templates-step3-lambda-create.md)
+ [Testen der Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung](sms-custom-templates-step3-lambda-test.md)

# Verwenden der Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung
<a name="sms-custom-templates-step3-lambda-requirements"></a>

In diesen Themen erfahren Sie mehr über die Syntax der Anforderungen, die an Lambda-Funktionen vor und nach der Anmerkung gesendet werden, sowie über die erforderliche Antwortsyntax, die Ground Truth in benutzerdefinierten Labeling-Workflows verwendet.

**Topics**
+ [Lambda zur Vorverarbeitung](#sms-custom-templates-step3-prelambda)
+ [Lambda zur Nachbearbeitung](#sms-custom-templates-step3-postlambda)

## Lambda zur Vorverarbeitung
<a name="sms-custom-templates-step3-prelambda"></a>

Bevor eine Labeling-Aufgabe an den Worker gesendet wird, kann eine optionale Lambda-Funktion zur Vorverarbeitung aufgerufen werden.

Ground Truth sendet Ihrer Lambda-Funktion eine Anforderung im JSON-Format, um Details zum Kennzeichnungsauftrag und zum Datenobjekt bereitzustellen.

Es folgen zwei JSON-formatierte Beispielanforderungen.

------
#### [ Data object identified with "source-ref" ]

```
{
    "version": "2018-10-16",
    "labelingJobArn": <labelingJobArn>
    "dataObject" : {
        "source-ref": <s3Uri>
    }
}
```

------
#### [ Data object identified with "source" ]

```
{
    "version": "2018-10-16",
    "labelingJobArn": <labelingJobArn>
    "dataObject" : {
        "source": <string>
    }
}
```

------

 Die folgende Liste enthält die Anforderungsschemas zur Vorverarbeitung. Nachfolgend ist jeder Parameter beschrieben.
+ `version`(Zeichenfolge): Dies ist eine Versionsnummer, die von Ground Truth intern verwendet wird.
+ `labelingJobArn`(Zeichenfolge): Dies ist der Amazon-Ressourcenname oder ARN Ihres Kennzeichnungsauftrags. Dieser ARN kann verwendet werden, um auf den Kennzeichnungsauftrag zu verweisen, wenn Ground-Truth-API-Operationen wie `DescribeLabelingJob` verwendet werden.
+ Das `dataObject` (JSON-Objekt): Der Schlüssel enthält eine einzelne JSON-Line, entweder aus Ihrer Eingabemanifestdatei oder von Amazon SNS gesendet. Die JSON-Line-Objekte in Ihrem Manifest können bis zu 100 KB groß sein und eine Vielzahl von Daten enthalten. Bei einem sehr einfachen Bildanmerkungsauftrag kann das `dataObject` JSON nur einen `source-ref`-Schlüssel enthalten, der das Bild identifiziert, das mit Anmerkungen versehen werden soll. Wenn das Datenobjekt (z. B. eine Textzeile) direkt in der Eingabemanifestdatei enthalten ist, wird das Datenobjekt mit `source` identifiziert. Wenn Sie einen Überprüfungs- oder Anpassungsauftrag erstellen, kann diese Zeile Kennzeichnungsdaten und Metadaten aus dem vorherigen Kennzeichnungsauftrag enthalten.

Die folgenden Registerkarten zeigen Beispiele für eine Anforderung zur Vorverarbeitung. Jeder Parameter in diesen Beispielanforderungen wird unter der Tabelle mit Registern erklärt.

------
#### [ Data object identified with "source-ref" ]

```
{
    "version": "2018-10-16",
    "labelingJobArn": "arn:aws:sagemaker:us-west-2:111122223333:labeling-job/<labeling_job_name>"
    "dataObject" : {
        "source-ref": "s3://input-data-bucket/data-object-file-name"
    }
}
```

------
#### [ Data object identified with "source" ]

```
{
    "version": "2018-10-16",
    "labelingJobArn": "arn:aws:sagemaker:<aws_region>:111122223333:labeling-job/<labeling_job_name>"
    "dataObject" : {
        "source": "Sue purchased 10 shares of the stock on April 10th, 2020"
    }
}
```

------

Im Gegenzug benötigt Ground Truth eine Antwort, die wie folgt formatiert ist:

**Example von erwarteten Rückgabedaten**  

```
{
    "taskInput": <json object>,
    "isHumanAnnotationRequired": <boolean> # Optional
}
```

Im vorherigen Beispiel musste `<json object>` *alle* Daten enthalten, die Ihre benutzerdefinierte Worker-Aufgabenvorlage benötigt. Wenn Sie eine Begrenzungsrahmenaufgabe ausführen, in der die Anweisungen stets beibehalten werden, mag es sich lediglich um die HTTP(S) oder Amazon-S3-Ressource für Ihre Bilddatei handeln. Wenn es eine Stimmungsanalyseaufgabe ist und verschiedene Objekte möglicherweise unterschiedliche Auswahlmöglichkeiten bieten, ist es die Objektreferenz als Zeichenfolge und die Auswahl als ein Array von Zeichenfolgen.

**Auswirkungen von `isHumanAnnotationRequired`**  
Dieser Wert ist optional, da er standardmäßig auf `true` eingestellt ist. Der primäre Anwendungsfall für die explizite Einstellung ist, wenn Sie dieses Datenobjekt von der Kennzeichnung durch Auftragnehmer ausschließen möchten. 

Wenn Sie über eine Mischung von Objekten in Ihrem Manifest verfügen, von denen manche menschliche Anmerkungen erfordern und andere nicht, können Sie jedem Datenobjekt einen `isHumanAnnotationRequired`-Wert hinzufügen. Sie können Ihrem Lambda zu Vorverarbeitung Logik hinzufügen, um dynamisch zu bestimmen, ob ein Objekt eine Anmerkung benötigt, und diesen booleschen Wert entsprechend festlegen.

### Beispiele für Lambda-Funktionen zur Vorverarbeitung
<a name="sms-custom-templates-step3-prelambda-example"></a>

Die folgende grundlegende Lambda-Funktion zur Vorverarbeitung greift von der ersten Anforderung aus auf das JSON-Objekt in `dataObject` zu und gibt es im Parameter `taskInput` zurück.

```
import json

def lambda_handler(event, context):
    return {
        "taskInput":  event['dataObject']
    }
```

Vorausgesetzt, die Eingabemanifestdatei verwendet `"source-ref"` zur Identifizierung von Datenobjekten, muss die Worker-Aufgabenvorlage, die in demselben Kennzeichnungsauftrag wie dieses Lambda zur Vorverarbeitung verwendet wird, ein Liquid-Element wie das folgende enthalten, um `dataObject` aufnehmen zu können:

```
{{ task.input.source-ref | grant_read_access }}
```

Wenn die Eingabemanifestdatei `source` zur Identifizierung des Datenobjekts verwendet hat, kann die Worker-Aufgabenvorlage `dataObject` aufnehmen mit Folgendem aufnehmen:

```
{{ task.input.source }}
```

Das folgende Lambda-Beispiel zur Vorverarbeitung enthält Logik zur Identifizierung des in `dataObject` verwendeten Schlüssels und zum Verweisen auf dieses Datenobjekt, das `taskObject` in der Rückgabenweisung von Lambda verwendet.

```
import json

def lambda_handler(event, context):

    # Event received
    print("Received event: " + json.dumps(event, indent=2))

    # Get source if specified
    source = event['dataObject']['source'] if "source" in event['dataObject'] else None

    # Get source-ref if specified
    source_ref = event['dataObject']['source-ref'] if "source-ref" in event['dataObject'] else None

    # if source field present, take that otherwise take source-ref
    task_object = source if source is not None else source_ref

    # Build response object
    output = {
        "taskInput": {
            "taskObject": task_object
        },
        "humanAnnotationRequired": "true"
    }

    print(output)
    # If neither source nor source-ref specified, mark the annotation failed
    if task_object is None:
        print(" Failed to pre-process {} !".format(event["labelingJobArn"]))
        output["humanAnnotationRequired"] = "false"

    return output
```

## Lambda zur Nachbearbeitung
<a name="sms-custom-templates-step3-postlambda"></a>

Sobald alle Worker das Datenobjekt mit Anmerkungen versehen haben oder wenn [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanLoopConfig.html#SageMaker-Type-HumanLoopConfig-TaskAvailabilityLifetimeInSeconds](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanLoopConfig.html#SageMaker-Type-HumanLoopConfig-TaskAvailabilityLifetimeInSeconds) erreicht wurde, je nachdem, welcher Fall zuerst eintritt, sendet Ground Truth diese Anmerkungen an Ihr Lambda zur Nachbearbeitung. Dieses Lambda wird normalerweise für [Anmerkungskonsolidierung](sms-annotation-consolidation.md) verwendet.

**Anmerkung**  
Ein Beispiel für eine Lambda-Funktion nach der Konsolidierung finden Sie unter [annotation\$1consolidation\$1lambda.py im Repository aws-sagemaker-ground-truth](https://github.com/aws-samples/aws-sagemaker-ground-truth-recipe/blob/master/aws_sagemaker_ground_truth_sample_lambda/annotation_consolidation_lambda.py) [ GitHub -recipe](https://github.com/aws-samples/aws-sagemaker-ground-truth-recipe).

Der folgende Codeblock enthält das Anforderungsschema zur Nachbearbeitung. Jeder Parameter ist in der folgenden Aufzählungsliste beschrieben.

```
{
    "version": "2018-10-16",
    "labelingJobArn": <string>,
    "labelCategories": [<string>],
    "labelAttributeName": <string>,
    "roleArn" : <string>,
    "payload": {
        "s3Uri": <string>
    }
 }
```
+ `version`(Zeichenfolge): Eine Versionsnummer, die von Ground Truth intern verwendet wird.
+ `labelingJobArn`(Zeichenfolge): Der Amazon-Ressourcenname oder ARN Ihres Kennzeichnungsauftrags. Dieser ARN kann verwendet werden, um auf den Kennzeichnungsauftrag zu verweisen, wenn Ground-Truth-API-Operationen wie `DescribeLabelingJob` verwendet werden.
+ `labelCategories`(Liste der Zeichenfolgen): Umfasst die Kennzeichnungskategorien und andere Attribute, die Sie entweder in der Konsole angegeben haben oder die Sie in die Konfigurationsdatei für die Kennzeichnungskategorien aufgenommen haben.
+ `labelAttributeName`(Zeichenfolge): Entweder der Name Ihres Kennzeichnungsauftrags oder Kennzeichnungsattributname, den Sie bei der Erstellung des Kennzeichnungsauftrags angeben.
+ `roleArn`(Zeichenfolge): Der Amazon-Ressourcenname (ARN) der IAM-Ausführungsrolle, die Sie beim Erstellen des Kennzeichnungsauftrags angeben. 
+ `payload`(JSON-Objekt): Ein JSON, das einen `s3Uri`-Schlüssel enthält, der den Speicherort der Annotationsdaten für dieses Datenobjekt in Amazon S3 identifiziert. Der zweite Codeblock unten zeigt ein Beispiel für diese Annotationsdatei.

Der folgende Codeblock enthält ein Beispiel für eine Anforderung zur Nachbearbeitung. Jeder Parameter in dieser Beispielanforderung wird unter dem Codeblock erklärt.

**Example einer Lambda-Anforderung zur Nachbearbeitung**  

```
{
    "version": "2018-10-16",
    "labelingJobArn": "arn:aws:sagemaker:us-west-2:111122223333:labeling-job/labeling-job-name",
    "labelCategories": ["Ex Category1","Ex Category2", "Ex Category3"],
    "labelAttributeName": "labeling-job-attribute-name",
    "roleArn" : "arn:aws:iam::111122223333:role/role-name",
    "payload": {
        "s3Uri": "s3://amzn-s3-demo-bucket/annotations.json"
    }
 }
```

**Anmerkung**  
Wenn kein Worker an dem Datenobjekt arbeitet und `TaskAvailabilityLifetimeInSeconds` erreicht wurde, wird das Datenobjekt als fehlgeschlagen markiert und nicht als Teil des Lambda-Aufrufs zur Nachbearbeitung aufgenommen.

Der folgende Codeblock enthält das Nutzlastschema. Dies ist die Datei, die durch den `s3Uri`-Parameter im `payload`-JSON-Objekt der Lambda-Anforderung zur Nachbearbeitung angegeben ist. Wenn der vorherige Codeblock beispielsweise die Lambda-Anforderung zur Nachbearbeitung ist, befindet sich die folgende Annotationsdatei unter `s3://amzn-s3-demo-bucket/annotations.json`.

Jeder Parameter ist in der folgenden Aufzählungsliste beschrieben.

**Example einer Annotationsdatei**  

```
[
    {
        "datasetObjectId": <string>,
        "dataObject": {
            "s3Uri": <string>,
            "content": <string>
        },
        "annotations": [{
            "workerId": <string>,
            "annotationData": {
                "content": <string>,
                "s3Uri": <string>
            }
       }]
    }
]
```
+ `datasetObjectId`(Zeichenfolge): Identifiziert eine eindeutige ID, die Ground Truth jedem Datenobjekt zuweist, das Sie an den Kennzeichnungsauftrag senden.
+ `dataObject`(JSON-Objekt): Das Datenobjekt, das beschriftet wurde. Wenn das Datenobjekt in der Eingabemanifestdatei enthalten ist und mithilfe des `source`-Schlüssels (z .B. einer Zeichenfolge) identifiziert wird, enthält `dataObject` einen `content`-Schlüssel, der das Datenobjekt identifiziert. Andernfalls wird der Speicherort des Datenobjekts (z. B. ein Link oder ein S3-URI) mit `s3Uri` identifiziert.
+ `annotations` (Liste der JSON-Objekte): Diese Liste enthält ein einzelnes JSON-Objekt für jede Anmerkung, die von Workern für dieses `dataObject` eingereicht wurde. Ein einzelnes JSON-Objekt enthält eine eindeutige `workerId`, die zur Identifizierung des Workers verwendet werden kann, der diese Anmerkung eingereicht hat. Der `annotationData`-Schlüssel enthält eines der folgenden Elemente:
  + `content`(Zeichenfolge): Enthält die Annotationsdaten. 
  + `s3Uri`(Zeichenfolge): Enthält einen S3-URI, der den Speicherort der Annotationsdaten identifiziert.

Die folgende Tabelle enthält Beispiele für den Inhalt, den Sie in der Nutzlast für verschiedene Arten von Anmerkungen finden können.

------
#### [ Named Entity Recognition Payload ]

```
[
    {
      "datasetObjectId": "1",
      "dataObject": {
        "content": "Sift 3 cups of flour into the bowl."
      },
      "annotations": [
        {
          "workerId": "private.us-west-2.ef7294f850a3d9d1",
          "annotationData": {
            "content": "{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":4,\"label\":\"verb\",\"startOffset\":0},{\"endOffset\":6,\"label\":\"number\",\"startOffset\":5},{\"endOffset\":20,\"label\":\"object\",\"startOffset\":15},{\"endOffset\":34,\"label\":\"object\",\"startOffset\":30}]}}"
          }
        }
      ]
    }
]
```

------
#### [ Semantic Segmentation Payload ]

```
[
    {
      "datasetObjectId": "2",
      "dataObject": {
        "s3Uri": "s3://amzn-s3-demo-bucket/gt-input-data/images/bird3.jpg"
      },
      "annotations": [
        {
          "workerId": "private.us-west-2.ab1234c5678a919d0",
          "annotationData": {
            "content": "{\"crowd-semantic-segmentation\":{\"inputImageProperties\":{\"height\":2000,\"width\":3020},\"labelMappings\":{\"Bird\":{\"color\":\"#2ca02c\"}},\"labeledImage\":{\"pngImageData\":\"iVBOR...\"}}}"
          }
        }
      ]
    }
  ]
```

------
#### [ Bounding Box Payload ]

```
[
    {
      "datasetObjectId": "0",
      "dataObject": {
        "s3Uri": "s3://amzn-s3-demo-bucket/gt-input-data/images/bird1.jpg"
      },
      "annotations": [
        {
          "workerId": "private.us-west-2.ab1234c5678a919d0",
          "annotationData": {
            "content": "{\"boundingBox\":{\"boundingBoxes\":[{\"height\":2052,\"label\":\"Bird\",\"left\":583,\"top\":302,\"width\":1375}],\"inputImageProperties\":{\"height\":2497,\"width\":3745}}}"
          }
        }
      ]
    }
 ]
```

------

Ihre Lambda-Funktion zur Nachbereitung kann eine Logik ähnlich der folgenden enthalten, um alle in der Anforderung enthaltenen Anmerkungen zu durchlaufen und darauf zuzugreifen. [Ein vollständiges Beispiel finden Sie unter [annotation\$1consolidation\$1lambda.py im Repository](https://github.com/aws-samples/aws-sagemaker-ground-truth-recipe/blob/master/aws_sagemaker_ground_truth_sample_lambda/annotation_consolidation_lambda.py) -recipe. aws-sagemaker-ground-truth](https://github.com/aws-samples/aws-sagemaker-ground-truth-recipe) GitHub In diesem GitHub Beispiel müssen Sie Ihre eigene Logik zur Konsolidierung von Anmerkungen hinzufügen. 

```
for i in range(len(annotations)):
    worker_id = annotations[i]["workerId"]
    annotation_content = annotations[i]['annotationData'].get('content')
    annotation_s3_uri = annotations[i]['annotationData'].get('s3uri')
    annotation = annotation_content if annotation_s3_uri is None else s3_client.get_object_from_s3(
        annotation_s3_uri)
    annotation_from_single_worker = json.loads(annotation)

    print("{} Received Annotations from worker [{}] is [{}]"
            .format(log_prefix, worker_id, annotation_from_single_worker))
```

**Tipp**  
Wenn Sie Konsolidierungsalgorithmen für die Daten ausführen, können Sie einen AWS -Datenbankservice verwenden, um Ergebnisse zu speichern, oder Sie können die verarbeiteten Ergebnisse an Ground Truth zurückgeben. Die Daten, die Sie an Ground Truth zurückgeben, werden in konsolidierten Annotationsmanifesten im S3-Bucket gespeichert, der während der Konfiguration des Kennzeichnungsauftrags für die Ausgabe angegeben wurde.

Im Gegenzug benötigt Ground Truth eine Antwort, die wie folgt formatiert ist:

**Example von erwarteten Rückgabedaten**  

```
[
   {        
        "datasetObjectId": <string>,
        "consolidatedAnnotation": {
            "content": {
                "<labelattributename>": {
                    # ... label content
                }
            }
        }
    },
   {        
        "datasetObjectId": <string>,
        "consolidatedAnnotation": {
            "content": {
                "<labelattributename>": {
                    # ... label content
                }
            }
        }
    }
    .
    .
    .
]
```
An diesem Punkt befinden sich alle Daten, die Sie an Ihren S3-Bucket senden, außer der `datasetObjectId`, im `content`-Objekt.

Wenn Sie Anmerkungen in `content` zurückgeben, führt dies zu einem Eintrag im Ausgabemanifest Ihres Auftrags, der wie folgt aussieht:

**Example eines Kennzeichnungsformats im Ausgabemanifest**  

```
{  "source-ref"/"source" : "<s3uri or content>", 
   "<labelAttributeName>": {
        # ... label content from you
    },   
   "<labelAttributeName>-metadata": { # This will be added by Ground Truth
        "job_name": <labelingJobName>,
        "type": "groundTruth/custom",
        "human-annotated": "yes", 
        "creation_date": <date> # Timestamp of when received from Post-labeling Lambda
    }
}
```

Aufgrund der potenziell komplexen Natur einer benutzerdefinierten Vorlage und der Daten, die sie sammelt, bietet Ground Truth keine weitere Verarbeitung der Daten oder Einblicke in diese.

# Fügen Sie die erforderlichen Berechtigungen für die Verwendung AWS Lambda mit Ground Truth hinzu
<a name="sms-custom-templates-step3-lambda-permissions"></a>

Möglicherweise müssen Sie einige oder alle der folgenden Optionen konfigurieren, um AWS Lambda mit Ground Truth zu erstellen und zu verwenden. 
+ Sie müssen einer IAM-Rolle oder einem IAM-Benutzer (zusammen eine IAM-Entität) die Erlaubnis erteilen, die Lambda-Funktionen vor und nach der Anmerkung zu erstellen und sie bei der Erstellung des Labeling-Jobs auszuwählen. AWS Lambda
+ Die bei der Konfiguration des Kennzeichnungsauftrags angegebene IAM-Ausführungsrolle benötigt die Erlaubnis, die Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung aufzurufen. 
+ Die Lambda-Funktionen zur Nachbearbeitung benötigen möglicherweise eine Zugriffsberechtigung für Amazon S3.

In den folgenden Abschnitten erfahren Sie, wie Sie die IAM-Entitäten erstellen und die oben beschriebenen Berechtigungen erteilen.

**Topics**
+ [Erteilen Sie die Berechtigung zum Erstellen und Auswählen einer Funktion AWS Lambda](#sms-custom-templates-step3-postlambda-create-perms)
+ [Erteilen Sie der IAM-Ausführungsrolle die Berechtigung zum Aufrufen von Funktionen AWS Lambda](#sms-custom-templates-step3-postlambda-execution-role-perms)
+ [Erteilen von Lambda-Berechtigungen zur Nachbearbeitung für den Zugriff auf Anmerkungen](#sms-custom-templates-step3-postlambda-perms)

## Erteilen Sie die Berechtigung zum Erstellen und Auswählen einer Funktion AWS Lambda
<a name="sms-custom-templates-step3-postlambda-create-perms"></a>

Wenn Sie keine detaillierten Berechtigungen für die Entwicklung von Lambda-Funktionen vor und nach der Annotation benötigen, können Sie die AWS verwaltete Richtlinie `AWSLambda_FullAccess` an einen Benutzer oder eine Rolle anhängen. Diese Richtlinie gewährt umfassende Berechtigungen zur Nutzung aller Lambda-Funktionen sowie zur Durchführung von Aktionen in anderen AWS Diensten, mit denen Lambda interagiert.

Informationen zur Erstellung einer detaillierteren Richtlinie für sicherheitsrelevante Anwendungsfälle finden Sie in der Dokumentation [Identity-based IAM policies for Lambda im to AWS Lambda Developer Guide, um zu erfahren, wie Sie eine IAM-Richtlinie](https://docs.aws.amazon.com/lambda/latest/dg/access-control-identity-based.html) erstellen, die zu Ihrem Anwendungsfall passt. 

**Richtlinien für die Verwendung der Lambda-Konsole**

Wenn Sie einer IAM-Entität die Berechtigung zur Verwendung der Lambda-Konsole erteilen möchten, finden Sie weitere Informationen unter [Verwenden der Lambda-Konsole im AWS Lambda Entwicklerhandbuch](https://docs.aws.amazon.com/lambda/latest/dg/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-console).

Wenn Sie möchten, dass der Benutzer über die AWS Serverless Application Repository in der Lambda-Konsole auf die Starterfunktionen vor und nach der Anmerkung von Ground Truth zugreifen und diese bereitstellen kann, müssen Sie außerdem angeben, *`<aws-region>`* wo Sie die Funktionen bereitstellen möchten (dies sollte dieselbe AWS Region sein, in der der Labeling-Job erstellt wurde), und der IAM-Rolle die folgende Richtlinie hinzufügen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "serverlessrepo:ListApplicationVersions",
                "serverlessrepo:GetApplication",
                "serverlessrepo:CreateCloudFormationTemplate"
            ],
            "Resource": "arn:aws:serverlessrepo:us-east-1:838997950401:applications/aws-sagemaker-ground-truth-recipe"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "serverlessrepo:SearchApplications",
            "Resource": "*"
        }
    ]
}
```

------

**Richtlinien zur Anzeige von Lambda-Funktionen in der Ground-Truth-Konsole**

Um einer IAM-Entität die Erlaubnis zu erteilen, Lambda-Funktionen in der Ground-Truth-Konsole anzuzeigen, wenn der Benutzer einen benutzerdefinierten Kennzeichnungsauftrag erstellt, muss die Entität über die unter [Erteilen Sie IAM-Berechtigungen zur Nutzung der Amazon SageMaker Ground Truth Console](sms-security-permission-console-access.md) beschriebenen Berechtigungen verfügen, einschließlich der im Abschnitt [Workflow-Berechtigungen für benutzerdefinierte Kennzeichnungsaufträge](sms-security-permission-console-access.md#sms-security-permissions-custom-workflow) beschriebenen Berechtigungen.

## Erteilen Sie der IAM-Ausführungsrolle die Berechtigung zum Aufrufen von Funktionen AWS Lambda
<a name="sms-custom-templates-step3-postlambda-execution-role-perms"></a>

Wenn Sie die von IAM verwaltete Richtlinie [AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)zur IAM-Ausführungsrolle hinzufügen, die zur Erstellung des Labeling-Jobs verwendet wurde, ist diese Rolle berechtigt, Lambda-Funktionen mit einer der folgenden Zeichenfolgen im Funktionsnamen aufzulisten und aufzurufen:`GtRecipe`,,`SageMaker`, `Sagemaker` oder. `sagemaker` `LabelingFunction` 

Wenn die Namen der Lambda-Funktionen zur Vorverarbeitung oder zur Nachbearbeitung keinen der Begriffe aus dem vorherigen Absatz enthalten oder wenn Sie präzisere Berechtigungen benötigen als die in der von `AmazonSageMakerGroundTruthExecution` verwalteten Richtlinie, können Sie eine Richtlinie hinzufügen, die der folgenden ähnelt, um der Ausführungsrolle die Berechtigung zu erteilen, Funktionen zur Vorverarbeitung und zur Nachbearbeitung aufzurufen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "lambda:InvokeFunction",
            "Resource": [
                "arn:aws:lambda:us-east-1:111122223333:function:<pre-annotation-lambda-name>",
                "arn:aws:lambda:us-east-1:111122223333:function:<post-annotation-lambda-name>"
            ]
        }
    ]
}
```

------

## Erteilen von Lambda-Berechtigungen zur Nachbearbeitung für den Zugriff auf Anmerkungen
<a name="sms-custom-templates-step3-postlambda-perms"></a>

Wie unter [Lambda zur Nachbearbeitung](sms-custom-templates-step3-lambda-requirements.md#sms-custom-templates-step3-postlambda) beschrieben, enthält die Lambda-Anforderung zur Nachbearbeitung den Speicherort der Annotationsdaten in Amazon S3. Dieser Ort wird durch die `s3Uri`-Zeichenfolge im Objekt`payload` identifiziert. Um die Anmerkungen bei Eingang zu verarbeiten, selbst für eine einfache Pass-Through-Funktion, müssen Sie die notwendigen Berechtigungen für die [Lambda-Ausführungsrolle](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) zur Nachbearbeitung zuweisen, um Dateien aus Ihrem S3-Bucket zu lesen.

Es gibt viele Möglichkeiten, Ihr Lambda für den Zugriff auf Annotationsdaten in Amazon S3 zu konfigurieren. Zwei gängige Methoden sind:
+ Erlauben Sie der Lambda-Ausführungsrolle, die SageMaker KI-Ausführungsrolle anzunehmen, die `roleArn` in der Lambda-Anfrage nach der Anmerkung identifiziert wurde. Diese SageMaker KI-Ausführungsrolle wird zur Erstellung des Labeling-Jobs verwendet und hat Zugriff auf den Amazon S3 S3-Ausgabe-Bucket, in dem die Annotationsdaten gespeichert sind.
+ Erteilen Sie der Lambda-Ausführungsrolle die Berechtigung für den direkten Zugriff auf den Amazon-S3-Ausgabe-Bucket.

In den folgenden Abschnitten erfahren Sie, wie Sie diese Optionen konfigurieren. 

**Lambda die Erlaubnis erteilen, die SageMaker AI-Ausführungsrolle zu übernehmen**

Damit eine Lambda-Funktion eine SageMaker KI-Ausführungsrolle übernehmen kann, müssen Sie der Ausführungsrolle der Lambda-Funktion eine Richtlinie zuordnen und die Vertrauensstellung der SageMaker KI-Ausführungsrolle so ändern, dass Lambda sie übernehmen kann.

1. [Fügen Sie der Ausführungsrolle Ihrer Lambda-Funktion die folgende IAM-Richtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) hinzu, um die in identifizierte SageMaker KI-Ausführungsrolle anzunehmen. `Resource` Ersetzen Sie `222222222222` durch eine [AWS -Konto-ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html). Ersetzen Sie `sm-execution-role` durch den Namen der übernommenen Rolle.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": {
           "Effect": "Allow",
           "Action": "sts:AssumeRole",
           "Resource": "arn:aws:iam::222222222222:role/sm-execution-role"
       }
   }
   ```

------

1. [Ändern Sie die Vertrauensrichtlinie](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-managingrole_edit-trust-policy) der SageMaker KI-Ausführungsrolle so, dass sie Folgendes umfasst. `Statement` Ersetzen Sie `222222222222` durch eine [AWS -Konto-ID](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html). Ersetzen Sie `my-lambda-execution-role` durch den Namen der übernommenen Rolle.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::222222222222:role/my-lambda-execution-role"
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

**Gewähren der Lambda-Ausführungsrolle die Berechtigung für den Zugriff auf S3**

Sie können der Lambda-Funktionsausführungsrolle zur Nachbearbeitung eine Richtlinie hinzufügen, die der folgenden ähnelt, um ihr S3-Leseberechtigungen zu erteilen. *amzn-s3-demo-bucket*Ersetzen Sie es durch den Namen des Ausgabe-Buckets, den Sie beim Erstellen eines Labeling-Jobs angeben.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
        }
    ]
}
```

------

Gehen Sie wie folgt vor, um einer Lambda-Ausführungsrolle in der Lambda-Konsole S3-Leseberechtigungen hinzuzufügen. 

**Fügen Sie Lambda zur Nachbearbeitung S3-Leseberechtigungen hinzu:**

1. Öffnen Sie die Seite [https://console.aws.amazon.com/lambda/home#/functions](https://console.aws.amazon.com/lambda/home#/functions) in der Lambda-Konsole.

1. Klicken Sie auf den Namen der Funktion zur Nachbearbeitung.

1. Wählen Sie **Konfiguration** und anschließend **Berechtigungen** aus.

1. Wählen Sie den **Rollennamen** aus. Die Übersichtsseite für diese Rolle wird in der IAM-Konsole auf einer neuen Registerkarte geöffnet. 

1. Wählen Sie **Richtlinien anfügen** aus.

1. Führen Sie eine der folgenden Aktionen aus:
   + Suchen Sie und wählen Sie **`AmazonS3ReadOnlyAccess`** aus, um der Funktion die Berechtigung zum Lesen aller Buckets und Objekte im Konto zu erteilen. 
   + Wenn Sie präzisere Berechtigungen benötigen, wählen Sie **Richtlinie erstellen** aus und verwenden Sie das Richtlinienbeispiel aus dem vorherigen Abschnitt, um eine Richtlinie zu erstellen. Beachten Sie, dass Sie nach dem Erstellen der Richtlinie zur Seite mit der Zusammenfassung der Ausführungsrolle zurückkehren müssen.

1. Wenn Sie die `AmazonS3ReadOnlyAccess`-verwaltete Richtlinie verwendet haben, wählen Sie **Richtlinie anfügen** aus. 

   Wenn Sie eine neue Richtlinie erstellt haben, kehren Sie zur Seite mit der Zusammenfassung der Lambda-Ausführungsrolle zurück und fügen Sie die soeben erstellte Richtlinie an.

# Erstellen von Lambda-Funktionen mithilfe von Ground-Truth-Vorlagen
<a name="sms-custom-templates-step3-lambda-create"></a>

Sie können eine Lambda-Funktion mit der Lambda-Konsole AWS CLI, dem oder einem AWS SDK in einer unterstützten Programmiersprache Ihrer Wahl erstellen. Weitere Informationen zu den einzelnen Optionen finden Sie im AWS Lambda Entwicklerhandbuch:
+ Informationen zum Erstellen einer Lambda-Funktion mithilfe der Konsole finden Sie unter [Erstellen einer Lambda-Funktion mit der Konsole](https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html).
+ Informationen zum Erstellen einer Lambda-Funktion mit dem AWS CLI finden Sie unter [Verwenden von AWS Lambda mit der AWS Befehlszeilenschnittstelle](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-awscli.html).
+ Wählen Sie den entsprechenden Abschnitt im Inhaltsverzeichnis aus, um mehr über die Arbeit mit Lambda in der Sprache Ihrer Wahl zu erfahren. Wählen Sie beispielsweise [Verwenden von Python](https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html) aus, um mehr über die Verwendung von Lambda mit AWS SDK für Python (Boto3) zu erfahren.

*Ground Truth stellt Vorlagen für die Vor- und Nachkommentierung nach einem AWS Serverless Application Repository (SAR-) Rezept zur Verfügung.* Gehen Sie wie folgt vor, um das Ground-Truth-Rezept in der Lambda-Konsole auszuwählen.

**Verwenden Sie das Ground-Truth-SAR-Rezept, um Lambda-Funktionen zur Vorverarbeitung und Nachbearbeitung zu erstellen:**

1. Öffnen Sie die Seite [https://console.aws.amazon.com/lambda/home#/functions](https://console.aws.amazon.com/lambda/home#/functions) der Lambda-Konsole.

1. Wählen Sie **Funktion erstellen**.

1. Wählen Sie **Serverloses App-Repository durchsuchen** aus.

1. Geben Sie in das Suchtextfeld **aws-sagemaker-ground-truth-recipe** ein und wählen Sie die App aus.

1. Wählen Sie **Bereitstellen** aus. Die Bereitstellung der App kann einige Minuten dauern. 

   Sobald die App bereitgestellt ist, werden zwei Funktionen im Bereich **Funktionen** der Lambda-Konsole angezeigt: `serverlessrepo-aws-sagema-GtRecipePreHumanTaskFunc-<id>` und `serverlessrepo-aws-sagema-GtRecipeAnnotationConsol-<id>`. 

1. Wählen Sie eine dieser Funktionen aus und fügen Sie Ihre benutzerdefinierte Logik im Abschnitt **Code** hinzu.

1. Wenn Sie alle Änderungen vorgenommen haben, wählen Sie **Bereitstellen** aus, um sie bereitzustellen.

# Testen der Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung
<a name="sms-custom-templates-step3-lambda-test"></a>

Sie können Ihre Lambda-Funktionen zur Vorverarbeitung und zur Nachbearbeitung in der Lambda-Konsole testen. Wenn Sie ein neuer Benutzer von Lambda sind, können Sie mithilfe des Tutorials [Erstellen einer Lambda-Funktion](https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html#gettingstarted-zip-function) im AWS Lambda -Entwicklerhandbuch lernen, wie Sie Ihre Lambda-Funktionen in der Konsole testen oder *aufrufen*. In den Abschnitten auf dieser Seite erfahren Sie, wie Sie die über eine AWS Serverless Application Repository (SAR) bereitgestellten Ground Truth-Vorlagen vor und nach der Anmerkung testen können. 

**Topics**
+ [Voraussetzungen](#sms-custom-templates-step3-lambda-test-pre)
+ [Testen der Lambda-Funktion zur Vorverarbeitung](#sms-custom-templates-step3-lambda-test-pre-annotation)
+ [Testen der Lambda-Funktion zur Nachbearbeitung](#sms-custom-templates-step3-lambda-test-post-annotation)

## Voraussetzungen
<a name="sms-custom-templates-step3-lambda-test-pre"></a>

Um die auf dieser Seite beschriebenen Tests verwenden zu können, müssen Sie wie folgt vorgehen.
+ Sie benötigen Zugriff auf die Lambda-Konsole und Berechtigungen, Lambda-Funktionen zu erstellen und aufzurufen. Informationen zum Einrichten dieser Berechtigungen finden Sie unter [Erteilen Sie die Berechtigung zum Erstellen und Auswählen einer Funktion AWS Lambda](sms-custom-templates-step3-lambda-permissions.md#sms-custom-templates-step3-postlambda-create-perms).
+ Wenn Sie das Ground-Truth-SAR-Rezept nicht bereitgestellt haben, verwenden Sie dazu das Verfahren in [Erstellen von Lambda-Funktionen mithilfe von Ground-Truth-Vorlagen](sms-custom-templates-step3-lambda-create.md).
+ Um die Lambda-Funktion zur Nachbearbeitung zu testen, benötigen Sie in Amazon S3 eine Datendatei mit Beispiel-Annotationsdaten. Für einen einfachen Test können Sie den folgenden Code kopieren und in eine Datei einfügen, ihn unter `sample-annotations.json` speichern und [diese Datei auf Amazon S3 hochladen](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html). Notieren Sie sich den S3-URI dieser Datei – Sie benötigen diese Informationen, um den Lambda-Test nach der Annotation zu konfigurieren.

  ```
  [{"datasetObjectId":"0","dataObject":{"content":"To train a machine learning model, you need a large, high-quality, labeled dataset. Ground Truth helps you build high-quality training datasets for your machine learning models."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":8,\"label\":\"verb\",\"startOffset\":3},{\"endOffset\":27,\"label\":\"adjective\",\"startOffset\":11},{\"endOffset\":33,\"label\":\"object\",\"startOffset\":28},{\"endOffset\":51,\"label\":\"adjective\",\"startOffset\":46},{\"endOffset\":65,\"label\":\"adjective\",\"startOffset\":53},{\"endOffset\":74,\"label\":\"adjective\",\"startOffset\":67},{\"endOffset\":82,\"label\":\"adjective\",\"startOffset\":75},{\"endOffset\":102,\"label\":\"verb\",\"startOffset\":97},{\"endOffset\":112,\"label\":\"verb\",\"startOffset\":107},{\"endOffset\":125,\"label\":\"adjective\",\"startOffset\":113},{\"endOffset\":134,\"label\":\"adjective\",\"startOffset\":126},{\"endOffset\":143,\"label\":\"object\",\"startOffset\":135},{\"endOffset\":169,\"label\":\"adjective\",\"startOffset\":153},{\"endOffset\":176,\"label\":\"object\",\"startOffset\":170}]}}"}}]},{"datasetObjectId":"1","dataObject":{"content":"Sift 3 cups of flour into the bowl."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":4,\"label\":\"verb\",\"startOffset\":0},{\"endOffset\":6,\"label\":\"number\",\"startOffset\":5},{\"endOffset\":20,\"label\":\"object\",\"startOffset\":15},{\"endOffset\":34,\"label\":\"object\",\"startOffset\":30}]}}"}}]},{"datasetObjectId":"2","dataObject":{"content":"Jen purchased 10 shares of the stock on Janurary 1st, 2020."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":3,\"label\":\"person\",\"startOffset\":0},{\"endOffset\":13,\"label\":\"verb\",\"startOffset\":4},{\"endOffset\":16,\"label\":\"number\",\"startOffset\":14},{\"endOffset\":58,\"label\":\"date\",\"startOffset\":40}]}}"}}]},{"datasetObjectId":"3","dataObject":{"content":"The narrative was interesting, however the character development was weak."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":29,\"label\":\"adjective\",\"startOffset\":18},{\"endOffset\":73,\"label\":\"adjective\",\"startOffset\":69}]}}"}}]}]
  ```
+ Sie müssen die Anweisungen unter verwenden[Erteilen von Lambda-Berechtigungen zur Nachbearbeitung für den Zugriff auf Anmerkungen](sms-custom-templates-step3-lambda-permissions.md#sms-custom-templates-step3-postlambda-perms), um der Ausführungsrolle Ihrer Lambda-Funktion nach der Annotation die Berechtigung zu erteilen, die SageMaker KI-Ausführungsrolle anzunehmen, die Sie zum Erstellen des Labeling-Jobs verwenden. Die Lambda-Funktion nach der Annotation verwendet die SageMaker AI-Ausführungsrolle, um auf die Annotationsdatendatei in `sample-annotations.json` S3 zuzugreifen.



## Testen der Lambda-Funktion zur Vorverarbeitung
<a name="sms-custom-templates-step3-lambda-test-pre-annotation"></a>

Verwenden Sie das folgende Verfahren, um die Lambda-Funktion vor der Annotation zu testen, die bei der Bereitstellung des Ground Truth AWS Serverless Application Repository (SAR) -Rezepts erstellt wurde. 

**Testen der Lambda-Funktion zur Vorverarbeitung des Ground-Truth-SAR-Rezepts**

1. Öffnen Sie die Seite [https://console.aws.amazon.com/lambda/home#/functions](https://console.aws.amazon.com/lambda/home#/functions) in der Lambda-Konsole.

1. Wählen Sie die Funktion zur Vorverarbeitung, die aus dem Ground-Truth-SAR-Rezept bereitgestellt wurde. Der Name dieser Funktion ist `serverlessrepo-aws-sagema-GtRecipePreHumanTaskFunc-<id>` ähnlich.

1. Wählen Sie im Abschnitt **Codequelle** den Pfeil neben **Test** aus.

1. Wählen Sie **Testereignis konfigurieren**.

1. Lassen Sie die Option **Neues Testereignis erstellen** ausgewählt.

1. Wählen Sie unter **Eventvorlage** die Option **SageMakerGround Truth** aus PreHumanTask. 

1. Geben Sie Ihrem Test einen **Ereignisnamen.**

1. Wählen Sie **Erstellen** aus.

1. Klicken Sie erneut auf den Pfeil neben **Test**. Sie sollten nun sehen, dass der von Ihnen erstellte Test ausgewählt ist, was durch einen Punkt neben dem Namen des Ereignisses gekennzeichnet ist. Wenn er nicht ausgewählt ist, wählen Sie ihn aus. 

1. Wählen Sie **Test** aus, um den Test auszuführen. 

Nachdem Sie den Test ausgeführt haben, können Sie die **Ausführungsergebnisse** sehen. Unter **Funktionsprotokolle** sollten Sie eine Antwort ähnlich der folgenden sehen:

```
START RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f Version: $LATEST
Received event: {
  "version": "2018-10-16",
  "labelingJobArn": "arn:aws:sagemaker:us-east-2:123456789012:labeling-job/example-job",
  "dataObject": {
    "source-ref": "s3://sagemakerexample/object_to_annotate.jpg"
  }
}
{'taskInput': {'taskObject': 's3://sagemakerexample/object_to_annotate.jpg'}, 'isHumanAnnotationRequired': 'true'}
END RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f
REPORT RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f	Duration: 0.42 ms	Billed Duration: 1 ms	Memory Size: 128 MB	Max Memory Used: 43 MB
```

In dieser Antwort können wir sehen, dass die Ausgabe der Lambda-Funktion der erforderlichen Antwortsyntax zur Vorverarbeitung entspricht:

```
{'taskInput': {'taskObject': 's3://sagemakerexample/object_to_annotate.jpg'}, 'isHumanAnnotationRequired': 'true'}
```

## Testen der Lambda-Funktion zur Nachbearbeitung
<a name="sms-custom-templates-step3-lambda-test-post-annotation"></a>

Verwenden Sie das folgende Verfahren, um die Lambda-Funktion nach der Annotation zu testen, die bei der Bereitstellung des Ground Truth AWS Serverless Application Repository (SAR) -Rezepts erstellt wurde. 

**Testen der Lambda-Funktion zur Nachbearbeitung des Ground-Truth-SAR-Rezepts**

1. Öffnen Sie die Seite [https://console.aws.amazon.com/lambda/home#/functions](https://console.aws.amazon.com/lambda/home#/functions) in der Lambda-Konsole.

1. Wählen Sie die Funktion zur Nachbearbeitung, die aus dem Ground-Truth-SAR-Rezept bereitgestellt wurde. Der Name dieser Funktion ist `serverlessrepo-aws-sagema-GtRecipeAnnotationConsol-<id>` ähnlich.

1. Wählen Sie im Abschnitt **Codequelle** den Pfeil neben **Test** aus.

1. Wählen Sie **Testereignis konfigurieren**.

1. Lassen Sie die Option **Neues Testereignis erstellen** ausgewählt.

1. Wählen Sie unter **Eventvorlage** die Option **SageMakerGround Truth** aus AnnotationConsolidation.

1. Geben Sie Ihrem Test einen **Ereignisnamen.**

1. Ändern Sie den bereitgestellten Vorlagencode folgendermaßen:
   + Ersetzen Sie den Amazon-Ressourcennamen (ARN) durch den ARN der SageMaker KI-Ausführungsrolle, `roleArn` mit der Sie den Labeling-Job erstellt haben.
   + Ersetzen Sie den S3-URI in `s3Uri` durch den URI der Datei `sample-annotations.json`, die Sie Amazon S3 hinzugefügt haben.

   Nachdem Sie diese Änderungen vorgenommen haben, sollte Ihr Test wie folgt aussehen:

   ```
   {
     "version": "2018-10-16",
     "labelingJobArn": "arn:aws:sagemaker:us-east-2:123456789012:labeling-job/example-job",
     "labelAttributeName": "example-attribute",
     "roleArn": "arn:aws:iam::222222222222:role/sm-execution-role",
     "payload": {
       "s3Uri": "s3://your-bucket/sample-annotations.json"
     }
   }
   ```

1. Wählen Sie **Erstellen** aus.

1. Klicken Sie erneut auf den Pfeil neben **Test**. Sie sollten nun sehen, dass der von Ihnen erstellte Test ausgewählt ist, was durch einen Punkt neben dem Namen des Ereignisses gekennzeichnet ist. Wenn er nicht ausgewählt ist, wählen Sie ihn aus. 

1. Wählen Sie den **Test** aus, um den Test auszuführen. 

Nachdem Sie den Test ausgeführt haben, sollten Sie einen Abschnitt `-- Consolidated Output --` in den **Funktionsprotokollen** sehen, der eine Liste aller enthaltenen `sample-annotations.json`-Anmerkungen enthält.

# Demo-Vorlage: Kommentieren von Bildern mit `crowd-bounding-box`
<a name="sms-custom-templates-step2-demo1"></a>

Wenn Sie in der Amazon SageMaker Ground Truth Konsole eine benutzerdefinierte Vorlage als Aufgabentyp verwenden möchten, gelangen Sie zum **Aufgabenbereich Benutzerdefinierte Kennzeichnung**. Sie können aus mehreren Basisvorlagen auswählen. Die Vorlagen behandeln einige der gängigsten Aufgaben und zeigen Ihnen Beispiele, die Ihnen bei der Vorlagenerstellung für die benutzerdefinierten Labeling-Aufgaben behilflich sind. Wenn Sie die Konsole nicht oder als zusätzliche Ressource verwenden, finden Sie unter [Amazon SageMaker AI Ground Truth Sample Task](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis) ein Repository mit Demo-Vorlagen UIs für eine Vielzahl von Aufgabentypen für Labeling-Jobs.

Diese Demonstration funktioniert mit der **BoundingBox**Vorlage. Die Demonstration funktioniert auch mit den AWS Lambda Funktionen, die für die Verarbeitung Ihrer Daten vor und nach der Aufgabe erforderlich sind. Suchen Sie im obigen Github-Repository nach Vorlagen, die mit AWS Lambda Funktionen funktionieren, `{{ task.input.<property name> }}` in der Vorlage.

**Topics**
+ [Benutzerdefinierte Vorlage des Starter-Begrenzungsrahmens](#sms-custom-templates-step2-demo1-base-template)
+ [Ihre eigene benutzerdefinierte Vorlage eines Begrenzungsrahmens](#sms-custom-templates-step2-demo1-your-own-template)
+ [Ihre Manifestdatei](#sms-custom-templates-step2-demo1-manifest)
+ [Ihre Lambda-Funktion zur Vorverarbeitung](#sms-custom-templates-step2-demo1-pre-annotation)
+ [Ihre Lambda-Funktion zur Nachbereitung](#sms-custom-templates-step2-demo1-post-annotation)
+ [Die Ausgabe Ihres Kennzeichnungsauftrags](#sms-custom-templates-step2-demo1-job-output)

## Benutzerdefinierte Vorlage des Starter-Begrenzungsrahmens
<a name="sms-custom-templates-step2-demo1-base-template"></a>

Dies ist die bereitgestellte Starter-Begrenzungsrahmenvorlage.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-bounding-box
    name="boundingBox"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="{{ task.input.header }}"
    labels="{{ task.input.labels | to_json | escape }}"
  >

    <!-- The <full-instructions> tag is where you will define the full instructions of your task. -->
    <full-instructions header="Bounding Box Instructions" >
      <p>Use the bounding box tool to draw boxes around the requested target of interest:</p>
      <ol>
        <li>Draw a rectangle using your mouse over each instance of the target.</li>
        <li>Make sure the box does not cut into the target, leave a 2 - 3 pixel margin</li>
        <li>
          When targets are overlapping, draw a box around each object,
          include all contiguous parts of the target in the box.
          Do not include parts that are completely overlapped by another object.
        </li>
        <li>
          Do not include parts of the target that cannot be seen,
          even though you think you can interpolate the whole shape of the target.
        </li>
        <li>Avoid shadows, they're not considered as a part of the target.</li>
        <li>If the target goes off the screen, label up to the edge of the image.</li>
      </ol>
    </full-instructions>

    <!-- The <short-instructions> tag allows you to specify instructions that are displayed in the left hand side of the task interface.
    It is a best practice to provide good and bad examples in this section for quick reference. -->
    <short-instructions>
      Use the bounding box tool to draw boxes around the requested target of interest.
    </short-instructions>
  </crowd-bounding-box>
</crowd-form>
```

Die benutzerdefinierten Vorlagen verwenden die [Liquid template language (Liquid-Vorlagensprache)](https://shopify.github.io/liquid/) und jedes dieser Elemente zwischen doppelten geschweiften Klammern ist eine Variable. Die AWS Lambda Pre-Annotationsfunktion sollte ein Objekt mit dem Namen bereitstellen, `taskInput` und auf die Eigenschaften dieses Objekts kann wie `{{ task.input.<property name> }}` in Ihrer Vorlage zugegriffen werden.

## Ihre eigene benutzerdefinierte Vorlage eines Begrenzungsrahmens
<a name="sms-custom-templates-step2-demo1-your-own-template"></a>

Angenommen, Sie besitzen eine große Sammlung von Tierfotos und kennen aufgrund eines früheren Bildklassifizierungsauftrags, um welche Tierart es sich in den Bildern handelt. Sie möchten nun einen Begrenzungsrahmen darum ziehen.

Das Basisbeispiel umfasst drei Variablen: `taskObject`, `header` und `labels`.

Jede von ihnen wird in verschiedenen Teilen des Begrenzungsrahmens repräsentiert.
+ `taskObject` ist eine HTTP(S)-URL oder S3-URI für das Foto, das mit Anmerkungen versehen werden soll. Das hinzugefügte `| grant_read_access` ist ein Filter, der eine S3-URI in eine HTTPS-URL mit kurzlebigem Zugriff auf diese Ressource umwandelt. Wenn Sie eine HTTP(S)-URL verwenden, ist es nicht erforderlich.
+ `header` ist der Text oberhalb des Fotos, das gekennzeichnet werden soll, z. B. "Ziehen Sie einen Auswahlrahmen um den Vogel auf dem Foto".
+ `labels` ist ein Array, das als `['item1', 'item2', ...]` dargestellt wird. Dies sind Kennzeichnungen, die von den Workern den verschiedenen Auswahlrahmen zugeordnet werden können, die sie ziehen. Sie können eine oder mehrere anlegen.

Jeder Variablenname stammt aus dem JSON-Objekt in der Antwort aus Ihrer Vorverarbeitung für Lambda. Die Namen oben sind lediglich vorgeschlagen. Verwenden Sie die Variablennamen, die Sie für sinnvoll halten und die die Lesbarkeit des Codes innerhalb Ihres Teams fördern.

**Verwenden Sie Variablen nur bei Bedarf**  
Wenn sich ein Feld nicht ändert, können Sie diese Variable aus der Vorlage entfernen und sie durch diesen Text ersetzen, andernfalls müssen Sie den Text als Wert in jedem Objekt in Ihrem Manifest wiederholen.

**Example : Benutzerdefinierte Abschlussvorlage des Begrenzungsrahmens**  
Zur Vereinfachung verfügt diese Vorlage über eine Variable, eine Kennzeichnung und sehr grundlegende Anweisungen. Wenn Ihr Manifest über eine „Tier“-Eigenschaft in jedem Datenobjekt verfügt, kann dieser Wert in zwei Teilen der Vorlage wieder verwendet werden.  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-bounding-box
    name="boundingBox"
    labels="[ '{{ task.input.animal }}' ]"
    src="{{ task.input.source-ref | grant_read_access }}"
    header="Draw a box around the {{ task.input.animal }}."
  >
    <full-instructions header="Bounding Box Instructions" >
      <p>Draw a bounding box around the {{ task.input.animal }} in the image. If 
      there is more than one {{ task.input.animal }} per image, draw a bounding 
      box around the largest one.</p>
      <p>The box should be tight around the {{ task.input.animal }} with 
      no more than a couple of pixels of buffer around the 
      edges.</p>
      <p>If the image does not contain a {{ task.input.animal }}, check the <strong>
      Nothing to label</strong> box.
    </full-instructions>
    <short-instructions>
      <p>Draw a bounding box around the {{ task.input.animal }} in each image. If 
      there is more than one {{ task.input.animal }} per image, draw a bounding 
      box around the largest one.</p>
    </short-instructions>
  </crowd-bounding-box>
</crowd-form>
```
Beachten Sie die Wiederverwendung von `{{ task.input.animal }}` in der Vorlage. Wenn in Ihrem Manifest alle Tiernamen mit einem Großbuchstaben beginnen, könnten Sie mithilfe von `{{ task.input.animal | downcase }}` einen integrierten Filter von Liquid verwenden, durch den die Namen in den entsprechenden Sätzen in Kleinbuchstaben präsentiert werden.

## Ihre Manifestdatei
<a name="sms-custom-templates-step2-demo1-manifest"></a>

Ihre Manifestdatei sollte die Variablenwerte bereitstellen, die Sie in Ihrer Vorlage verwenden. Sie können einige Transformationen Ihrer Manifestdaten in Ihrer Vorverarbeitung für Lambda vornehmen. Wenn dies jedoch nicht erforderlich ist, behalten Sie ein geringeres Risiko von Fehlern bei und Lambda wird schneller ausgeführt. Hier sehen Sie ein Beispiel einer Manifestdatei für die Vorlage.

```
{"source-ref": "<S3 image URI>", "animal": "horse"}
{"source-ref": "<S3 image URI>", "animal" : "bird"}
{"source-ref": "<S3 image URI>", "animal" : "dog"}
{"source-ref": "<S3 image URI>", "animal" : "cat"}
```

## Ihre Lambda-Funktion zur Vorverarbeitung
<a name="sms-custom-templates-step2-demo1-pre-annotation"></a>

Geben Sie im Rahmen der Auftragseinrichtung den ARN einer AWS Lambda Funktion an, die aufgerufen werden kann, um Ihre Manifesteinträge zu verarbeiten und an die Template-Engine weiterzuleiten.

**Benennen Ihrer Lambda-Funktion**  
Eine bewährte Methode, um Ihre Funktion zu benennen, besteht darin, eine der folgenden vier Zeichenfolgen als Teil des Funktionsnamens zu verwenden: `SageMaker`, `Sagemaker`, `sagemaker` oder `LabelingFunction`. Dies gilt sowohl für Funktionen zur Vorverarbeitung und Nachbereitung.

Wenn Sie die Konsole verwenden und AWS Lambda-Funktionen haben, die Ihrem Konto gehören, wird eine Dropdownliste mit Funktionen angezeigt, die die Benennungsanforderungen erfüllen, sodass Sie eine auswählen können.

In diesem sehr einfachen Beispiel, übergeben Sie nur die Informationen aus dem Manifest, ohne zusätzliche Verarbeitung. Diese Beispielfunktion zur Vorverarbeitung wurde für Python 3.7 geschrieben.

```
import json

def lambda_handler(event, context):
    return {
        "taskInput": event['dataObject']
    }
```

Das JSON-Objekt aus Ihrem Manifest wird als untergeordnetes Element des `event`-Objekts bereitgestellt. Die Eigenschaften innerhalb des `taskInput`-Objekts können von Ihrer Vorlage als Variablen abgerufen werden. Wenn Sie einfach den Wert von `taskInput` auf `event['dataObject']` festlegen, werden alle Werte aus Ihrem Manifestobjekt in Ihre Vorlage übertragen, ohne dass Sie sie einzeln kopieren müssen. Wenn Sie weitere Werte an die Vorlage senden möchten, können Sie sie dem `taskInput`-Objekt hinzufügen.

## Ihre Lambda-Funktion zur Nachbereitung
<a name="sms-custom-templates-step2-demo1-post-annotation"></a>

Geben Sie im Rahmen der Auftragseinrichtung den ARN einer AWS Lambda Funktion an, die aufgerufen werden kann, um die Formulardaten zu verarbeiten, wenn ein Worker eine Aufgabe erledigt. Dies kann so einfach oder komplex sein wie Sie möchten. Wenn Sie die Antworten konsolidieren und bei der Eingabe bewerten möchten, können Sie die and/or Konsolidierungsalgorithmen Ihrer Wahl anwenden. Wenn Sie die Rohdaten für eine Offline-Verarbeitung speichern möchten, ist dies eine Option.

**Bereitstellen von Berechtigungen für Lambda zur Nachbearbeitung**  
Die Anmerkungsdaten befinden sich in einer Datei, die durch die `s3Uri`-Zeichenfolge im `payload`-Objekt ausgewiesen wird. Um die Anmerkungen bei Eingang zu verarbeiten, auch für eine einfache Pass-Through-Funktion, müssen Sie `S3ReadOnly`-Zugriff für Lambda zuweisen, damit Anmerkungsdateien gelesen werden können.  
Scrollen Sie auf der Konsolenseite für das Erstellen Ihres Lambdas zum Bereich **Execution role (Ausführungsrolle)**. Wählen Sie **Create a new role from one or more templates (Erstellen Sie eine neue Rolle aus einer oder mehreren Vorlagen)** aus. Geben Sie der Rolle einen Namen. Wählen Sie aus der Dropdown-Liste **Policy templates (Richtlinienvorlagen)** die Option **Amazon S3 object read-only permissions (Leseberechtigungen für Amazon S3-Objekte)** aus. Speichern Sie das Lambda und die Rolle wird gespeichert und ausgewählt.

Das folgende Beispiel ist in Python 2.7.

```
import json
import boto3
from urlparse import urlparse

def lambda_handler(event, context):
    consolidated_labels = []

    parsed_url = urlparse(event['payload']['s3Uri']);
    s3 = boto3.client('s3')
    textFile = s3.get_object(Bucket = parsed_url.netloc, Key = parsed_url.path[1:])
    filecont = textFile['Body'].read()
    annotations = json.loads(filecont);
    
    for dataset in annotations:
        for annotation in dataset['annotations']:
            new_annotation = json.loads(annotation['annotationData']['content'])
            label = {
                'datasetObjectId': dataset['datasetObjectId'],
                'consolidatedAnnotation' : {
                'content': {
                    event['labelAttributeName']: {
                        'workerId': annotation['workerId'],
                        'boxesInfo': new_annotation,
                        'imageSource': dataset['dataObject']
                        }
                    }
                }
            }
            consolidated_labels.append(label)
    
    return consolidated_labels
```

Die Nachbearbeitung für Lambda empfängt häufig Stapel mit Aufgabenergebnissen im Ereignisobjekt. Dieser Stapel ist das `payload`-Objekt, das Lambda durchlaufen sollte. Was Sie zurücksenden, ist ein Objekt, das den [API-Vertrag](sms-custom-templates-step3.md) erfüllt.

## Die Ausgabe Ihres Kennzeichnungsauftrags
<a name="sms-custom-templates-step2-demo1-job-output"></a>

Sie finden die Ausgabe des Auftrags in einem Ordner, der nach Ihrem Kennzeichnungsauftrag im von Ihnen angegebenen S3-Ziel-Bucket benannt wurde. Er befindet sich in einem Unterordner mit dem Namen `manifests`.

Für einen Begrenzungsrahmenauftrag sieht die Ausgabe, die Sie im Ausgabemanifest finden, in etwa wie die Demo unten aus. Das Beispiel wurde für den Druck bereinigt. Die tatsächliche Ausgabe ist eine einzige Zeile pro Datensatz.

**Example : JSON in Ihrem Ausgabemanifest**  

```
{
  "source-ref":"<URL>",
  "<label attribute name>":
    {
       "workerId":"<URL>",
       "imageSource":"<image URL>",
       "boxesInfo":"{\"boundingBox\":{\"boundingBoxes\":[{\"height\":878, \"label\":\"bird\", \"left\":208, \"top\":6, \"width\":809}], \"inputImageProperties\":{\"height\":924, \"width\":1280}}}"},
  "<label attribute name>-metadata":
    {
      "type":"groundTruth/custom",
      "job_name":"<Labeling job name>",
      "human-annotated":"yes"
    },
  "animal" : "bird"
}
```
Beachten Sie, wie die zusätzlichen `animal`-Attribute aus Ihrem ursprünglichen Manifest an das Ausgabemanifest auf derselben Ebene wie `source-ref` und die Kennzeichnungsdaten übergeben wurden. Alle Eigenschaften aus Ihrem Input-Manifest, unabhängig davon, ob sie in Ihrer Vorlage verwendet wurden oder nicht, werden an das Ausgabemanifest übergeben.

# Demo-Vorlage: Kennzeichnen von Absichten mit `crowd-classifier`
<a name="sms-custom-templates-step2-demo2"></a>

Wenn Sie eine benutzerdefinierte Vorlage auswählen, werden Sie an den **Custom labeling task panel (Bereich für die benutzerdefinierte Labeling-Aufgabe)** weitergeleitet. Hier haben Sie die Auswahl zwischen mehreren Starter-Vorlagen, die einige der häufigsten Aufgaben umfassen. Die Vorlagen bieten einen Ausgangspunkt für die weitere Arbeit an der Vorlagenerstellung für Ihre benutzerdefinierte Labeling-Aufgabe.

In dieser Demo arbeiten Sie mit der Vorlage **Intent Detection (Absichtserkennung)**, bei der das `crowd-classifier`-Element verwendet wird, und den AWS Lambda -Funktionen, die für die Verarbeitung Ihrer Daten vor und nach der Aufgabe erforderlich sind.

**Topics**
+ [Benutzerdefinierte Vorlage für die Starter-Absichtserkennung](#sms-custom-templates-step2-demo2-base-template)
+ [Ihre benutzerdefinierte Vorlage für die Absichtserkennung](#sms-custom-templates-step2-demo2-your-template)
+ [Ihre Lambda-Funktion zur Vorverarbeitung](#sms-custom-templates-step2-demo2-pre-lambda)
+ [Ihre Lambda-Funktion zur Nachbereitung](#sms-custom-templates-step2-demo2-post-lambda)
+ [Die Ausgabe Ihres Kennzeichnungsauftrags](#sms-custom-templates-step2-demo2-job-output)

## Benutzerdefinierte Vorlage für die Starter-Absichtserkennung
<a name="sms-custom-templates-step2-demo2-base-template"></a>

Dies ist die Vorlage für die Absichtserkennung, die als Ausgangspunkt zur Verfügung gestellt wird.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-classifier
    name="intent"
    categories="{{ task.input.labels | to_json | escape }}"
    header="Pick the most relevant intention expressed by the below text"
  >
    <classification-target>
      {{ task.input.utterance }}
    </classification-target>
    
    <full-instructions header="Intent Detection Instructions">
        <p>Select the most relevant intention expressed by the text.</p>
        <div>
           <p><strong>Example: </strong>I would like to return a pair of shoes</p>
           <p><strong>Intent: </strong>Return</p>
        </div>
    </full-instructions>

    <short-instructions>
      Pick the most relevant intention expressed by the text
    </short-instructions>
  </crowd-classifier>
</crowd-form>
```

Die benutzerdefinierten Vorlagen verwenden die [Liquid template language (Liquid-Vorlagensprache)](https://shopify.github.io/liquid/) und jedes dieser Elemente zwischen doppelten geschweiften Klammern ist eine Variable. Die AWS Lambda-Funktion vor der Anmerkung sollte ein Objekt mit dem Namen bereitstellen, `taskInput` und auf die Eigenschaften dieses Objekts kann wie `{{ task.input.<property name> }}` in Ihrer Vorlage zugegriffen werden.

## Ihre benutzerdefinierte Vorlage für die Absichtserkennung
<a name="sms-custom-templates-step2-demo2-your-template"></a>

In der Startvorlage befinden sich zwei Variablen: die `task.input.labels`-Eigenschaft im öffnenden Tag des `crowd-classifier`-Elements und die `task.input.utterance` im `classification-target`-Inhalt der Region.

Wenn Sie nicht verschiedene Sätze von Kennzeichnungen mit unterschiedlichen Äußerungen anbieten müssen, spart die Vermeidung einer Variablen und die einfache Verwendung von Text Verarbeitungszeit und es bieten sich weniger Fehlermöglichkeiten. Bei der in dieser Demo verwendeten Vorlage wird diese Variable zwar entfernt, es werden aber Variablen und Filter wie `to_json` im [`crowd-bounding-box`Demo]()-Artikel ausführlicher erläutert.

### Gestaltung der Elemente
<a name="sms-custom-templates-step2-demo2-instructions"></a>

Zwei Stellen dieser benutzerdefinierten Elemente, die manchmal übersehen werden, sind die – `<full-instructions>`und `<short-instructions>`-Regionen. Gute Anweisungen führen zu guten Ergebnissen.

In den Elementen, die diese Bereiche beinhalten, erscheint die `<short-instructions>` automatisch im Bereich „Instructions” (Anweisungen) links auf dem Bildschirm des Workers. Die `<full-instructions>` ist über den Link „View full instructions” (Vollständige Anweisungen anzeigen) in der Nähe des oberen Randes dieses Bereichs verlinkt. Wenn Sie auf den Link klicken, öffnet sich ein modales Fenster mit ausführlicheren Anweisungen.

Sie können nicht nur HTML und CSS verwenden. JavaScript In diesen Abschnitten werden Sie auch dazu ermutigt, wenn Sie glauben, aussagekräftige Anweisungen und Beispiele bereitstellen zu können, die Ihren Mitarbeitern helfen, Ihre Aufgaben schneller und genauer zu erledigen. 

**Example Probieren Sie ein Beispiel aus mit JSFiddle**  
[https://jsfiddle.net/MTGT_Fiddle_Manager/bjc0y1vd/35/](https://jsfiddle.net/MTGT_Fiddle_Manager/bjc0y1vd/35/)  
 Probieren Sie eine Beispielaufgabe für [https://jsfiddle.net/MTGT_Fiddle_Manager/bjc0y1vd/35/](https://jsfiddle.net/MTGT_Fiddle_Manager/bjc0y1vd/35/) aus. Das Beispiel wird von gerendert JSFiddle, daher werden alle Template-Variablen durch hartcodierte Werte ersetzt. Klicken Sie auf den Link „View full instructions” (Vollständige Anweisungen anzeigen), um sich eine Reihe von Beispielen mit erweitertem CSS-Styling anzeigen zu lassen. Sie können das Projekt forken, um mit Ihren eigenen Änderungen am CSS zu experimentieren, Beispielbilder hinzuzufügen oder erweiterte JavaScript Funktionen hinzuzufügen.

**Example : Benutzerdefinierte Abschlussvorlage für die Absichtserkennung**  
Hierzu wird die Beispielaufgabe [https://jsfiddle.net/MTGT_Fiddle_Manager/bjc0y1vd/35/](https://jsfiddle.net/MTGT_Fiddle_Manager/bjc0y1vd/35/)verwendet, jedoch mit einer Variablen für das `<classification-target>`. Wenn Sie versuchen, ein einheitliches CSS-Design im Rahmen einer Reihe von verschiedenen Kennzeichnungsaufträgen aufrechtzuerhalten, können Sie ein externes Stylesheet mit einem `<link rel...>`-Element einbinden, wie Sie es von jedem anderen HTML-Dokument gewohnt sind.  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-classifier
    name="intent"
    categories="['buy', 'eat', 'watch', 'browse', 'leave']"
    header="Pick the most relevant intent expressed by the text below"
  >
    <classification-target>
      {{ task.input.source }}
    </classification-target>
    
    <full-instructions header="Emotion Classification Instructions">
      <p>In the statements and questions provided in this exercise, what category of action is the speaker interested in doing?</p>
          <table>
            <tr>
              <th>Example Utterance</th>
              <th>Good Choice</th>
            </tr>
            <tr>
              <td>When is the Seahawks game on?</td>
              <td>
                eat<br>
                <greenbg>watch</greenbg>
                <botchoice>browse</botchoice>
              </td>
            </tr>
            <tr>
              <th>Example Utterance</th>
              <th>Bad Choice</th>
            </tr>
            <tr>
              <td>When is the Seahawks game on?</td>
              <td>
                buy<br>
                <greenbg>eat</greenbg>
                <botchoice>watch</botchoice>
              </td>
            </tr>
          </table>
    </full-instructions>

    <short-instructions>
      What is the speaker expressing they would like to do next?
    </short-instructions>  
  </crowd-classifier>
</crowd-form>
<style>
  greenbg {
    background: #feee23;
    display: block;
  }

  table {
    *border-collapse: collapse; /* IE7 and lower */
    border-spacing: 0; 
  }

  th, tfoot, .fakehead {
    background-color: #8888ee;
    color: #f3f3f3;
    font-weight: 700;
  }

  th, td, tfoot {
      border: 1px solid blue;
  }

  th:first-child {
    border-radius: 6px 0 0 0;
  }

  th:last-child {
    border-radius: 0 6px 0 0;
  }

  th:only-child{
    border-radius: 6px 6px 0 0;
  }

  tfoot:first-child {
    border-radius: 0 0 6px 0;
  }

  tfoot:last-child {
    border-radius: 0 0 0 6px;
  }

  tfoot:only-child{
    border-radius: 6px 6px;
  }

  td {
    padding-left: 15px ;
    padding-right: 15px ;
  }

  botchoice {
    display: block;
    height: 17px;
    width: 490px;
    overflow: hidden;
    position: relative;
    background: #fff;
    padding-bottom: 20px;
  }

  botchoice:after {
    position: absolute;
    bottom: 0;
    left: 0;  
    height: 100%;
    width: 100%;
    content: "";
    background: linear-gradient(to top,
       rgba(255,255,255, 1) 55%, 
       rgba(255,255,255, 0) 100%
    );
    pointer-events: none; /* so the text is still selectable */
  }
</style>
```

**Example : Ihre Manifestdatei**  
Wenn Sie Ihre Manifestdatei manuell für eine solche Textklassifikationsaufgabe vorbereiten, müssen Ihre Daten wie folgt formatiert werden.  

```
{"source": "Roses are red"}
{"source": "Violets are Blue"}
{"source": "Ground Truth is the best"}
{"source": "And so are you"}
```

Dies unterscheidet sich von der für die Demo „[Demo-Vorlage: Kommentieren von Bildern mit `crowd-bounding-box`](sms-custom-templates-step2-demo1.md)” verwendeten Manifestdatei dadurch, dass `source-ref` statt `source` als Eigenschaftsname verwendet wurde. Die Verwendung von `source-ref` bezeichnet S3 URIs für Bilder oder andere Dateien, die in HTTP konvertiert werden müssen. Andernfalls sollte `source` so wie bei den obigen Textzeichenfolgen verwendet werden.

## Ihre Lambda-Funktion zur Vorverarbeitung
<a name="sms-custom-templates-step2-demo2-pre-lambda"></a>

Geben Sie im Rahmen der Auftragseinrichtung den ARN eines an, der aufgerufen werden kann AWS Lambda , um Ihre Manifesteinträge zu verarbeiten und an die Template-Engine weiterzuleiten. 

Bei dieser Lambda-Funktion muss eine der folgenden vier Zeichenfolgen Bestandteil des Funktionsnamens sein: `SageMaker`, `Sagemaker`, `sagemaker` oder `LabelingFunction`.

Dies gilt sowohl für Ihre Lambdas zur Vorverarbeitung und Nachbereitung.

Wenn Sie bei Verwendung der Konsole über Lambdas verfügen, die im Besitz Ihres Kontos sind, wird eine Dropdown-Liste der Funktionen zur Auswahl bereitgestellt, die die Namensanforderungen erfüllen.

In diesem sehr einfachen Beispiel, in dem Sie nur eine Variable haben, ist es in erster Linie eine Pass-Through-Funktion. Hier ist ein Beispiel für die Vorabkennzeichnung von Lambda mit Python 3.7.

```
import json

def lambda_handler(event, context):
    return {
        "taskInput":  event['dataObject']
    }
```

Die Eigenschaft `dataObject` des `event` enthält die Eigenschaften aus einem Datenobjekt in Ihrem Manifest.

In dieser Demo, bei der eine Variable einfach übergeben wird, lassen Sie dies einfach als `taskInput`-Wert durchlaufen. Wenn Sie dem Objekt `event['dataObject']` Eigenschaften mit diesen Werten hinzufügen, werden diese Ihrer HTML-Vorlage als Liquird-Variablen mit dem Format `{{ task.input.<property name> }}` zur Verfügung stehen.

## Ihre Lambda-Funktion zur Nachbereitung
<a name="sms-custom-templates-step2-demo2-post-lambda"></a>

Im Rahmen der Auftragseinrichtung müssen Sie den ARN einer Lambda-Funktion bereitstellen, der aufgerufen werden kann, um die Formulardaten zu verarbeiten, wenn ein Worker eine Aufgabe beendet. Dies kann so einfach oder komplex sein wie Sie möchten. Wenn Sie die Antwortkonsolidierung und Bewertung beim Dateneingang ausführen möchten, können Sie die Bewertungs- und/oder Konsolidierungsalgorithmen Ihrer Wahl anwenden. Wenn Sie die Rohdaten für eine Offline-Verarbeitung speichern möchten, ist dies eine Option.

**Festlegen von Berechtigungen für Ihre Lambda-Funktion zur Nachbereitung**  
Die Anmerkungsdaten befinden sich in einer Datei, die durch die `s3Uri`-Zeichenfolge im `payload`-Objekt ausgewiesen wird. Um die Anmerkungen bei Eingang zu verarbeiten, auch für eine einfache Pass-Through-Funktion, müssen Sie `S3ReadOnly`-Zugriff für Lambda zuweisen, damit Anmerkungsdateien gelesen werden können.  
Scrollen Sie auf der Konsolenseite für das Erstellen Ihres Lambdas zum Bereich **Execution role (Ausführungsrolle)**. Wählen Sie **Create a new role from one or more templates (Erstellen Sie eine neue Rolle aus einer oder mehreren Vorlagen)** aus. Geben Sie der Rolle einen Namen. Wählen Sie aus der Dropdown-Liste **Policy templates (Richtlinienvorlagen)** die Option **Amazon S3 object read-only permissions (Leseberechtigungen für Amazon S3-Objekte)** aus. Speichern Sie das Lambda und die Rolle wird gespeichert und ausgewählt.

Das folgende Beispiel ist für Python 3.7.

```
import json
import boto3
from urllib.parse import urlparse

def lambda_handler(event, context):
    consolidated_labels = []

    parsed_url = urlparse(event['payload']['s3Uri']);
    s3 = boto3.client('s3')
    textFile = s3.get_object(Bucket = parsed_url.netloc, Key = parsed_url.path[1:])
    filecont = textFile['Body'].read()
    annotations = json.loads(filecont);
    
    for dataset in annotations:
        for annotation in dataset['annotations']:
            new_annotation = json.loads(annotation['annotationData']['content'])
            label = {
                'datasetObjectId': dataset['datasetObjectId'],
                'consolidatedAnnotation' : {
                'content': {
                    event['labelAttributeName']: {
                        'workerId': annotation['workerId'],
                        'result': new_annotation,
                        'labeledContent': dataset['dataObject']
                        }
                    }
                }
            }
            consolidated_labels.append(label)

    return consolidated_labels
```

## Die Ausgabe Ihres Kennzeichnungsauftrags
<a name="sms-custom-templates-step2-demo2-job-output"></a>

Die Nachbearbeitung für Lambda empfängt häufig Stapel mit Aufgabenergebnissen im Ereignisobjekt. Dieser Stapel ist das `payload`-Objekt, das Lambda durchlaufen sollte.

Sie finden die Ausgabe des Auftrags in einem Ordner, der nach Ihrem Kennzeichnungsauftrag im von Ihnen angegebenen S3-Ziel-Bucket benannt wurde. Er befindet sich in einem Unterordner mit dem Namen `manifests`.

Für einen Absichtserkennungsauftrag sieht die Ausgabe, die Sie im Ausgabemanifest finden, in etwa wie die Demo unten aus. Das Beispiel wurde bereinigt und für bessere Lesbarkeit mit weiteren Abständen versehen. Der tatsächliche Ausgabetext wird für das maschinelle Lesen stärker komprimiert.

**Example : JSON in Ihrem Ausgabemanifest**  

```
[
  {
    "datasetObjectId":"<Number representing item's place in the manifest>",
     "consolidatedAnnotation":
     {
       "content":
       {
         "<name of labeling job>":
         {     
           "workerId":"private.us-east-1.XXXXXXXXXXXXXXXXXXXXXX",
           "result":
           {
             "intent":
             {
                 "label":"<label chosen by worker>"
             }
           },
           "labeledContent":
           {
             "content":"<text content that was labeled>"
           }
         }
       }
     }
   },
  "datasetObjectId":"<Number representing item's place in the manifest>",
     "consolidatedAnnotation":
     {
       "content":
       {
         "<name of labeling job>":
         {     
           "workerId":"private.us-east-1.6UDLPKQZHYWJQSCA4MBJBB7FWE",
           "result":
           {
             "intent":
             {
                 "label": "<label chosen by worker>"
             }
           },
           "labeledContent":
           {
             "content": "<text content that was labeled>"
           }
         }
       }
     }
   },
     ...
     ...
     ...
]
```

Dies sollte Ihnen dabei helfen, Ihre eigene benutzerdefinierte Vorlage zu erstellen und zu verwenden.

# Erstellen eines benutzerdefinierten Workflows mithilfe der API
<a name="sms-custom-templates-step4"></a>

Wenn Sie Ihre benutzerdefinierte UI-Vorlage erstellt (Schritt 2) und die Verarbeitung von Lambda-Funktionen ausgeführt haben (Schritt 3), sollten Sie die Vorlage in einem Amazon-S3-Bucket mit einem Dateinamenformat `<FileName>.liquid.html` platzieren. Verwenden Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)-Aktion zum Konfigurieren Ihrer Aufgabe. Sie verwenden den Speicherort einer benutzerdefinierten Vorlage ([Erstellen einer benutzerdefinierte Vorlage für Auftragnehmeraufgaben](sms-custom-templates-step2.md)) in einer `<filename>.liquid.html`-Datei in S3 als Wert für das `UiTemplateS3Uri`-Feld im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html)-Objekt innerhalb des [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html)-Objekts.

Für die unter beschriebenen AWS Lambda-Aufgaben wird der ARN der Aufgabe nach der Anmerkung als Wert für das `AnnotationConsolidationLambdaArn` Feld verwendet, und die Aufgabe vor der Anmerkung wird als Wert für die [Verarbeitung von Daten in einem benutzerdefinierten Etikettierungs-Workflow mit AWS Lambda](sms-custom-templates-step3.md) `PreHumanTaskLambdaArn.` 

# Erstellen eines Kennzeichnungsauftrags
<a name="sms-create-labeling-job"></a>

Sie können einen Labeling-Job in der Amazon SageMaker AI-Konsole erstellen und zur Ausführung ein AWS SDK in Ihrer bevorzugten Sprache verwenden`CreateLabelingJob`. Nachdem ein Kennzeichnungsauftrag erstellt wurde, können Sie Auftragnehmermetriken (für private Arbeitskräfte) und den Status Ihres Kennzeichnungsauftrags mit [CloudWatch](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-monitor-cloud-watch.html) verfolgen.

Bevor Sie einen Beschriftungsauftrag erstellen, sollten Sie sich gegebenenfalls die folgenden Seiten durchlesen:
+ Sie können Ihre Eingabedaten mithilfe einer automatischen Dateneinrichtung in der Konsole oder mithilfe einer Eingabemanifestdatei in der Konsole oder bei Verwendung der `CreateLabelingJob` API angeben. Informationen zur automatisierten Dateneinrichtung finden Sie unter [Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge](sms-console-create-manifest-file.md). Informationen zum Erstellen einer Eingabe-Manifest-Datei finden Sie unter [Eingabemanifestdateien](sms-input-data-input-manifest.md).
+ Überprüfen Sie die Eingabedatenkontingente für Beschriftungsauftrag: [Eingabedatenkontingente](input-data-limits.md).

Nachdem Sie den Aufgabentyp ausgewählt haben, verwenden Sie die Themen auf dieser Seite, um zu erfahren, wie Sie einen Kennzeichnungsauftrag erstellen.

Wenn Sie ein neuer Ground-Truth-Benutzer sind, empfehlen wir Ihnen, mit der Demo in [Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth](sms-getting-started.md) zu beginnen.

**Wichtig**  
Ground Truth verlangt, dass an alle S3-Buckets, die Eingabe-Image-Daten für Beschriftungsaufträge enthalten, eine CORS-Richtlinie angehängt ist. Weitere Informationen hierzu finden Sie unter [CORS-Anforderung für Eingabebilddaten](sms-cors-update.md).

**Topics**
+ [Integrierte Aufgabentypen](sms-task-types.md)
+ [Erstellen von Anweisungsseiten](sms-creating-instruction-pages.md)
+ [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md)
+ [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md)
+ [Erstellen eines Streaming-Beschriftungsjobs](sms-streaming-create-job.md)
+ [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md)

# Integrierte Aufgabentypen
<a name="sms-task-types"></a>

Amazon SageMaker Ground Truth verfügt über mehrere integrierte Aufgabentypen. Ground Truth bietet eine Worker-Aufgabenvorlage für integrierte Aufgabentypen. Darüber hinaus werden einige integrierte Aufgabentypen unterstützt [Automatisieren des Daten-Labeling](sms-automated-labeling.md). In den folgenden Themen werden die einzelnen integrierten Aufgabentypen beschrieben und die Auftragnehmer-Aufgabenvorlagen veranschaulicht, die von Ground Truth in der Konsole bereitgestellt werden. Informationen zum Erstellen eines Beschriftungsauftrags in der Konsole mithilfe einer dieser Aufgabentypen finden Sie auf der Seite „Aufgabentyp“.


****  

| Beschriftungsbilder | Beschriftungsabdruck | Beschriftungsvideos und Videorahmen beschriften | Beschriften von 3D-Punktwolken | 
| --- | --- | --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/sms-task-types.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/sms-task-types.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/sms-task-types.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/sms-task-types.html)  | 

**Anmerkung**  
Für jeden der Aufgabentypen Videoframe und 3D-Punktwolke gibt es einen *Anpassung* des Aufgabentypes, mit dem Sie Beschriftungen aus einem früheren Beschriftungsauftrag überprüfen und anpassen können. Wählen Sie oben eine Seite mit dem Aufgabentyp „Videoframe“ oder „3D-Punktwolke“ aus, um zu erfahren, wie Sie Beschriftungen anpassen können, die mit diesem Aufgabentyp erstellt wurden. 

# Erstellen von Anweisungsseiten
<a name="sms-creating-instruction-pages"></a>

Erstellen Sie benutzerdefinierte Anweisungen für Kennzeichnungsaufträge, damit Ihre Auftragnehmer ihre Aufgaben genauer erledigen können. Sie können die Standardanweisungen in der Konsole ändern oder Ihre eigenen Anweisungen erstellen. Die Anweisungen werden dem Auftragnehmer auf der Seite angezeigt, auf der er seine Labeling-Aufgaben erledigt.

Es gibt zwei Arten von Anweisungen:
+ *Kurze Anweisungen* – Anweisungen, die auf derselben Webseite angezeigt werden, auf der der Auftragnehmer seine Aufgabe erledigt. Diese Anweisungen sollten als einfache Referenz dienen, um dem Auftragnehmer zu zeigen, wie Objekte richtig mit Kennzeichnungen versehen werden.
+ *Vollständige Anweisungen* – Anweisungen, die in einem Dialogfeld angezeigt werden, das die Seite überlagert, auf der der Worker seine Aufgabe erledigt. Wir empfehlen, dass Sie detaillierte Anweisungen für die Aufgaben bereitstellen, einschließlich verschiedener Beispiele mit Sonderfällen und anderen schwierigen Situationen beim Kennzeichnen von Objekten.

Erstellen Sie Anweisungen in der Konsole, wenn Sie Ihren Kennzeichnungsauftrag erstellen. Beginnen Sie mit den vorhandenen Anweisungen für die Aufgabe und verwenden Sie den Editor, um sie entsprechend Ihrem Kennzeichnungsauftrag anzupassen.

**Anmerkung**  
Sobald Sie Ihren Kennzeichnungsauftrag erstellt haben, wird er automatisch gestartet und Sie können Ihre Anweisungen für Auftragnehmer nicht mehr ändern. Wenn Sie Ihre Anweisungen für Auftragnehmer ändern müssen, beenden Sie den von Ihnen erstellten Kennzeichnungsauftrag, klonen Sie ihn und ändern Sie Ihre Anweisungen für Auftragnehmer, bevor Sie einen neuen Auftrag erstellen.   
Sie können einen Labeling-Job in der Konsole klonen, indem Sie den Labeling-Job auswählen und dann im Menü **Aktionen** auf **Klonen** klicken.   
Um einen Beschriftungsauftrag mit der Amazon SageMaker API oder Ihrem bevorzugten Amazon SageMaker SDK zu klonen, stellen Sie eine neue Anforderung an die `CreateLabelingJob`-Operation mit denselben Spezifikationen wie Ihr ursprünglicher Auftrag, nachdem Sie Ihre Auftragnehmeranweisungen geändert haben. 

Für die Beschriftung von 3D-Punktwolken und Videobildern können Sie Ihrer Konfigurationsdatei für die Beschriftungskategorie Arbeitsanweisungen hinzufügen. Sie können eine einzelne Zeichenfolge verwenden, um Anweisungen zu erstellen, oder Sie können HTML-Markup hinzufügen, um das Aussehen Ihrer Anweisungen anzupassen und Bilder hinzuzufügen. Stellen Sie sicher, dass alle Bilder, die Sie in Ihre Anleitungen aufnehmen, öffentlich zugänglich sind, oder, wenn Ihre Anleitungen in Amazon S3 gespeichert sind, dass Ihre Mitarbeiter Lesezugriff haben, damit sie sie ansehen können. Weitere Hinweise zur Konfigurationsdatei der Beschriftungskategorie finden Sie unter [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md).

## Kurze Anweisungen
<a name="sms-creating-quick-instructions"></a>

Kurze Anweisungen werden auf der Webseite angezeigt, die Auftragnehmer für das Kennzeichnen Ihrer Datenobjekte verwenden. Nachfolgend sehen Sie beispielsweise die Bearbeitungsseite für einen Begrenzungsrahmen-Auftrag. Der Bereich für die kurzen Anweisungen befindet sich links.

![\[\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms-instructions-10.png)


Denken Sie daran, dass Auftragnehmer sich die kurzen Anweisungen nur einige Sekunden lang ansehen werden. Die Auftragnehmer müssen in der Lage sein, Ihre Informationen schnell zu lesen und zu verstehen. Das Verstehen der Anweisungen sollte in jedem Fall weniger Zeit erfordern als das Ausführen der eigentlichen Aufgabe. Beachten Sie die folgenden Punkte:
+ Ihre Anweisungen sollten klar und einfach sein.
+ Bilder sind besser als Wörter. Erstellen Sie eine einfache bildliche Darstellung Ihrer Aufgabe, die Ihre Auftragnehmer sofort verstehen können.
+ Wenn Sie Wörter verwenden müssen, verwenden Sie kurze, präzise Beispiele.
+ Ihre kurzen Anweisungen sind wichtiger als Ihre umfassenden Anweisungen.

Die Amazon SageMaker Ground Truth-Konsole bietet einen Editor, mit dem Sie Ihre Kurzanleitungen erstellen können. Ersetzen Sie den Platzhaltertext und die Images durch Anweisungen für Ihre Aufgabe. Sehen Sie sich eine Vorschau der Aufgabenseite des Auftragnehmers an, indem Sie **Preview (Vorschau)** auswählen. Die Vorschau wird in einem neuen Fenster geöffnet. Deaktivieren Sie den Pop-up-Blocker, damit das Fenster angezeigt wird.

## Umfassende Anweisungen
<a name="sms-creating-full-instructions"></a>

Sie können zusätzliche Anweisungen für Ihre Auftragnehmer in einem Dialogfeld bereitstellen, das die Seite überlagert, die die Auftragnehmer für die Kennzeichnung Ihrer Datenobjekte nutzen. Verwenden Sie die umfassenden Anweisungen, um komplexere Aufgaben zu erläutern und Auftragnehmern zu zeigen, wie die Kennzeichnung in Sonderfällen oder bei anderen schwierigen Objekten richtig ist.

Sie können vollständige Anweisungen mit einem Editor in der Ground-Truth-Konsole erstellen. Beachten Sie wie bei den kurzen Anweisungen folgende Punkte:
+ Auftragnehmer benötigen am Anfang detaillierte Anweisungen, wenn sie sich die ersten Male mit Ihrer Aufgabe befassen. Alle *zwingend erforderlichen* Informationen sollten in den kurzen Anweisungen sein.
+ Bilder sind wichtiger als Wörter.
+ Text sollte präzise sein.
+ Die umfassenden Anweisungen sollten die kurzen Anweisungen ergänzen. Wiederholen Sie keine Informationen, die auch in den kurzen Anweisungen vorhanden sind.

Die Ground-Truth-Konsole bietet einen Editor, mit dem Sie Ihre vollständigen Anweisungen erstellen können. Ersetzen Sie den Platzhaltertext und die Images durch Anweisungen für Ihre Aufgabe. Sehen Sie sich eine Vorschau der Seite mit den umfassenden Anweisungen an, indem Sie **Preview (Vorschau)** auswählen. Die Vorschau wird in einem neuen Fenster geöffnet. Deaktivieren Sie den Pop-up-Blocker, damit das Fenster angezeigt wird.

## Hinzufügen von Beispielbildern zu Ihren Anweisungen
<a name="sms-using-s3-images"></a>

Bilder stellen nützliche Beispiele für Ihre Mitarbeiter dar. So fügen Sie Ihren Anweisungen ein öffentlich zugängliches Bild hinzu:
+ Platzieren Sie den Cursor auf jene Stelle, wo das Bild im Anweisungseditor erscheinen soll.
+ Klicken Sie auf das Bildsymbol in der Editor-Symbolleiste.
+ Geben Sie die URL Ihres Bilds ein.

Wenn Ihr Anweisungs-Image in Amazon S3 nicht öffentlich zugänglich ist:
+ Geben Sie Folgendes als Bild-URL ein: `{{ 'https://s3.amazonaws.com/your-bucket-name/image-file-name' | grant_read_access }}`.
+ Dies fügt der Bild-URL einen kurzlebigen, einmaligen Zugangscode an, über den der Browser des Mitarbeiters das Bild anzeigen kann. Im Anweisungseditor wird ein fehlerhaftes Bildsymbol angezeigt, jedoch stellt die Vorschau das Bild gerendert dar.

# Erstellen eines Kennzeichnungsauftrags (Konsole)
<a name="sms-create-labeling-job-console"></a>

Sie können die Amazon SageMaker AI-Konsole verwenden, um einen Labeling-Job für alle in Ground Truth integrierten Aufgabentypen und benutzerdefinierten Label-Workflows zu erstellen. Für integrierte Aufgabentypen empfehlen wir, diese Seite zusammen mit der [Seite für Ihren Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) zu verwenden. Jede Aufgabentypseite enthält spezifische Informationen zur Erstellung eines Beschriftungsauftrags mit diesem Aufgabentyp. 

Sie müssen Folgendes angeben, um einen Labeling-Job in der SageMaker AI-Konsole zu erstellen: 
+ Eine Eingabemanifestdatei in Amazon S3. Sie können Ihren Eingabedatensatz in Amazon S3 platzieren und mithilfe der Ground-Truth-Konsole automatisch eine Manifestdatei generieren (wird für 3D-Punktwolken-Beschriftungsaufträge nicht unterstützt). 

  Alternativ können Sie manuell eine Eingabemanifestdatei erstellen. Um zu erfahren wie dies geht, vgl. [Eingabedaten](sms-data-input.md).
+ Ein Amazon-S3-Bucket, um Ihre Ausgabedaten zu speichern.
+ Eine IAM-Rolle mit der Erlaubnis, auf Ihre Ressourcen in Amazon S3 zuzugreifen, und mit der eine SageMaker AI-Ausführungsrichtlinie verknüpft ist. Für eine allgemeine Lösung können Sie die verwaltete Richtlinie an eine IAM-Rolle anhängen und sie `sagemaker` in Ihren Bucket-Namen aufnehmen. AmazonSageMakerFullAccess 

  Genauere Richtlinien finden Sie unter [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md). 

  3D-Punktwolken-Aufgabentypen erfordern zusätzliche Sicherheitsaspekte. [Weitere Informationen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-general-information.html#sms-security-permission-3d-point-cloud). 
+ Ein Arbeitsteam. Sie stellen ein Arbeitsteam aus einer Arbeitskraft zusammen, die sich aus Auftragnehmern von Amazon Mechanical Turk, Lieferanten oder Ihren eigenen privaten Auftragnehmern zusammensetzt. Weitere Informationen finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

  Sie können die Mechanical Turk-Arbeitskraft nicht für 3D-Punktwolken-Beschriftungsaufträge verwenden. 
+ Wenn Sie einen benutzerdefinierten Beschriftungs-Workflow verwenden, müssen Sie eine Aufgabenvorlage für Auftragnehmer in Amazon S3 speichern und einen Amazon-S3-URI für diese Vorlage bereitstellen. Weitere Informationen finden Sie unter [Erstellen einer benutzerdefinierte Vorlage für Auftragnehmeraufgaben](sms-custom-templates-step2.md).
+ (Optional) Ein AWS KMS Schlüssel-ARN, wenn Sie möchten, dass SageMaker KI die Ausgabe Ihres Labeling-Jobs mit Ihrem eigenen AWS KMS Verschlüsselungsschlüssel anstelle des standardmäßigen Amazon S3-Serviceschlüssels verschlüsselt.
+ (Optional) Vorhandene Beschriftungen für den Datensatz, den Sie für Ihren Kennzeichnungsauftrag verwenden. Verwenden Sie diese Option, wenn Auftragnehmer Beschriftungen anpassen oder genehmigen und ablehnen sollen.
+ Wenn Sie einen Auftrag zur Anpassung oder Überprüfung der Beschriftung erstellen möchten, benötigen Sie in Amazon S3 eine Ausgabe-Manifestdatei, die die Beschriftung enthält, die Sie anpassen oder verifizieren möchten. Diese Option wird nur für Bounding-Box- und semantische Segmentierungs-Bildbeschriftungsaufträge sowie für 3D-Punktwolken- und Videoframe-Beschriftungsaufträge unterstützt. Es wird empfohlen, dass Sie die Anweisungen in [Beschriftungsverifizierung und Anpassung](sms-verification-data.md) befolgen, um einen Auftrag zur Überprüfung oder Anpassung von Beschriftungen zu erstellen. 

**Wichtig**  
Ihr Arbeitsteam, die Eingabe-Manifestdatei, der Ausgabe-Bucket und andere Ressourcen in Amazon S3 müssen sich in derselben AWS Region befinden, in der Sie Ihren Labeling-Job erstellt haben. 

Wenn Sie mit der SageMaker KI-Konsole einen Labeling-Job erstellen, fügen Sie der von Ground Truth bereitgestellten Worker-UI Anweisungen und Labels für Arbeiter hinzu. Sie können eine Vorschau anzeigen und mit der Benutzeroberfläche für Auftragnehmer interagieren, wenn Sie einen Beschriftungsauftrag in der Konsole erstellen. Sie können sich auch eine Vorschau der Auftragnehmer-Benutzeroberfläche auf Ihrer [integrierten Aufgabentypseite](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) ansehen.

**So erstellen Sie einen Kennzeichnungsauftrag (Konsole)**

1. Melden Sie sich bei der SageMaker AI-Konsole unter an [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/). 

1. Wählen Sie im linken Navigationsbereich **Kennzeichnungsaufträge** aus. 

1. Wählen Sie auf der Seite **Kennzeichnungsaufträge** die Option **Kennzeichnungsauftrag erstellen** aus.

1. Geben Sie unter **Auftragsname** einen Namen für Ihren Kennzeichnungsauftrag ein.

1. (Optional) Wenn Sie Ihre Beschriftungen mit einem Schlüssel identifizieren möchten, wählen Sie **Ich möchte einen Beschriftungsattributnamen angeben, der sich vom Namen des Kennzeichnungsauftrags unterscheidet** aus. Wenn Sie diese Option nicht auswählen, wird der Name des Kennzeichnungsauftrags verwendet, den Sie im vorherigen Schritt angegeben haben, um Ihre Beschriftungen in der Ausgabemanifestdatei zu identifizieren. 

1. Wählen Sie ein Daten-Setup, um eine Verbindung zwischen Ihrem Eingabedatensatz und Ground Truth herzustellen. 
   + Für die **automatisierte Dateneinrichtung**:
     + Folgen Sie den Anweisungen unter [Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge](sms-console-create-manifest-file.md) für die Beschriftung von Bildern, Text und Videoclips.
     + Folgen Sie den Anweisungen unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md) für die Beschriftung von Videoframes. 
   + Für die **manuelle Dateneinrichtung**:
     + Geben Sie für den **Speicherort des Eingabedatensatzes** den Amazon S3-Speicherort an, an dem sich die Eingabemanifestdatei befindet. Wenn sich Ihre Eingabemanifestdatei manifest.json beispielsweise in **example-bucket** befindet, geben Sie **s3://example-bucket/manifest.json** ein.
     + Geben Sie für den **Speicherort des Ausgabedatensatzes** den Speicherort in Amazon S3 an, an dem Ground Truth die Ausgabedaten aus Ihrem Beschriftungsauftrag speichern soll. 

1. Wählen Sie für **IAM-Rolle** eine bestehende IAM-Rolle aus oder erstellen Sie eine IAM-Rolle mit der Berechtigung, auf Ihre Ressourcen in Amazon S3 zuzugreifen, in den oben angegebenen Amazon S3 S3-Ausgabe-Bucket zu schreiben, und mit einer SageMaker AI-Ausführungsrichtlinie als Anhang. 

1. (Optional) Für eine **zusätzliche Konfiguration** können Sie angeben, wie viel von Ihrem Datensatz Ihre Mitarbeiter kennzeichnen sollen und ob SageMaker KI die Ausgabedaten für Ihren Labeling-Job mit einem Verschlüsselungsschlüssel verschlüsseln soll. AWS KMS Um Ihre Ausgabedaten zu verschlüsseln, müssen Sie über die erforderlichen AWS KMS Berechtigungen für die IAM-Rolle verfügen, die Sie im vorherigen Schritt angegeben haben. Weitere Details finden Sie unter [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md). 

1. Wählen Sie im Abschnitt **Aufgabentyp** unter **Aufgabenkategorie** das Dropdown-Menü aus, um Ihre Aufgabenkategorie auszuwählen. 

1. Wählen Sie unter **Aufgabenauswahl** Ihren Aufgabentyp aus. 

1. (Optional) Geben Sie Tags für Ihren Kennzeichnungsauftrag an, damit er später in der Konsole leichter zu finden ist. 

1. Wählen Sie **Weiter** aus. 

1. Wählen Sie im Abschnitt **Auftragnehmer** die Art der Arbeitskräfte aus, die Sie verwenden möchten. Weitere Informationen zu Ihren Optionen für Arbeitskräfte finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

1. Nach der Auswahl der Worker geben Sie den Wert für **Task timeout (Aufgaben-Timeout)** an. Dies ist die maximale Zeit, die ein Auftragnehmer für die Arbeit an einer Aufgabe hat.

   Bei 3D-Punktwolken-Anmerkungsaufgaben beträgt das standardmäßige Aufgaben-Timeout 3 Tage. Die Standard-Timeouts für Text- und Bildklassifizierung sowie Beschriftungsaufträge der Beschriftungsüberprüfung betragen 5 Minuten. Die Standard-Timeouts für alle anderen Beschriftungsaufträge betragen 60 Minuten.

1. (Optional) Bei den Aufgabentypen Begrenzungsrahmen, semantische Segmentierung, Videoframes und 3D-Punktwolke können Sie **Vorhandene Beschriftungen anzeigen** auswählen, wenn Sie Beschriftungen für Ihre Eingabedaten anzeigen möchten, damit Auftragnehmer sie überprüfen oder anpassen können.

   Für Bounding-Box- und semantische Segmentierung-Beschriftungsaufträgen wird dadurch ein Anpassungsbeschriftungsauftrag erstellt.

   Für Aufträge zur Beschriftung von 3D-Punktwolken und Videoframes:
   + Wählen Sie **Anpassung** aus, um einen Auftrag zur Korrekturbeschriftung zu erstellen. Wenn Sie diese Option auswählen, können Sie neue Beschriftungen hinzufügen, aber Sie können keine vorhandenen Beschriftungen aus dem vorherigen Auftrag entfernen oder bearbeiten. Optional können Sie Attribute für die Beschriftungskategorie und die Rahmenattribute auswählen, die Auftragnehmer bearbeiten sollen. Um ein Attribut bearbeitbar zu machen, aktivieren Sie das Kontrollkästchen **Auftragnehmern erlauben, dieses Attribut zu bearbeiten** für das entsprechende Attribut.

     Optional können Sie neue Beschriftungskategorien- und Rahmenattribute hinzufügen. 
   + Wählen Sie **Überprüfung** aus, um einen Auftrag zur Anpassung der Beschriftung zu erstellen. Wenn Sie diese Option auswählen, können Sie keine vorhandenen Beschriftungen aus dem vorherigen Auftrag hinzufügen, ändern oder entfernen. Optional können Sie Attribute für die Beschriftungskategorie und die Rahmenattribute auswählen, die Auftragnehmer bearbeiten sollen. Um ein Attribut bearbeitbar zu machen, aktivieren Sie das Kontrollkästchen **Auftragnehmern erlauben, dieses Attribut zu bearbeiten** für das entsprechende Attribut. 

     Wir empfehlen, dass Sie den Beschriftungen, die Auftragnehmer überprüfen sollen, neue Attribute der Beschriftungskategorie hinzufügen oder ein oder mehrere Rahmenattribute hinzufügen, damit die Auftragnehmer Informationen über den gesamten Rahmen bereitstellen können.

    Weitere Informationen finden Sie unter [Beschriftungsverifizierung und Anpassung](sms-verification-data.md).

1. Konfigurieren Sie die Benutzeroberfläche Ihrer Auftragnehmer:
   + Wenn Sie einen [integrierten Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) verwenden, geben Sie die Arbeitsanweisungen und Beschriftungen an. 
     + Für die Bildklassifizierung und die Textklassifizierung (Einzel- und Mehrfachbeschriftung) müssen Sie mindestens zwei Beschriftungskategorien angeben. Für alle anderen integrierten Aufgabentypen müssen Sie mindestens eine Beschriftungskategorie angeben. 
     + (Optional) Wenn Sie einen Auftrag zur Beschriftung von 3D-Punktwolken oder Videoframes erstellen, können Sie Beschriftungskategorieattribute (nicht unterstützt für die semantische 3D-Punktwolken-Segmentierung) und Frame-Attribute angeben. Kategorieattribute für Beschriftungen können einer oder mehreren Beschriftungen zugewiesen werden. Frame-Attribute werden auf jeder Punktwolken- oder Video-Frame-Auftragnehmer-Beschriftung angezeigt. Weitere Informationen finden Sie unter [Benutzeroberfläche (UI) für Auftragnehmer](sms-point-cloud-general-information.md#sms-point-cloud-worker-task-ui) für 3D-Punktwolke und [Benutzeroberfläche (UI) für Auftragnehmer](sms-video-overview.md#sms-video-worker-task-ui) für Videoframe. 
     + (Optional) Fügen Sie **zusätzliche Anweisungen** hinzu, um Ihren Auftragnehmern bei der Erledigung Ihrer Aufgabe zu unterstützen.
   + Wenn Sie einen benutzerdefinierten Beschriftungs-Workflow erstellen, müssen Sie:
     + Eine [benutzerdefinierte Vorlage](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step2.html) in das Codefeld eingeben. Benutzerdefinierte Vorlagen können mit einer Kombination aus HTML, der Liquid-Vorlagensprache und unseren vorgefertigten Webkomponenten erstellt werden. Optional können Sie eine Basisvorlage aus dem Dropdown-Menü auswählen, um loszulegen. 
     + Geben Sie vornotierende und nachnotierende Lambda-Funktionen an. Informationen zum Erstellen dieser Funktionen finden Sie unter [Verarbeitung von Daten in einem benutzerdefinierten Etikettierungs-Workflow mit AWS Lambda](sms-custom-templates-step3.md).

1. (Optional) Sie können die Option **Vorschau anzeigen** auswählen, um eine Vorschau Ihrer Arbeitsanweisungen und Beschriftungen anzuzeigen und mit der Benutzeroberfläche zu interagieren. Stellen Sie sicher, dass der Popup-Blocker des Browsers deaktiviert ist, bevor Sie die Vorschau generieren.

1. Wählen Sie **Erstellen** aus.

Nachdem Sie den Kennzeichnungsauftrag erfolgreich erstellt haben, werden Sie zur Seite **Kennzeichnungsaufträge** weitergeleitet. Der Status des soeben erstellten Beschriftungsauftrags lautet **In Bearbeitung**. Dieser Status wird schrittweise aktualisiert, wenn Auftragnehmer Ihre Aufgaben erledigen. Wenn alle Aufgaben erfolgreich abgeschlossen wurden, ändert sich der Status in **Abgeschlossen**.

Wenn beim Erstellen des Beschriftungsaftrags ein Problem aufgetreten ist, ändert sich der Status in **Fehlgeschlagen**.

Um weitere Details zum Auftrag anzuzeigen, wählen Sie den Namen des Kennzeichnungsauftrags aus. 

## Nächste Schritte
<a name="sms-create-labeling-job-console-next-steps"></a>

Nachdem sich der Status des Beschriftungsauftrags in **Abgeschlossen** geändert hat, können Sie die Ausgabedaten in dem Amazon-S3-Bucket anzeigen, den Sie beim Erstellen des Beschriftungsauftrags angegeben haben. Weitere Informationen zum Format der Ausgabedaten finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md).

# Erstellen eines Kennzeichnungsauftrags (API)
<a name="sms-create-labeling-job-api"></a>

Um einen Labeling-Job mithilfe der SageMaker Amazon-API zu erstellen, verwenden Sie den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Vorgang. Spezifische Anweisungen zum Erstellen einer Labeling-Aufgabe für einen integrierten Aufgabentyp finden Sie auf der Seite für den betreffenden [Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html). Informationen zum Erstellen eines Streaming-Labeling-Jobs, bei dem es sich um einen Labeling-Job handelt, der ständig ausgeführt wird, finden Sie unter [Erstellen eines Streaming-Beschriftungsjobs](sms-streaming-create-job.md).

Um die Operation `CreateLabelingJob` zu verwenden, benötigen Sie Folgendes:
+ Eine Worker-Aufgabenvorlage (`UiTemplateS3Uri`) oder einen UI ARN der menschlichen Aufgaben (`[HumanTaskUiArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UiConfig.html#sagemaker-Type-UiConfig-HumanTaskUiArn)`) in Amazon S3. 
  + Für 3D-Punktwolkenaufträge, Video-Objekterkennungs- und -verfolgungsaufträge und NER-Aufträge verwenden Sie den in `HumanTaskUiArn` aufgeführten ARN für Ihren Aufgabentyp.
  + Wenn Sie einen anderen integrierten Aufgabentyp als 3D-Punktwolken-Aufgaben verwenden, können Sie Ihre Worker-Anweisungen einer der vordefinierten Vorlagen hinzufügen und die Vorlage (mit der Erweiterung .html oder .liquid) in Ihrem S3-Bucket speichern. Suchen Sie die Pre-Build-Vorlagen auf der Seite für Ihren [Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html).
  + Wenn Sie einen benutzerdefinierten Kennzeichnungs-Workflow verwenden, können Sie eine benutzerdefinierte Vorlage erstellen und die Vorlage in Ihrem S3-Bucket speichern. Weitere Informationen zum Erstellen einer benutzerdefinierten Auftragnehmervorlage finden Sie unter [Erstellen einer benutzerdefinierte Vorlage für Auftragnehmeraufgaben](sms-custom-templates-step2.md). Informationen zu benutzerdefinierten HTML-Elementen, die Sie zum Anpassen Ihrer Vorlage verwenden können, finden Sie unter [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md). Eine Sammlung von Demo-Vorlagen für eine Vielzahl von Kennzeichnungsaufgaben finden Sie unter [Amazon SageMaker Ground Truth Sample Task UIs ](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis).
+ Eine Eingabemanifestdatei, die Ihre Eingabedaten in Amazon S3 angibt. Geben Sie den Speicherort Ihrer Eingabemanifestdatei in `ManifestS3Uri` an. Hinweise zum Erstellen eines Eingabemanifests finden Sie unter [Eingabedaten](sms-data-input.md). Wenn Sie einen Streaming-Labeling-Job erstellen, ist dies optional. Wie Sie einen Streaming-Etikettierungsauftrag erstellen können, erfahren Sie unter [Erstellen eines Streaming-Beschriftungsjobs](sms-streaming-create-job.md).
+ Ein Amazon-S3-Bucket zum Speichern Ihrer Ausgabedaten. Sie geben diesen Bucket und optional ein Präfix in `S3OutputPath` an.
+ Eine Konfigurationsdatei der Beschriftungskategorie. Jeder Etikettenkategoriename muss eindeutig sein. Geben Sie den Speicherort dieser Datei in Amazon S3 mit dem Parameter `LabelCategoryConfigS3Uri` an. Das Format und die Labelkategorien für diese Datei hängen vom verwendeten Aufgabentyp ab:
  + Für die Bildklassifizierung und die Textklassifizierung (Einzel- und Mehrfachbeschriftung) müssen Sie mindestens zwei Labelkategorien angeben. Für alle anderen Aufgabentypen ist mindestens eine Anzahl von Labelkategorien erforderlich. 
  + Für Aufgaben zur Erkennung benannter Entitäten müssen Sie in dieser Datei Anweisungen für Mitarbeiter angeben. Siehe [Stellen Sie Anweisungen für Auftragnehmer in einer Konfigurationsdatei für die Beschriftungskategorie bereit](sms-named-entity-recg.md#worker-instructions-ner) für weitere Einzelheiten und ein Beispiel.
  + Für 3D-Punktwolken- und Videobildaufgaben verwenden Sie das Format in [Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen](sms-label-cat-config-attributes.md).
  + Für alle anderen integrierten Aufgabentypen und benutzerdefinierten Aufgaben muss die Konfigurationsdatei für die Bezeichnungskategorie eine JSON-Datei mit dem folgenden Format sein. Sie identifizieren die Bezeichnungen, die Sie verwenden möchten, indem Sie `label_1`, `label_2`,`...`, `label_n` durch Ihre Bezeichnungskategorien ersetzen. 

    ```
    {
        "document-version": "2018-11-28",
        "labels": [
            {"label": "label_1"},
            {"label": "label_2"},
            ...
            {"label": "label_n"}
        ]
    }
    ```
+ Eine AWS Identity and Access Management (IAM-) Rolle mit der angehängten [AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)verwalteten IAM-Richtlinie und mit Berechtigungen für den Zugriff auf Ihre S3-Buckets. Geben Sie diese Rolle in `RoleArn` an. Weitere Informationen zu dieser Richtlinie finden Sie unter [Verwendung von IAM-verwalteten Richtlinien zusammen mit Ground Truth](sms-security-permissions-get-started.md). Wenn Sie präzisere Berechtigungen benötigen, finden Sie weitere Informationen unter [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md).

  Wenn der Name des Eingabe- oder Ausgabe-Buckets `sagemaker` nicht enthält, können Sie der Rolle, die an den die Operation `CreateLabelingJob` übergeben wird, eine Richtlinie ähnlich der folgenden anfügen.

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "s3:GetObject"
              ],
              "Resource": [
                  "arn:aws:s3:::my_input_bucket/*"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "s3:PutObject"
              ],
              "Resource": [
                  "arn:aws:s3:::my_output_bucket/*"
              ]
          }
      ]
  }
  ```

------
+ Der Amazon-Ressourcenname (ARN) einer Funktion für die Vor- und Nachanmerkung (oder Anmerkungskonsolidierung) in AWS Lambda für die Verarbeitung Ihrer Ein- und Ausgabedaten. 
  + Lambda-Funktionen sind in jeder AWS Region für integrierte Aufgabentypen vordefiniert. Den Lambda-ARN vor der Anmerkung für Ihre Region finden Sie unter. [PreHumanTaskLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_HumanTaskConfig.html#SageMaker-Type-HumanTaskConfig-PreHumanTaskLambdaArn) Den Lambda-ARN zur Annotationskonsolidierung für Ihre Region finden Sie unter. [AnnotationConsolidationLambdaArn](https://docs.aws.amazon.com/sagemaker/latest/dg/API_AnnotationConsolidationConfig.html#SageMaker-Type-AnnotationConsolidationConfig-AnnotationConsolidationLambdaArn) 
  + Für benutzerdefinierte Beschriftungs-Workflows müssen Sie einen benutzerdefinierten Lambda-ARN vor und nach der Beschriftung angeben. Wie Sie diese Lambda-Funktionen erstellen können, erfahren Sie unter [Verarbeitung von Daten in einem benutzerdefinierten Etikettierungs-Workflow mit AWS Lambda](sms-custom-templates-step3.md).
+ Ein ARN des Arbeitsteams, den Sie in `WorkteamArn` angeben. Sie erhalten einen ARN für ein Arbeitsteam, wenn Sie eine Belegschaft eines Lieferanten abonnieren oder ein privates Arbeitsteam gründen. Wenn Sie einen Label-Job für einen Aufgabentyp „Videoframe“ oder „Punktwolke“ erstellen, können Sie die Belegschaft nicht einsetzen. Amazon Mechanical Turk Verwenden Sie für alle anderen Aufgabentypen, um die Belegschaft von Mechanical Turk zu verwenden, den folgenden ARN. *`region`*Ersetzen Sie es durch die AWS Region, die Sie für die Erstellung des Labeling-Jobs verwenden.

  ` arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default`

  Wenn Sie die [Amazon Mechanical Turk Arbeitskraft](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-public.html) verwenden, verwenden Sie den `ContentClassifiers`-Parameter in `DataAttributes` von `InputConfig`, um zu erklären, dass Ihr Inhalt frei von persönlich identifizierbaren Informationen und Inhalten für Erwachsene ist. 

  Ground Truth *verlangt*, dass Ihre Eingabedaten frei von persönlich identifizierbare Informationen (PII) sind, wenn Sie die Belegschaft von Mechanical Turk einsetzen. Wenn Sie Mechanical Turk verwenden und nicht mithilfe der `FreeOfPersonallyIdentifiableInformation`-Markierung angeben, dass Ihre Eingabedaten frei von persönlich identifizierbaren Informationen sind, schlägt Ihr Labeling-Job fehl. Verwenden Sie die `FreeOfAdultContent` Flagge, um zu erklären, dass Ihre Eingabedaten frei von Inhalten für Erwachsene sind. SageMaker KI kann die Mitarbeiter von Amazon Mechanical Turk einschränken, die Ihre Aufgabe sehen können, wenn sie Inhalte für Erwachsene enthält. 

  Weitere Informationen zu Arbeitsteams und Arbeitskräften finden Sie unter [Arbeitskräfte](sms-workforce-management.md). 
+ Wenn Sie die Arbeitskräfte von Mechanical Turk nutzen, müssen Sie den Preis angeben, den Sie den Arbeitern für die Ausführung einer einzelnen Aufgabe in `PublicWorkforceTaskPrice` zahlen.
+ Um die Aufgabe zu konfigurieren, müssen Sie mit `TaskDescription` und `TaskTitle` eine Aufgabenbeschreibung und einen Aufgabentitel angeben. Optional können Sie Zeitlimits angeben, mit denen gesteuert wird, wie lange die Mitarbeiter an einer einzelnen Aufgabe arbeiten müssen (`TaskTimeLimitInSeconds`) und wie lange Aufgaben im Worker-Portal verbleiben, das den Mitarbeitern zur Verfügung steht (`TaskAvailabilityLifetimeInSeconds`).
+ (Optional) Bei [einigen Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html) können mehrere Worker ein einzelnes Datenobjekt kennzeichnen, indem eine Zahl größer als eins für den Parameter `NumberOfHumanWorkersPerDataObject` eingegeben wird. Weitere Informationen zur Anmerkungskonsolidierung finden Sie unter [Anmerkungskonsolidierung](sms-annotation-consolidation.md).
+ (Optional) Um einen automatisierten Datenbeschriftungsauftrag zu erstellen, geben Sie eine der unter ARNs aufgeführten Optionen [LabelingJobAlgorithmSpecificationArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobAlgorithmsConfig.html)an`LabelingJobAlgorithmsConfig`. Dieser ARN identifiziert den Algorithmus, der im automatisierten Daten-Labeling-Job verwendet wird. Der mit diesem ARN verknüpfte Aufgabentyp muss mit dem Aufgabentyp der von Ihnen angegebenen `PreHumanTaskLambdaArn` und `AnnotationConsolidationLambdaArn` übereinstimmen. Das automatische Daten-Labeling wird für die folgenden Aufgabentypen unterstützt: Bildklassifizierung, Begrenzungsrahmen, semantische Segmentierung und Textklassifizierung. Die Mindestanzahl von Objekten für das automatische Daten-Labeling beträgt 1.250, und wir empfehlen dringend, mindestens 5.000 Objekte bereitzustellen. Weitere Informationen zu automatisierten Daten-Labeling-Aufträgen finden Sie unter [Automatisieren des Daten-Labeling](sms-automated-labeling.md).
+ (Optional) Sie können angeben [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#API_CreateLabelingJob_RequestSyntax](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#API_CreateLabelingJob_RequestSyntax), dass der Labeling-Job beendet wird, wenn eine der Bedingungen erfüllt ist. Sie können Stoppbedingungen verwenden, um die Kosten des Etikettierungsauftrags zu kontrollieren.

## Beispiele
<a name="sms-create-labeling-job-api-examples"></a>

Die folgenden Code-Beispiele zeigen, wie ein Beschriftungsauftrag mit `CreateLabelingJob` erstellt wird. Sie können sich diese Beispiel-Notebooks auch GitHub im [SageMaker AI Examples Repository](https://github.com/aws/amazon-sagemaker-examples/tree/master/ground_truth_labeling_jobs) ansehen.

------
#### [ AWS SDK für Python (Boto3) ]

Nachfolgend ein Beispiel für eine [AWS Python SDK (Boto3) Anfrage](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zur Erstellung eines Beschriftungsauftrags für einen eingebauten Aufgabentyp in der Region USA Ost (Nord-Virginia) unter Verwendung einer privaten Arbeitskraft. Ersetzen Sie alles *red-italized text* durch Ihre Ressourcen und Spezifikationen für die Etikettierung. 

```
response = client.create_labeling_job(
    LabelingJobName="example-labeling-job",
    LabelAttributeName="label",
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': "s3://bucket/path/manifest-with-input-data.json"
            }
        },
        'DataAttributes': {
            'ContentClassifiers': [
                "FreeOfPersonallyIdentifiableInformation"|"FreeOfAdultContent",
            ]
        }
    },
    OutputConfig={
        'S3OutputPath': "s3://bucket/path/file-to-store-output-data",
        'KmsKeyId': "string"
    },
    RoleArn="arn:aws:iam::*:role/*",
    LabelCategoryConfigS3Uri="s3://bucket/path/label-categories.json",
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': "arn:aws:sagemaker:region:*: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': [
            "Images",
            "Classification",
            "Multi-label"
        ],
        'TaskTitle': "Multi-label image classification task",
        'TaskDescription': "Select all labels that apply to the images shown",
        'NumberOfHumanWorkersPerDataObject': 1,
        'TaskTimeLimitInSeconds': 3600,
        'TaskAvailabilityLifetimeInSeconds': 21600,
        'MaxConcurrentTaskCount': 1000,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': "arn:aws:lambda:us-east-1:432418664414:function:ACS-"
        },
    Tags=[
        {
            'Key': "string",
            'Value': "string"
        },
    ]
)
```

------
#### [ AWS CLI ]

Im Folgenden finden Sie ein Beispiel für eine AWS CLI-Anforderung zur Erstellung eines Labeling-Jobs für einen integrierten Aufgabentyp in der Region USA Ost (Nord-Virginia) mithilfe der [Belegschaft von Amazon Mechanical Turk](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-public.html). Weitere Informationen finden Sie unter [start-human-loop](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-labeling-job.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*. Ersetzen Sie alles *red-italized text* durch Ihre Ressourcen und Spezifikationen für den Etikettierungsauftrag. 

```
$ aws --region us-east-1 sagemaker create-labeling-job \
--labeling-job-name "example-labeling-job" \
--label-attribute-name "label" \
--role-arn "arn:aws:iam::account-id:role/role-name" \
--input-config '{
        "DataAttributes": {
            "ContentClassifiers": [
                "FreeOfPersonallyIdentifiableInformation",
                "FreeOfAdultContent"
            ]
        },
        "DataSource": {
            "S3DataSource": {
                "ManifestS3Uri": "s3://bucket/path/manifest-with-input-data.json"
            }
        }
    }' \
--output-config '{
        "KmsKeyId": "",
        "S3OutputPath": "s3://bucket/path/file-to-store-output-data"
    }' \
--human-task-config '{
        "AnnotationConsolidationConfig": {
            "AnnotationConsolidationLambdaArn": "arn:aws:lambda:us-east-1:432418664414:function:ACS-"
        },
        "TaskAvailabilityLifetimeInSeconds": 21600,
        "TaskTimeLimitInSeconds": 3600,
        "NumberOfHumanWorkersPerDataObject": 1,
        "PreHumanTaskLambdaArn":  "arn:aws:lambda:us-east-1:432418664414:function:PRE-tasktype",
        "WorkteamArn": "arn:aws:sagemaker:us-east-1:394669845002:workteam/public-crowd/default",
        "PublicWorkforceTaskPrice": {
            "AmountInUsd": {
                "Dollars": 0,
                "TenthFractionsOfACent": 6,
                "Cents": 3
            }
        },
        "TaskDescription": "Select all labels that apply to the images shown",
        "MaxConcurrentTaskCount": 1000,
        "TaskTitle": "Multi-label image classification task",,
        "TaskKeywords": [
            "Images",
            "Classification",
            "Multi-label"
        ],
        "UiConfig": {
            "UiTemplateS3Uri": "s3://bucket/path/custom-worker-task-template.html"
        }
    }'
```

------

Weitere Informationen zu dieser Operation finden Sie im Abschnitt [CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateLabelingJob.html). Informationen zur Verwendung anderer sprachspezifischer Sprachen SDKs finden Sie unter „[Siehe auch](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateLabelingJob.html#API_CreateLabelingJob_SeeAlso)“ im `CreateLabelingJobs` Thema. 

# Erstellen eines Streaming-Beschriftungsjobs
<a name="sms-streaming-create-job"></a>

Streaming-Labeling-Jobs ermöglichen es Ihnen, einzelne Datenobjekte in Echtzeit an einen ständig laufenden Streaming-Labeling-Job zu senden. Um einen Streaming-Labeling-Job zu erstellen, können Sie den ARN für das Amazon-SNS-*Eingabethema* `SnsTopicArn` im `InputConfig`-Parameter angeben, wenn Sie eine [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)-Anforderung stellen. Optional können Sie auch ein Amazon SNS *Ausgabethema* erstellen und es in `OutputConfig` angeben, wenn Sie Labeldaten in Echtzeit erhalten möchten.

**Wichtig**  
Wenn Sie ein neuer Benutzer von Ground Truth Streaming-Labeling-Jobs sind, wird empfohlen, [Ground Truth Streaming-Kennzeichnungsaufträge](sms-streaming-labeling-job.md) zu überprüfen, bevor Sie einen Streaming-Labeling-Job erstellen. Ground Truth Streaming-Labeling-Jobs werden nur über die SageMaker API unterstützt.

Verwenden der folgenden Abschnitte, um die Ressourcen zu erstellen, die Sie benötigen und verwenden können, um einen Streaming-Label-Job zu erstellen:
+ Erfahren Sie, wie Sie SNS-Themen mit den für Ground Truth Streaming-Labeling-Jobs erforderlichen Berechtigungen erstellen, indem Sie die Schritte unter [Verwenden von Amazon-SNS-Themen für das Daten-Labeling](sms-create-sns-input-topic.md) befolgen. Ihre SNS-Themen müssen in derselben AWS Region wie Ihr Labeling-Job erstellt werden. 
+ Unter [Abonnieren Sie einen Endpunkt für Ihr Amazon SNS-Ausgabe-Thema](sms-create-sns-input-topic.md#sms-streaming-subscribe-output-topic) erfahren Sie, wie Sie einen Endpunkt so einrichten, dass er jedes Mal, wenn eine Labeling-Aufgabe abgeschlossen ist, Ausgabedaten von Labeling-Aufgaben an einem bestimmten Endpunkt empfängt.
+ Informationen dazu, wie Sie Ihren Amazon S3-Bucket so konfigurieren, dass er Benachrichtigungen an Ihr Amazon SNS-Eingabethema sendet, finden Sie unter [Erstellen von Amazon-S3-basierten Bucket-Ereignisbenachrichtigungen gemäß dem in Ihrem Labeling-Job definierten Amazon SNS](sms-streaming-s3-setup.md).
+ Fügen Sie optional Datenobjekte, die Sie kennzeichnen möchten, sobald der Labeling-Job gestartet wird, zu Ihrem Eingabemanifest hinzu. Weitere Informationen finden Sie unter [Erstellen Sie eine Manifestdatei (optional)](sms-streaming-manifest.md).
+ Für die Erstellung eines Labeling-Jobs sind weitere Ressourcen erforderlich, z. B. eine IAM-Rolle, ein Amazon-S3-Bucket, eine Worker-Aufgabenvorlage und Labelkategorien. Diese sind in der Ground-Truth-Dokumentation zur Erstellung eines Labeling-Jobs beschrieben. Weitere Informationen finden Sie unter [Erstellen eines Kennzeichnungsauftrags](sms-create-labeling-job.md). 
**Wichtig**  
Wenn Sie einen Beschriftungsauftrag erstellen, müssen Sie eine IAM-Ausführungsrolle angeben. Hängen Sie die AWS verwaltete Richtlinie **AmazonSageMakerGroundTruthExecution**an diese Rolle an, um sicherzustellen, dass sie über die erforderlichen Berechtigungen zur Ausführung Ihres Labeling-Jobs verfügt. 

Wenn Sie eine Anfrage zur Erstellung eines Streaming-Labeling-Jobs einreichen, ist der Status Ihres Labeling-Jobs `Initializing`. Sobald der Labeling-Job aktiv ist, wechselt der Status zu `InProgress`. Senden Sie keine neuen Datenobjekte an Ihren Label-Job und versuchen Sie nicht, Ihren Label-Job zu beenden, solange er sich im `Initializing` Status befindet. Sobald sich der Status zu `InProgress` ändert, können Sie mit dem Senden neuer Datenobjekte mithilfe von Amazon SNS und der Amazon S3-Konfiguration beginnen. 

**Topics**
+ [Verwenden von Amazon-SNS-Themen für das Daten-Labeling](sms-create-sns-input-topic.md)
+ [Erstellen von Amazon-S3-basierten Bucket-Ereignisbenachrichtigungen gemäß dem in Ihrem Labeling-Job definierten Amazon SNS](sms-streaming-s3-setup.md)
+ [Erstellen Sie eine Manifestdatei (optional)](sms-streaming-manifest.md)
+ [Erstellen Sie einen Streaming-Labeling-Job mit der SageMaker API](sms-streaming-create-labeling-job-api.md)
+ [Einen Streaming-Labeling-Job beenden](sms-streaming-stop-labeling-job.md)

# Verwenden von Amazon-SNS-Themen für das Daten-Labeling
<a name="sms-create-sns-input-topic"></a>

Sie müssen einen Amazon-SNS-Input erstellen, um einen Streaming-Labeling-Job zu erstellen. Optional können Sie ein Amazon SNS-Ausgabethema angeben.

Wenn Sie ein Amazon-SNS-Thema erstellen, das Sie in Ihrem Streaming-Labeling-Job verwenden möchten, notieren Sie sich das Thema Amazon-Ressourcenname (ARN). Die ARN ist der Eingabewert für den Parameter `SnsTopicArn` in `InputConfig` und `OutputConfig`, wenn Sie einen Labeling-Job erstellen.

## Erstellen eines -Themas
<a name="sms-streaming-input-topic"></a>

Ihr Eingabethema wird verwendet, um neue Datenobjekte an Ground Truth zu senden. Um ein Eingabethema zu erstellen, folgen Sie den Anweisungen unter [Erstellen eines Amazon SNS-Themas](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) im Amazon Simple Notification Service Developer Guide.

Notieren Sie sich Ihren ARN für das Eingabethema und verwenden Sie ihn als Eingabe für den `CreateLabelingJob` Parameter `SnsTopicArn` in`InputConfig`. 

## Erstellen eines -Themas
<a name="sms-streaming-output-topic"></a>

Wenn Sie ein Ausgabethema angeben, wird es verwendet, um Benachrichtigungen zu senden, wenn ein Datenobjekt beschriftet wird. Wenn Sie ein -Thema erstellen, haben Sie die Möglichkeit, einen Verschlüsselungsschlüssel hinzuzufügen. Verwenden Sie diese Option, um Ihrem Thema einen vom AWS Key Management Service Kunden verwalteten Schlüssel hinzuzufügen, um die Ausgabedaten Ihres Labeling-Jobs zu verschlüsseln, bevor sie in Ihrem Ausgabethema veröffentlicht werden.

Um ein Ausgabethema zu erstellen, folgen Sie den Anweisungen unter [Erstellen eines Amazon SNS-Themas](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) im Amazon Simple Notification Service Entwicklerhandbuch.

Wenn Sie Verschlüsselung hinzufügen, müssen Sie dem Thema zusätzliche Berechtigungen zuweisen. Weitere Informationen finden Sie unter [Fügen Sie Ihrem Ausgabethema Verschlüsselung hinzu (optional)](#sms-streaming-encryption).

**Wichtig**  
Wenn Sie Ihrem Ausgabethema beim Erstellen eines Themas in der Konsole einen vom Kunden verwalteten Schlüssel hinzufügen möchten, verwenden Sie nicht die alias/aws/sns Option **(Standard)**. Wählen Sie einen kundenverwalteten Schlüssel, den Sie erstellt haben. 

Notieren Sie sich Ihren ARN für das Eingabethema und verwenden Sie ihn in Ihrer `CreateLabelingJob` Anfrage im Parameter `SnsTopicArn` in`OutputConfig`. 

### Fügen Sie Ihrem Ausgabethema Verschlüsselung hinzu (optional)
<a name="sms-streaming-encryption"></a>

Um Nachrichten zu verschlüsseln, die zu Ihrem Ausgabethema veröffentlicht wurden, müssen Sie einen vom AWS KMS Kunden verwalteten Schlüssel für Ihr Thema angeben. Ändern Sie die folgende Richtlinie und fügen Sie sie Ihrem vom Kunden verwalteten Schlüssel hinzu, um Ground Truth die Erlaubnis zu erteilen, Ausgabedaten zu verschlüsseln, bevor sie in Ihrem Ausgabethema veröffentlicht werden.

Ersetzen Sie *`<account_id>`* durch die ID des Kontos, mit dem Sie Ihr Thema erstellen. Informationen dazu, wie Sie Ihre AWS Konto-ID finden, [finden Sie unter Ihre AWS Konto-ID](https://docs.aws.amazon.com/IAM/latest/UserGuide/console_account-alias.html#FindingYourAWSId) finden. 

------
#### [ 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": "*"
        }
    ]
}
```

------

Darüber hinaus müssen Sie die folgende Richtlinie ändern und der Ausführungsrolle hinzufügen, mit der Sie Ihren Labeling-Job erstellen (den Eingabewert für `RoleArn`). 

Ersetzen Sie *`<account_id>`* durch die ID des Kontos, mit dem Sie Ihr Thema erstellen. Ersetzen Sie *`<region>`* durch die AWS -Region, in der Sie den Kennzeichnungsauftrag erstellen. Ersetzen Sie `<key_id>` durch Ihre vom Kunden verwaltete Schlüssel-ID.

------
#### [ 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"
        }
    ]
}
```

------

Weitere Informationen zum Erstellen und Sichern von Schlüsseln finden Sie unter [Schlüssel erstellen](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) und [Schlüsselrichtlinien verwenden](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) im AWS Key Management Service Entwicklerhandbuch.

## Abonnieren Sie einen Endpunkt für Ihr Amazon SNS-Ausgabe-Thema
<a name="sms-streaming-subscribe-output-topic"></a>

Wenn ein Worker eine Labeling-Job-Aufgabe aus einem Ground Truth-Streaming-Labeling-Job abschließt, verwendet Ground Truth Ihr Ausgabethema, um Ausgabedaten auf einem oder mehreren von Ihnen angegebenen Endpunkten zu veröffentlichen. Um Benachrichtigungen zu erhalten, wenn ein Mitarbeiter eine Labeling-Aufgabe beendet, müssen Sie einen Endpunkt für Ihr Amazon-SNS-Ausgabe-Thema abonnieren.

Weitere Informationen zum Hinzufügen von Endpunkten zu einem Ausgabe-Thema finden Sie unter [Amazon SNS SNS-Thema abonnieren](https://docs.aws.amazon.com/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html) im Entwicklerhandbuch zu *Amazon Simple Notification Service*.

Weitere Informationen über das Ausgabedatenformat, das auf diesen Endpunkten veröffentlicht wird, finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md). 

**Wichtig**  
Wenn Sie kein Endgerät für Ihr Amazon SNS SNS-Ausgabethema abonnieren, erhalten Sie keine Benachrichtigungen, wenn neue Datenobjekte beschriftet werden. 

# Erstellen von Amazon-S3-basierten Bucket-Ereignisbenachrichtigungen gemäß dem in Ihrem Labeling-Job definierten Amazon SNS
<a name="sms-streaming-s3-setup"></a>

Änderungen an Ihrem Amazon S3 S3-Bucket, Ereignisbenachrichtigungen, werden entweder über die Amazon S3 S3-Konsole, die API, sprachspezifisch AWS SDKs oder über aktiviert AWS Command Line Interface. Ereignisse müssen denselben ARN des Amazon-SNS-Eingabethemas verwenden (`SnsTopicArn`), der im `InputConfig`-Parameter als Teil Ihrer `CreateLabelingJob`-Anforderung angegeben wurde.

**Amazon-S3-Bucket-Benachrichtigungen und Ihre Eingabedaten sollten nicht im selben Amazon-S3-Bucket gespeichert werden.**  
Wenn Sie Ereignisbenachrichtigungen erstellen, verwenden Sie nicht denselben Amazon-S3-Speicherort, den Sie als `S3OutputPath` in den `OutputConfig`-Parametern angegeben haben. Die Verknüpfung der beiden Buckets kann dazu führen, dass unerwünschte Datenobjekte von Ground Truth zur Kennzeichnung verarbeitet werden.

Sie entscheiden, welche Arten von Ereignissen Sie an Ihr Amazon-SNS-Thema senden möchten. Ground Truth erstellt einen Labeling-Job, wenn Sie [Ereignisse zur Objekterstellung](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/enable-event-notifications.html#enable-event-notifications-types) senden.

Die an Ihr Amazon SNS SNS-Eingabethema gesendete Ereignisstruktur muss eine JSON-Nachricht sein, die mit derselben Struktur formatiert ist wie unter [Ereignisnachrichtenstruktur](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html).

Beispiele dafür, wie Sie mithilfe der Amazon S3 S3-Konsole, AWS SDK for .NET und AWS SDK for Java eine Ereignisbenachrichtigung für Ihren Amazon S3 S3-Bucket einrichten können, finden Sie in dieser exemplarischen Vorgehensweise, [Exemplarische Vorgehensweise: Einen Bucket für Benachrichtigungen konfigurieren (SNS-Thema oder SQS-Warteschlange)](https://docs.aws.amazon.com/AmazonS3/latest/dev/ways-to-add-notification-config-to-bucket.html) im *Amazon Simple Storage* Service-Benutzerhandbuch.

 EventBridge Amazon-Benachrichtigungen werden nicht nativ unterstützt. Um die EventBridge basierte Benachrichtigung verwenden zu können, müssen Sie das Ausgabeformat so aktualisieren, dass es dem JSON-Format entspricht, das in der [Struktur der Ereignisnachricht](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html) verwendet wird.

# Erstellen Sie eine Manifestdatei (optional)
<a name="sms-streaming-manifest"></a>

Wenn Sie einen Streaming-Etikettierungsauftrag erstellen, haben Sie einmalig die Möglichkeit, Objekte (z. B. Bilder oder Text) zu einer Eingabemanifestdatei hinzuzufügen, die Sie in `ManifestS3Uri` von `CreateLabelingJob` angeben. Wenn der Streaming-Labeling-Job gestartet wird, werden diese Objekte an Mitarbeiter gesendet oder der Amazon SQS SQS-Warteschlange hinzugefügt, wenn die Gesamtzahl der Objekte `MaxConcurrentTaskCount` überschreitet. Die Ergebnisse werden dem Amazon S3-Pfad hinzugefügt, den Sie bei der Erstellung des Etikettierungsauftrags in regelmäßigen Abständen angeben, wenn die Mitarbeiter die Etikettierungsaufgaben erledigen. Die Ausgabedaten werden an jeden Endpunkt gesendet, auf dem Sie Ihr Ausgabethema abonnieren. 

Wenn Sie anfängliche Objekte zur Kennzeichnung bereitstellen möchten, erstellen Sie eine Manifestdatei, die diese Objekte identifiziert, und platzieren Sie sie in Amazon S3. Geben Sie den S3-URI dieser Manifestdatei `ManifestS3Uri` in der Datei ein `InputConfig`.

Informationen zum Formatieren Ihrer Manifestdatei finden Sie unter [Eingabedaten](sms-data-input.md). Informationen zur automatischen Generierung einer Manifestdatei mithilfe der SageMaker AI-Konsole (wird für 3D-Punktwolken-Aufgabentypen nicht unterstützt) finden Sie unter[Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge](sms-console-create-manifest-file.md).

# Erstellen Sie einen Streaming-Labeling-Job mit der SageMaker API
<a name="sms-streaming-create-labeling-job-api"></a>

Nachfolgend finden Sie ein Beispiel für eine [AWS Python SDK (Boto3)-Aufforderung](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job), mit der Sie einen Streaming-Etikettierungsauftrag für einen integrierten Aufgabentyp in der Region USA Ost (N. Virginia) starten können. Weitere Informationen zu den einzelnen Parametern finden Sie weiter unten unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html). Informationen dazu, wie Sie mithilfe dieser API und der zugehörigen sprachspezifischen Sprache einen Labeling-Job [erstellen können SDKs, finden Sie unter Labeling-Job (API)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-create-labeling-job-api.html) erstellen.

In diesem Beispiel sind die folgenden Parameter zu beachten:
+ `SnsDataSource`– Dieser Parameter erscheint in `InputConfig` und `OutputConfig` und wird verwendet, um Ihre Eingabe- bzw. Ausgabe-Amazon SNS-Themen zu identifizieren. Um einen Streaming-Labeling-Job zu erstellen, müssen Sie ein Amazon SNS SNS-Eingabethema angeben. Optional können Sie auch ein Amazon SNS-Ausgabethema angeben.
+ `S3DataSource` – Dieser Parameter ist optional. Verwenden Sie diesen Parameter, wenn Sie eine Eingabe-Manifestdatei mit Datenobjekten einschließen möchten, die Sie kennzeichnen möchten, sobald der Labeling-Job gestartet wird.
+ [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)– Dieser Parameter wird ignoriert, wenn Sie einen Streaming-Labeling-Job erstellen. Weitere Informationen zum Beenden eines Streaming-Labeling-Jobs finden Sie unter [Einen Streaming-Labeling-Job beenden](sms-streaming-stop-labeling-job.md).
+ Streaming-Labeling-Jobs unterstützen kein automatisches Daten-Labeling. Schließen Sie den `LabelingJobAlgorithmsConfig` Parameter nicht ein.

```
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'
        },
    ]
)
```

# Einen Streaming-Labeling-Job beenden
<a name="sms-streaming-stop-labeling-job"></a>

Mithilfe dieses Vorgangs können Sie Ihren Streaming-Labeling-Job manuell beenden [StopLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StopLabelingJob.html). 

Wenn Ihr Beschriftungsauftrag länger als 10 Tage ungenutzt bleibt, wird er automatisch von Ground Truth gestoppt. In diesem Zusammenhang gilt ein Labeling-Job als *inaktiv*, wenn keine Objekte an das Amazon SNS SNS-Eingabethema gesendet werden und keine Objekte in Ihrer Amazon SQS-Warteschlange verbleiben und darauf warten, beschriftet zu werden. Wenn beispielsweise keine Datenobjekte in das Amazon SNS-Eingabethema eingespeist wurden und alle Objekte, die dem Labeling-Job zugeführt wurden, bereits beschriftet sind, startet Ground Truth einen Timer. Wenn nach dem Start des Timers innerhalb von 10 Tagen keine Artikel eingegangen sind, wird der Labeling-Job gestoppt. 

Wenn ein Labeling-Job gestoppt wird, ist sein Status so, dass `STOPPING` Ground Truth die Ressourcen für Labeling-Jobs bereinigt und Ihr Amazon SNS-Thema aus Ihrer Amazon SQS-Warteschlange abbestellt. Die Amazon SQS wird von Ground Truth *nicht* gelöscht, da diese Warteschlange unverarbeitete Datenobjekte enthalten kann. Sie sollten die Warteschlange manuell löschen, wenn Sie vermeiden möchten, dass zusätzliche Gebühren von Amazon SQS anfallen. Weitere Informationen finden Sie unter [Amazon SQS Preise](https://aws.amazon.com/sqs/pricing/).

# Referenz zur Konfigurationsdatei für Kennzeichnungskategorien mit Kennzeichnungskategorie- und Frame-Attributen
<a name="sms-label-cat-config-attributes"></a>

Wenn Sie mithilfe der Amazon SageMaker API-Operation einen 3D-Punktwolken- oder Videoframe-Labeling-Job erstellen`CreateLabelingJob`, verwenden Sie eine Label-Kategorie-Konfigurationsdatei, um Ihre Labels und Arbeitsanweisungen anzugeben. Optional können Sie in Ihrer Attributdatei für die Etikettenkategorie auch Folgendes angeben:
+ Sie können *Beschriftungskategorie-Attribute* für die Aufgabentypen Videobild und 3D-Punktwolken-Objektverfolgung und Objekterkennung bereitstellen. Auftragnehmer können ein oder mehrere Attribute verwenden, um weitere Informationen über ein Objekt zu erhalten. Sie können beispielsweise das Attribut *okkludiert* verwenden, damit Auftragnehmer erkennen, wenn ein Objekt teilweise behindert wird. Sie können entweder ein Attribut der Beschriftungskategorie für eine einzelne Beschriftung mithilfe des Parameters `categoryAttributes` oder für alle Beschriftungen mit dem Parameter `categoryGlobalAttributes` angeben. 
+ Sie können *Frame-Attribute* für die Aufgabentypen Videoframe und 3D-Punktwolken-Objektverfolgung und Objekterkennung angeben, indem Sie `frameAttributes` verwenden: Wenn Sie ein Frame-Attribut erstellen, wird es auf jedem Frame oder jeder Punktwolke in der Worker-Aufgabe angezeigt. Bei Aufträgen zur Kennzeichnung von Videobildern sind dies Attribute, die Mitarbeiter einem ganzen Videoframe zuweisen. Bei Aufträgen zur Kennzeichnung von 3D-Punktwolken werden diese Attribute auf eine einzelne Punktwolke angewendet. Verwenden Sie Frame-Attribute, damit Mitarbeiter mehr Informationen über die Szene in einem bestimmten Frame oder einer bestimmten Punktwolke bereitstellen können.
+ Bei Aufträgen zur Kennzeichnung von Videobildern verwenden Sie die Konfigurationsdatei für die Labelkategorie, um den Aufgabentyp (Begrenzungsrahmen, Polylinie, Polygon oder Schlüsselpunkt) anzugeben, der an die Mitarbeiter gesendet wird. 

Für Mitarbeiter ist die Angabe von Werten für Label-Kategorieattribute und Frame-Attribute optional.

**Wichtig**  
Sie sollten den Namen des Etikettenattributs in `auditLabelAttributeName` angeben, wenn Sie einen Prüfauftrag ausführen, um die Etiketten zu überprüfen oder anzupassen. Verwenden Sie diesen Parameter, um die im Labeling-Job [LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName)verwendeten Anmerkungen einzugeben, die Ihr Worker anpassen soll. Wenn Sie in der Konsole einen Label-Job erstellen und keinen Namen für das Label-Attribut angegeben haben, wird der **Name** Ihres Jobs als verwendet. LabelAttributeName

In den folgenden Themen finden Sie Beispiele für eine Konfigurationsdatei für die Kennzeichnungskategorie für verschiedene Arten von Kennzeichnungsaufträgen. Außerdem werden das Schema und die Kontingente einer Kategoriekonfigurationsdatei erläutert.

**Topics**
+ [Beispiele: Konfigurationsdateien für Kennzeichnungskategorien für 3D-Punktwolken-Kennzeichnungsjobs](#sms-label-cat-config-attributes-3d-pc)
+ [Beispiele: Konfigurationsdateien für Kennzeichnungskategorien für Jobs zur Kennzeichnung von Video-Frames](#sms-label-cat-config-attributes-vid-frame)
+ [Schema der Konfigurationsdatei für Kennzeichnungskategorien](#sms-label-cat-config-attributes-schema)
+ [Kontingente für Beschriftung und Beschriftungskategorieattribute](#sms-point-cloud-label-cat-limits)

## Beispiele: Konfigurationsdateien für Kennzeichnungskategorien für 3D-Punktwolken-Kennzeichnungsjobs
<a name="sms-label-cat-config-attributes-3d-pc"></a>

Die folgenden Themen enthalten Beispiele für Konfigurationsdateien für 3D-Punktwolken-Kennzeichnungskategorien, um Aufträge zur Objekterkennung, Objektverfolgung, semantischen Segmentierung sowie zur Anpassung und Überprüfung von Kennzeichnungen durchzuführen.

**Topics**
+ [Beispiel: 3D-Punktwolken-Objektverfolgung und -Objekterkennung](#example-3d-point-cloud-object)
+ [Beispiel: Semantische 3D-Punktwolkensegmentierung](#example-3d-point-cloud-semantic)
+ [Beispiel: 3D-Punktwolken-Anpassung](#example-3d-point-cloud-adjustment)
+ [Beispiel: 3D-Punktwolken-Verifizierung](#example-3d-point-cloud-verification)

### Beispiel: 3D-Punktwolken-Objektverfolgung und -Objekterkennung
<a name="example-3d-point-cloud-object"></a>

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei für Labelkategorien, die Labelkategorieattribute für einen Beschriftungsauftrag zur Erkennung von 3D-Punktwolkenobjekten oder zur Objektverfolgung enthält. Dieses Beispiel enthält zwei Frame-Attribute, die allen Punktwolken hinzugefügt werden, die für den Beschriftungsauftrag eingereicht wurden. Die `Car` Bezeichnung wird vier Attribute für die Beschriftungskategorie enthalten –`X`, `Y`, `Z`, und das globale Attribut `W`.

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"],
            "isRequired":true 
        },   
    ],
    "categoryGlobalAttributes": [
        {
            "name":"W",
            "description":"label-attributes-for-all-labels",
            "type":"string",
            "enum": ["foo", "buzz", "biz"]
        }
    ],
    "labels": [
        {
            "label": "Car",
            "categoryAttributes": [
                {
                    "name":"X",
                    "description":"enter a number",
                    "type":"number",
                },
                {
                    "name":"Y",
                    "description":"select an option",
                    "type":"string",
                    "enum":["y1", "y2"]
                },
                {
                    "name":"Z",
                    "description":"submit a free-form response",
                    "type":"string",
                }
            ]
        },
        {
            "label": "Pedestrian",
            "categoryAttributes": [...]
        }
    ],
    "instructions": {"shortInstruction":"Draw a tight Cuboid", "fullInstruction":"<html markup>"}
}
```

### Beispiel: Semantische 3D-Punktwolkensegmentierung
<a name="example-3d-point-cloud-semantic"></a>

Im Folgenden finden Sie ein Beispiel für eine Beschriftungskategorie-Konfigurationsdatei für eine semantische 3D-Punktwolken-Segmentierungsaufgabe. 

Attribute der Beschriftungskategorie werden für semantische 3D-Punktwolken-Segmentierungsaufgabentypen nicht unterstützt. Rahmenattribute werden unterstützt. Wenn Sie Attribute der Beschriftungskategorie für einen semantischen Segmentierungskennzeichnungsauftrag angeben, werden diese ignoriert.

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"]
        },   
    ],
    "labels": [
        {
            "label": "Car",
        },
        {
            "label": "Pedestrian",
        },
        {
            "label": "Cyclist",
        }
    ],
    "instructions": {"shortInstruction":"Select the appropriate label and paint all objects in the point cloud that it applies to the same color", "fullInstruction":"<html markup>"}
}
```

### Beispiel: 3D-Punktwolken-Anpassung
<a name="example-3d-point-cloud-adjustment"></a>

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei für eine Beschriftungskategorie für einen Auftrag zur Erkennung von 3D-Punktwolkenobjekten oder zur Anpassung der Objektverfolgung. Für 3D-Punktwolken werden semantische Segmentierungsanpassungen und Beschriftungsaufträge `categoryGlobalAttributes` und `categoryAttributes` nicht unterstützt. 

Sie müssen `auditLabelAttributeName` eingeben, um den Namen des Etikettenattributs des vorherigen Etikettierungsauftrags anzugeben, den Sie zur Erstellung des Anpassungsetikettierungsauftrags verwenden. Optional können Sie den `editsAllowed` Parameter verwenden, um anzugeben, ob ein Label- oder Rahmenattribut bearbeitet werden kann. 

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "editsAllowed":"none",
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"]
        },   
    ],
    "categoryGlobalAttributes": [
        {
            "name":"W",
            "editsAllowed":"any",
            "description":"label-attributes-for-all-labels",
            "type":"string",
            "enum": ["foo", "buzz", "biz"]
        }
    ],
    "labels": [
        {
            "label": "Car",
            "editsAllowed":"any",
            "categoryAttributes": [
                {
                    "name":"X",
                    "description":"enter a number",
                    "type":"number"
                },
                {
                    "name":"Y",
                    "description":"select an option",
                    "type":"string",
                    "enum":["y1", "y2"],
                    "editsAllowed":"any"
                },
                {
                    "name":"Z",
                    "description":"submit a free-form response",
                    "type":"string",
                    "editsAllowed":"none"
                }
            ]
        },
        {
            "label": "Pedestrian",
            "categoryAttributes": [...]
        }
    ],
    "instructions": {"shortInstruction":"Draw a tight Cuboid", "fullInstruction":"<html markup>"},
    // include auditLabelAttributeName for label adjustment jobs
    "auditLabelAttributeName": "myPrevJobLabelAttributeName"
}
```

### Beispiel: 3D-Punktwolken-Verifizierung
<a name="example-3d-point-cloud-verification"></a>

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei für eine Labelkategorie, die Sie für eine Labeling-Aufgabe zur Erkennung von 3D-Punktwolkenobjekten oder zur Überprüfung der Objektverfolgung verwenden können. Für eine Überprüfung der semantischen Segmentierung von 3D-Punktwolken, werden `categoryGlobalAttributes` und `categoryAttributes` nicht unterstützt. 

Sie müssen `auditLabelAttributeName` eingeben, um den Namen des Etikettenattributs des vorherigen Etikettierungsauftrags anzugeben, den Sie für die Erstellung des Prüfetikettierungsauftrags verwenden. Darüber hinaus müssen Sie den `editsAllowed` Parameter verwenden, um anzugeben, dass keine Beschriftungen bearbeitet werden können. 

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "editsAllowed":"any", 
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "editsAllowed":"any", 
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"]
        },   
    ],
    "categoryGlobalAttributes": [
        {
            "name":"W",
            "editsAllowed":"none", 
            "description":"label-attributes-for-all-labels",
            "type":"string",
            "enum": ["foo", "buzz", "biz"]
        }
    ],
    "labels": [
        {
            "label": "Car",
            "editsAllowed":"none", 
            "categoryAttributes": [
                {
                    "name":"X",
                    "description":"enter a number",
                    "type":"number",
                    "editsAllowed":"none"
                },
                {
                    "name":"Y",
                    "description":"select an option",
                    "type":"string",
                    "enum":["y1", "y2"],
                    "editsAllowed":"any"
                },
                {
                    "name":"Z",
                    "description":"submit a free-form response",
                    "type":"string",
                    "editsAllowed":"none"
                }
            ]
        },
        {
            "label": "Pedestrian",
            "editsAllowed":"none", 
            "categoryAttributes": [...]
        }
    ],
    "instructions": {"shortInstruction":"Draw a tight Cuboid", "fullInstruction":"<html markup>"},
    // include auditLabelAttributeName for label verification jobs
    "auditLabelAttributeName": "myPrevJobLabelAttributeName"
}
```

## Beispiele: Konfigurationsdateien für Kennzeichnungskategorien für Jobs zur Kennzeichnung von Video-Frames
<a name="sms-label-cat-config-attributes-vid-frame"></a>

Welche Annotationstools Ihrem Mitarbeiter zur Verfügung stehen und welcher Aufgabentyp verwendet wird, hängt von dem Wert ab, den `annotationType` Sie angeben. Wenn Sie beispielsweise möchten, dass Mitarbeiter anhand von Schlüsselpunkten Änderungen in der Pose bestimmter Objekte über mehrere Frames hinweg verfolgen, geben Sie `Keypoint` für `annotationType` an. Wenn Sie keinen Annotationstyp festlegen, `BoundingBox` wird standardmäßig verwendet. 

Die folgenden Themen enthalten Beispiele für Konfigurationsdateien für Video-Frame-Kategorien.

**Topics**
+ [Beispiel: Video-Frame-Schlüsselpunkt](#example-video-frame-keypoint)
+ [Beispiel: Video-Frame-Anpassung](#example-video-frame-adjustment)
+ [Beispiel: Video-Frame-Verifizierung](#example-video-frame-verification)

### Beispiel: Video-Frame-Schlüsselpunkt
<a name="example-video-frame-keypoint"></a>

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei mit Schlüsselpunktbeschriftungskategorien für Videoframes und Label-Kategorieattributen. Dieses Beispiel enthält zwei Frame-Attribute, die allen Frames hinzugefügt werden, die für den Beschriftungsauftrag eingereicht wurden. Die `Car` Bezeichnung wird vier Attribute für die Labelkategorie enthalten–`X`, `Y`, `Z`, und das globale Attribut `W`. 

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"]
        },   
    ],
    "categoryGlobalAttributes": [
        {
            "name":"W",
            "description":"label-attributes-for-all-labels",
            "type":"string",
            "enum": ["foo", "buz", "buz2"]
        }
    ],
    "labels": [
        {
            "label": "Car",
            "categoryAttributes": [
                {
                    "name":"X",
                    "description":"enter a number",
                    "type":"number",
                },
                {
                    "name":"Y",
                    "description":"select an option",
                    "type":"string",
                    "enum": ["y1", "y2"]
                },
                {
                    "name":"Z",
                    "description":"submit a free-form response",
                    "type":"string",
                }
            ]
        },
        {
            "label": "Pedestrian",
            "categoryAttributes": [...]
        }
    ],
    "annotationType":"Keypoint",
    "instructions": {"shortInstruction":"add example short instructions here", "fullInstruction":"<html markup>"}
}
```

### Beispiel: Video-Frame-Anpassung
<a name="example-video-frame-adjustment"></a>

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei für Labelkategorien, die Sie für einen Beschriftungsauftrag zur Anpassung von Videobildern verwenden können.

Sie müssen `auditLabelAttributeName` eingeben, um den Namen des Label-Attributs des vorherigen Beschriftungsaufträge anzugeben, mit dem Sie den Beschriftungsauftrag zur Überprüfung erstellt haben. Optional können Sie den `editsAllowed` Parameter verwenden, um anzugeben, ob Beschriftungen, Etikettenkategorieattribute oder Rahmenattribute bearbeitet werden können. 

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "editsAllowed":"none", 
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"]
        },   
    ],
    "categoryGlobalAttributes": [
        {
            "name":"W",
            "editsAllowed":"any", 
            "description":"label-attributes-for-all-labels",
            "type":"string",
            "enum": ["foo", "buz", "buz2"]
        }
    ],
    "labels": [
        {
            "label": "Car",
            "editsAllowed":"any", 
            "categoryAttributes": [
                {
                    "name":"X",
                    "description":"enter a number",
                    "type":"number",
                    "editsAllowed":"any"
                },
                {
                    "name":"Y",
                    "description":"select an option",
                    "type":"string",
                    "enum": ["y1", "y2"],
                    "editsAllowed":"any"
                },
                {
                    "name":"Z",
                    "description":"submit a free-form response",
                    "type":"string",
                    "editsAllowed":"none"
                }
            ]
        },
        {
            "label": "Pedestrian",
            "editsAllowed":"none", 
            "categoryAttributes": [...]
        }
    ],
    "annotationType":"Keypoint",
    "instructions": {"shortInstruction":"add example short instructions here", "fullInstruction":"<html markup>"},
    // include auditLabelAttributeName for label adjustment jobs
    "auditLabelAttributeName": "myPrevJobLabelAttributeName"
}
```

### Beispiel: Video-Frame-Verifizierung
<a name="example-video-frame-verification"></a>

Im Folgenden finden Sie ein Beispiel für eine Konfigurationsdatei für eine Labelkategorie für einen Auftrag zur Kennzeichnung von Videoframes.

Sie müssen `auditLabelAttributeName` eingeben, um den Namen des Label-Attributs des vorherigen Beschriftungsaufträge anzugeben, mit dem Sie den Beschriftungsauftrag zur Überprüfung erstellt haben. Darüber hinaus müssen Sie den `editsAllowed` Parameter verwenden, um anzugeben, dass keine Beschriftungen bearbeitet werden können. 

```
{
    "documentVersion": "2020-03-01",
    "frameAttributes": [
        {
            "name":"count players",
            "editsAllowed":"none", 
            "description":"How many players to you see in the scene?",
            "type":"number"
        },
        {
            "name":"select one",
            "editsAllowed":"any", 
            "description":"describe the scene",
            "type":"string",
            "enum":["clear","blurry"]
        },   
    ],
    "categoryGlobalAttributes": [
        {
            "name":"W",
            "editsAllowed":"none", 
            "description":"label-attributes-for-all-labels",
            "type":"string",
            "enum": ["foo", "buz", "buz2"]
        }
    ],
    "labels": [
        {
            "label": "Car",
            "editsAllowed":"none", 
            "categoryAttributes": [
                {
                    "name":"X",
                    "description":"enter a number",
                    "type":"number",
                    "editsAllowed":"any"
                },
                {
                    "name":"Y",
                    "description":"select an option",
                    "type":"string",
                    "enum": ["y1", "y2"],
                    "editsAllowed":"any"
                },
                {
                    "name":"Z",
                    "description":"submit a free-form response",
                    "type":"string",
                    "editsAllowed":"none"
                }
            ]
        },
        {
            "label": "Pedestrian",
            "editsAllowed":"none", 
            "categoryAttributes": [...]
        }
    ],
    "annotationType":"Keypoint",
    "instructions": {"shortInstruction":"add example short instructions here", "fullInstruction":"<html markup>"},
    // include auditLabelAttributeName for label adjustment jobs
    "auditLabelAttributeName": "myPrevJobLabelAttributeName"
}
```

## Schema der Konfigurationsdatei für Kennzeichnungskategorien
<a name="sms-label-cat-config-attributes-schema"></a>

In der folgenden Tabelle sind Elemente aufgeführt, die Sie in die Konfigurationsdatei der Beschriftungskategorie aufnehmen können und müssen.

**Anmerkung**  
Der Parameter `annotationType` wird nur für Auftrag zur Kennzeichnung von Videoframes unterstützt. 


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
| frameAttributes |  Nein  |  Eine Liste von JSON-Objekten **Erforderliche Parameter in jedem JSON-Objekt:** `name`, `type`, `description` `minimum` und `maximum` sind erforderlich, falls `type` is `"number"` **Optionale Parameter in jedem JSON-Objekt:** `enum`, `editsAllowed`, `isRequired`  | Verwenden Sie diesen Parameter, um ein Rahmenattribut zu erstellen, das auf alle Frames oder 3D-Punktwolken in Ihrem Beschriftungsauftrag angewendet wird.Weitere Informationen finden Sie in der dritten Tabelle in diesem Abschnitt.  | 
| categoryGlobalAttributes |  Nein  |  Eine Liste von JSON-Objekten **Erforderliche Parameter in jedem JSON-Objekt:** `name`, `type` `minimum` und `maximum` sind erforderlich, falls `type` is `"number"` **Optionale Parameter in jedem JSON-Objekt:** `description`, `enum`, `editsAllowed`, `isRequired`   | Verwenden Sie diesen Parameter, um Etikettenkategorie-Attribute zu erstellen, die auf alle Etiketten angewendet werden, die Sie in `labels` angeben. Weitere Informationen finden Sie in der dritten Tabelle in diesem Abschnitt.  | 
| labels |  Ja  |  Eine Liste von bis zu 30 JSON-Objekten **Erforderliche Parameter in jedem JSON-Objekt:** `label` **Optionale Parameter in jedem JSON-Objekt:** `categoryAttributes`, `editsAllowed`  |  Verwenden Sie diesen Parameter, um Ihre Beschriftungen oder Klassen anzugeben. Fügen Sie eine `label` für jede Klasse hinzu.  Um einer Beschriftung ein Beschriftungskategorieattribut hinzuzufügen, fügen Sie dieser Beschriftung `categoryAttributes` hinzu. Verwenden Sie `editsAllowed`, um anzugeben, ob ein Etikett im Rahmen eines Anpassungsbeschriftungsauftrags bearbeitet werden kann oder nicht. Stellen Sie `editsAllowed` auf `"none"` für Prüfbeschriftungsaufträge ein. Weitere Informationen können Sie der folgenden Tabelle entnehmen.  | 
| annotationType (wird nur für Aufträge zur Kennzeichnung von Videoframes unterstützt)  |  Nein   |  String **Akzeptierte Parameter:** `BoundingBox`, `Polyline`, `Polygon`, `Keypoint` **Standard:** `BoundingBox`  |  Verwenden Sie diese Option, um den Aufgabentyp für Ihre Videoframe-Beschriftungsaufträge anzugeben. Wählen Sie `Polygon` beispielsweise für eine Aufgabe zur Erkennung von Polygon-Videoframe-Objekten.  Wenn Sie `annotationType` bei der Erstellung eines Videoframe-Beschriftungsaufträge nicht angeben, verwendet Ground Truth `BoundingBox` standardmäßig.   | 
| instructions |  Nein  | Ein JSON-ObjektErforderliche Parameter in jedem JSON-Objekt:`"shortInstruction"`, `"fullInstruction"` |  Verwenden Sie diesen Parameter, um Anweisungen für die Auftragnehmer hinzuzufügen, damit Ihre Auftragnehmer ihre Aufgaben erledigen können. Weitere Informationen zu Anweisungen für Auftragnehmer finden Sie unter [Anweisungen für Arbeitnehmer](sms-point-cloud-general-information.md#sms-point-cloud-worker-instructions-general).  Kurze Anweisungen müssen weniger als 255 Zeichen lang sein und lange Anweisungen müssen unter 2.048 Zeichen lang sein.  Weitere Informationen finden Sie unter [Erstellen von Anweisungsseiten](sms-creating-instruction-pages.md).  | 
| auditLabelAttributeName |  Erforderlich für die Aufgabentypen Anpassung und Überprüfung  |  String  |  Geben Sie den im Labeling-Job [LabelAttributeName](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-LabelAttributeName)verwendeten Namen ein, dessen Anmerkungen Sie anpassen möchten.  Verwenden Sie diesen Parameter nur, wenn Sie einen Anpassungsauftrag für die Videobild- und 3D-Punktwolken-Objekterkennung, die Objektverfolgung oder die semantische 3D-Punktwolkensegmentierung erstellen.   | 

### Objektschema für Labels
<a name="sms-labels-schema"></a>

In der folgenden Tabelle werden die Parameter beschrieben, die Sie verwenden können und müssen, um eine Liste von `Labels` zu erstellen. Jeder Parameter sollte in einem JSON-Objekt enthalten sein. 


****  

| Parameter | Erforderlich | Akzeptierte Werte | Description | 
| --- | --- | --- | --- | 
| label |  Ja  |  Zeichenfolge  |  Der Name der Etikettenkategorie, die den Arbeitnehmern angezeigt wird. Jeder Etikettenkategoriename muss eindeutig sein.  | 
| categoryAttributes |  Nein  |  Eine Liste von JSON-Objekten **Erforderliche Parameter in jedem JSON-Objekt:** `name`, `type` `minimum` und `maximum` sinf erforderlich, falls `type` ist `"number"` **Optionale Parameter in jedem JSON-Objekt:** `description`, `enum`, `editsAllowed`, `isRequired`  | Verwenden Sie diesen Parameter, um Etikettenkategorie-Attribute zu bestimmten Etiketten hinzuzufügen, die Sie in `labels` angeben. Um einem Label ein oder mehrere Label-Kategorie-Attribute hinzuzufügen, fügen Sie das `categoryAttributes` JSON-Objekt in dasselbe `labels` JSON-Objekt wie ein `label`.Weitere Informationen können Sie der folgenden Tabelle entnehmen.  | 
| editsAllowed |  Nein  |  Zeichenfolge **Unterstützte Werte**: `"none"`: Es sind keine Änderungen zulässig. oder `"any"` (Standard): Alle Änderungen sind erlaubt.  |  Gibt an, ob ein Etikett von Mitarbeitern bearbeitet werden kann oder nicht. Fügen Sie bei Beschriftungsaufträgen zur *Anpassung* von Videorahmen oder 3D-Punktwolken diesen Parameter zu einem oder mehreren JSON-Objekten in der `labels` Liste hinzu, um anzugeben, ob ein Worker eine Bezeichnung bearbeiten kann oder nicht. Bei Beschriftungsaufträgen zur *Überprüfung* von 3D-Punktwolken und Videoframes fügen Sie diesen Parameter mit dem Wert `"none"` jedem JSON-Objekt in der `labels` Liste hinzu. Dadurch können alle Beschriftungen nicht mehr bearbeitet werden.  | 

### FrameAttributes und Schema categoryGlobalAttributes
<a name="sms-category-attributes-schema"></a>

In der folgenden Tabelle werden die Parameter beschrieben, die Sie verwenden können und müssen, um ein Rahmenattribut `frameAttributes` mit und ein Kategorieattribut mit den `categoryGlobalAttributes` and `categoryAttributes` Parametern zu erstellen.


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
| name |  Ja  |  Zeichenfolge  |  Verwenden Sie diesen Parameter, um Ihrer Etikettenkategorie oder Ihrem Rahmenattribut einen Namen zu geben. Dies ist der Attributname, den die Arbeiter sehen. Jeder Attributname für die Labelkategorie in Ihrer Labelkategorie-Konfigurationsdatei muss eindeutig sein. Globale Etikettenkategorieattribute und beschriftungsspezifische Etikettenkategorieattribute können nicht denselben Namen haben.  | 
| type |  Ja  |  Zeichenfolge **Erforderliche Werte**: `"string"` oder `"number"`  |  Verwenden Sie diesen Parameter, um den Attributtyp der Beschriftungskategorie zu definieren.  Wenn Sie `"string"` und `type` angeben und einen `enum` Wert für dieses Attribut angeben, können Mitarbeiter aus einer der von Ihnen angegebenen Optionen wählen.  Wenn Sie keinen `enum` Wert angeben und `"string"` und `type` angeben, können Mitarbeiter Text in freier Form eingeben.  Wenn Sie `number` für `type` angeben, kann der Mitarbeiter eine Zahl zwischen den `minimum` und `maximum` von Ihnen angegebenen Zahlen eingeben.   | 
| enum |  Nein  |  Liste von Zeichenfolgen  |  Verwenden Sie diesen Parameter, um die Optionen festzulegen, aus denen Arbeiter für diese Etikettenkategorie oder dieses Rahmenattribut wählen können. Auftragnehmer können einen Wert auswählen, der in `enum` angegeben ist. Wenn Sie beispielsweise `["foo", "buzz", "bar"` für `enum` angeben, können Mitarbeiter eine der Optionen `foo`, `buzz`, oder `bar` wählen. Sie müssen `"string"` für `type` angeben, um eine `enum` Liste verwenden zu können.  | 
| description |  `frameAttributes`: Yes `categoryAttributes` oder`categoryGlobalAttributes`: Nein  |  Zeichenfolge  |  Verwenden Sie diesen Parameter, um eine Beschreibung des Attributs für die Beschriftungskategorie hinzuzufügen. Sie können dieses Feld verwenden, um den Mitarbeitern weitere Informationen über das Attribut zu erhalten.  Dieses Feld ist nur für Rahmenattribute erforderlich.  | 
| minimum und maximum | Erforderlich, falls das Attribut type ist "number" | Ganzzahlen |  Verwenden Sie diese Parameter, um Mindest- und Höchstwerte (einschließlich) anzugeben, die Mitarbeiter für numerische Labelkategorien- oder Rahmenattribute eingeben können. Sie müssen Werte `"number"` für `type` angeben, um `minimum` und `maximum` zu verwenden.  | 
| editsAllowed |  Nein  |  Zeichenfolge **Erforderliche Werte**: `"none"`: Es sind keine Änderungen zulässig. oder `"any"` (Standard): Alle Änderungen sind erlaubt.  |  Gibt an, ob eine Labelkategorie oder ein Rahmenattribut von Mitarbeitern bearbeitet werden kann. Fügen Sie bei Aufträgen zur *Anpassung* und *Überprüfung* der Kennzeichnung von Videoframes oder 3D-Punktwolken diesen Parameter zur Kennzeichnung von Kategorie- und Frame-Attributen hinzu, um anzugeben, ob ein Worker ein Attribut bearbeiten kann oder nicht.  | 
| isRequired |  Nein  |  Boolesch  |  Gibt an, ob Mitarbeiter ein Attribut mit Anmerkungen versehen müssen. Mitarbeiter können den Auftrag erst einreichen, wenn alle erforderlichen Attribute mit Anmerkungen versehen wurden.  | 

## Kontingente für Beschriftung und Beschriftungskategorieattribute
<a name="sms-point-cloud-label-cat-limits"></a>

Sie können bis zu 10 Beschriftungskategorieattribute pro Klasse angeben. Diese 10-Attribut-Kontingente enthalten Attribute der globalen Beschriftungskategorie. Wenn Sie beispielsweise vier Attribute der globalen Beschriftungskategorie erstellen und dann drei Beschriftungskategorieattribute der Beschriftung `X` zuweisen, weist diese Beschriftung insgesamt 4 \$1 3 = 7 Beschriftungskategorieattribute auf. Alle Beschränkungen für die Beschriftungskategorie und das Beschriftungskategorieattribut finden Sie in der folgenden Tabelle.


****  

|  Typ  |  Min  |  Max  | 
| --- | --- | --- | 
|  Bezeichnungen (`Labels`)  |  1  |  30  | 
|  Etikett Name Zeichenquote  |  1  |  16  | 
|  Attribute der Etikettenkategorie pro Etikett (Summe aus `categoryAttributes` und `categoryGlobalAttributes`)  |  0  |  10  | 
|  Label-Kategorieattribute pro Etikett (Summe aus `categoryAttributes` und `categoryGlobalAttributes`) in freier Texteingabe.   | 0 | 5 | 
|  Rahmenattribute  |  0  |  10  | 
|  Freiform-Texteingabeattribute in `frameAttributes`.  | 0 | 5 | 
|  Attributname Zeichenanteil (`name`)  |  1  |  16  | 
|  Attributbeschreibung Zeichenquote (`description`)  |  0  |  128  | 
|  Attribut Typ Zeichen Quote (`type`)  |  1  |  16  | 
|  Zulässige Werte in der `enum` Liste für ein `string` Attribut  | 1 | 10 | 
|  Zeichenkontingent für einen Wert in der `enum` Liste  | 1 | 16 | 
| Maximale Anzahl an Zeichen in der Freitextantwort für Freiformtext frameAttributes | 0 | 1000 | 
| Maximale Anzahl an Zeichen in der Freitextantwort für Freiformtext categoryAttributes und categoryGlobalAttributes | 0 | 80 | 

# Verwenden von Eingabe- und Ausgabedaten
<a name="sms-data"></a>

Die Eingabedaten, die Sie Amazon SageMaker Ground Truth zur Verfügung stellen, werden zur Kennzeichnung an Ihre Mitarbeiter gesendet. Sie wählen die Daten aus, die an Ihre Auftragnehmer gesendet werden sollen, indem Sie eine einzige Manifestdatei erstellen, die alle Daten definiert, für die eine Kennzeichnung erforderlich sind, oder indem Sie Eingabedatenobjekte an einen laufenden Streaming-Kennzeichnungsauftrag senden, der in Echtzeit gekennzeichnet wird. 

Die Ausgabedaten sind das Ergebnis Ihres Kennzeichnungsauftrags. Die Ausgabedatendatei oder *erweiterte Manifestdatei* enthält Kennzeichnungsdaten für jedes Objekt, das Sie an den Kennzeichnungsauftrag senden, sowie Metadaten für die Kennzeichnung, die den Datenobjekten zugewiesen wurde.

Wenn Sie Bildklassifizierung (einzelne und mehrere Labels), Textklassifizierung (einzelne und mehrere Labels), Objekterkennung und semantische Segmentierung verwenden, um einen Label-Job zu erstellen, können Sie die resultierende erweiterte Manifest-Datei verwenden, um einen Schulungsjob zu starten. SageMaker Eine Demonstration, wie Sie ein erweitertes Manifest verwenden, um ein Machine-Learning-Modell zur Objekterkennung mit Amazon SageMaker AI zu trainieren, finden Sie unter [object\$1detection\$1augmented\$1manifest\$1training.ipynb](https://sagemaker-examples.readthedocs.io/en/latest/ground_truth_labeling_jobs/object_detection_augmented_manifest_training/object_detection_augmented_manifest_training.html). Weitere Informationen finden Sie unter [Erweiterte Manifestdateien für Trainingsjobs](augmented-manifest.md).

**Topics**
+ [Eingabedaten](sms-data-input.md)
+ [3D-Punktwolkeneingabedaten](sms-point-cloud-input-data.md)
+ [Videoframe-Eingabedaten](sms-video-frame-input-data-overview.md)
+ [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md)

# Eingabedaten
<a name="sms-data-input"></a>

Die Eingabedaten sind die Datenobjekte, die Sie an Ihre Arbeitskräfte zur Kennzeichnung senden. Es gibt zwei Möglichkeiten, Datenobjekte zur Kennzeichnung an Ground Truth zu senden: 
+ Senden Sie mithilfe einer Eingabemanifestdatei eine Liste von Datenobjekten, die beschriftet werden müssen.
+ Senden Sie einzelne Datenobjekte in Echtzeit an einen ständig laufenden Streaming-Kennzeichnungsauftrag. 

Wenn Sie einen Datensatz haben, der einmal beschriftet werden muss, und Sie keinen fortlaufenden Kennzeichnungsauftrag benötigen, erstellen Sie einen Standard-Kennzeichnungsauftrag mithilfe einer Eingabemanifestdatei. 

Wenn Sie regelmäßig neue Datenobjekte an Ihren Kennzeichnungsauftrag senden möchten, nachdem dieser gestartet wurde, erstellen Sie einen Streaming-Kennzeichnungsauftrag. Wenn Sie einen Streaming-Kennzeichnungsauftrag erstellen, können Sie optional eine Eingabemanifestdatei verwenden, um eine Gruppe von Daten anzugeben, die sofort beim Start des Auftrags beschriftet werden sollen. Sie können fortlaufend neue Datenobjekte an einen Streaming-Kennzeichnungsauftrag senden, solange dieser aktiv ist. 

**Anmerkung**  
 SageMaker Streaming-Labeling-Jobs werden nur über die API unterstützt. Sie können mit der SageMaker AI-Konsole keinen Streaming-Labeling-Job erstellen.

Für die folgenden Aufgabentypen gelten spezielle Anforderungen und Optionen für Eingabedaten:
+ Informationen zu den Anforderungen an die Eingabedaten für den [3D-Punktwolken-](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud.html)Kennzeichnungsauftrag finden Sie unter [3D-Punktwolkeneingabedaten](sms-point-cloud-input-data.md). 
+ Informationen zu den Anforderungen an die Eingabedaten für [Video-Frame](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-video-task-types.html)-Kennzeichnungsaufträge finden Sie unter[Videoframe-Eingabedaten](sms-video-frame-input-data-overview.md).

**Topics**
+ [Eingabemanifestdateien](sms-input-data-input-manifest.md)
+ [Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge](sms-console-create-manifest-file.md)
+ [Unterstützte Datumsformate](sms-supported-data-formats.md)
+ [Ground Truth Streaming-Kennzeichnungsaufträge](sms-streaming-labeling-job.md)
+ [Eingabedatenkontingente](input-data-limits.md)
+ [Auswahl der Daten für die Kennzeichnung](sms-data-filtering.md)

# Eingabemanifestdateien
<a name="sms-input-data-input-manifest"></a>

Jede Zeile in einer Eingabemanifestdatei ist ein Eintrag, der ein Objekt oder eine Referenz auf ein Objekt enthält, das beschriftet werden soll. Ein Eintrag kann auch Bezeichnungen aus früheren Aufträgen und bei einigen Aufgabentypen zusätzliche Informationen enthalten. 

Eingabedaten und die Manifestdatei müssen in Amazon Simple Storage Service (Amazon S3) gespeichert werden. Jeder verfügt über spezifische Speicher- und Zugriffsanforderungen, und zwar wie folgt:
+ Der Amazon S3 S3-Bucket, der die Eingabedaten enthält, muss sich in derselben AWS Region befinden, in der Sie Amazon SageMaker Ground Truth ausführen. Sie müssen Amazon SageMaker AI Zugriff auf die im Amazon S3-Bucket gespeicherten Daten gewähren, damit Amazon AI diese lesen kann. Weitere Informationen zu Amazon-S3-Buckets finden Sie unter [Arbeiten mit Amazon-S3-Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html). 
+ Die Manifestdatei muss sich in derselben AWS Region wie die Datendateien befinden, sie muss sich jedoch nicht am selben Speicherort wie die Datendateien befinden. Es kann in jedem Amazon S3 S3-Bucket gespeichert werden, auf den die AWS Identity and Access Management (IAM) -Rolle zugegriffen werden kann, die Sie Ground Truth bei der Erstellung des Labeling-Jobs zugewiesen haben.

**Anmerkung**  
Für die [Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) 3D-Punktwolke und Video-Frame gelten unterschiedliche Anforderungen und Attribute für das Eingabemanifest.   
Informationen zu [3D-Punktwolken-Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud.html) finden Sie unter [Eingabemanifestdateien für 3D-Punktwolken-Kennzeichnungsaufträge](sms-point-cloud-input-manifest.md).  
Informationen zu [Video-Frame-Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-video-task-types.html) finden Sie unter [Erstellen einer Videoframe-Eingangsmanifestdatei](sms-video-manual-data-setup.md#sms-video-create-manifest).

Das Manifest ist eine gemäß UTF-8 kodierte Datei, in der jede Zeile ein vollständiges und gültiges JSON-Objekt ist. Jede Zeile wird durch einen Standardzeilenumbruch getrennt, \$1n oder \$1r\$1n. Da jede Zeile ein gültiges JSON-Objekt sein muss, sind Zeilenumbruchzeichen, die nicht durch Escape-Zeichen geschützt sind, nicht zulässig. Weitere Informationen zum Datenformat finden Sie unter [JSON Lines (JSON-Zeilen)](http://jsonlines.org/).

Jedes JSON-Objekt in der Manifestdatei darf nicht größer als 100.000 Zeichen sein. Kein einzelnes Attribut innerhalb eines Objekts darf größer als 20.000 Zeichen sein. Attributnamen können nicht mit `$` (Dollarzeichen) beginnen.

Jedes JSON-Objekt in der Manifestdatei muss einen der folgenden Schlüssel enthalten: `source-ref` oder `source`. Der Wert der Schlüssel wird wie folgt festgelegt:
+ `source-ref` – Die Quelle des Objekts ist das im Wert angegebene Amazon-S3-Objekt. Verwenden Sie diesen Wert, wenn es sich bei dem Objekt um ein binäres Objekt handelt, z. B. ein Bild.
+ `source` – Die Quelle des Objekts ist der Wert. Verwenden Sie diesen Wert, wenn das Objekt ein Textwert ist.



Nachfolgend finden Sie ein Beispiel einer Manifestdatei für Dateien, die in einem Amazon-S3-Bucket gespeichert sind:

```
{"source-ref": "S3 bucket location 1"}
{"source-ref": "S3 bucket location 2"}
   ...
{"source-ref": "S3 bucket location n"}
```

Sie verwenden den Schlüssel `source-ref` für Bilddateien für Begrenzungsrahmen, Bildklassifizierung (Single- und Multi-Label), semantische SegmentierungsLabeling-Aufgaben und Videoclips für Kennzeichnungsaufträge zur Videoklassifizierung. 3D-Punktwolken- und Videoframe-Kennzeichnungsaufträge verwenden ebenfalls den Schlüssel `source-ref`, aber für diese Kennzeichnungsaufträge sind zusätzliche Informationen in der Eingabemanifestdatei erforderlich. Weitere Informationen finden Sie unter [3D-Punktwolkeneingabedaten](sms-point-cloud-input-data.md) und [Videoframe-Eingabedaten](sms-video-frame-input-data-overview.md).

Im Folgenden finden Sie ein Beispiel für eine Manifestdatei mit den Eingabedaten, die im Manifest gespeichert sind:

```
{"source": "Lorem ipsum dolor sit amet"}
{"source": "consectetur adipiscing elit"}
   ...
{"source": "mollit anim id est laborum"}
```

Sie verwenden den `source`-Schlüssel für Single- und Multi-Label-Labeling-Aufgaben für Textklassifizierung und benannte Entitätserkennung, wenn der Text, den Sie kennzeichnen möchten, direkt in der Eingabemanifestdatei aufgelistet wird. 

Sie können auch andere Schlüssel-Wert-Paare in der Manifestdatei einschließen. Diese werden unverändert an die Ausgabedatei weitergeleitet. Dies ist nützlich, wenn Sie Informationen zwischen Ihren Anwendungen übertragen möchten. Weitere Informationen finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md).

# Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge
<a name="sms-console-create-manifest-file"></a>

Sie können die automatisierte Dateneinrichtung verwenden, um Manifestdateien für Ihre Kennzeichnungsaufträge in der Ground-Truth-Konsole mithilfe von Bildern, Videos, Video-Frames, Textdateien (.txt) und Dateien mit durch Kommas getrennten Werten (.csv) zu erstellen, die in Amazon S3 gespeichert sind. Wenn Sie die automatisierte Dateneinrichtung verwenden, geben Sie einen Amazon-S3-Speicherort an, an dem Ihre Eingabedaten gespeichert werden, und den Eingabedatentyp. Ground Truth sucht dann an dem von Ihnen angegebenen Speicherort nach den Dateien, die diesem Typ entsprechen.

**Anmerkung**  
Ground Truth verwendet keinen AWS KMS Schlüssel, um auf Ihre Eingabedaten zuzugreifen oder die Eingabemanifestdatei in den von Ihnen angegebenen Amazon S3 S3-Speicherort zu schreiben. Der Benutzer oder die Rolle, die den Kennzeichnungsauftrag erstellt, muss über Zugriffsberechtigungen für Ihre Eingabedatenobjekte in Amazon S3 verfügen.

Stellen Sie vor dem folgenden Verfahren sicher, dass die Eingabebilder oder -dateien korrekt formatiert sind:
+ Bilddateien – Bilddateien müssen die Größen- und Auflösungsgrenzen erfüllen, die in den Tabellen unter [Größenkontingent für Eingabedateien](input-data-limits.md#input-file-size-limit) aufgeführt sind. 
+ Textdateien – Textdaten können in einer oder mehreren TXT-Dateien gespeichert werden. Jedes Element, das gekennzeichnet werden soll, muss durch einen Standardzeilenumbruch getrennt werden. 
+ CSV-Dateien – Textdaten können in einer oder mehreren CSV-Dateien gespeichert werden. Jedes Element, das gekennzeichnet werden soll, muss sich in einer separaten Zeile befinden.
+ Videos – Videodateien können eines der folgenden Formate haben: .mp4, .ogg und .webm. Informationen zum Extrahieren von Video-Frames aus Ihren Videodateien zur Objekterkennung oder Objektverfolgung finden Sie unter [Videodateien zur Verfügung stellen](sms-point-cloud-video-input-data.md#sms-point-cloud-video-frame-extraction).
+ Video-Frames – Video-Frames sind Bilder, die aus Videos extrahiert wurden. Alle aus einem einzelnen Video extrahierten Bilder werden als *Sequenz von Video-Frames* bezeichnet. Jede Sequenz von Video-Frames muss in Amazon S3 eindeutige Präfixschlüssel haben. Siehe [Stellen Sie Videoframes bereit](sms-point-cloud-video-input-data.md#sms-video-provide-frames). Informationen zu diesem Datentyp finden Sie unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md).

**Wichtig**  
Informationen zur Erkennung von Video-Frame-Objekten und für Kennzeichnungsaufträge zur Video-Frame-Objekterkennung finden Sie unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md). Hier erfahren Sie, wie Sie die automatisierte Dateneinrichtung verwenden. 

Verwenden Sie diese Anweisungen, um Ihre Eingabedatensatz-Verbindung mit Ground Truth automatisch einzurichten.

**Automatisches Verbinden Ihrer Daten in Amazon S3 mit Ground Truth**

1. Navigieren Sie in der Amazon SageMaker AI-Konsole zur Seite „**Labeling-Job erstellen**“ unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/). 

   Über diesen Link gelangen Sie in die Region North Virginia (US-East-1) AWS . Wenn sich Ihre Eingabedaten in einem Amazon-S3-Bucket in einer anderen Region befinden, wechseln Sie in diese Region. Um Ihre AWS Region zu ändern, wählen Sie in der [Navigationsleiste](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/getting-started.html#select-region) den Namen der aktuell angezeigten Region aus.

1. Wählen Sie **Beschriftungsauftrag erstellen** aus.

1. Geben Sie einen **Auftragsnamen** ein. 

1. Wählen Sie im Abschnitt **Einrichtung der Eingabedaten** die Option **Automatisierte Dateneinrichtung** aus.

1. Geben Sie eine Amazon-S3-URI für **S3-Standort für Eingabedatensätze** ein. 

1. Geben Sie Ihren **S3-Standort für Ausgabedatensätze** an. Dies ist der Ort, an dem Ihre Ausgabedaten gespeichert werden. 

1. Wählen Sie Ihren **Datentyp** mithilfe der Dropdown-Liste aus.

1. Verwenden Sie das Dropdown-Menü unter **IAM-Rolle**, um eine Ausführungsrolle auszuwählen. Wenn Sie **Eine neue Rolle erstellen** auswählen, geben Sie die Amazon-S3-Buckets an, auf die Sie dieser Rolle Zugriff gewähren möchten. Diese Rolle muss über die Zugriffsberechtigung für die S3-Buckets verfügen, die Sie in den Schritten 5 und 6 angegeben haben.

1. Wählen Sie **Dateneinrichtung fertigstellen** aus.

Dadurch wird ein Eingabemanifest am Amazon-S3-Speicherort für Eingabedatensätze erstellt, die Sie in Schritt 5 angegeben haben. Wenn Sie einen Label-Job mithilfe der SageMaker API, oder eines AWS SDK erstellen AWS CLI, verwenden Sie den Amazon S3 S3-URI für diese Eingabe-Manifestdatei als Eingabe für den Parameter`ManifestS3Uri`. 

Das folgende GIF zeigt, wie Sie die automatisierte Dateneinrichtung für Bilddaten verwenden können. In diesem Beispiel wird eine Datei `dataset-YYMMDDTHHMMSS.manifest` im Amazon-S3-Bucket `example-groundtruth-images` erstellt, wobei `YYMMDDTHHmmSS` das Jahr (`YY`), den Monat (`MM`), den Tag (`DD`) und die Uhrzeit in Stunden (`HH`), Minuten (`mm`) und Sekunden (`ss`) angibt, zu der die Eingabemanifestdatei erstellt wurde. 

![\[GIF, das zeigt, wie Sie die automatisierte Dateneinrichtung für Bilddaten verwenden können\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/automated-data-setup.gif)


# Unterstützte Datumsformate
<a name="sms-supported-data-formats"></a>

Wenn Sie manuell eine Eingabemanifestdatei für einen [integrierten Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) erstellen, müssen Ihre Eingabedaten in einem der folgenden unterstützten Dateiformate für den jeweiligen Eingabedatentyp vorliegen. Weitere Informationen zur automatisierten Dateneinrichtung finden Sie unter [Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge](sms-console-create-manifest-file.md).

**Tipp**  
Wenn Sie die automatisierte Dateneinrichtung verwenden, können zusätzliche Formate verwendet werden, um eine Eingabemanifestdatei für Video-Frame- und textbasierte Aufgabentypen zu generieren.


****  

| Aufgabentypen | Eingabedatentyp | Unterstützte Formate | Beispiel für eine Zeile mit einem Eingabemanifest | 
| --- | --- | --- | --- | 
|  Begrenzungsrahmen, semantische Segmentierung, Bildklassifizierung (Single-Label und Multi-Label), Bezeichnungen überprüfen und anpassen  |  Image  |  .jpg, .jpeg, .png  |  <pre>{"source-ref": "s3://amzn-s3-demo-bucket1/example-image.png"}</pre>  | 
|  Erkennung benannter Entitäten, Textklassifizierung (Single- und Multi-Label)  | Text | Rohtext |  <pre>{"source": "Lorem ipsum dolor sit amet"}</pre>  | 
|  Videoklassifizierung  | Videoclips | .mp4, .ogg und .webm |  <pre>{"source-ref": "s3:///example-video.mp4"}</pre>  | 
| Erkennung von Video-Frame-Objekten, Verfolgung von Video-Frame-Objekten (Begrenzungsrahmen, Polylinien, Polygone oder Schlüsselpunkte) | Video-Frames und Video-Frame-Sequenzdateien (für die Objektverfolgung) |  **Video-Frames**: .jpg, .jpeg, .png **Sequenzdateien**: .json  | Weitere Informationen finden Sie unter [Erstellen einer Videoframe-Eingangsmanifestdatei](sms-video-manual-data-setup.md#sms-video-create-manifest). | 
|  Semantische 3D-Punktwolken-Segmentierung, 3D-Punktwolken-Objekterkennung, 3D-Punktwolken-Objektverfolgung  | Punktwolken und Punktwolken-Sequenzdateien (für die Objektverfolgung) |  **Punktwolken**: Binäres Paketformat und ASCII. Weitere Informationen finden Sie unter [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md). **Sequenzdateien**: .json  | Weitere Informationen finden Sie unter [Eingabemanifestdateien für 3D-Punktwolken-Kennzeichnungsaufträge](sms-point-cloud-input-manifest.md). | 

# Ground Truth Streaming-Kennzeichnungsaufträge
<a name="sms-streaming-labeling-job"></a>

Wenn Sie ständig neue Datenobjekte zur Kennzeichnung an Amazon SageMaker Ground Truth senden möchten, verwenden Sie einen Streaming-Labeling-Job. Streaming-Kennzeichnungsaufträge ermöglichen Ihnen Folgendes:
+ Sie können mithilfe eines ständig laufenden Kennzeichnungsauftrags neue Datensatz-Objekte in Echtzeit an Auftragnehmer senden. Auftragnehmer erhalten kontinuierlich neue Datenobjekte zum Beschriften, solange der Kennzeichnungsauftrag aktiv ist und neue Objekte an ihn gesendet werden.
+ Sie können sich einen Überblick über die Anzahl der Objekte verschaffen, die sich in der Warteschlange befinden und darauf warten, beschriftet zu werden. Verwenden Sie diese Informationen, um den Fluss der Datenobjekte zu steuern, die an Ihren Kennzeichnungsauftrag gesendet werden.
+ Sie können Bezeichnungsdaten für einzelne Datenobjekte in Echtzeit erhalten, wenn Auftragnehmer die Bezeichnungen beendet haben. 

Ground Truth Streaming-Kennzeichnungsaufträge bleiben aktiv, bis sie manuell gestoppt werden oder länger als 10 Tage inaktiv waren. Sie können zeitweise neue Datenobjekte an Auftragnehmer senden, solange der Kennzeichnungsauftrag aktiv ist.

Wenn Sie ein neuer Benutzer von Ground Truth Streaming-Kennzeichnungsaufträgen sind, wird empfohlen, [Funktionsweise](#sms-streaming-how-it-works) zu lesen. 

Mithilfe von [Erstellen eines Streaming-Beschriftungsjobs](sms-streaming-create-job.md) erfahren Sie, wie Sie einen Streaming-Kennzeichnungsauftrag erstellen.

**Anmerkung**  
Ground Truth Streaming-Labeling-Jobs werden nur über die SageMaker API unterstützt.

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

Wenn Sie einen Ground Truth Streaming-Kennzeichnungsauftrag erstellen, bleibt der Auftrag aktiv, bis er manuell gestoppt wird, länger als 10 Tage inaktiv ist oder nicht auf Eingabedatenquellen zugreifen kann. Sie können zeitweise neue Datenobjekte an Auftragnehmer senden, solange der Vorgang aktiv ist. Ein Auftragnehmer kann weiterhin neue Datenobjekte in Echtzeit empfangen, solange die Gesamtzahl der Aufgaben, die dem Auftragnehmer derzeit zur Verfügung stehen, geringer ist als der Wert in [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). Andernfalls wird das Datenobjekt zur späteren Verarbeitung an eine Warteschlange gesendet, die Ground Truth in Ihrem Namen in [Amazon Simple Queue Service](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html) (Amazon SQS) erstellt. Diese Aufgaben werden an Auftragnehmer gesendet, sobald die Gesamtzahl der Aufgaben, die einem Auftragnehmer derzeit zur Verfügung stehen, `MaxConcurrentTaskCount` unterschreitet. Wenn ein Datenobjekt nach 14 Tagen nicht an einen Auftragnehmer gesendet wird, läuft es ab. Sie können die Anzahl der ausstehenden Aufgaben in der Warteschlange anzeigen und die Anzahl der Objekte anpassen, die Sie an den Kennzeichnungsauftrag senden. Sie können beispielsweise die Geschwindigkeit verringern, mit der Sie Objekte an den Kennzeichnungsauftrag senden, wenn der Backlog an ausstehenden Objekten einen Schwellenwert überschreitet. 

**Topics**
+ [Funktionsweise](#sms-streaming-how-it-works)
+ [Senden von Daten an einen Streaming-Kennzeichnungsauftrag](sms-streaming-how-it-works-send-data.md)
+ [Verwalten von Kennzeichnungsanfragen mit einer Amazon SQS-Warteschlange](sms-streaming-how-it-works-sqs.md)
+ [Empfangen von Ausgabedaten aus einem Streaming-Kennzeichnungsauftrag](sms-streaming-how-it-works-output-data.md)
+ [Umgang mit doppelten Nachrichten](sms-streaming-impotency.md)

# Senden von Daten an einen Streaming-Kennzeichnungsauftrag
<a name="sms-streaming-how-it-works-send-data"></a>

Sie können optional einmalig Eingabedaten an einen Streaming-Kennzeichnungsauftrag senden, wenn Sie den Kennzeichnungsauftrag mithilfe einer Eingabemanifestdatei erstellen. Sobald der Kennzeichnungsauftrag gestartet wurde und der Status `InProgress` lautet, können Sie mithilfe Ihres Amazon SNS-Eingabethemas und der Amazon-S3-Ereignisbenachrichtigungen in Echtzeit neue Datenobjekte an den Kennzeichnungsauftrag senden. 

***Reichen Sie Datenobjekte ein, wenn Sie den Kennzeichnungsauftrag starten (einmalig):***
+ **Eine Eingabemanifestdatei verwenden** – Sie können optional eine Eingabemanifestdatei mit Amazon-S3-URI in `ManifestS3Uri` angeben, wenn Sie den Streaming-Labeling-Auftrag erstellen. Ground Truth sendet jedes Datenobjekt in der Manifestdatei zur Kennzeichnung an die Mitarbeiter, sobald der Kennzeichnungsauftrag gestartet wird. Weitere Informationen hierzu finden Sie unter [Erstellen Sie eine Manifestdatei (optional)](sms-streaming-manifest.md).

  Nachdem Sie eine Anforderung zur Erstellung des Streaming-Kennzeichnungsauftrags abgesendet haben, lautet der Status `Initializing`. Sobald der Kennzeichnungsauftrag aktiv ist, ändert sich der Status in `InProgress`. Sie können dann Echtzeitoptionen verwenden, um zusätzliche Datenobjekte zur Kennzeichnung zu senden. 

***Datenobjekte in Echtzeit senden:***
+ **Datenobjekte mithilfe von Amazon SNS-Nachrichten** senden – Sie können Ground Truth neue Datenobjekte zur Kennzeichnung senden, indem Sie eine Amazon SNS-Nachricht senden. Sie senden diese Nachricht an ein Amazon SNS-Eingabethema, das Sie bei der Erstellung des Streaming-Kennzeichnungsauftrags erstellen und angeben. Weitere Informationen finden Sie unter [Senden von Datenobjekten mit Amazon SNS](#sms-streaming-how-it-works-sns).
+ **Datenobjekte senden, indem Sie sie in einem Amazon-S3-Bucket platzieren** – Jedes Mal, wenn Sie einem Amazon-S3-Bucket ein neues Datenobjekt hinzufügen, können Sie Ground Truth auffordern, dieses Objekt zur Kennzeichnung zu verarbeiten. Dazu fügen Sie dem Bucket eine Ereignisbenachrichtigung hinzu, sodass Ihr Amazon SNS-Eingabethema jedes Mal benachrichtigt wird, wenn ein neues Objekt zu diesem Bucket hinzugefügt (oder *in diesem erstellt*) wird. Weitere Informationen finden Sie unter [Senden von Datenobjekten mit Amazon S3](#sms-streaming-how-it-works-s3). Diese Option ist nicht für textbasierte Labeling-Aufgaben wie Textklassifizierung und Erkennung benannter Entitäten verfügbar. 
**Wichtig**  
Wenn Sie die Amazon-S3-Konfiguration verwenden, verwenden Sie nicht denselben Amazon-S3-Speicherort für Ihre Eingabedatenkonfiguration und Ihre Ausgabedaten. Sie geben das S3-Präfix für Ihre Ausgabedaten an, wenn Sie einen Kennzeichnungsauftrag erstellen.

## Senden von Datenobjekten mit Amazon SNS
<a name="sms-streaming-how-it-works-sns"></a>

Mit Amazon Simple Notification Service (Amazon SNS) können Sie Datenobjekte an Ihren Streaming-Kennzeichnungsauftrag senden. Amazon SNS ist ein Webservice, der die Zustellung von Nachrichten an und von *Endpunkten* (z. B. eine E-Mail-Adresse oder AWS Lambda Funktion) koordiniert und verwaltet. Ein Amazon SNS-*Thema* fungiert als Kommunikationskanal zwischen zwei oder mehr Endpunkten. Sie verwenden Amazon SNS, um neue Datenobjekte an das im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)-Parameter `SnsTopicArn` in `InputConfig` angegebene Thema zu senden oder zu *veröffentlichen*. Das Format dieser Nachrichten entspricht dem einer einzelnen Zeile aus einer [Eingabemanifestdatei](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-data-input.html). 

Sie können beispielsweise einen Text an einen aktiven Kennzeichnungsauftrag der Textklassifizierung senden, indem Sie ihn in Ihrem Eingabethema veröffentlichen. Die von Ihnen veröffentlichte Nachricht könnte wie folgt aussehen:

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

Um ein neues Bildobjekt an einen Kennzeichnungsauftrag der Bildklassifizierung zu senden, könnte Ihre Nachricht wie folgt aussehen:

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

**Anmerkung**  
Sie können Ihren Amazon SNS SNS-Nachrichten auch benutzerdefinierte IDs Deduplizierungs- und Deduplizierungsschlüssel hinzufügen. Weitere Informationen hierzu finden Sie unter [Umgang mit doppelten Nachrichten](sms-streaming-impotency.md).

Wenn Ground Truth Ihren Streaming-Kennzeichnungsauftrag erstellt, abonniert es Ihr Amazon SNS-Eingabethema. 

## Senden von Datenobjekten mit Amazon S3
<a name="sms-streaming-how-it-works-s3"></a>

Sie können ein oder mehrere neue Datenobjekte an einen Streaming-Kennzeichnungsauftrag senden, indem Sie sie in einem Amazon-S3-Bucket platzieren, der mit einer Amazon SNS-Ereignisbenachrichtigung konfiguriert ist. Sie können ein Ereignis so einrichten, dass Ihr Amazon SNS-Eingabethema jedes Mal benachrichtigt wird, wenn in Ihrem Bucket ein neues Objekt erstellt wird. Sie müssen dasselbe Amazon SNS-Eingabethema im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)-Parameter `SnsTopicArn` in `InputConfig` angeben.

Jedes Mal, wenn Sie einen Amazon-S3-Bucket so konfigurieren, dass er Benachrichtigungen an Amazon SNS sendet, veröffentlicht Ground Truth ein Testereignis, `"s3:TestEvent"`, um sicherzustellen, dass das Thema existiert und der Besitzer des angegebenen Amazon-S3-Buckets berechtigt ist, zu dem angegebenen Thema zu veröffentlichen. Es wird empfohlen, dass die Amazon-S3-Verbindung mit Amazon SNS einzurichten, bevor Sie einen Streaming-Kennzeichnungsauftrag starten. Wenn Sie dies nicht tun, kann dieses Testereignis als Datenobjekt registriert und zur Kennzeichnung an Ground Truth gesendet werden. 

**Wichtig**  
Wenn Sie die Amazon-S3-Konfiguration verwenden, verwenden Sie nicht denselben Amazon-S3-Speicherort für Ihre Eingabedatenkonfiguration und Ihre Ausgabedaten. Sie geben das S3-Präfix für Ihre Ausgabedaten an, wenn Sie einen Kennzeichnungsauftrag erstellen.  
Bei bildbasierten Kennzeichnungsaufträge verlangt Ground Truth, dass an alle S3-Buckets eine CORS-Richtlinie angefügt wird. Weitere Informationen hierzu finden Sie unter [CORS-Anforderung für Eingabebilddaten](sms-cors-update.md).

Sobald Sie Ihren Amazon-S3-Bucket konfiguriert und Ihren Kennzeichnungsauftrag erstellt haben, können Sie Ihrem Bucket Objekte hinzufügen. Ground Truth sendet dieses Objekt dann entweder an Auftragnehmer oder platziert es in Ihrer Amazon SQS-Warteschlange. 

Weitere Informationen hierzu finden Sie unter [Erstellen von Amazon-S3-basierten Bucket-Ereignisbenachrichtigungen gemäß dem in Ihrem Labeling-Job definierten Amazon SNS](sms-streaming-s3-setup.md).

**Wichtig**  
Diese Option ist nicht für textbasierte Kennzeichnungsaufträge wie Textklassifizierung und Erkennung benannter Entitäten verfügbar.

# Verwalten von Kennzeichnungsanfragen mit einer Amazon SQS-Warteschlange
<a name="sms-streaming-how-it-works-sqs"></a>

Wenn Ground Truth Ihren Streaming-Labeling-Job erstellt, erstellt es eine Amazon SQS SQS-Warteschlange in dem AWS Konto, das zur Erstellung des Labeling-Jobs verwendet wurde. Der Warteschlangenname ist `GroundTruth-labeling_job_name`, wobei `labeling_job_name` der Name Ihres Kennzeichnungsauftrags in Kleinbuchstaben ist. Wenn Sie Datenobjekte an Ihren Kennzeichnungsauftrag senden, sendet Ground Truth die Datenobjekte entweder direkt an Auftragnehmer oder stellt die Aufgabe zur späteren Verarbeitung in Ihre Warteschlange. Wenn ein Datenobjekt nach 14 Tagen nicht an einen Auftragnehmer gesendet wird, läuft es ab und wird aus der Warteschlange entfernt. Sie können in Amazon SQS einen Alarm einrichten, um zu erkennen, wann Objekte ablaufen. Mit diesem Mechanismus können Sie die Menge der Objekte steuern, die Sie an Ihren Kennzeichnungsauftrag senden.

**Wichtig**  
Das Ändern, Löschen oder Senden von Objekten direkt an die Amazon-SQS-Warteschlange, die mit Ihrem Streaming-Kennzeichnungsauftrag verknüpft ist, kann zu Auftragsfehlern führen. 

# Empfangen von Ausgabedaten aus einem Streaming-Kennzeichnungsauftrag
<a name="sms-streaming-how-it-works-output-data"></a>

Ihr Amazon-S3-Ausgabe-Bucket wird regelmäßig mit neuen Ausgabedaten aus Ihrem Streaming-Kennzeichnungsauftrag aktualisiert. Optional können Sie ein Amazon-SNS-Ausgabethema angeben. Jedes Mal, wenn ein Auftragnehmer ein beschriftetes Objekt sendet, wird eine Benachrichtigung mit den Ausgabedaten an dieses Thema gesendet. Sie können einen Endpunkt für Ihr SNS-Ausgabethema abonnieren, um Benachrichtigungen zu erhalten oder Ereignisse auszulösen, wenn Sie Ausgabedaten von einer Labeling-Aufgabe erhalten. Verwenden Sie ein Amazon-SNS-Ausgabethema, wenn Sie in Echtzeit eine Verkettung mit einem anderen Kennzeichnungsauftrag durchführen und jedes Mal, wenn ein Datenobjekt von einem Auftragnehmer gesendet wird, eine Amazon-SNS-Benachrichtigung erhalten möchten.

Weitere Informationen hierzu finden Sie unter [Abonnieren Sie einen Endpunkt für Ihr Amazon SNS-Ausgabe-Thema](sms-create-sns-input-topic.md#sms-streaming-subscribe-output-topic).

# Umgang mit doppelten Nachrichten
<a name="sms-streaming-impotency"></a>

Bei Datenobjekten, die in Echtzeit gesendet werden, garantiert Ground-Truth-Idempotenz, indem sichergestellt wird, dass jedes eindeutige Objekt nur einmal zur Kennzeichnung gesendet wird, auch wenn die auf dieses Objekt bezogene Eingabenachricht mehrfach empfangen wird (doppelte Nachrichten). Zu diesem Zweck wird jedem Datenobjekt, das an einen Streaming-Kennzeichnungsauftrag gesendet wird, eine *Deduplizierungs-ID* zugewiesen, die mit einem *Deduplizierungsschlüssel* identifiziert wird. Wenn Sie Ihre Anfragen zur Kennzeichnung von Datenobjekten direkt über Ihr Amazon SNS SNS-Eingabethema mithilfe von Amazon SNS SNS-Nachrichten senden, können Sie optional einen benutzerdefinierten Deduplizierungsschlüssel und eine Deduplizierung für Ihre Objekte wählen. IDs Weitere Informationen finden Sie unter [Angeben eines Deduplizierungsschlüssels und einer ID in einer Amazon-SNS-Nachricht](sms-streaming-impotency-create.md).

Wenn Sie keinen eigenen Deduplizierungsschlüssel bereitstellen oder die Amazon-S3-Konfiguration verwenden, um Datenobjekte an Ihren Kennzeichnungsauftrag zu senden, verwendet Ground Truth eine der folgenden Optionen für die Deduplizierungs-ID:
+ Für Nachrichten, die direkt an Ihr Amazon-SNS-Eingabethema gesendet werden, verwendet Ground Truth die SNS-Nachrichten-ID. 
+ Für Nachrichten, die aus einer Amazon-S3-Konfiguration stammen, erstellt Ground Truth eine Deduplizierungs-ID, indem es den Amazon-S3-URI des Objekts mit dem [Sequencer-Token](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html) in der Nachricht kombiniert.

# Angeben eines Deduplizierungsschlüssels und einer ID in einer Amazon-SNS-Nachricht
<a name="sms-streaming-impotency-create"></a>

Wenn Sie mithilfe einer Amazon-SNS-Nachricht ein Datenobjekt an Ihren Streaming-Kennzeichnungsauftrag senden, haben Sie die Möglichkeit, Ihren Deduplizierungsschlüssel und Ihre Deduplizierungs-ID auf eine der folgenden Arten anzugeben. Identifizieren Sie in all diesen Szenarien Ihren Deduplizierungsschlüssel mit `dataset-objectid-attribute-name`.

**Mitbringen eines eigenen Deduplizierungsschlüssels und einer eigenen Deduplizierungs-ID**

Erstellen Sie einen eigenen Deduplizierungsschlüssel und eine eigene Deduplizierungs-ID, indem Sie Ihre Amazon -SNS-Nachricht wie folgt konfigurieren. Ersetzen Sie `byo-key` durch Ihren Schlüssel und `UniqueId` durch die Deduplizierungs-ID für dieses Datenobjekt.

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

Ihr Deduplizierungsschlüssel kann bis zu 140 Zeichen enthalten. Folgende Muster werden unterstützt: `"^[$a-zA-Z0-9](-*[a-zA-Z0-9])*"`.

Ihre Deduplizierungs-ID kann bis zu 1.024 Zeichen enthalten. Folgende Muster werden unterstützt: `^(https|s3)://([^/]+)/?(.*)$`.

**Verwenden eines vorhandenen Schlüssels als Deduplizierungsschlüssel**

Sie können einen vorhandenen Schlüssel in Ihrer Nachricht als Deduplizierungsschlüssel verwenden. In diesem Fall wird der mit diesem Schlüssel verknüpfte Wert für die Deduplizierungs-ID verwendet. 

Sie können beispielsweise angeben, den `source-ref`-Schlüssel als Deduplizierungsschlüssel zu verwenden, indem Sie Ihre Nachricht wie folgt formatieren: 

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

In diesem Beispiel verwendet Ground Truth `"s3://amzn-s3-demo-bucket/prefix/object1"` als Deduplizierungs-ID.

# Suchen des Deduplizierungsschlüssels und der ID in Ihren Ausgabedaten
<a name="sms-streaming-impotency-output"></a>

Sie können den Deduplizierungsschlüssel und die ID in Ihren Ausgabedaten sehen. Der Deduplizierungsschlüssel wird durch `dataset-objectid-attribute-name` identifiziert. Wenn Sie einen eigenen benutzerdefinierten Deduplizierungsschlüssel verwenden, sieht Ihre Ausgabe ungefähr so aus:

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

Wenn Sie keinen Schlüssel angeben, finden Sie die Deduplizierungs-ID, die Ground Truth Ihrem Datenobjekt zugewiesen hat, wie folgt. Der Parameter `$label-attribute-name-object-id` identifiziert Ihre Deduplizierungs-ID. 

```
{
    "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>"
}
```

Wenn das Datenobjekt eine Amazon-S3-Konfiguration durchlaufen hat, fügt Ground Truth für `<service-generated-key>` einen eindeutigen Wert hinzu, der vom Service verwendet wird, und gibt ein neues Feld aus, das durch `$sequencer` gekennzeichnet ist, das den verwendeten Amazon-S3-Sequencer anzeigt. Wenn das Objekt direkt an SNS gesendet wurde, verwendet Ground Truth die SNS-Nachrichten-ID.

**Anmerkung**  
Verwenden Sie das `$`-Zeichen nicht im Kennzeichnungsattributnamen. 

# Eingabedatenkontingente
<a name="input-data-limits"></a>

Eingabedatensätze, die in Labeling-Aufträgen der semantischen Segmentierung verwendet werden, haben ein Kontingent von 20.000 Elementen. Für alle anderen Kennzeichnungsauftragstypen beträgt das Größenkontingent für den Datensatz 100.000 Elemente. Um eine Erhöhung des Kontingents für andere Kennzeichnungsaufträge als semantische Segmentierungsaufträge zu beantragen, schauen Sie sich die Verfahren in [AWS -Service Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) an, um eine Kontingenterhöhung anzufordern.

Eingabe-Image-Daten für aktive und nicht-aktive Lern-Kennzeichnungsaufträge dürfen die Größen- und Auflösungskontingente nicht überschreiten. *Aktives Lernen* bezieht sich auf Labeling-Aufträge, die [automatisiertes Daten-Labeling](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html) verwenden. *Nicht-aktives Lernen* bezieht sich auf Kennzeichnungsaufträge, die kein automatisiertes Daten-Labeling verwenden.

Zusätzliche Kontingente gelten für Kennzeichnungskategorien für alle Aufgabentypen und für Eingabedaten und Attribute der Kennzeichnungskategorie für 3D-Punktwolken- und Video-Frame-Aufgabentypen. 

## Größenkontingent für Eingabedateien
<a name="input-file-size-limit"></a>

Eingabedateien dürfen die folgenden Größenkontingente sowohl für aktive als auch für nicht-aktive Lern-Kennzeichnungsaufträge nicht überschreiten. Es gibt kein Größenkontingent für Eingabedateien für Videos, die bei Kennzeichnungsaufträgen zur [Videoklassifizierung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-video-classification.html) verwendet werden.


| Aufgabentyp des Kennzeichnungsauftrags | Größenkontingent für Eingabedateien | 
| --- | --- | 
| Bildklassifizierung | 40 MB | 
| Begrenzungsrahmen (Objekterkennung) | 40 MB | 
| Semantische Segmentierung | 40 MB | 
| Anpassen des Begrenzungsrahmens (Objekterkennung) | 40 MB | 
| Anpassen der semantischen Segmentierungskennzeichnung | 40 MB | 
| Verifizieren des Begrenzungsrahmens (Objekterkennung) | 40 MB | 
| Verifizieren der semantischen Segmentierungskennzeichnung | 40 MB | 

## Kontingente für die Eingabebildauflösung
<a name="non-active-learning-input-data-limits"></a>

Die Bilddateiauflösung bezieht sich auf die Anzahl der Pixel in einem Bild und bestimmt die Detailgenauigkeit eines Bildes. Die Kontingente für die Bildauflösung unterscheiden sich je nach Art des Labeling-Auftrags und dem SageMaker verwendeten integrierten KI-Algorithmus. In der folgenden Tabelle sind die Auflösungskontingente für Bilder aufgeführt, die in aktiven und nicht-aktiven Lern-Kennzeichnungsaufträgen verwendet werden.


| Aufgabentyp des Kennzeichnungsauftrags | **Auflösungskontingent – nicht-aktives Lernen** | Auflösungskontingent – aktives Lernen | 
| --- | --- | --- | 
| Bildklassifizierung | 100 Millionen Pixel | 3840 x 2160 Pixel (4 KB) | 
| Begrenzungsrahmen (Objekterkennung) | 100 Millionen Pixel | 3840 x 2160 Pixel (4 KB) | 
| Semantische Segmentierung | 100 Millionen Pixel | 1.920 x 1.080 Pixel (1080 p) | 
| Anpassen der Objekterkennungskennzeichnung | 100 Millionen Pixel | 3840 x 2160 Pixel (4 KB) | 
| Anpassen der semantischen Segmentierungskennzeichnung | 100 Millionen Pixel | 1.920 x 1.080 Pixel (1080 p) | 
| Verifizieren der Objekterkennungskennzeichnung | 100 Millionen Pixel | Nicht verfügbar | 
| Verifizieren der semantischen Segmentierungskennzeichnung | 100 Millionen Pixel | Nicht verfügbar | 

## Kontingente für Kennzeichnungskategorien
<a name="sms-label-quotas"></a>

Jeder Aufgabentyp für Kennzeichnungsaufträge hat ein Kontingent für die Anzahl der Kennzeichnungskategorien, die Sie angeben können. Auftragnehmer wählen Kennzeichnungskategorien aus, um Anmerkungen zu erstellen. Sie können beispielsweise die Kennzeichnungskategorien *Auto*, *Fußgänger* und *Fahrradfahrer* angeben, wenn Sie einen Kennzeichnungsauftrag mit Begrenzungsrahmen erstellen. Die Auswahl wählen dann die Kategorie *Auto* aus, bevor sie Begrenzungsrahmen um Autos zeichnen.

**Wichtig**  
Namen von Kennzeichnungskategorien dürfen max. 256 Zeichen lang sein.   
Alle Kennzeichnungskategorien müssen eindeutig sein. Sie dürfen keine doppelten Kennzeichnungskategorien angeben. 

Die folgenden Beschränkungen für Kennzeichnungskategorien gelten für Kennzeichnungsaufträge. Die Kontingente für Label-Kategorien hängen davon ab, ob Sie den SageMaker API-Vorgang `CreateLabelingJob` oder die Konsole verwenden, um einen Labeling-Job zu erstellen.


****  

| Aufgabentyp des Kennzeichnungsauftrags | Kontingent für Kennzeichnungskategorien – API | Kontingent für Kennzeichnungskategorie – Konsole | 
| --- | --- | --- | 
| Bildklassifizierung (Multi-Label) | 50 | 50 | 
| Bildklassifizierung (Einzelne Bezeichnung) | Unbegrenzt | 30 | 
| Begrenzungsrahmen (Objekterkennung) | 50 | 50 | 
| Kennzeichnungsverifizierung | Unbegrenzt | 30 | 
| Semantische Segmentierung (mit aktivem Lernen) | 20 | 10 | 
| Semantische Segmentierung (ohne aktives Lernen) | Unbegrenzt | 10 | 
| Erkennung benannter Entitäten | Unbegrenzt | 30 | 
| Textklassifizierung (Multi-Label) | 50 | 50 | 
| Textklassifizierung (Single-Label) | Unbegrenzt | 30 | 
| Videoklassifizierung | 30 | 30 | 
| Video-Frame-Objekterkennung | 30 | 30 | 
| Video-Frame-Objektverfolgung | 30 | 30 | 
| 3D-Punktwolken-Objekterkennung | 30 | 30 | 
| 3D-Punktwolken-Objektverfolgung | 30 | 30 | 
| Semantische 3D-Punktwolkensegmentierung | 30 | 30 | 

## Kontingente für Kennzeichnungsaufträge mit generativer KI
<a name="gen-ai-labeling-job-quotas"></a>

Die folgenden Kontingente gelten für Frage-Antwort-Paare, die Sie in der Kennzeichnungsanwendung angeben.


| Art des Kontingents | Datenkontingent | 
| --- | --- | 
| Frage-Antwort-Paare | mindestens ein Paar, maximal 20 Paare | 
| Wortzahl einer Frage | mindestens ein Wort, maximal 200 Wörter | 
| Wortzahl einer Antwort | mindestens ein Wort, maximal 200 Wörter | 

## Kontingente für 3D-Punktwolken- und Video-Frame-Kennzeichnungsaufträge
<a name="sms-input-data-quotas-other"></a>

Die folgenden Kontingente gelten für Eingabedaten für 3D-Punktwolken- und Video-Frame-Kennzeichnungsaufträge.


****  

| Aufgabentyp des Kennzeichnungsauftrags | Eingabedatenkontingent | 
| --- | --- | 
| Video-Frame-Objekterkennung  |  2.000 Video-Frames (Bilder) pro Sequenz  | 
| Video-Frame-Objekterkennung  |  10 Video-Frame-Sequenzen pro Manifestdatei | 
| Video-Frame-Objektverfolgung |  2.000 Video-Frames (Bilder) pro Sequenz  | 
| Video-Frame-Objektverfolgung |  10 Video-Frame-Sequenzen pro Manifestdatei | 
| 3D-Punktwolken-Objekterkennung |  100.000 Punktwolken-Frames pro Kennzeichnungsauftrag | 
| 3D-Punktwolken-Objektverfolgung |  100.000 Punktwolken-Frame-Sequenzen pro Kennzeichnungsauftrag | 
| 3D-Punktwolken-Objektverfolgung |  500 Punktwolken-Frames in jeder Sequenzdatei | 

Wenn Sie einen Video-Frame- oder 3D-Punktwolken-Kennzeichnungsauftrag erstellen, können Sie jeder von Ihnen angegebenen Kennzeichnungskategorie ein oder mehrere *Kennzeichnungskategorieattribute* hinzufügen, damit Auftragnehmer weitere Informationen über eine Anmerkung bereitstellen können.

Jedes Kennzeichnungskategorieattribut verfügt über ein einzelnes Kennzeichnungskategorieattribut `name` und eine Liste mit einer oder mehreren Optionen (Werten), aus denen Sie wählen können. Weitere Informationen über 3D-Punktwolken-Kennzeichnungsaufträge finden Sie unter [Benutzeroberfläche (UI) für Auftragnehmer](sms-point-cloud-general-information.md#sms-point-cloud-worker-task-ui) und über Video-Frame-Kennzeichnungsaufträge unter [Benutzeroberfläche (UI) für Auftragnehmer](sms-video-overview.md#sms-video-worker-task-ui). 

 Die folgenden Kontingente gelten für die Anzahl der Attribute und Namen für Kennzeichnungskategorien, die Sie für Kennzeichnungsaufträge angeben können.


****  

| Aufgabentyp des Kennzeichnungsauftrags | Kontingent für Kennzeichnungskategorieattribute (Name) | Quote für Kennzeichnungskategorie-Attributwerte | 
| --- | --- | --- | 
| Video-Frame-Objekterkennung  | 10 | 10 | 
| Video-Frame-Objektverfolgung | 10 | 10 | 
| 3D-Punktwolken-Objekterkennung | 10 | 10 | 
| 3D-Punktwolken-Objektverfolgung | 10 | 10 | 
| Semantische 3D-Punktwolkensegmentierung | 10 | 10 | 

# Auswahl der Daten für die Kennzeichnung
<a name="sms-data-filtering"></a>

Sie können die Amazon SageMaker AI-Konsole verwenden, um einen Teil Ihres Datensatzes für die Kennzeichnung auszuwählen. Die Daten müssen in einem Amazon–S3-Bucket gespeichert sein. Sie haben drei Möglichkeiten:
+ Verwenden Sie den vollständigen Datensatz.
+ Wählen Sie eine zufällig ausgewählte Stichprobe des Datensatzes.
+ Geben Sie eine Teilmenge des Datensatzes unter Verwendung einer Abfrage an.

Die folgenden Optionen sind im Bereich **Labeling-Jobs** der [SageMaker AI-Konsole](https://console.aws.amazon.com/sagemaker/groundtruth) verfügbar, nachdem Sie **Labeling-Job erstellen** ausgewählt haben. Weitere Informationen zum Erstellen eines Kennzeichnungsauftrags in der Konsole finden Sie unter [Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth](sms-getting-started.md). Um den Datensatz zu konfigurieren, das Sie für die Kennzeichnung verwenden, wählen Sie im Abschnitt **Auftragsübersicht** die Option **Zusätzliche Konfiguration** aus.

## Verwenden des vollständigen Datensatzes
<a name="sms-full-dataset"></a>

Wenn Sie den **vollständigen Datensatz** verwenden, müssen Sie eine Manifestdatei für Ihre Datenobjekte bereitstellen. Sie können den Pfad des Amazon S3 S3-Buckets angeben, der die Manifestdatei enthält, oder die SageMaker AI-Konsole verwenden, um die Datei zu erstellen. Weitere Informationen zum Erstellen einer Manifestdatei mithilfe der Konsole finden Sie unter [Automatisieren der Dateneinrichtung für Kennzeichnungsaufträge](sms-console-create-manifest-file.md). 

## Auswählen einer zufälligen Stichprobe
<a name="sms-random-dataset"></a>

Wenn Sie eine zufällige Teilmenge Ihrer Daten kennzeichnen wollen, wählen Sie **Random sample (zufällige Stichprobe)**. Der Datensatz wird in dem S3-Bucket gespeichert, der im Feld **Speicherort der Eingabedaten** angegeben ist. 

Nachdem Sie den Prozentsatz der Datenobjekte angegeben haben, die Sie in die Stichprobe aufnehmen möchten, wählen Sie **Create subset** aus. SageMaker KI wählt nach dem Zufallsprinzip die Datenobjekte für Ihren Labeling-Job aus. Nachdem die Objekte ausgewählt wurden, klicken Sie auf **Use this subset (Diese Teilmenge verwenden)**. 

SageMaker AI erstellt eine Manifestdatei für die ausgewählten Datenobjekte. Außerdem wird der Wert im Feld **Input dataset location (Speicherort des Eingabedatensatzes)** so geändert, dass er auf die neue Manifestdatei verweist.

## Angeben einer Teilmenge
<a name="sms-select-dataset"></a>

**Amazon S3 Select**  
Amazon S3 Select ist für Neukunden nicht mehr verfügbar. Bestandskunden von Amazon S3 Select können das Feature weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter [So optimieren Sie die Abfrage Ihrer Daten in Amazon S3](https://aws.amazon.com/blogs/storage/how-to-optimize-querying-your-data-in-amazon-s3/).

Mithilfe einer Amazon–S3–`SELECT`-Abfrage für die Objektdateinamen können Sie eine Teilmenge Ihrer Datenobjekte angeben. 

Die `SELECT`-Anweisung der SQL-Abfrage wird für Sie definiert. Sie stellen die `WHERE`-Klausel bereit, um anzugeben, welche Datenobjekte zurückgegeben werden sollen.

Weitere Informationen über die Amazon-S3–`SELECT`Anweisung finden Sie unter [Auswählen von Inhalten aus Objekten](https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html).

Wählen Sie **Create subset (Teilmenge erstellen)** zum Starten der Auswahl und wählen Sie dann **Use this subset (Diese Teilmenge verwenden)** zur Verwendung der ausgewählten Daten. 

SageMaker AI erstellt eine Manifestdatei für die ausgewählten Datenobjekte. Außerdem wird der Wert im Feld **Input dataset location (Speicherort des Eingabedatensatzes)** aktualisiert, damit er auf die neue Manifestdatei verweist.

# 3D-Punktwolkeneingabedaten
<a name="sms-point-cloud-input-data"></a>

Um einen 3D-Punktwolken-Kennzeichnungsauftrag zu erstellen, müssen Sie eine Eingabemanifestdatei erstellen. In diesem Thema erfahren Sie mehr über die Formatierungsanforderungen der Eingabemanifestdatei für jeden Aufgabentyp. Informationen über die von Ground Truth akzeptierten Rohdatenformate für 3D-Punktwolkenbeschriftungsaufträge finden Sie im Abschnitt [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md).

Verwenden Sie den [Aufgabentyp der Labeling-Aufgabe](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud-task-types.html), um Themen zu [Eingabemanifestdateien für 3D-Punktwolken-Kennzeichnungsaufträge](sms-point-cloud-input-manifest.md) auszuwählen, in denen Sie mehr über die Formatierungsanforderungen für jede Zeile Ihrer Eingabemanifestdatei erfahren können.

**Topics**
+ [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md)
+ [Eingabemanifestdateien für 3D-Punktwolken-Kennzeichnungsaufträge](sms-point-cloud-input-manifest.md)
+ [Grundlegendes zu Koordinatensystemen und Sensorfusion](sms-point-cloud-sensor-fusion-details.md)

# Akzeptierte 3D-Rohdatenformate
<a name="sms-point-cloud-raw-data-types"></a>

Ground Truth verwendet Ihre 3D-Punktwolkendaten, um eine 3D-Szene zu rendern, die von den Auftragnehmern mit Anmerkungen versehen wird. In diesem Abschnitt werden die Rohdatenformate beschrieben, die für Punktwolkendaten und Sensorfusionsdaten für einen Punktwolkenframe akzeptiert werden. Informationen zum Erstellen einer Eingabemanifestdatei zur Verbindung Ihrer Roheingabedatendateien mit Ground Truth finden Sie unter [Eingabemanifestdateien für 3D-Punktwolken-Kennzeichnungsaufträge](sms-point-cloud-input-manifest.md).

Ground Truth unterstützt für jedes Bild Compact Binary Pack Format (.bin) und ASCII (.txt) Dateien. Diese Dateien enthalten Informationen über die Position (`x`-, – `y`und `z`-Koordinaten) aller Punkte, aus denen dieser Frame besteht, und optional Informationen zur Pixelfarbe jedes Punktes für farbige Punktwolken. Wenn Sie eine Eingabemanifestdatei für 3D-Punktwolken-Kennzeichnungsaufträge erstellen, können Sie das Format der Rohdaten im Parameter `format` angeben. 

In der folgenden Tabelle sind Elemente aufgeführt, die Ground Truth in Punktwolken-Rahmendateien zur Beschreibung einzelner Punkte unterstützt. 


****  

| Symbol | Wert | 
| --- | --- | 
|  `x`  |  Die x-Koordinate des Punktes.  | 
|  `y`  |  Die y-Koordinate des Punktes.  | 
|  `z`  |  Die z-Koordinate des Punktes.  | 
|  `i`  |  Die Intensität des Punktes.  | 
|  `r`  |  Die rote Farbkanalkomponente. Ein 8-Bit-Wert (0-255).  | 
|  `g`  |  Die grüne Farbkanalkomponente. Ein 8-Bit-Wert (0-255)  | 
|  `b`  |  Die blaue Farbkanalkomponente. Ein 8-Bit-Wert (0-255)  | 

Ground Truth geht von den folgenden Annahmen über Ihre Eingabedaten aus:
+ Alle Positionskoordinaten (x, y, z) sind in Metern angegeben. 
+ Alle Posenfahrkurse (qx, qy, qz, qw) werden in räumlichen [Quaternionen](https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation) gemessen.

## Compact Binary Pack-Format
<a name="sms-point-cloud-raw-data-cbpf-format"></a>

Das Compact Binary Pack-Format stellt eine Punktwolke als geordnete Menge eines Streams von Punkten dar. Jeder Punkt im Stream ist ein geordnetes Binärpaket von 4-Byte-Gleitkommawerten in einer Variante der Form `xyzirgb`. Die Elemente `x`, `y` und `z` sind erforderlich und zusätzliche Informationen zu diesem Pixel können auf verschiedene Arten mit `i`, `r`, `g` und `b` einbezogen werden. 

Um eine Binärdatei zur Eingabe von Punktwolken-Rahmendaten in einen Ground Truth 3D-Punktwolken-Beschriftungsauftrag zu verwenden, geben Sie in den Parameter `format` für Ihre Eingabemanifestdatei `binary/` ein und ersetzen Sie `` durch die Reihenfolge der Elemente in jedem Binärpaket. Sie können z. B. eine der folgenden Optionen für den Parameter `format` eingeben. 
+ `binary/xyzi` – Wenn Sie dieses Format verwenden, wird Ihr Punktelement-Stream in der folgenden Reihenfolge angezeigt: `x1y1z1i1x2y2z2i2...`
+ `binary/xyzrgb` – Wenn Sie dieses Format verwenden, wird Ihr Punktelement-Stream in der folgenden Reihenfolge angezeigt: `x1y1z1r1g1b1x2y2z2r2g2b2...`
+ `binary/xyzirgb` – Wenn Sie dieses Format verwenden, wird Ihr Punktelement-Stream in der folgenden Reihenfolge angezeigt: `x1y1z1i1r1g1b1x2y2z2i2r2g2b2...`

Wenn Sie eine Binärdatei für die Punktwolkenframedaten verwenden und keinen Wert für `format` eingeben, wird das Standardpaketformat `binary/xyzi` verwendet. 

## ASCII-Format
<a name="sms-point-cloud-raw-data-ascii-format"></a>

Das ASCII-Format verwendet eine Textdatei, um eine Punktwolke darzustellen, wobei jede Zeile in der ASCII-Punktwolkendatei einen einzelnen Punkt darstellt. Jeder Punkt ist eine Zeile der Textdatei und enthält durch Leerzeichen getrennte Werte, von denen jeder ein 4-Byte-ASCII-Gleitkommawert ist. Die Elemente `x`, `y` und `z` sind für jeden Punkt erforderlich und zusätzliche Informationen zu diesem Punkt können auf verschiedene Arten mit `i`, `r`, `g` und `b` einbezogen werden.

Um eine Textdatei zur Eingabe von Punktwolken-Rahmendaten in einen Ground Truth 3D-Punktwolken-Beschriftungsauftrag zu verwenden, geben Sie `text/` in den `format`-Parameter für Ihre Eingabemanifestdatei ein und ersetzen Sie `` durch die Reihenfolge der Punktelemente in jeder Zeile. 

Wenn Sie beispielsweise `text/xyzi` für `format` eingeben, sollte Ihre Textdatei für jeden Punktwolkenframe wie folgt aussehen: 

```
x1 y1 z1 i1
x2 y2 z2 i2
...
...
```

Wenn Sie `text/xyzrgb` eingeben, sollte Ihre Textdatei wie folgt aussehen: 

```
x1 y1 z1 r1 g1 b1
x2 y2 z2 r2 g2 b1
...
...
```

Wenn Sie eine Textdatei für die Punktwolkenframedaten verwenden und keinen Wert für `format` eingeben, wird das Standardformat `text/xyzi` verwendet. 

## Grenzwerte für Punktwolkenauflösung
<a name="sms-point-cloud-resolution"></a>

Ground Truth hat keine Auflösungsbeschränkung für 3D-Punktwolkenframes. Es wird jedoch empfohlen, jeden Punktwolkenframe auf 500.000 Punkte zu begrenzen, um eine optimale Leistung zu erzielen. Wenn Ground Truth die 3D-Punktwolkenvisualisierung rendert, muss sie auf den Computern Ihrer Auftragnehmer angezeigt werden können, was von der Computerhardware der Auftragnehmer abhängt. Punktwolkenframes, die größer als 1 Million Punkte sind, werden möglicherweise nicht auf Standardcomputern gerendert oder es dauert zu lange, bis sie geladen werden. 

# Eingabemanifestdateien für 3D-Punktwolken-Kennzeichnungsaufträge
<a name="sms-point-cloud-input-manifest"></a>

Wenn Sie einen Kennzeichnungsauftrag erstellen, stellen Sie eine Eingabemanifestdatei bereit, in der jede Zeile des Manifests eine Aufgabeneinheit beschreibt, die von Erstellern von Anmerkungen abgeschlossen werden soll. Das Format der Eingabemanifestdatei hängt von Ihrem Aufgabentyp ab. 
+ Wenn Sie einen Kennzeichnungsauftrag der 3D-Punktwolken-**Objekterkennung** oder **semantischen Segmentierung** erstellen, enthält jede Zeile in Ihrer Eingabemanifestdatei Informationen über einen einzelnen 3D-Punktwolkenframe. Dies wird als *Punktwolkenframe-Eingabemanifest* bezeichnet. Weitere Informationen hierzu finden Sie unter [Erstellen einer Punktwolkenframe-Eingabemanifestdatei](sms-point-cloud-single-frame-input-data.md). 
+ Wenn Sie einen Kennzeichnungsauftrag der 3D-Punktwolken-**Objektverfolgung** erstellen, enthält jede Zeile Ihrer Eingabemanifestdatei eine Sequenz von 3D-Punktwolkenframes und zugehörigen Daten. Dies wird als *Punktwolkensequenz-Eingabemanifest* bezeichnet. Weitere Informationen hierzu finden Sie unter [Erstellen eines Eingabemanifests für Punktwolkensequenzen](sms-point-cloud-multi-frame-input-data.md). 

# Erstellen einer Punktwolkenframe-Eingabemanifestdatei
<a name="sms-point-cloud-single-frame-input-data"></a>

Das Manifest ist eine UTF-8-kodierte Datei, in der jede Zeile ein vollständiges und gültiges JSON-Objekt ist. Jede Zeile wird durch einen Standardzeilenumbruch getrennt, \$1n oder \$1r\$1n. Da jede Zeile ein gültiges JSON-Objekt sein muss, sind Zeilenumbruchzeichen, die nicht durch Escape-Zeichen geschützt sind, nicht zulässig. In der Einzelframe-Eingabemanifestdatei enthält jede Zeile im Manifest Daten für einen einzelnen Punktwolkenframe. Die Punktwolkenframedaten können entweder im Binär- oder ASCII-Format gespeichert werden (siehe [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md)). Dies ist die Manifestdateiformatierung, die für die 3D-Punktwolken-Objekterkennung und die semantische Segmentierung erforderlich ist. Optional können Sie auch Kamerasensorfusionsdaten für jeden Punktwolkenframe bereitstellen. 

Ground Truth unterstützt die Fusion von Punktwolken- und Videokamerasensoren im [Weltkoordinatensystem](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-world-coordinate-system) für alle Modalitäten. Wenn Sie Ihre extrinsische 3D-Sensor-Matrix erhalten können (wie eine extrinsische LiDAR-Matrix), empfehlen wir, 3D-Punktwolkenframes mithilfe der extrinsischen Matrix in das Weltkoordinatensystem umzuwandeln. Weitere Informationen finden Sie unter [Sensorfusion](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-sensor-fusion). 

Wenn Sie jedoch keine Punktwolke im Weltkoordinatensystem erhalten können, können Sie Koordinaten im ursprünglichen Koordinatensystem angeben, in dem die Daten erfasst wurden. Wenn Sie Kameradaten für die Sensorfusion bereitstellen, wird empfohlen, dass Sie LiDAR-Sensor- und Kameraposen im Weltkoordinatensystem bereitstellen. 

Zum Erstellen einer Einzelframe-Eingabemanifestdatei identifizieren Sie den Speicherort jedes Punktwolkenframes, den die Auftragnehmer mithilfe des Schlüssels `source-ref` beschriften sollen. Darüber hinaus müssen Sie den Schlüssel `source-ref-metadata` verwenden, um das Format des Datensatzes, einen Zeitstempel für diesen Frame und optional Sensorfusionsdaten und Videokamerabilder zu identifizieren.

Im folgenden Beispiel wird die Syntax veranschaulicht, die für eine Eingabemanifestdatei für einen Einzelframe-Punktwolken-Kennzeichnungsauftrag verwendet wird. Das Beispiel enthält zwei Punktwolkenframes. Einzelheiten zu den einzelnen Parametern finden Sie in der Tabelle nach diesem Beispiel. 

**Wichtig**  
Jede Zeile in Ihrer Eingabemanifestdatei muss im Format [JSON Lines](http://jsonlines.org/) sein. Der folgende Codeblock zeigt eine Eingabe-Manifestdatei mit zwei JSON-Objekten. Jedes JSON-Objekt wird verwendet, um auf einen einzelnen Punktwolkenrahmen zu verweisen und Details zu diesem bereitzustellen. Die JSON-Objekte wurden aus Gründen der besseren Lesbarkeit erweitert, aber Sie müssen jedes JSON-Objekt so minimieren, dass es in eine einzige Zeile passt, wenn Sie eine Eingabe-Manifestdatei erstellen. Ein Beispiel finden Sie unter diesem Codeblock.

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/examplefolder/frame1.bin",
    "source-ref-metadata":{
        "format": "binary/xyzi",
        "unix-timestamp": 1566861644.759115,
        "ego-vehicle-pose":{
            "position": {
                "x": -2.7161461413869947,
                "y": 116.25822288149078,
                "z": 1.8348751887989483
            },
            "heading": {
                "qx": -0.02111296123795955,
                "qy": -0.006495469416730261,
                "qz": -0.008024565904865688,
                "qw": 0.9997181192298087
            }
        },
        "prefix": "s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/",
        "images": [
        {
            "image-path": "images/frame300.bin_camera0.jpg",
            "unix-timestamp": 1566861644.759115,
            "fx": 847.7962624528487,
            "fy": 850.0340893791985,
            "cx": 576.2129134707038,
            "cy": 317.2423573573745,
            "k1": 0,
            "k2": 0,
            "k3": 0,
            "k4": 0,
            "p1": 0,
            "p2": 0,
            "skew": 0,
            "position": {
                "x": -2.2722515189268138,
                "y": 116.86003310568965,
                "z": 1.454614668542299
            },
            "heading": {
                "qx": 0.7594754093069037,
                "qy": 0.02181790885672969,
                "qz": -0.02461725233103356,
                "qw": -0.6496916273040025
            },
            "camera-model": "pinhole"
        }]
    }
}
{
    "source-ref": "s3://amzn-s3-demo-bucket/examplefolder/frame2.bin",
    "source-ref-metadata":{
        "format": "binary/xyzi",
        "unix-timestamp": 1566861632.759133,
        "ego-vehicle-pose":{
            "position": {
                "x": -2.7161461413869947,
                "y": 116.25822288149078,
                "z": 1.8348751887989483
            },
            "heading": {
                "qx": -0.02111296123795955,
                "qy": -0.006495469416730261,
                "qz": -0.008024565904865688,
                "qw": 0.9997181192298087
            }
        },
        "prefix": "s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/",
        "images": [
        {
            "image-path": "images/frame300.bin_camera0.jpg",
            "unix-timestamp": 1566861644.759115,
            "fx": 847.7962624528487,
            "fy": 850.0340893791985,
            "cx": 576.2129134707038,
            "cy": 317.2423573573745,
            "k1": 0,
            "k2": 0,
            "k3": 0,
            "k4": 0,
            "p1": 0,
            "p2": 0,
            "skew": 0,
            "position": {
                "x": -2.2722515189268138,
                "y": 116.86003310568965,
                "z": 1.454614668542299
            },
            "heading": {
                "qx": 0.7594754093069037,
                "qy": 0.02181790885672969,
                "qz": -0.02461725233103356,
                "qw": -0.6496916273040025
            },
            "camera-model": "pinhole"
        }]
    }
}
```

Wenn Sie eine Eingabemanifestdatei erstellen, müssen Sie Ihre JSON-Objekte so reduzieren, dass sie in eine einzige Zeile passen. Der obige Codeblock würde beispielsweise in einer Eingabemanifestdatei wie folgt aussehen:

```
{"source-ref":"s3://amzn-s3-demo-bucket/examplefolder/frame1.bin","source-ref-metadata":{"format":"binary/xyzi","unix-timestamp":1566861644.759115,"ego-vehicle-pose":{"position":{"x":-2.7161461413869947,"y":116.25822288149078,"z":1.8348751887989483},"heading":{"qx":-0.02111296123795955,"qy":-0.006495469416730261,"qz":-0.008024565904865688,"qw":0.9997181192298087}},"prefix":"s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/","images":[{"image-path":"images/frame300.bin_camera0.jpg","unix-timestamp":1566861644.759115,"fx":847.7962624528487,"fy":850.0340893791985,"cx":576.2129134707038,"cy":317.2423573573745,"k1":0,"k2":0,"k3":0,"k4":0,"p1":0,"p2":0,"skew":0,"position":{"x":-2.2722515189268138,"y":116.86003310568965,"z":1.454614668542299},"heading":{"qx":0.7594754093069037,"qy":0.02181790885672969,"qz":-0.02461725233103356,"qw":-0.6496916273040025},"camera-model":"pinhole"}]}}
{"source-ref":"s3://amzn-s3-demo-bucket/examplefolder/frame2.bin","source-ref-metadata":{"format":"binary/xyzi","unix-timestamp":1566861632.759133,"ego-vehicle-pose":{"position":{"x":-2.7161461413869947,"y":116.25822288149078,"z":1.8348751887989483},"heading":{"qx":-0.02111296123795955,"qy":-0.006495469416730261,"qz":-0.008024565904865688,"qw":0.9997181192298087}},"prefix":"s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/someprefix/","images":[{"image-path":"images/frame300.bin_camera0.jpg","unix-timestamp":1566861644.759115,"fx":847.7962624528487,"fy":850.0340893791985,"cx":576.2129134707038,"cy":317.2423573573745,"k1":0,"k2":0,"k3":0,"k4":0,"p1":0,"p2":0,"skew":0,"position":{"x":-2.2722515189268138,"y":116.86003310568965,"z":1.454614668542299},"heading":{"qx":0.7594754093069037,"qy":0.02181790885672969,"qz":-0.02461725233103356,"qw":-0.6496916273040025},"camera-model":"pinhole"}]}}
```

Die folgende Tabelle zeigt die Parameter, die Sie in Ihre Eingabemanifestdatei aufnehmen können:


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `source-ref`  |  Ja  |  Zeichenfolge **Format für akzeptierte Zeichenfolgenwerte**:  `s3://<bucket-name>/<folder-name>/point-cloud-frame-file`  |  Der Amazon S3-Speicherort eines einzelnen Punktwolken-Frames.  | 
|  `source-ref-metadata`  |  Ja  |  JSON-Objekt **Akzeptierte Parameter**:  `format`, `unix-timestamp`, `ego-vehicle-pose`, `position`, `prefix`, `images`  |  Verwenden Sie diesen Parameter, um zusätzliche Informationen über die Punktwolke in `source-ref` aufzunehmen und Kameradaten für die Sensorfusion bereitzustellen.   | 
|  `format`  |  Nein  |  Zeichenfolge **Akzeptierte Zeichenfolgenwerte**: `"binary/xyz"`, `"binary/xyzi"`, `"binary/xyzrgb"`, `"binary/xyzirgb"`, `"text/xyz"`, `"text/xyzi"`, `"text/xyzrgb"`, `"text/xyzirgb"` **Standardwerte**:  Wenn die in `source-ref` identifizierte Datei die Erweiterung .bin aufweist, `binary/xyzi` Wenn die in `source-ref` identifizierte Datei die Erweiterung .txt aufweist, `text/xyzi`  |  Verwenden Sie diesen Parameter, um das Format der Punktwolkendaten anzugeben. Weitere Informationen finden Sie unter [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md).  | 
|  `unix-timestamp`  |  Ja  |  Zahl Ein Unix-Zeitstempel.   |  Der Unix-Zeitstempel ist die Anzahl der Sekunden seit dem 1. Januar 1970 bis zum UTC-Zeitpunkt, zu dem die Daten von einem Sensor erfasst wurden.   | 
|  `ego-vehicle-pose`  |  Nein  |  JSON-Objekt  |  Die Pose des Geräts, das zum Sammeln der Punktwolkendaten verwendet wird. Weitere Informationen zu diesem Parameter finden Sie unter [Aufnehmen von Fahrzeugposeninformationen in Ihr Eingabemanifest](#sms-point-cloud-single-frame-ego-vehicle-input).  | 
|  `prefix`  |  Nein  |  Zeichenfolge **Format für akzeptierte Zeichenfolgenwerte**:  `s3://<bucket-name>/<folder-name>/`  |  Der Speicherort in Amazon S3, an dem Ihre Metadaten, z. B. Kamerabilder, für dieses Frame gespeichert sind.  Das Präfix muss mit einem Schrägstrich enden: `/`.  | 
|  `images`  |  Nein  |  Auflisten  |  Eine Liste der Parameter, die Farbkamerabilder beschreiben, die für die Sensorfusion verwendet werden. Sie können bis zu 8 Bilder in diese Liste aufnehmen. Weitere Informationen zu den für jedes Bild erforderlichen Parametern finden Sie unter [Einschließen der Kameradaten in das Eingabemanifest](#sms-point-cloud-single-frame-image-input).   | 

## Aufnehmen von Fahrzeugposeninformationen in Ihr Eingabemanifest
<a name="sms-point-cloud-single-frame-ego-vehicle-input"></a>

Verwenden Sie den Standort des Ego-Fahrzeugs, um Informationen über den Standort des Fahrzeugs zu erhalten, die zur Erfassung der Punktwolkendaten verwendet werden. Ground Truth verwendet diese Informationen, um die extrinsische LiDAR-Matrix zu berechnen. 

Ground Truth verwendet extrinsische Matrizen, um Beschriftungen auf und von der 3D-Szene und den 2D-Bildern zu projizieren. Weitere Informationen finden Sie unter [Sensorfusion](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-sensor-fusion).

In der folgenden Tabelle finden Sie weitere Informationen zu den Parametern `position` und Ausrichtung (`heading`), die erforderlich sind, wenn Sie Ego-Fahrzeuginformationen bereitstellen. 


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `position`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `x`, `y` und `z`. Geben Sie Zahlen für diese Parameter ein.   |  Der Translationsvektor des Ego-Fahrzeugs im Weltkoordinatensystem.   | 
|  `heading`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `qx`, `qy`, `qz` und `qw`. Geben Sie Zahlen für diese Parameter ein.   |  Die Ausrichtung des Bezugsrahmens des auf dem Fahrzeug montierten Geräts oder Sensors, das bzw. der die Umgebung erfasst, gemessen in [Quaternionen](https://en.wikipedia.org/wiki/Quaternion), (`qx`, `qy`, `qz`, `qw`), im Koordinatensystem.  | 

## Einschließen der Kameradaten in das Eingabemanifest
<a name="sms-point-cloud-single-frame-image-input"></a>

Wenn Sie Videokameradaten in einen Frame einschließen möchten, verwenden Sie die folgenden Parameter, um Informationen zu jedem Bild bereitzustellen. Die Spalte **Erforderlich** unten gilt, wenn der Parameter `images` in der Eingabemanifestdatei unter `source-ref-metadata` enthalten ist. Sie müssen keine Bilder in Ihre Eingabemanifestdatei aufnehmen. 

Wenn Sie Kamerabilder einschließen, müssen Sie Informationen über `position` und `heading` der Kamera einschließen, die zum Erfassen der Bilder im Weltkoordinatensystem verwendet werden.

Wenn Ihre Bilder verzerrt sind, kann Ground Truth sie automatisch entzerren, indem es Informationen verwendet, die Sie über das Bild in Ihrer manifesten Eingabedatei bereitstellen, einschließlich der Verzerrungskoeffizienten (`k1`, `k2`, `k3`, `k4`, `p1`, `p1`), des Kameramodells und der kameraintrinsischen Matrix. Die intrinsische Matrix besteht aus Brennweite (`fx`, `fy`) und dem Hauptpunkt (`cx`, `cy)`). Weitere Informationen dazu, wie Ground Truth die intrinsische Matrix der Kamera verwendet, finden Sie unter [Intrinsische Matrix](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-intrinsic). Wenn keine Verzeichnungskoeffizienten enthalten sind, wird ein Bild durch Ground Truth nicht unverzerrt. 


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `image-path`  |  Ja  |  Zeichenfolge **Beispiel für Format**:  `<folder-name>/<imagefile.png>`  |  Der relative Speicherort Ihrer Bilddatei in Amazon S3. Dieser relative Pfad wird an den Pfad angehängt, den Sie in `prefix` angeben.   | 
|  `unix-timestamp`  |  Ja  |  Zahl  |  Der Unix-Zeitstempel ist die Anzahl der Sekunden seit dem 1. Januar 1970 bis zum UTC-Zeitpunkt, zu dem die Daten von einer Kamera erfasst wurden.   | 
|  `camera-model`  |  Nein  |  Zeichenfolge: **Akzeptierte Werte**: `"pinhole"`, `"fisheye"` **Standard:** `"pinhole"`  |  Das Modell der Kamera, mit der das Bild erfasst wird. Diese Informationen werden verwendet, um Kamerabilder zu entzerren.   | 
|  `fx, fy`  |  Ja  |  Zahlen  |  Die Brennweite der Kamera in x (`fx`)- und y (`fy`)-Richtungen.  | 
|  `cx, cy`  |  Ja  | Zahlen |  Die x (`cx`)- und y (`cy`)-Koordinaten des Hauptpunkts.   | 
|  `k1, k2, k3, k4`  |  Nein  |  Zahl  |  Radiale Verzeichnungskoeffizienten. Unterstützt sowohl für **Fischaugen-** als auch **Lochkameramodelle**.   | 
|  `p1, p2`  |  Nein  |  Zahl  |  Tangentiale Verzeichnungskoeffizienten. Unterstützt für **Lochkameramodelle**.  | 
|  `skew`  |  Nein  |  Zahl  |  Ein Parameter, um die Neigung eines Bildes zu messen.   | 
|  `position`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `x`, `y` und `z`. Geben Sie Zahlen für diese Parameter ein.   | Die Position oder der Ursprung des Bezugsrahmens der Kamera, die auf dem Fahrzeug montiert ist und Bilder erfasst. | 
|  `heading`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `qx`, `qy`, `qz` und `qw`. Geben Sie Zahlen für diese Parameter ein.   |  Die Ausrichtung des Bezugsrahmens der auf dem Fahrzeug montierten Kamera, die Bilder erfasst, gemessen mit [Quaternionen](https://en.wikipedia.org/wiki/Quaternion), (`qx`, `qy`, `qz`, `qw`), im Weltkoordinatensystem.   | 

## Grenzwerte für Punktwolkenframes
<a name="sms-point-cloud-single-frame-limits"></a>

Sie können bis zu 100.000 Punktwolkenframes in Ihre Eingabemanifestdatei aufnehmen. 3D-Punktwolken-Labeling-Aufgaben haben längere Vorverarbeitungszeiten als andere Ground Truth-Aufgaben. Weitere Informationen finden Sie unter [Vorverarbeitungszeit der Jobs](sms-point-cloud-general-information.md#sms-point-cloud-job-creation-time).

# Erstellen eines Eingabemanifests für Punktwolkensequenzen
<a name="sms-point-cloud-multi-frame-input-data"></a>

Das Manifest ist eine UTF-8-kodierte Datei, in der jede Zeile ein vollständiges und gültiges JSON-Objekt ist. Jede Zeile wird durch einen Standardzeilenumbruch getrennt, \$1n oder \$1r\$1n. Da jede Zeile ein gültiges JSON-Objekt sein muss, sind Zeilenumbruchzeichen, die nicht durch Escape-Zeichen geschützt sind, nicht zulässig. In der Eingabemanifestdatei der Punktwolkensequenz enthält jede Zeile im Manifest eine Sequenz von Punktwolkenframes. Die Punktwolkendaten für jeden Frame in der Sequenz können entweder im binären oder im ASCII-Format gespeichert werden. Weitere Informationen finden Sie unter [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md). Dies ist die Manifestdateiformatierung, die für die 3D-Punktwolken-Objektverfolgung erforderlich ist. Optional können Sie auch Punktattribut- und Kamerasensorfusionsdaten für jeden Punktwolkenframe bereitstellen. Wenn Sie eine Sequenz-Eingabemanifestdatei erstellen, müssen Sie LiDAR- und Videokamera-Sensorfusionsdaten in einem [Weltkoordinatensystem](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-world-coordinate-system) bereitstellen. 

Das folgende Beispiel veranschaulicht die Syntax, die für eine Eingabemanifestdatei verwendet wird, wenn jede Zeile im Manifest eine Sequenzdatei ist. Jede Zeile in Ihrer Eingabemanifestdatei muss im Format [JSON Lines](http://jsonlines.org/) sein.

```
{"source-ref": "s3://amzn-s3-demo-bucket/example-folder/seq1.json"}
{"source-ref": "s3://amzn-s3-demo-bucket/example-folder/seq2.json"}
```

Die Daten für jede Sequenz von Punktwolkenframes müssen in einem JSON-Datenobjekt gespeichert werden. Im Folgenden finden Sie ein Beispiel für das Format, das Sie für eine Sequenzdatei verwenden. Informationen zu jedem Frame sind als JSON-Objekt enthalten und werden in der `frames`-Liste aufgeführt. Dies ist ein Beispiel für eine Sequenzdatei mit zwei Punktwolken-Frame-Dateien, `frame300.bin` und `frame303.bin`. Das *...* wird verwendet, um anzugeben, wo Sie Informationen für zusätzliche Frames einfügen sollten. Fügen Sie für jeden Frame in der Sequenz ein JSON-Objekt hinzu.

Der folgende Codeblock enthält ein JSON-Objekt für eine einzelne Sequenzdatei. Das JSON-Objekt wurde aus Gründen der Lesbarkeit erweitert.

```
{
  "seq-no": 1,
  "prefix": "s3://amzn-s3-demo-bucket/example_lidar_sequence_dataset/seq1/",
  "number-of-frames": 100,
  "frames":[
    {
        "frame-no": 300, 
        "unix-timestamp": 1566861644.759115, 
        "frame": "example_lidar_frames/frame300.bin", 
        "format": "binary/xyzi", 
        "ego-vehicle-pose":{
            "position": {
                "x": -2.7161461413869947,
                "y": 116.25822288149078,
                "z": 1.8348751887989483
            },
            "heading": {
                "qx": -0.02111296123795955,
                "qy": -0.006495469416730261,
                "qz": -0.008024565904865688,
                "qw": 0.9997181192298087
            }
        }, 
        "images": [
        {
            "image-path": "example_images/frame300.bin_camera0.jpg",
            "unix-timestamp": 1566861644.759115,
            "fx": 847.7962624528487,
            "fy": 850.0340893791985,
            "cx": 576.2129134707038,
            "cy": 317.2423573573745,
            "k1": 0,
            "k2": 0,
            "k3": 0,
            "k4": 0,
            "p1": 0,
            "p2": 0,
            "skew": 0,
            "position": {
                "x": -2.2722515189268138,
                "y": 116.86003310568965,
                "z": 1.454614668542299
            },
            "heading": {
                "qx": 0.7594754093069037,
                "qy": 0.02181790885672969,
                "qz": -0.02461725233103356,
                "qw": -0.6496916273040025
            },
            "camera-model": "pinhole"
        }]
    },
    {
        "frame-no": 303, 
        "unix-timestamp": 1566861644.759115, 
        "frame": "example_lidar_frames/frame303.bin", 
        "format": "text/xyzi", 
        "ego-vehicle-pose":{...}, 
        "images":[{...}]
    },
     ...
  ]
}
```

Die folgende Tabelle enthält Einzelheiten zu den Parametern der obersten Ebene einer Sequenzdatei. Ausführliche Informationen zu den Parametern, die für einzelne Frames in der Sequenzdatei erforderlich sind, finden Sie unter [Parameter für einzelne Punktwolkenframes](#sms-point-cloud-multi-frame-input-single-frame).


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `seq-no`  |  Ja  |  Ganzzahl  |  Die geordnete Nummer der Sequenz.   | 
|  `prefix`  |  Ja  |  Zeichenfolge **Akzeptierte Werte**: `s3://<bucket-name>/<prefix>/`  |  Der Amazon S3-Speicherort, an dem sich die Sequenzdateien befinden.  Das Präfix muss mit einem Schrägstrich enden: `/`.  | 
|  `number-of-frames`  |  Ja  |  Ganzzahl  |  Die Gesamtzahl der Frames, die in der Sequenzdatei enthalten sind. Diese Zahl muss mit der Gesamtzahl der Frames übereinstimmen, die im Parameter `frames` in der nächsten Zeile aufgeführt sind.  | 
|  `frames`  |  Ja  |  Liste der JSON-Objekte  |  Eine Liste der Framedaten. Die Länge der Liste muss gleich `number-of-frames` sein. In der Benutzeroberfläche für Auftragnehmer sind Frames in einer Sequenz identisch mit der Reihenfolge der Frames in diesem Array.  Weitere Informationen zum Format der einzelnen Frames finden Sie unter [Parameter für einzelne Punktwolkenframes](#sms-point-cloud-multi-frame-input-single-frame).   | 

## Parameter für einzelne Punktwolkenframes
<a name="sms-point-cloud-multi-frame-input-single-frame"></a>

Die folgende Tabelle zeigt die Parameter, die Sie in die Eingabemanifestdatei aufnehmen können.


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `frame-no`  |  Nein  |  Ganzzahl  |  Eine Framenummer. Dies ist eine optionale Kennung, die vom Kunden angegeben wird, um den Frame innerhalb einer Sequenz zu identifizieren. Diese wird von Ground Truth nicht verwendet.  | 
|  `unix-timestamp`  |  Ja  |  Zahl  |  Der Unix-Zeitstempel ist die Anzahl der Sekunden seit dem 1. Januar 1970 bis zum UTC-Zeitpunkt, zu dem die Daten von einem Sensor erfasst wurden.  Der Zeitstempel für jeden Frame muss unterschiedlich sein und die Zeitstempel müssen sequentiell sein, da sie für die quaderförmige Interpolation verwendet werden. Idealerweise sollte dies der tatsächliche Zeitstempel sein, zu dem die Daten erfasst wurden. Wenn dies nicht verfügbar ist, müssen Sie eine inkrementelle Sequenz von Zeitstempeln verwenden, wobei der erste Frame in Ihrer Sequenzdatei dem ersten Zeitstempel in der Sequenz entspricht.  | 
|  `frame`  |  Ja  |  Zeichenfolge **Beispiel für Format** `<folder-name>/<sequence-file.json>`  |  Der relative Speicherort Ihrer Sequenzdatei in Amazon S3. Dieser relative Pfad wird an den Pfad angehängt, den Sie in `prefix` angeben.  | 
|  `format`  |  Nein  |  Zeichenfolge **Akzeptierte Zeichenfolgenwerte**: `"binary/xyz"`, `"binary/xyzi"`, `"binary/xyzrgb"`, `"binary/xyzirgb"`, `"text/xyz"`, `"text/xyzi"`, `"text/xyzrgb"`, `"text/xyzirgb"` **Standardwerte**:  Wenn die in `source-ref` identifizierte Datei die Erweiterung .bin aufweist, `binary/xyzi` Wenn die in `source-ref` identifizierte Datei die Erweiterung .txt aufweist, `text/xyzi`  |  Verwenden Sie diesen Parameter, um das Format der Punktwolkendaten anzugeben. Weitere Informationen finden Sie unter [Akzeptierte 3D-Rohdatenformate](sms-point-cloud-raw-data-types.md).  | 
|  `ego-vehicle-pose`  |  Nein  |  JSON-Objekt  |  Die Pose des Geräts, das zum Sammeln der Punktwolkendaten verwendet wird. Weitere Informationen zu diesem Parameter finden Sie unter [Aufnehmen von Fahrzeugposeninformationen in Ihr Eingabemanifest](#sms-point-cloud-multi-frame-ego-vehicle-input).  | 
|  `prefix`  |  Nein  |  Zeichenfolge **Format für akzeptierte Zeichenfolgenwerte**:  `s3://<bucket-name>/<folder-name>/`  |  Der Speicherort in Amazon S3, an dem Ihre Metadaten, z. B. Kamerabilder, für dieses Frame gespeichert sind.  Das Präfix muss mit einem Schrägstrich enden: `/`.  | 
|  `images`  |  Nein  |  Auflisten  |  Eine Liste der Parameter, die Farbkamerabilder beschreiben, die für die Sensorfusion verwendet werden. Sie können bis zu 8 Bilder in diese Liste aufnehmen. Weitere Informationen zu den für jedes Bild erforderlichen Parametern finden Sie unter [Einschließen der Kameradaten in das Eingabemanifest](#sms-point-cloud-multi-frame-image-input).   | 

## Aufnehmen von Fahrzeugposeninformationen in Ihr Eingabemanifest
<a name="sms-point-cloud-multi-frame-ego-vehicle-input"></a>

Verwenden Sie den Standort des Ego-Fahrzeugs, um Informationen über die Pose des Fahrzeugs zu erhalten, das zur Erfassung der Punktwolkendaten verwendet wird. Ground Truth verwendet diese Informationen, um extrinsische LiDAR-Matrizen zu berechnen. 

Ground Truth verwendet extrinsische Matrizen, um Beschriftungen auf und von der 3D-Szene und den 2D-Bildern zu projizieren. Weitere Informationen finden Sie unter [Sensorfusion](sms-point-cloud-sensor-fusion-details.md#sms-point-cloud-sensor-fusion).

In der folgenden Tabelle finden Sie weitere Informationen zu den Parametern `position` und Ausrichtung (`heading`), die erforderlich sind, wenn Sie Ego-Fahrzeuginformationen bereitstellen. 


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `position`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `x`, `y` und `z`. Geben Sie Zahlen für diese Parameter ein.   |  Der Translationsvektor des Ego-Fahrzeugs im Weltkoordinatensystem.   | 
|  `heading`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `qx`, `qy`, `qz` und `qw`. Geben Sie Zahlen für diese Parameter ein.   |  Die Ausrichtung des Bezugsrahmens des auf dem Fahrzeug montierten Geräts oder Sensors, das bzw. der die Umgebung erfasst, gemessen in [Quaternionen](https://en.wikipedia.org/wiki/Quaternion), (`qx`, `qy`, `qz`, `qw`), im Koordinatensystem.  | 

## Einschließen der Kameradaten in das Eingabemanifest
<a name="sms-point-cloud-multi-frame-image-input"></a>

Wenn Sie Farbkameradaten in einen Frame einschließen möchten, verwenden Sie die folgenden Parameter, um Informationen zu den einzelnen Bildern bereitzustellen. Die Spalte **Erforderlich** in der folgenden Tabelle gilt, wenn der Parameter `images` in der Eingabemanifestdatei enthalten ist. Sie müssen keine Bilder in Ihre Eingabemanifestdatei aufnehmen. 

Wenn Sie Kamerabilder einschließen, müssen Sie Informationen über die `position` und Ausrichtung (`heading`) der Kamera angeben, die für die Erfassung der Bilder verwendet wurde. 

Wenn Ihre Bilder verzerrt sind, kann Ground Truth sie automatisch entzerren, indem es Informationen verwendet, die Sie über das Bild in Ihrer manifesten Eingabedatei bereitstellen, einschließlich der Verzerrungskoeffizienten (`k1`, `k2`, `k3`, `k4`, `p1`, `p1`), des Kameramodells und der Brennweite (`fx`, `fy`), und des Hauptpunkts (`cx`, `cy)`. Weitere Informationen zu diesen Koeffizienten und dem Entzerren von Bildern finden Sie unter [Kamerakalibrierung mit OpenCV](https://docs.opencv.org/2.4.13.7/doc/tutorials/calib3d/camera_calibration/camera_calibration.html). Wenn keine Verzeichnungskoeffizienten enthalten sind, wird ein Bild durch Ground Truth nicht unverzerrt. 


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `image-path`  |  Ja  |  Zeichenfolge **Beispiel für Format**:  `<folder-name>/<imagefile.png>`  |  Der relative Speicherort Ihrer Bilddatei in Amazon S3. Dieser relative Pfad wird an den Pfad angehängt, den Sie in `prefix` angeben.   | 
|  `unix-timestamp`  |  Ja  |  Zahl  |  Der Zeitstempel des Bildes.   | 
|  `camera-model`  |  Nein  |  Zeichenfolge: **Akzeptierte Werte**: `"pinhole"`, `"fisheye"` **Standard:** `"pinhole"`  |  Das Modell der Kamera, mit der das Bild erfasst wird. Diese Informationen werden verwendet, um Kamerabilder zu entzerren.   | 
|  `fx, fy`  |  Ja  |  Zahlen  |  Die Brennweite der Kamera in x (`fx`)- und y (`fy`)-Richtungen.  | 
|  `cx, cy`  |  Ja  | Zahlen |  Die x (`cx`)- und y (`cy`)-Koordinaten des Hauptpunkts.   | 
|  `k1, k2, k3, k4`  |  Nein  |  Zahl  |  Radiale Verzeichnungskoeffizienten. Unterstützt sowohl für **Fischaugen-** als auch **Lochkameramodelle**.   | 
|  `p1, p2`  |  Nein  |  Zahl  |  Tangentiale Verzeichnungskoeffizienten. Unterstützt für **Lochkameramodelle**.  | 
|  `skew`  |  Nein  |  Zahl  |  Ein Parameter, mit dem alle bekannten Neigungen im Bild gemessen werden können.  | 
|  `position`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `x`, `y` und `z`. Geben Sie Zahlen für diese Parameter ein.   |  Die Position oder der Ursprung des Bezugsrahmens der Kamera, die auf dem Fahrzeug montiert ist und Bilder erfasst.  | 
|  `heading`  |  Ja  |  JSON-Objekt **Erforderliche Parameter**: `qx`, `qy`, `qz` und `qw`. Geben Sie Zahlen für diese Parameter ein.   |  Die Ausrichtung des Bezugsrahmens der auf dem Fahrzeug montierten Kamera, die Bilder erfasst, gemessen mit [Quaternionen](https://en.wikipedia.org/wiki/Quaternion), (`qx`, `qy`, `qz`, `qw`).   | 

## Grenzwerte für Sequenzdateien und Punktwolkenframes
<a name="sms-point-cloud-multi-frame-limits"></a>

Sie können bis zu 100.000 Punktwolkenframesequenzen in Ihre Eingabemanifestdatei aufnehmen. Sie können bis zu 500 Punktwolkenframes in jede Sequenzdatei aufnehmen. 

Beachten Sie, dass 3D-Punktwolken-Beschriftungsaufträge längere Vorverarbeitungszeiten haben als andere Ground Truth-Aufgabentypen. Weitere Informationen finden Sie unter [Vorverarbeitungszeit der Jobs](sms-point-cloud-general-information.md#sms-point-cloud-job-creation-time).

# Grundlegendes zu Koordinatensystemen und Sensorfusion
<a name="sms-point-cloud-sensor-fusion-details"></a>

Punktwolkendaten befinden sich immer in einem Koordinatensystem. Dieses Koordinatensystem kann für das Fahrzeug oder Gerät, das die Umgebung erkennt, lokal sein oder es kann sich um ein Weltkoordinatensystem handeln. Bei der Verwendung von Ground-Truth-3D-Punktwolkenbeschriftungsaufträgen werden alle Anmerkungen unter Verwendung des Koordinatensystems Ihrer Eingabedaten erstellt. Bei einigen Aufgabentypen und Funktionen der Kennzeichnungsaufträge müssen Sie Daten in einem Weltkoordinatensystem bereitstellen. 

In diesem Thema erfahren Sie Folgendes:
+ Wenn Sie Eingabedaten in einem Weltkoordinatensystem oder einem globalen Referenzrahmen *angeben müssen*.
+ Was eine Weltkoordinate ist und wie Sie Punktwolkendaten in ein Weltkoordinatensystem konvertieren können. 
+ Wie Sie Ihre extrinsischen Sensor- und Kameramatrizen verwenden können, um Posendaten bereitzustellen, wenn Sie die Sensorfusion verwenden. 

## Koordinatensystemanforderungen für Kennzeichnungsaufträge
<a name="sms-point-cloud-sensor-fusion-coordinate-requirements"></a>

Wenn Ihre Punktwolkendaten in einem lokalen Koordinatensystem erfasst wurden, können Sie eine extrinsische Matrix des Sensors verwenden, der zum Sammeln der Daten verwendet wird, um sie in ein Weltkoordinatensystem oder globalen Referenzrahmen zu konvertieren. Wenn Sie keine extrinsische Matrix für Ihre Punktwolkendaten erhalten können und daher keine Punktwolken in einem Weltkoordinatensystem abrufen können, können Sie Punktwolkendaten in einem lokalen Koordinatensystem für Aufgabentypen der 3D-Punktwolkenobjekterkennung und semantischen Segmentierung bereitstellen. 

Für die Objektverfolgung müssen Sie Punktwolkendaten in einem Weltkoordinatensystem bereitstellen. Dies liegt daran, dass, wenn Sie Objekte über mehrere Frames verfolgen, sich das Ego-Fahrzeug selbst in der Welt bewegt und daher alle Frames einen Bezugspunkt benötigen. 

Wenn Sie Kameradaten für die Sensorfusion einschließen, empfiehlt es sich, Kameraposen im selben Weltkoordinatensystem wie der 3D-Sensor (z. B. ein LiDAR-Sensor) bereitzustellen. 

## Verwenden von Punktwolkendaten in einem Weltkoordinatensystem
<a name="sms-point-cloud-world-coordinate-system"></a>

In diesem Abschnitt wird erläutert, was ein Weltkoordinatensystem (WKS), auch als *globaler Referenzrahmen* bezeichnet, ist, und erläutert, wie Sie Punktwolkendaten in einem Weltkoordinatensystem bereitstellen können.

### Was ist ein Weltkoordinatensystem?
<a name="sms-point-cloud-what-is-wcs"></a>

Ein WKS oder globaler Referenzrahmen ist ein festes universelles Koordinatensystem, in dem Fahrzeug- und Sensorkoordinatensysteme platziert werden. Wenn sich beispielsweise mehrere Punktwolkenframes in verschiedenen Koordinatensystemen befinden, weil sie von zwei Sensoren erfasst wurden, kann ein WKS verwendet werden, um alle Koordinaten in diesen Punktwolkenframes in ein einzelnes Koordinatensystem zu verschieben, wobei alle Frames denselben Ursprung haben (0,0,0). Diese Transformation erfolgt, indem der Ursprung jedes Frames mit einem Translationsvektor in den Ursprung des WKS verschoben und die drei Achsen (typischerweise x, y und z) mithilfe einer Rotationsmatrix in die richtige Ausrichtung gedreht werden. Diese starre Körpertransformation wird als *homogene Transformation* bezeichnet.

Ein Weltkoordinatensystem ist wichtig für die globale Pfadplanung, Lokalisierung, Kartierung und Simulation von Fahrszenarien. Ground Truth verwendet das kartesische Weltkoordinatensystem für Rechtshänder, wie es in [ISO 8855](https://www.iso.org/standard/51180.html) definiert ist, bei dem die X-Achse nach vorne in Richtung der Fahrzeugbewegung verläuft, die Y-Achse nach links verläuft und die Z-Achse vom Boden nach oben zeigt. 

Der globale Referenzrahmen hängt von den Daten ab. Einige Datensätze verwenden die LiDAR-Position im ersten Frame als Ursprung. In diesem Szenario verwenden alle Frames den ersten Frame als Referenz und der Fahrkurs und die Position des Geräts befinden sich in der Nähe des Ursprungs im ersten Frame. Beispielsweise haben KITTI-Datensätze den ersten Frame als Referenz für Weltkoordinaten. Andere Datensätze verwenden eine Geräteposition, die vom Ursprung abweicht.

Beachten Sie, dass dies nicht das GPS/IMU Koordinatensystem ist, das normalerweise um 90 Grad entlang der Z-Achse gedreht wird. Wenn sich Ihre Punktwolkendaten in einem GPS/IMU Koordinatensystem befinden (wie OxTS im Open-Source-AV KITTI-Datensatz), müssen Sie den Ursprung in ein Weltkoordinatensystem transformieren (normalerweise das Referenzkoordinatensystem des Fahrzeugs). Sie wenden diese Transformation an, indem Sie Ihre Daten mit Transformationsmetriken (Rotationsmatrix und Translationsvektor) multiplizieren. Dadurch werden die Daten vom ursprünglichen Koordinatensystem in ein globales Referenzkoordinatensystem transformiert. Weitere Informationen zu dieser Transformation finden Sie im nächsten Abschnitt. 

### Konvertieren von 3D-Punktwolkendaten in ein WKS
<a name="sms-point-cloud-coordinate-system-general"></a>

Ground Truth geht davon aus, dass Ihre Punktwolkendaten bereits in ein Referenzkoordinatensystem Ihrer Wahl transformiert worden sind. Sie können beispielsweise das Referenzkoordinatensystem des Sensors (z. B. LiDAR) als globales Referenzkoordinatensystem auswählen. Sie können auch Punktwolken von verschiedenen Sensoren nehmen und sie von der Sensoransicht in die Referenzkoordinatensystemansicht des Fahrzeugs transformieren. Sie verwenden die extrinsische Matrix eines Sensors, bestehend aus einer Rotationsmatrix und einem Translationsvektor, um Ihre Punktwolkendaten in ein WKS oder einen globalen Referenzrahmen zu konvertieren. 

Zusammenfassend können der Translationsvektor und die Rotationsmatrix verwendet werden, um eine *extrinsische Matrix* zu bilden, die verwendet werden kann, um Daten aus einem lokalen Koordinatensystem in ein WKS zu konvertieren. Beispielsweise kann Ihre extrinsische LiDAR-Matrix wie folgt zusammengesetzt werden, wobei `R` die Rotationsmatrix und `T` der Translationsvektor ist:

```
LiDAR_extrinsic = [R T;0 0 0 1]
```

Das KITTI-Datensatz für autonomes Fahren enthält beispielsweise eine Rotationsmatrix und einen Translationsvektor für die extrinsische LiDAR-Transformationsmatrix für jeden Frame. Das [pykitti](https://github.com/utiasSTARS/pykitti)-Python-Modul kann zum Laden der KITTI-Daten verwendet werden, und im Datensatz stellt `dataset.oxts[i].T_w_imu` die extrinsische LiDAR-Transformation für den `i`. Frame bereit und kann mit Punkten in diesem Frame multipliziert werden, um sie in ein festes Referenzsystem zu konvertieren – `np.matmul(lidar_transform_matrix, points)`. Wenn Sie einen Punkt im LiDAR-Frame mit einer extrinsischen LiDAR-Matrix multiplizieren, wird er in Weltkoordinaten umgewandelt. Wenn Sie einen Punkt im festen Referenzsystem mit der extrinsischen Matrix der Kamera multiplizieren, werden die Punktkoordinaten im Referenzrahmen der Kamera angezeigt.

Im folgenden Codebeispiel wird veranschaulicht, wie Sie Punktwolkenframes aus dem KITTI-Datensatz in ein WKS konvertieren können. 

```
import pykitti
import numpy as np

basedir = '/Users/nameofuser/kitti-data'
date = '2011_09_26'
drive = '0079'

# The 'frames' argument is optional - default: None, which loads the whole dataset.
# Calibration, timestamps, and IMU data are read automatically. 
# Camera and velodyne data are available via properties that create generators
# when accessed, or through getter methods that provide random access.
data = pykitti.raw(basedir, date, drive, frames=range(0, 50, 5))

# i is frame number
i = 0

# lidar extrinsic for the ith frame
lidar_extrinsic_matrix = data.oxts[i].T_w_imu

# velodyne raw point cloud in lidar scanners own coordinate system
points = data.get_velo(i)

# transform points from lidar to global frame using lidar_extrinsic_matrix
def generate_transformed_pcd_from_point_cloud(points, lidar_extrinsic_matrix):
    tps = []
    for point in points:
        transformed_points = np.matmul(lidar_extrinsic_matrix, np.array([point[0], point[1], point[2], 1], dtype=np.float32).reshape(4,1)).tolist()
        if len(point) > 3 and point[3] is not None:
            tps.append([transformed_points[0][0], transformed_points[1][0], transformed_points[2][0], point[3]])
       
    return tps
    
# customer transforms points from lidar to global frame using lidar_extrinsic_matrix
transformed_pcl = generate_transformed_pcd_from_point_cloud(points, lidar_extrinsic_matrix)
```

## Sensorfusion
<a name="sms-point-cloud-sensor-fusion"></a>

Ground Truth unterstützt die Sensorfusion von Punktwolkendaten mit bis zu 8 Videokameraeingängen. Diese Funktion ermöglicht es menschlichen Kennzeichnern, das 3D-Punktwolkenbild side-by-side mit dem synchronisierten Videobild zu betrachten. Neben der Bereitstellung von mehr visuellem Kontext für die Beschriftung ermöglicht die Sensorfusion den Auftragnehmern, Anmerkungen in der 3D-Szene und in 2D-Bildern anzupassen, und die Anpassung wird in die andere Ansicht projiziert. Das folgende Video zeigt einen 3D-Punktwolken-Kennzeichnungsauftrag mit LiDAR und der Kamerasensorfusion. 

![\[GIF, das einen 3D-Punktwolken-Kennzeichnungsauftrag mit LiDAR und der Kamerasensorfusion zeigt\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/gifs/object_tracking/sensor-fusion.gif)


Um optimale Ergebnisse zu erzielen, sollte sich Ihre Punktwolke bei Verwendung der Sensorfusion in einem WKS befinden. Ground Truth verwendet Ihren Sensor (wie LiDAR), Ihre Kamera und die Poseninformationen Ihres Ego-Fahrzeugs, um extrinsische und intrinsische Matrizen für die Sensorfusion zu berechnen. 

### Extrinsische Matrix
<a name="sms-point-cloud-extrinsics"></a>

Ground Truth verwendet die extrinsischen und intrinsischen Matrizen des Sensors (z. B. LiDAR) und der Kamera, um Objekte aus dem Referenzrahmen der Punktwolkendaten auf den Referenzrahmen der Kamera zu projizieren. 

Um beispielsweise eine Beschriftung aus der 3D-Punktwolke auf die Kamerabildebene zu projizieren, transformiert Ground Truth die 3D-Punkte aus dem LiDAR-Koordinatensystem in das Koordinatensystem der Kamera. Dazu werden in der Regel zunächst 3D-Punkte mithilfe der extrinsischen LiDAR-Matrix aus dem eigenen LiDAR-Koordinatensystem in ein Weltkoordinatensystem (oder einen globalen Referenzrahmen) transformiert. Ground Truth verwendet dann die inverse extrinsische Kamera (die Punkte von einem globalen Referenzrahmen in den Referenzrahmen der Kamera umwandelt), um die 3D-Punkte aus dem Weltkoordinatensystem, die im vorherigen Schritt erhalten wurden, in die Kamerabildebene zu transformieren. Die extrinsische LiDAR-Matrix kann auch verwendet werden, um 3D-Daten in ein Weltkoordinatensystem zu transformieren. Wenn Ihre 3D-Daten bereits in ein Weltkoordinatensystem umgewandelt werden, hat die erste Transformation keine Auswirkungen auf die Beschriftungstranslation, und die Beschriftungstranslation hängt nur von der inversen extrinsischen Matrix der Kamera ab. Eine Ansichtsmatrix wird verwendet, um projizierte Beschriftungen zu visualisieren. Weitere Informationen zu diesen Transformationen und der Ansichtsmatrix finden Sie unter [Transformationen zur Fusion von Ground-Truth-Sensoren](#sms-point-cloud-extrinsic-intrinsic-explanation).

 Ground Truth berechnet diese extrinsischen Matrizen anhand von LiDAR- und *Kamerapositionsdaten*, die Sie zur Verfügung stellen: `heading` ( in Quaternionen: `qx`, `qy`, `qz`, und `qw`) und `position` (`x`, `y`, `z`). Für das Fahrzeug werden normalerweise der Fahrkurs und die Position im Referenzrahmen des Fahrzeugs in einem Weltkoordinatensystem beschrieben und werden als *Ego-Fahrzeugpose* bezeichnet. Für jede extrinsische Matrix der Kamera können Sie Poseninformationen für diese Kamera hinzufügen. Weitere Informationen finden Sie unter [Pose](#sms-point-cloud-pose).

### Intrinsische Matrix
<a name="sms-point-cloud-intrinsic"></a>

Ground Truth verwendet die extrinsischen und intrinsischen Matrizen der Kamera, um Ansichtsmetriken zu berechnen, um Beschriftungen von und zur 3D-Szene in Kamerabilder umzuwandeln. Ground Truth berechnet die kamerainterne Matrix anhand der von Ihnen angegebenen Kamerabrennweite (`fx`,`fy`) und der optischen Mittelpunktkoordinaten (`cx`,`cy`). Weitere Informationen finden Sie unter [Intrinsische Matrix und Verzeichnung](#sms-point-cloud-camera-intrinsic-distortion).

### Bildverzeichnung
<a name="sms-point-cloud-image-distortion"></a>

Bildverzeichnungen können aus einer Vielzahl von Gründen auftreten. Beispielsweise können Bilder aufgrund von Tonnen- oder Fischaugeneffekten verzerrt sein. Ground Truth verwendet intrinsische Parameter zusammen mit einem Verzerrungskoeffizienten, um verzerrte Bilder zu korrigieren, die Sie bei der Erstellung von 3D-Punktwolken-Beschriftungsaufträgen bereitstellen. Wenn ein Kamerabild bereits unverzerrt ist, sollten alle Verzeichnungskoeffizienten auf 0 gesetzt werden.

Weitere Informationen zu den Transformationen, die Ground Truth durchführt, um Bilder zu entzerren, finden Sie unter [Kamerakalibrierungen: extrinsisch, intrinsisch und Verzeichnung](#sms-point-cloud-extrinsic-camera-explanation).

### Ego-Fahrzeug
<a name="sms-point-cloud-ego-vehicle"></a>

Um Daten für autonome Fahranwendungen zu sammeln, werden die Messungen zur Generierung von Punktwolkendaten von Sensoren entnommen, die an einem Fahrzeug oder dem *Ego-Fahrzeug* montiert sind. Um Beschriftungsanpassungen auf die 3D-Szene und 2D-Bilder zu projizieren, benötigt Ground Truth die Ego-Fahrzeugpose in einem Weltkoordinatensystem. Die Ego-Fahrzeugpose besteht aus Positionskoordinaten und dem Ausrichtungsquaternion. 

 Ground Truth verwendet die Ego-Fahrzeugpose Ihres Fahrzeugs zur Berechnung von Rotations- und Transformationsmatrizen. Rotationen in 3 Dimensionen können durch eine Folge von 3 Rotationen um eine Folge von Achsen dargestellt werden. Theoretisch reichen drei Achsen aus, die sich über den dreidimensionalen euklidischen Raum erstrecken. In der Praxis werden die Rotationsachsen als Basisvektoren gewählt. Es wird erwartet, dass sich die drei Rotationen in einem globalen Referenzrahmen (extrinsisch) befinden. Ground Truth unterstützt kein körperzentriertes Referenzsystem (intrinsisch), das an dem Objekt befestigt ist und sich mit diesem bewegt, wenn es sich dreht. Um Objekte zu verfolgen, muss die Bodenwahrheit von einer globalen Referenz aus gemessen werden, in der sich alle Fahrzeuge bewegen. Bei der Verwendung von Ground-Truth-3D-Punktwolkenbeschriftungsaufträgen gibt z die Rotationsachse (extrinsische Rotation) und die Gier-Euler-Winkel in Radiant (Rotationswinkel) an.

### Pose
<a name="sms-point-cloud-pose"></a>

Ground Truth verwendet Pose-Informationen für 3D-Visualisierungen und Sensor-Fusion. Poseninformationen, die Sie über Ihre Manifestdatei eingeben, werden verwendet, um extrinsische Matrizen zu berechnen. Wenn Sie bereits über eine extrinsische Matrix verfügen, können Sie diese verwenden, um Sensor- und Kameraposendaten zu extrahieren. 

Beispielsweise kann im KITTI-Datensatz für autonomes Fahren das [pykitti](https://github.com/utiasSTARS/pykitti)-Python-Modul zum Laden der KITTI-Daten verwendet werden. Im Datensatz stellt `dataset.oxts[i].T_w_imu` die extrinsische LiDAR-Transformation für den `i`. Frame bereit und kann mit den Punkten multipliziert werden, um sie in ein festes Referenzsystem einzufügen – `matmul(lidar_transform_matrix, points)`. Diese Transformation kann für das Eingabemanifestdatei-JSON-Format in LiDAR-Position (Translationsvektor) und -Fahrkurs (in Quaternion) umgewandelt werden. Die extrinsische Kameratransformation für `cam0` im `i`. Frame kann von `inv(matmul(dataset.calib.T_cam0_velo, inv(dataset.oxts[i].T_w_imu)))` berechnet werden und dies kann in Fahrkurs und Position für `cam0` umgewandelt werden.

```
import numpy

rotation = [[ 9.96714314e-01, -8.09890350e-02,  1.16333982e-03],
 [ 8.09967396e-02,  9.96661051e-01, -1.03090934e-02],
 [-3.24531964e-04,  1.03694477e-02,  9.99946183e-01]]
 
origin= [1.71104606e+00,
          5.80000039e-01,
          9.43144935e-01]

         
from scipy.spatial.transform import Rotation as R

# position is the origin
position = origin 
r = R.from_matrix(np.asarray(rotation))

# heading in WCS using scipy 
heading = r.as_quat()
print(f"pose:{position}\nheading: {heading}")
```

**Position**  
`position` bezieht sich in der Eingabemanifestdatei auf die Position des Sensors in Bezug auf ein festes Referenzsystem. Wenn Sie die Geräteposition nicht in ein Weltkoordinatensystem einfügen können, können Sie LiDAR-Daten mit lokalen Koordinaten verwenden. Ebenso können Sie bei montierten Videokameras Position und Fahrkurs in einem Weltkoordinatensystem angeben. Wenn Sie für die Kamera keine Positionsinformationen haben, verwenden Sie bitte (0, 0, 0). 

Im Folgenden sind die Felder im Positionsobjekt aufgeführt:

1.  `x` (float) – x-Koordinate der Ego-Fahrzeug-, Sensor- oder Kameraposition in Metern. 

1.  `y` (float) – y-Koordinate der Ego-Fahrzeug-, Sensor- oder Kameraposition in Metern. 

1.  `z` (float) – z-Koordinate der Ego-Fahrzeug-, Sensor- oder Kameraposition in Metern. 

Nachfolgend finden Sie ein Beispiel für ein `position`-JSON-Objekt: 

```
{
    "position": {
        "y": -152.77584902657554,
        "x": 311.21505956090624,
        "z": -10.854137529636024
      }
}
```

**Heading**  
In der Eingabemanifestdatei ist `heading` ein Objekt, das die Ausrichtung eines Geräts in Bezug auf ein festes Referenzsystem darstellt. Fahrkurswerte sollten in Quaternion vorliegen. Ein [Quaternion](https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation) ist eine Darstellung der Ausrichtung, die mit geodätischen sphärischen Eigenschaften konsistent ist. Wenn Sie den Sensorfahrkurs nicht in die Weltkoordinaten einfügen können, verwenden Sie bitte das Identitätsquaternion `(qx = 0, qy = 0, qz = 0, qw = 1)`. In ähnlicher Weise geben Sie bei Kameras den Fahrkurs in Quaternionen an. Wenn Sie keine extrinsischen Kamerakalibrierungsparameter erhalten können, verwenden Sie bitte auch das Identitätsquaternion. 

Felder im Objekt `heading` lauten wie folgt:

1.  `qx` (Gleitkommazahl) – x-Komponente der Ego-Fahrzeug-, Sensor- oder Kameraausrichtung. 

1.  `qy` (Gleitkommazahl) – y-Komponente der Ego-Fahrzeug-, Sensor- oder Kameraausrichtung. 

1.  `qz` (Gleitkommazahl) – z-Komponente der Ego-Fahrzeug-, Sensor- oder Kameraausrichtung. 

1. `qw` (Gleitkommazahl) – w-Komponente der Ego-Fahrzeug-, Sensor- oder Kameraausrichtung. 

Nachfolgend finden Sie ein Beispiel für ein `heading`-JSON-Objekt: 

```
{
    "heading": {
        "qy": -0.7046155108831117,
        "qx": 0.034278837280808494,
        "qz": 0.7070617895701465,
        "qw": -0.04904659893885366
      }
}
```

Weitere Informationen hierzu finden Sie unter [Berechnen von Ausrichtungsquaternionen und Position](#sms-point-cloud-ego-vehicle-orientation).

## Berechnen von Ausrichtungsquaternionen und Position
<a name="sms-point-cloud-ego-vehicle-orientation"></a>

Die Ground Truth erfordert, dass alle Orientierungs- oder Kursdaten in Quaternionen angegeben werden. Bei [Quaternionen](https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation) handelt es sich um eine Darstellung der Ausrichtung, die mit geodätischen sphärischen Eigenschaften konsistent ist, die zur Annäherung der Rotation verwendet werden können. Im Vergleich zu [Euler-Winkeln](https://en.wikipedia.org/wiki/Euler_angles) sind sie einfacher zusammenzustellen und vermeiden das Problem der [Gimbal-Sperre](https://en.wikipedia.org/wiki/Gimbal_lock). Im Vergleich zu Rotationsmatrizen sind sie kompakter, numerisch stabiler und effizienter. 

Sie können Quaternionen aus einer Rotationsmatrix oder einer Transformationsmatrix berechnen.

Wenn Sie eine Rotationsmatrix (bestehend aus den Achsenrotierungen) und einen Translationsvektor (oder Ursprung) im Weltkoordinatensystem anstelle einer einzelnen starren 4x4-Transformationsmatrix haben, können Sie direkt die Rotationsmatrix und den Translationsvektor verwenden, um Quaternionen zu berechnen. Bibliotheken wie [scipy](https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.transform.Rotation.html) und [pyqaternion](http://kieranwynn.github.io/pyquaternion/#explicitly-by-rotation-or-transformation-matrix) können helfen. Der folgende Codeblock zeigt ein Beispiel, in dem diese Bibliotheken verwendet werden, um Quaternionen aus einer Rotationsmatrix zu berechnen. 

```
import numpy

rotation = [[ 9.96714314e-01, -8.09890350e-02,  1.16333982e-03],
 [ 8.09967396e-02,  9.96661051e-01, -1.03090934e-02],
 [-3.24531964e-04,  1.03694477e-02,  9.99946183e-01]]
 
origin = [1.71104606e+00,
          5.80000039e-01,
          9.43144935e-01]

         
from scipy.spatial.transform import Rotation as R
# position is the origin
position = origin 
r = R.from_matrix(np.asarray(rotation))
# heading in WCS using scipy 
heading = r.as_quat()
print(f"position:{position}\nheading: {heading}")
```

Ein Benutzeroberflächen-Tool wie [3D Rotation Converter](https://www.andre-gaschler.com/rotationconverter/) kann auch nützlich sein.

Wenn Sie eine extrinsische 4x4-Transformationsmatrix haben, beachten Sie, dass die Transformationsmatrix die Form `[R T; 0 0 0 1]` hat, wobei `R` die Rotationsmatrix und `T` der Translationsvektor des Ursprungs ist. Das bedeutet, dass Sie die Rotationsmatrix und den Translationsvektor wie folgt aus der Transformationsmatrix extrahieren können.

```
import numpy as np

transformation 
= [[ 9.96714314e-01, -8.09890350e-02,  1.16333982e-03, 1.71104606e+00],
   [ 8.09967396e-02,  9.96661051e-01, -1.03090934e-02, 5.80000039e-01],
   [-3.24531964e-04,  1.03694477e-02,  9.99946183e-01, 9.43144935e-01],
   [              0,               0,               0,              1]]

transformation  = np.array(transformation )
rotation = transformation[0:3,0:3]
translation= transformation[0:3,3]

from scipy.spatial.transform import Rotation as R
# position is the origin translation
position = translation
r = R.from_matrix(np.asarray(rotation))
# heading in WCS using scipy 
heading = r.as_quat()
print(f"position:{position}\nheading: {heading}")
```

Mit Ihrem eigenen Setup können Sie eine extrinsische Transformationsmatrix anhand der GPS/IMU Position und Ausrichtung (Breitengrad, Längengrad, Höhe und Rollwinkel, Neigung, Gierneigung) in Bezug auf den LiDAR-Sensor am Ego-Fahrzeug berechnen. Sie können z. B. Posen aus KITTI-Rohdaten mithilfe von `pose = convertOxtsToPose(oxts)` berechnen, um die OxTS-Daten in lokale euklidische Posen umzuwandeln, die durch starre 4x4-Transformationsmatrizen angegeben werden. Anschließend können Sie diese Posentransformationsmatrix mithilfe der Referenzrahmen-Transformationsmatrix im Weltkoordinatensystem in einen globalen Referenzrahmen transformieren.

```
struct Quaternion
{
    double w, x, y, z;
};

Quaternion ToQuaternion(double yaw, double pitch, double roll) // yaw (Z), pitch (Y), roll (X)
{
    // Abbreviations for the various angular functions
    double cy = cos(yaw * 0.5);
    double sy = sin(yaw * 0.5);
    double cp = cos(pitch * 0.5);
    double sp = sin(pitch * 0.5);
    double cr = cos(roll * 0.5);
    double sr = sin(roll * 0.5);

    Quaternion q;
    q.w = cr * cp * cy + sr * sp * sy;
    q.x = sr * cp * cy - cr * sp * sy;
    q.y = cr * sp * cy + sr * cp * sy;
    q.z = cr * cp * sy - sr * sp * cy;

    return q;
}
```

## Transformationen zur Fusion von Ground-Truth-Sensoren
<a name="sms-point-cloud-extrinsic-intrinsic-explanation"></a>

In den folgenden Abschnitten werden die Ground-Truth-Sensorfusionstransformationen, die anhand der von Ihnen bereitgestellten Pose-Daten durchgeführt werden, genauer erläutert.

### Extrinsische LiDAR-Matrix
<a name="sms-point-cloud-extrinsic-lidar-explanation"></a>

Um zu und von einer 3D-LiDAR-Szene auf ein 2D-Kamerabild zu projizieren, berechnet Ground Truth die starren Transformationsprojektionsmetriken anhand der Pose und der Richtung des Ego-Fahrzeugs. Ground Truth berechnet die Rotation und Translation von Weltkoordinaten in die 3D-Ebene, indem eine einfache Abfolge von Rotationen und Translationen ausgeführt wird. 

Ground Truth berechnet die Rotationsmetriken unter Verwendung der Kursquaternionen wie folgt:

![\[Gleichung: Metriken zur Rotation von Ground-Truth-Punktwolken\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/sms-point-cloud-rotation-matrix.png)


`[x, y, z, w]`Dies entspricht den Parametern im `heading` JSON-Objekt,. `[qx, qy, qz, qw]` Ground Truth berechnet den Übersetzungsspaltenvektor als`T = [poseX, poseY, poseZ]`. Dann sind die extrinsischen Metriken einfach wie folgt:

```
LiDAR_extrinsic = [R T;0 0 0 1]
```

### Kamerakalibrierungen: extrinsisch, intrinsisch und Verzeichnung
<a name="sms-point-cloud-extrinsic-camera-explanation"></a>

Die *geometrische Kamerakalibrierung*, auch als *Kamera-Resektionierung* bezeichnet, schätzt die Parameter eines Objektivs und eines Bildsensors einer Bild- oder Videokamera. Sie können diese Parameter verwenden, um Objektivverzeichnungen zu korrigieren, die Größe eines Objekts in Welteinheiten zu messen oder die Position der Kamera in der Szene zu bestimmen. Kameraparameter umfassen intrinsische Matrizen und Verzeichnungskoeffizienten.

#### Extrinsische Matrix der Kamera
<a name="sms-point-cloud-camera-extrinsic"></a>

Wenn die Kameraposition gegeben ist, berechnet Ground Truth die Kameraextrinsik auf der Grundlage einer starren Transformation von der 3D-Ebene in die Kameraebene. Die Berechnung ist die gleiche wie die für [Extrinsische LiDAR-Matrix](#sms-point-cloud-extrinsic-lidar-explanation), außer dass Ground Truth die Kamerapose (`position` und `heading`) verwendet und die inverse Extrinsik berechnet.

```
 camera_inverse_extrinsic = inv([Rc Tc;0 0 0 1]) #where Rc and Tc are camera pose components
```

#### Intrinsische Matrix und Verzeichnung
<a name="sms-point-cloud-camera-intrinsic-distortion"></a>

Bei einigen Kameras, z. B. Lochkameras oder Fischaugenkameras, kann es zu erheblichen Verzerrungen bei Fotos kommen. Diese Verzerrung kann mithilfe von Verzerrungskoeffizienten und der Brennweite der Kamera korrigiert werden. Weitere Informationen finden Sie unter [Kamerakalibrierung mit OpenCV](https://docs.opencv.org/2.4.13.7/doc/tutorials/calib3d/camera_calibration/camera_calibration.html) in der OpenCV-Dokumentation.

Es gibt zwei Arten von Verzerrungen, die Ground Truth korrigieren kann: radiale Verzerrung und tangentiale Verzerrung.

*Radiale Verzeichnung* tritt auf, wenn Lichtstrahlen sich mehr in der Nähe der Kanten einer Linse biegen als in ihrer optischen Mitte. Je kleiner das Objektiv, desto größer die Verzeichnung. Das Vorhandensein der radialen Verzerrung manifestiert sich in Form des *Tonnen*- oder *Fischaugen*-effekts, und Ground Truth verwendet die Formel 1, um ihn zu entzerren. 

**Formel 1:**

![\[Formel 1: Gleichungen für x_{korrigiert} und y_{korrigiert}, um radiale Verzerrungen rückgängig zu machen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/sms-point-cloud-camera-distortion-1.png)


Die *tangentiale Verzerrung* entsteht, weil die Objektive, mit denen die Bilder aufgenommen werden, nicht perfekt parallel zur Bildebene liegen. Dies kann mit der Formel 2 korrigiert werden. 

**Formel 2:**

![\[Formel 2: Gleichungen für x_{korrigiert} und y_{korrigiert}, um tangentiale Verzerrungen zu korrigieren\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/sms-point-cloud-camera-distortion-2.png)


In der manifesten Eingabedatei können Sie Verzeichnungskoeffizienten angeben, und die Ground Truth wird Ihre Bilder unverzerrt darstellen. Alle Verzeichnungskoeffizienten sind Gleitkommazahlen. 
+ `k1`, `k2`, `k3`, `k4` – Radialer Verzeichnungskoeffizient. Unterstützt sowohl für Fischaugen- als auch Lochkameramodelle.
+ `p1` ,`p2` – Tangentiale Verzeichnungskoeffizienten. Unterstützt für Lochkameramodelle.

Wenn Bilder bereits unverzerrt sind, sollten alle Verzeichnungskoeffizienten in Ihrem Eingabemanifest 0 sein. 

Um das korrigierte Bild korrekt zu rekonstruieren, führt Ground Truth eine Einheitenumrechnung der Bilder auf der Grundlage von Brennweiten durch. Wenn eine gemeinsame Brennweite mit einem bestimmten Seitenverhältnis für beide Achsen verwendet wird, z. B. 1, haben wir in der oberen Formel eine einzige Brennweite. Die Matrix, die diese vier Parameter enthält, wird als die *kamerainterne intrinsische Kalibrierungsmatrix* bezeichnet. 

![\[Die kamerainterne intrinsische Kalibrierungsmatrix\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/pointcloud/sms-point-cloud-camera-intrinsic.png)


Obwohl die Verzeichnungskoeffizienten unabhängig von den verwendeten Kameraauflösungen gleich sind, sollten diese mit der aktuellen Auflösung aus der kalibrierten Auflösung skaliert werden. 

Die folgenden Werte sind Gleitkommawerte. 
+ `fx` – Brennweite in x-Richtung.
+ `fy` – Brennweite in y-Richtung.
+ `cx` – x-Koordinate des Hauptpunkts.
+ `cy` – y-Koordinate des Hauptpunkts.

Ground Truth verwendet die Kameraextrinsik und Kameraintrinsik zur Berechnung von Ansichtsmetriken, wie im folgenden Codeblock gezeigt, um Bezeichnungen zwischen der 3D-Szene und 2D-Bildern zu transformieren.

```
def generate_view_matrix(intrinsic_matrix, extrinsic_matrix):
    intrinsic_matrix = np.c_[intrinsic_matrix, np.zeros(3)]
    view_matrix = np.matmul(intrinsic_matrix, extrinsic_matrix)
    view_matrix = np.insert(view_matrix, 2, np.array((0, 0, 0, 1)), 0)
    return view_matrix
```

# Videoframe-Eingabedaten
<a name="sms-video-frame-input-data-overview"></a>

Wenn Sie einen Job zur Objekterkennung oder Objektverfolgung mit Videobildern erstellen, können Sie Videodateien (MP4 Dateien) oder Videoframes als Eingabedaten auswählen. Alle Worker-Aufgaben werden mithilfe von Videoframes erstellt. Wenn Sie also Videodateien auswählen, verwenden Sie das Ground Truth Frame-Extraktionswerkzeug, um Videoframes (Bilder) aus Ihren Videodateien zu extrahieren. 

Für beide Optionen können Sie die Option **Automatisierte Dateneinrichtung** im Bereich Ground Truth der Amazon SageMaker AI-Konsole verwenden, um eine Verbindung zwischen Ground Truth und Ihren Eingabedaten in Amazon S3 einzurichten, sodass Ground Truth weiß, wo Sie bei der Erstellung Ihrer Labeling-Aufgaben nach Ihren Eingabedaten suchen müssen. Dadurch wird eine Eingabe-Manifest-Datei in Ihrem Amazon S3-Eingabedatensatz erstellt und gespeichert. Weitere Informationen hierzu finden Sie unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md).

Alternativ können Sie manuell Sequenzdateien für jede Sequenz von Videoframes erstellen, die Sie beschriften möchten, und mithilfe des `source-ref` Schlüssels den Amazon S3-Speicherort einer Eingabe-Manifestdatei angeben, die auf jede dieser Sequenzdateien verweist. Weitere Informationen hierzu finden Sie unter [Erstellen einer Videoframe-Eingangsmanifestdatei](sms-video-manual-data-setup.md#sms-video-create-manifest). 

**Topics**
+ [Wählen Sie Videodateien oder Videoframes als Eingabedaten](sms-point-cloud-video-input-data.md)
+ [Einrichtung der Eingabedaten](sms-video-data-setup.md)

# Wählen Sie Videodateien oder Videoframes als Eingabedaten
<a name="sms-point-cloud-video-input-data"></a>

Wenn Sie einen Job zur Objekterkennung oder Objektverfolgung für Videoframes erstellen, können Sie eine Sequenz von Videoframes (Bildern) bereitstellen oder Sie können die Amazon SageMaker AI-Konsole verwenden, damit Ground Truth automatisch Videoframes aus Ihren Videodateien extrahiert. In den folgenden Abschnitten erfahren Sie mehr über diese Optionen. 

## Stellen Sie Videoframes bereit
<a name="sms-video-provide-frames"></a>

Videoframes sind Bildsequenzen, die aus einer Videodatei extrahiert wurden. Sie können einen Ground-Truth-Labeling-Auftrag erstellen, damit Auftragnehmer mehrere Sequenzen von Videoframes beschriften. Jede Sequenz besteht aus Bildern, die aus einem einzigen Video extrahiert wurden. 

Um einen Beschriftungsauftrag mit Video-Frame-Sequenzen zu erstellen, müssen Sie jede Sequenz mit einem eindeutigen [Schlüsselnamen-Präfix](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys) in Amazon S3 speichern. In der Amazon S3-Konsole sind die Präfixe der Schlüsselnamen Ordner. In der Amazon S3-Konsole muss sich also jede Sequenz von Videoframes in einem eigenen Ordner in Amazon S3 befinden.

Wenn Sie beispielsweise über zwei Sequenzen von Videoframes verfügen, können Sie die Schlüsselnamen-Präfixe `sequence1/` und `sequence2/` zur Identifizierung Ihrer Sequenzen verwenden. In diesem Beispiel befinden sich Ihre Sequenzen möglicherweise in `s3://amzn-s3-demo-bucket/video-frames/sequence1/` und `s3://amzn-s3-demo-bucket/video-frames/sequence2/`.

Wenn Sie die Ground-Truth-Konsole verwenden, um eine Eingabe-Manifestdatei zu erstellen, sollten sich alle Präfixe der Sequenzschlüsselnamen in Amazon S3 an derselben Stelle befinden. In der Amazon-S3-Konsole könnte sich beispielsweise jede Sequenz in einem Ordner in `s3://amzn-s3-demo-bucket/video-frames/` befinden. In diesem Beispiel befindet sich Ihre erste Sequenz von Videoframes (Bildern) möglicherweise in `s3://amzn-s3-demo-bucket/video-frames/sequence1/` und Ihre zweite Sequenz befindet sich möglicherweise in `s3://amzn-s3-demo-bucket/video-frames/sequence2/`. 

**Wichtig**  
Selbst wenn Sie nur eine einzige Sequenz von Videoframes haben, die Ihre Auftragnehmer beschriften möchten, muss diese Sequenz in Amazon S3 ein Schlüsselnamenpräfix haben. Wenn Sie die Amazon S3-Konsole verwenden, bedeutet dies, dass sich Ihre Sequenz in einem Ordner befindet. Sie kann sich nicht im Stammverzeichnis Ihres S3-Buckets befinden. 

Bei der Erstellung von Auftragnehmeraufgaben mithilfe von Videoframesequenzen verwendet Ground Truth eine Sequenz pro Aufgabe. Bei jeder Aufgabe ordnet Ground Truth Ihre Videoframes in binärer [UTF-8](https://en.wikipedia.org/wiki/UTF-8)-Reihenfolge. 

Videoframes in Amazon S3 könnten beispielsweise in der folgenden Reihenfolge angezeigt werden: 

```
[0001.jpg, 0002.jpg, 0003.jpg, ..., 0011.jpg]
```

Sie sind in der gleichen Reihenfolge in der Aufgabe des Auftragnehmers angeordnet: `0001.jpg, 0002.jpg, 0003.jpg, ..., 0011.jpg`.

Frames können auch nach einer Namenskonvention wie der folgenden angeordnet werden:

```
[frame1.jpg, frame2.jpg, ..., frame11.jpg]
```

In diesem Fall kommen `frame10.jpg` und `frame11.jpg` bevor `frame2.jpg` in der Worker-Aufgabe. Ihr Auftragnehmer sieht Ihre Videoframes in der folgenden Reihenfolge: `frame1.jpg, frame10.jpg, frame11.jpg, frame2.jpg, ..., frame9.jpg`. 

## Videodateien zur Verfügung stellen
<a name="sms-point-cloud-video-frame-extraction"></a>

Sie können die Frame-Splitting-Funktion von Ground Truth verwenden, wenn Sie in der Konsole einen neuen Labeling-Job erstellen, um Videoframes aus Videodateien (MP4 Dateien) zu extrahieren. Eine Reihe von Videoframes, die aus einer einzelnen Videodatei extrahiert wurden, wird als *Folge von Videoframes* bezeichnet.

Sie können entweder festlegen, dass Ground Truth automatisch alle Frames (bis zu 2.000) aus dem Video extrahiert, oder Sie können eine Frequenz für die Frame-Extraktion angeben. Sie können Ground Truth beispielsweise jeden zehnten Frame aus Ihren Videos extrahieren lassen.

Sie können bis zu 50 Videos bereitstellen, wenn Sie die automatische Datenkonfiguration zum Extrahieren von Frames verwenden. Ihre Eingabe-Manifestdatei darf jedoch nicht auf mehr als 10 Videoframe-Sequenzdateien verweisen, wenn Sie einen Auftrag zur Videoframe-Objektverfolgung und Videoframe-Objekterkennungsbeschriftung erstellen. Wenn Sie das Tool für die automatische Dateneinrichtungskonsole verwenden, um Videoframes aus mehr als 10 Videodateien zu extrahieren, müssen Sie die vom Tool generierte Manifestdatei ändern oder eine neue erstellen, sodass sie 10 Videoframesequenzdateien oder weniger enthält. Weitere Informationen zu diesen Quoten finden Sie unter [Kontingente für 3D-Punktwolken- und Video-Frame-Kennzeichnungsaufträge](input-data-limits.md#sms-input-data-quotas-other).

Informationen zur Verwendung des Tools zum Extrahieren von Videoframes finden Sie unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md). 

Wenn alle Ihre Videoframes erfolgreich aus Ihren Videos extrahiert wurden, wird in Ihrem S3-Eingabedatensatz Folgendes angezeigt:
+ Ein Präfix für den Schlüsselnamen (ein Ordner in der Amazon-S3-Konsole), das nach jedem Video benannt wird. Jedes dieser Präfixe führt zu:
  + Eine Folge von Videoframes, die aus dem Video extrahiert wurden, das zur Benennung dieses Präfixes verwendet wurde.
  + Eine Sequenzdatei, mit der alle Bilder identifiziert werden, aus denen diese Sequenz besteht. 
+ Eine Eingabe-Manifestdatei mit der Erweiterung „.manifest“. Dadurch werden alle Sequenzdateien identifiziert, die zur Erstellung Ihres Beschriftungsauftrages verwendet werden. 

Alle aus einer einzigen Videodatei extrahierten Frames werden für eine Labeling-Aufgabe verwendet. Wenn Sie Videoframes aus mehreren Videodateien extrahieren, werden für Ihren Beschriftungsauftrag mehrere Aufgaben erstellt, eine für jede Sequenz von Videoframes. 

 Ground Truth speichert jede Sequenz von Videoframes, die es an Ihrem Amazon S3-Standort für Eingabedatensätze extrahiert, mit einem eindeutigen [Schlüsselnamenpräfix](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#object-keys). In der Amazon-S3-Konsole werden Präfixe als Ordner bezeichnet.

# Einrichtung der Eingabedaten
<a name="sms-video-data-setup"></a>

Wenn Sie einen Beschriftungsauftrag von Videoframes erstellen, müssen Sie Ground Truth darüber informieren, wo Sie nach Ihren Eingabedaten suchen müssen. Dafür stehen Ihnen zwei Optionen zur Verfügung:
+ Sie können Ihre Eingabedaten in Amazon S3 speichern und Ground Truth den für Ihren Beschriftungsauftrag verwendeten Eingabedatensatz automatisch erkennen lassen. Weitere Informationen zu dieser Option finden Sie unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md). 
+ Sie können eine Eingabe-Manifestdatei und Sequenzdateien erstellen und sie auf Amazon S3 hochladen. Weitere Informationen zu dieser Option finden Sie unter [Manuelles Einrichten von Video-Frame-Eingabedaten](sms-video-manual-data-setup.md). 

**Topics**
+ [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md)
+ [Manuelles Einrichten von Video-Frame-Eingabedaten](sms-video-manual-data-setup.md)

# Einrichten automatisierter Video-Frame-Eingabedaten
<a name="sms-video-automated-data-setup"></a>

Sie können die automatische Dateneinrichtung von Ground Truth verwenden, um Videodateien in Ihrem Amazon-S3-Bucket automatisch zu erkennen und Videoframes aus diesen Dateien zu extrahieren. Um zu erfahren wie dies geht, vgl. [Videodateien zur Verfügung stellen](sms-point-cloud-video-input-data.md#sms-point-cloud-video-frame-extraction).

Wenn Sie bereits über Videoframes in Amazon S3 verfügen, können Sie die automatische Dateneinrichtung verwenden, um diese Videoframes in Ihrem Beschriftungsauftrag zu verwenden. Für diese Option müssen alle Videoframes eines einzelnen Videos mit einem eigenartigen Präfix gespeichert werden. Informationen zu den Voraussetzungen für die Verwendung dieser Option finden Sie unter [Stellen Sie Videoframes bereit](sms-point-cloud-video-input-data.md#sms-video-provide-frames).

Wählen Sie einen der folgenden Abschnitte aus, um zu erfahren, wie Sie Ihre automatische Eingabedatensatzverbindung mit Ground Truth einrichten.

## Stellen Sie Videodateien bereit und extrahieren Sie Frames
<a name="sms-video-provide-files-auto-setup-console"></a>

Gehen Sie wie folgt vor, um Ihre Videodateien mit Ground Truth zu verbinden und automatisch Videoframes aus diesen Dateien für die Objekterkennung von Videoframes und die Objektverfolgungsbeschriftung zu extrahieren.

**Anmerkung**  
Wenn Sie das Automated Data Setup Console Tool verwenden, um Videoframes aus mehr als 10 Videodateien zu extrahieren, müssen Sie die vom Tool generierte Manifestdatei ändern oder eine neue erstellen, sodass sie 10 Videoframe-Sequenzdateien oder weniger enthält. Weitere Informationen hierzu finden Sie unter [Videodateien zur Verfügung stellen](sms-point-cloud-video-input-data.md#sms-point-cloud-video-frame-extraction).

Stellen Sie sicher, dass Ihre Videodateien in einem Amazon-S3-Bucket in derselben AWS -Region gespeichert sind, in der Sie die automatische Dateneinrichtung durchführen. 

**Verbinden Sie Ihre Videodateien in Amazon S3 automatisch mit Ground Truth und extrahieren Sie Videoframes:**

1. Navigieren Sie in der Amazon SageMaker AI-Konsole zur Seite „**Labeling-Job erstellen**“: [https://console.aws.amazon.com/sagemaker/Groundtruth](https://console.aws.amazon.com//sagemaker/groundtruth). 

   Ihre Eingabe- und Ausgabe-S3-Buckets müssen sich in derselben AWS -Region befinden, in der Sie Ihren Beschriftungsauftrag erstellen. Über diesen Link gelangen Sie in die Region North Virginia (US-East-1) AWS . Wenn sich Ihre Eingabedaten in einem Amazon-S3-Bucket in einer anderen Region befinden, wechseln Sie in diese Region. Um Ihre AWS Region zu ändern, wählen Sie in der [Navigationsleiste](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/getting-started.html#select-region) den Namen der aktuell angezeigten Region aus.

1. Wählen Sie **Beschriftungsauftrag erstellen** aus.

1. Geben Sie einen **Auftragsnamen** ein. 

1. Wählen Sie im Abschnitt **Einrichtung der Eingabedaten** die Option **Automatisierte Dateneinrichtung** aus.

1. Geben Sie eine Amazon-S3-URI für den **S3-Standort für Eingabedatensätze** ein. Ein S3-URI sieht wie folgt aus: `s3://amzn-s3-demo-bucket/path-to-files/`. Diese URI sollte auf den Amazon-S3-Speicherort verweisen, an dem Ihre Einführungsdaten gespeichert werden.

1. Geben Sie Ihren **S3-Standort für Ausgabedatensätze** an. Hier werden Ihre Ausgabedaten gespeichert. Sie können wählen, ob Sie Ihre Ausgabedaten am **selben Ort wie den Eingabedatensatz** speichern oder **einen neuen Speicherort angeben** und die S3-URI des Speicherorts eingeben möchten, an dem Sie Ihre Ausgabedaten speichern möchten.

1. Wählen Sie in der Dropdown-Liste **Videodateien** für Ihren **Datentyp** aus.

1. Wählen Sie **Ja, Frames für Aufgaben zur Objektverfolgung und -erkennung extrahieren**. 

1. Wählen Sie eine Methode zur **Frame-Extraktion**.
   + Wenn Sie **Alle aus dem Video extrahierten Frames verwenden, um eine Labeling-Aufgabe zu erstellen** wählen, extrahiert Ground Truth alle Frames aus jedem Video an Ihrem **S3-Standort für Eingabedatensätze**, bis zu 2.000 Frames. Wenn ein Video in Ihrem Eingabedatensatz mehr als 2.000 Frames enthält, werden die ersten 2.000 Frames extrahiert und für diese Labeling-Aufgabe verwendet. 
   + Wenn Sie „**Jedes *x* Bild aus einem Video verwenden“ wählen, um eine Beschriftungsaufgabe zu erstellen**, extrahiert Ground *x* Truth jedes dritte Bild aus jedem Video an Ihrem **S3-Standort für Eingabedatensätze**. 

     Wenn Ihr Video beispielsweise 2 Sekunden lang ist und eine [Framerate](https://en.wikipedia.org/wiki/Frame_rate) von 30 Frames pro Sekunde hat, enthält Ihr Video 60 Frames. Wenn Sie hier 10 angeben, extrahiert Ground Truth jeden 10-ten Frame aus Ihrem Video. Das bedeutet, dass das jeder 1-te, 10-te, 20-te, 30-te, 40-te, 50-te, und 60-te Frame extrahiert wird. 

1. Wählen Sie Ausführungsrolle auswählen oder erstellen aus. Stellen Sie sicher, dass diese Rolle berechtigt ist, auf Ihre Amazon S3-Standorte für Eingabe- und Ausgabedaten zuzugreifen, die in den Schritten 5 und 6 angegeben sind. 

1. Wählen Sie **Dateneinrichtung abschließen** aus.

## Stellen Sie Videoframes bereit
<a name="sms-video-provide-frames-auto-setup-console"></a>

Gehen Sie wie folgt vor, um Ihre Videoframesequenzen mit Ground Truth zu verbinden, um Videoframe-Objekte zu erkennen, verfolgen und beschriften. 

Stellen Sie sicher, dass Ihre Videoframes in einem Amazon-S3-Bucket in derselben AWS -Region gespeichert sind, in der Sie die automatische Dateneinrichtung durchführen. Jede Sequenz von Videoframes sollte ein eindeutiges Präfix haben. Wenn Sie beispielsweise zwei Sequenzen in `s3://amzn-s3-demo-bucket/video-frames/sequences/` gespeichert haben, sollte jede ein eindeutiges Präfix wie `sequence1` und `sequence2` haben und beide sollten sich direkt unter dem Präfix `/sequences/` befinden. Im obigen Beispiel lauten die Speicherorte dieser beiden Sequenzen: `s3://amzn-s3-demo-bucket/video-frames/sequences/sequence1/` und `s3://amzn-s3-demo-bucket/video-frames/sequences/sequence2/`. 

**Verbinden Sie Ihren Videoframe in Amazon S3 automatisch mit Ground Truth:**

1. Navigieren Sie in der Amazon SageMaker AI-Konsole zur Seite „**Labeling-Job erstellen**“: [https://console.aws.amazon.com/sagemaker/Groundtruth](https://console.aws.amazon.com//sagemaker/groundtruth). 

   Ihre Eingabe- und Ausgabe-S3-Buckets müssen sich in derselben AWS -Region befinden, in der Sie Ihren Beschriftungsauftrag erstellen. Über diesen Link gelangen Sie in die Region North Virginia (US-East-1) AWS . Wenn sich Ihre Eingabedaten in einem Amazon-S3-Bucket in einer anderen Region befinden, wechseln Sie in diese Region. Um Ihre AWS Region zu ändern, wählen Sie in der [Navigationsleiste](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/getting-started.html#select-region) den Namen der aktuell angezeigten Region aus.

1. Wählen Sie **Beschriftungsauftrag erstellen** aus.

1. Geben Sie einen **Auftragsnamen** ein. 

1. Wählen Sie im Abschnitt **Einrichtung der Eingabedaten** die Option **Automatisierte Dateneinrichtung** aus.

1. Geben Sie eine Amazon-S3-URI für den **S3-Standort für Eingabedatensätze** ein. 

   Dies sollte der Amazon-S3-Speicherort sein, an dem Ihre Sequenzen gespeichert werden. Wenn Sie beispielsweise zwei Sequenzen in `s3://amzn-s3-demo-bucket/video-frames/sequences/sequence1/`, `s3://amzn-s3-demo-bucket/video-frames/sequences/sequence2/` gespeichert haben, geben Sie `s3://amzn-s3-demo-bucket/video-frames/sequences/` hier ein.

1. Geben Sie Ihren **S3-Standort für Ausgabedatensätze** an. Hier werden Ihre Ausgabedaten gespeichert. Sie können wählen, ob Sie Ihre Ausgabedaten am **selben Ort wie den Eingabedatensatz** speichern oder **einen neuen Speicherort angeben** und die S3-URI des Speicherorts eingeben möchten, an dem Sie Ihre Ausgabedaten speichern möchten.

1. Wählen Sie in der Dropdown-Liste **Videoframes** für Ihren **Datentyp** aus. 

1. Wählen oder erstellen Sie eine IAM-Ausführungsrolle. Stellen Sie sicher, dass diese Rolle berechtigt ist, auf Ihre Amazon S3-Standorte für Eingabe- und Ausgabedaten zuzugreifen, die in den Schritten 5 und 6 angegeben sind. 

1. Wählen Sie **Dateneinrichtung abschließen** aus.

Diese Verfahren erstellen ein Eingabemanifest am Amazon S3-Speicherort für Eingabe-Datasätze, die Sie in Schritt 5 angegeben haben. Wenn Sie einen Label-Job mithilfe der SageMaker API, oder eines AWS SDK erstellen AWS CLI, verwenden Sie den Amazon S3 S3-URI für diese Eingabe-Manifestdatei als Eingabe für den Parameter`ManifestS3Uri`.

# Manuelles Einrichten von Video-Frame-Eingabedaten
<a name="sms-video-manual-data-setup"></a>

Wählen Sie die Option zur manuellen Dateneinrichtung, wenn Sie für jede Ihrer Videoframe-Sequenzen Sequenzdateien und eine Manifestdatei mit Verweisen auf diese Sequenzdateien erstellt haben.

## Erstellen einer Videoframe-Eingangsmanifestdatei
<a name="sms-video-create-manifest"></a>

 Ground Truth verwendet die Eingabe-Manifestdatei, um den Speicherort Ihrer Eingabedatensätze bei der Erstellung von Labeling-Aufgaben zu identifizieren. Bei Aufträgen zur Objekterkennung und Objektverfolgungsbeschriftung mit Videoframes identifiziert jede Zeile in der Eingabe-Manifestdatei den Speicherort einer Videoframe-Sequenzdatei. Jede Sequenzdatei identifiziert die Bilder, die in einer einzelnen Sequenz von Videoframes enthalten sind.

Auf dieser Seite erfahren Sie, wie Sie eine Videoframesequenzdatei und eine Eingabemanifestdatei für Aufträge zur Objektverfolgung und Objektenverfolgungsbeschrigtung von Videoframes erstellen.

Wenn Sie möchten, dass Ground Truth Ihre Sequenzdateien und die Eingabemanifestdatei automatisch generiert, finden Sie weitere Informationen unter [Einrichten automatisierter Video-Frame-Eingabedaten](sms-video-automated-data-setup.md). 

### Erstellen Sie ein Eingabemanifest für eine Videoframesequenz
<a name="sms-video-create-input-manifest-file"></a>

In der Eingabemanifestdatei für die Videoframesequenz ist jede Zeile im Manifest ein JSON-Objekt mit einem `"source-ref"` Schlüssel, der auf eine Sequenzdatei verweist. Jede Sequenzdatei identifiziert die Position einer Sequenz von Videoframes. Dies ist die Formatierung der Manifestdatei, die für alle Beschriftungsaufträge von Videoframes erforderlich ist. 

Das folgende Beispiel veranschaulicht die für eine Eingabemanifestdatei verwendete Syntax:

```
{"source-ref": "s3://amzn-s3-demo-bucket/example-folder/seq1.json"}
{"source-ref": "s3://amzn-s3-demo-bucket/example-folder/seq2.json"}
```

### Erstellen Sie eine Videoframe-Sequenzdatei
<a name="sms-video-create-sequence-file"></a>

Die Daten für jede Sequenz von Videoframes müssen in einem JSON-Datenobjekt gespeichert werden. Im Folgenden finden Sie ein Beispiel für das Format, das Sie für eine Sequenzdatei verwenden. Informationen zu jedem Frame sind als JSON-Objekt enthalten und werden in der `frames`-Liste aufgeführt. Die folgende JSON-Datei wurde aus Gründen der Lesbarkeit erweitert. 

```
{
 "seq-no": 1,
 "prefix": "s3://amzn-s3-demo-bucket/prefix/video1/",
 "number-of-frames": 3,
 "frames":[
   {"frame-no": 1, "unix-timestamp": 1566861644, "frame": "frame0001.jpg" },
   {"frame-no": 2, "unix-timestamp": 1566861644, "frame": "frame0002.jpg" }, 
   {"frame-no": 3, "unix-timestamp": 1566861644, "frame": "frame0003.jpg" }   
 ]
}
```

Die folgende Tabelle enthält Details zu den Parametern, die in diesem Codebeispiel gezeigt werden. 


****  

|  Parameter  |  Erforderlich  |  Akzeptierte Werte  |  Description  | 
| --- | --- | --- | --- | 
|  `seq-no`  |  Ja  |  Ganzzahl  |  Die geordnete Nummer der Sequenz.   | 
|  `prefix`  |  Ja  |  Zeichenfolge **Akzeptierte Werte**: `s3://<bucket-name>/<prefix>/`  |  Der Amazon S3-Speicherort, an dem sich die Sequenzdateien befinden.  Das Präfix muss mit einem Schrägstrich enden: `/`.  | 
|  `number-of-frames`  |  Ja  |  Ganzzahl  |  Die Gesamtzahl der Frames, die in der Sequenzdatei enthalten sind. Diese Zahl muss mit der Gesamtzahl der Frames übereinstimmen, die im Parameter `frames` in der nächsten Zeile aufgeführt sind.  | 
|  `frames`  |  Ja  |  Liste der JSON-Objekte **Erforderlich**: `frame-no`, `frame` **Optional**: `unix-timestamp`  |  Eine Liste der Framedaten. Die Länge der Liste muss gleich `number-of-frames` sein. In der Worker-Benutzeroberfläche werden die Frames in einer Sequenz in binärer [UTF-8](https://en.wikipedia.org/wiki/UTF-8)-Reihenfolge angeordnet. Für weitere Informationen zu dieser Reiehenfolge, siehe [Stellen Sie Videoframes bereit](sms-point-cloud-video-input-data.md#sms-video-provide-frames).  | 
| frame-no |  Ja  |  Ganzzahl  |  Die Frame-Reihenfolgennummer. Dadurch wird die Reihenfolge eines Frames in der Sequenz bestimmt.   | 
|  `unix-timestamp`  |  Nein  |  Ganzzahl  |  Der Unix-Zeitstempel eines Frames. Die Anzahl der Sekunden seit dem 1. Januar 1970 bis zur UTC-Zeit, als der Frame aufgenommen wurde.   | 
| frame |  Ja  |  Zeichenfolge  |  Der Name einer Videoframe-Bilddatei.   | 

# Ausgabedaten von Kennzeichnungsaufträgen
<a name="sms-data-output"></a>

Die Ausgabe eines Labeling-Jobs wird an dem Amazon S3 S3-Speicherort platziert, den Sie in der Konsole oder im Aufruf des [CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Vorgangs angegeben haben. Die Ausgabedaten werden an dieser Stelle angezeigt, wenn die Auftragnehmer eine oder mehrere Aufgaben gesendet haben oder wenn Aufgaben ablaufen. Beachten Sie, dass es einige Minuten dauern kann, bis die Ausgabedaten in Amazon S3 angezeigt werden, nachdem der Auftragnehmer die Aufgabe gesendet hat oder die Aufgabe abgelaufen ist.

Jede Zeile in der Ausgabedatendatei ist identisch mit der Manifestdatei. Zusätzlich verfügt sie jedoch über ein Attribut und einen Wert für die Bezeichnung, die dem Eingabeobjekt zugewiesen ist. Der Attributname für den Wert wird in der Konsole oder im Aufruf der `CreateLabelingJob`-Operation definiert. Sie können `-metadata` nicht im Attributnamen der Bezeichnung verwenden. Wenn Sie eine semantische Bildsegmentierung, eine semantische 3D-Punktwolkensegmentierung oder einen 3D-Punktwolken-Objektverfolgungsauftrag ausführen, muss das Bezeichnungsattribut mit `-ref` enden. Für jede andere Art von Auftrag darf der Attributname nicht mit `-ref` enden.

Die Ausgabe des Kennzeichnungsauftrags ist der Wert des Schlüssel-Wert-Paares mit der Bezeichnung. Die Bezeichnung und der Wert überschreiben alle vorhandenen JSON-Daten in der Eingabedatei mit dem neuen Wert. 

Das folgende Beispiel zeigt die Ausgabe eines Kennzeichnungsauftrags der Bildklassifizierung, in dem die Eingabedatendateien in einem Amazon-S3-`amzn-s3-demo-bucket` gespeichert und der Bezeichnungsattributname als *`sport`* definiert wurde. In diesem Beispiel wird das JSON-Objekt aus Gründen der Lesbarkeit formatiert, in der tatsächlichen Ausgabedatei befindet sich das JSON-Objekt in einer einzelnen Zeile. Weitere Informationen zum Datenformat finden Sie unter [JSON Lines (JSON-Zeilen)](http://jsonlines.org/). 

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/image_example.png",
    "sport":0,
    "sport-metadata":
    {
        "class-name": "football",
        "confidence": 0.00,
        "type":"groundtruth/image-classification",
        "job-name": "identify-sport",
        "human-annotated": "yes",
        "creation-date": "2018-10-18T22:18:13.527256"
    }
}
```

Beim Wert der Bezeichnung kann es sich um jede gültige JSON handeln. In diesem Fall ist der Wert der Bezeichnung der Index der Klasse in der Klassifizierungsliste. Andere Auftragstypen, wie z. B. Begrenzungsrahmen, verfügen über komplexere Werte.

Jedes Schlüssel-Wert-Paar in der Eingabemanifestdatei mit Ausnahme des Bezeichnungsattributs bleibt in der Ausgabedatei unverändert. Auf diese Weise können Sie Daten an Ihre Anwendung übergeben.

Die Ausgabe eines Kennzeichnungsauftrags kann als Eingabe für einen anderen Kennzeichnungsauftrag verwendet werden. Sie können dies bei der Verkettung von Kennzeichnungsaufträgen verwenden. Beispielsweise können Sie einen Labeling-Auftrag senden, um den Sport zu bestimmen, der gespielt wird. Anschließend senden Sie einen anderen mit denselben Daten, um zu bestimmen, ob der Sport im Innen- oder Außenbereich gespielt wird. Durch die Verwendung der Ausgabedaten aus dem ersten Auftrag als Manifest für den zweiten Auftrag können Sie die Ergebnisse der zwei Aufträge in einer Ausgabedatei für eine einfachere Verarbeitung durch Ihre Anwendungen konsolidieren. 

Die Ausgabedatendatei wird in regelmäßigen Abständen in den Ausgabespeicherort geschrieben, während der Auftrag noch ausgeführt wird. Diese Zwischendateien enthalten eine Zeile für jede Zeile in der Manifestdatei. Wenn ein Objekt gekennzeichnet ist, wird die Bezeichnung eingeschlossen. Wenn das Objekt nicht gekennzeichnet wurde, wird es in die Zwischenausgabedatei genauso wie die Manifestdatei geschrieben.

## Ausgabeverzeichnisse
<a name="sms-output-directories"></a>

Ground Truth erstellt mehrere Verzeichnisse in Ihrem Amazon-S3-Ausgabepfad. Diese Verzeichnisse enthalten die Ergebnisse Ihres Kennzeichnungsauftrags und andere Artefakte des Auftrags. Das Top-Level-Verzeichnis für einen Kennzeichnungsauftrag erhält den gleichen Namen wie Ihr Kennzeichnungsauftrag; die Ausgabeverzeichnisse werden darunter platziert. Wenn Sie beispielsweise den Kennzeichnungsauftrag **find-people** genannt haben, befindet sich die Ausgabe in den folgenden Verzeichnissen:

```
s3://amzn-s3-demo-bucket/find-people/activelearning
s3://amzn-s3-demo-bucket/find-people/annotations
s3://amzn-s3-demo-bucket/find-people/inference
s3://amzn-s3-demo-bucket/find-people/manifests
s3://amzn-s3-demo-bucket/find-people/training
```

Jedes Verzeichnis enthält die folgende Ausgabe:

### Verzeichnis für aktives Lernen
<a name="sms-output-activelearning"></a>

Das `activelearning`-Verzeichnis ist nur vorhanden, wenn Sie das automatisierte Daten-Labeling verwenden. Es enthält die Eingabe- und Ausgabevalidierung, die für das automatisierte Daten-Labeling festgelegt sind, und den Eingabe- und Ausgabeordner für automatisch gekennzeichnete Daten.

### Verzeichnis für Anmerkungen
<a name="sms-directories-annotations"></a>

Das `annotations`-Verzeichnis enthält alle Anmerkungen der Arbeitskräfte. Dies sind die Antworten von einzelnen Workern, die nicht in eine einzige Bezeichnung für das Datenobjekt konsolidiert wurden. 

Es gibt drei Unterverzeichnisse im `annotations`-Verzeichnis. 
+ Das erste, `worker-response`, enthält die Antworten von einzelnen Workern. Dieses enthält für jede Iteration ein Unterverzeichnis, das wiederum ein Unterverzeichnis für jedes Datenobjekt in dieser Iteration enthält. Die Antwortdaten von Auftragnehmern für jedes Datenobjekt werden in einer JSON-Datei mit Zeitstempel gespeichert, die die Antworten enthält, die von jedem Auftragnehmer für dieses Datenobjekt gesendet wurden, und, falls Sie private Arbeitskräfte einsetzen, Metadaten über diese Auftragnehmer. Weitere Informationen zu diesen Metadaten finden Sie unter [Metadaten von Auftragnehmern](#sms-worker-id-private).
+ Das zweite, `consolidated-annotation`, enthält die Informationen, die erforderlich sind, um die Anmerkungen im aktuellen Stapel in Bezeichnungen für Ihre Datenobjekte zu konsolidieren.
+ Die dritte, `intermediate`, enthält das Ausgabemanifest für den aktuellen Stapel mit allen abgeschlossenen Bezeichnungen. Diese Datei wird aktualisiert, während die Bezeichnung für jedes Datenobjekt abgeschlossen wird.

**Anmerkung**  
Es wird empfohlen, keine Dateien zu verwenden, die nicht in der Dokumentation erwähnt werden.

### Inferenz-Verzeichnis
<a name="sms-directories-inference"></a>

Das `inference`-Verzeichnis ist nur vorhanden, wenn Sie das automatisierte Daten-Labeling verwenden. Dieses Verzeichnis enthält die Eingabe- und Ausgabedateien für die SageMaker AI-Batch-Transformation, die bei der Kennzeichnung von Datenobjekten verwendet wird.

### Manifestverzeichnis
<a name="sms-directories-manifest"></a>

Das `manifest`-Verzeichnis enthält das Ausgabemanifest von Ihrem Kennzeichnungsauftrag. Es gibt ein Unterverzeichnis im Manifestverzeichnis, und zwar: `output`. Das `output`-Verzeichnis enthält die Ausgabemanifestdatei für Ihren Kennzeichnungsauftrag. Die Datei erhält die Bezeichnung `output.manifest`.

### Trainingsverzeichnis
<a name="sms-directories-training"></a>

Das `training`-Verzeichnis ist nur vorhanden, wenn Sie das automatisierte Daten-Labeling verwenden. Dieses Verzeichnis enthält die Eingabe- und Ausgabedateien, die für das Training des automatisierten Daten-Labeling-Modells verwendet werden.

## Zuverlässigkeitswert
<a name="sms-output-confidence"></a>

Wenn mehrere Auftragnehmer eine einzelne Aufgabe mit Anmerkungen versehen haben, ergibt sich die Bezeichnung aus der Anmerkungskonsolidierung. Ground Truth berechnet einen Zuverlässigkeitswert für jede Bezeichnung. Der *Zuverlässigkeitswert* ist eine Zahl zwischen 0 und 1, die angibt, wie zuverlässig Ground Truth in der Bezeichnung ist. Sie können den Zuverlässigkeitswert verwenden, um gekennzeichnete Datenobjekte untereinander zu vergleichen, und zur Identifizierung der unzuverlässigsten oder zuverlässigsten Bezeichnungen.

Sie sollten den Wert für die Zuverlässigkeitsbewertung nicht als absoluten Wert interpretieren oder Zuverlässigkeitswerte mit anderen Kennzeichnungsaufträgen vergleichen. Beispiel: Wenn alle Zuverlässigkeitswerte zwischen 0,98 und 0,998 liegen, sollten Sie die Datenobjekte nur untereinander vergleichen und sich nicht auf die hohen Zuverlässigkeitswerte verlassen. 

Sie sollten die Zuverlässigkeitswerte von Menschen gekennzeichneten Datenobjekten und automatisch gekennzeichneten Datenobjekten nicht vergleichen. Die Zuverlässigkeitswerte für Menschen werden unter Verwendung der Anmerkungskonsolidierungsfunktion für die Aufgabe berechnet, die Zuverlässigkeitswerte für automatisierte Kennzeichnung hingegen werden mithilfe eines Modells berechnet, das Objektfunktionen beinhaltet. Die beiden Modelle haben in der Regel unterschiedliche Skalierungen und durchschnittliche Zuverlässigkeit.

Für einen Kennzeichnungsauftrag mit Begrenzungsrahmen berechnet Ground Truth einen Zuverlässigkeitswert pro Rahmen. Sie können Zuverlässigkeitswerte innerhalb eines Bildes oder auf mehreren Bildern für den gleichen Kennzeichnungstyp (menschlich oder automatisch) vergleichen. Sie können keine Zuverlässigkeitswerte für Kennzeichnungsaufträge vergleichen.

Wenn ein einzelner Auftragnehmer eine Aufgabe verarbeitet (`NumberOfHumanWorkersPerDataObject` ist auf `1` festgelegt; in der Konsole geben Sie 1 für **Anzahl von Auftragnehmern pro Datensatz-Objekt** ein), wird der Zuverlässigkeitswert auf `0.00` festgelegt. 

## Metadaten von Auftragnehmern
<a name="sms-worker-id-private"></a>

Ground Truth bietet Informationen, mit denen Sie einzelne Auftragnehmer in Aufgabenausgabedaten verfolgen können. Die folgenden Daten befinden sich in den `worker-response`-Verzeichnissen unter [Verzeichnis für Anmerkungen](#sms-directories-annotations):
+ `acceptanceTime` ist der Zeitpunkt, zu dem der Auftragnehmer die Aufgabe angenommen hat. Das Format dieses Datums- und Zeitstempels `YYYY-MM-DDTHH:MM:SS.mmmZ` bezieht sich auf Jahr (`YYYY`), Monat (`MM`), Tag (`DD`), Stunde (`HH`), Minute (`MM`), Sekunde (`SS`) und Millisekunde (`mmm`). Datum und Uhrzeit werden durch ein **T** getrennt. 
+ `submissionTime` ist die Uhrzeit, zu der der Auftragnehmer ihre Anmerkungen mit der Schaltfläche **Absenden** gesendet hat. Das Format dieses Datums- und Zeitstempels `YYYY-MM-DDTHH:MM:SS.mmmZ` bezieht sich auf Jahr (`YYYY`), Monat (`MM`), Tag (`DD`), Stunde (`HH`), Minute (`MM`), Sekunde (`SS`) und Millisekunde (`mmm`). Datum und Uhrzeit werden durch ein **T** getrennt. 
+ `timeSpentInSeconds` gibt die Gesamtzeit in Sekunden an, die ein Auftragnehmer aktiv an dieser Aufgabe gearbeitet hat. Diese Metrik beinhaltet nicht die Zeit, in der ein Auftragnehmer die Arbeit unterbrochen oder eine Pause gemacht hat.
+ Die `workerId` ist für jeden Worker spezifisch. 
+ Wenn Sie [private Arbeitskräfte](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private.html) verwenden, wird in `workerMetadata` Folgendes angezeigt.
  + `identityProviderType` ist der Service, der für die Verwaltung der privaten Arbeitskräfte verwendet wird. 
  + `issuer` ist der Cognito-Benutzerpool oder der OIDC-Identitätsanbieter (IdP), der mit dem Arbeitsteam verknüpft ist, das dieser menschlichen Überprüfungsaufgabe zugewiesen ist.
  + Eine eindeutige `sub`-Kennung, der sich auf den Auftragnehmer bezieht. Wenn Sie mit Amazon Cognito eine Belegschaft erstellen, können Sie mit dieser ID mithilfe von Amazon Cognito Details zu diesem Auftragnehmer (z. B. den Namen oder den Benutzernamen) abrufen. Informationen hierzu finden Sie unter [Verwalten und Suchen von Benutzerkonten](https://docs.aws.amazon.com/cognito/latest/developerguide/how-to-manage-user-accounts.html#manage-user-accounts-searching-user-attributes) im [Amazon Cognito-Entwicklerhandbuch](https://docs.aws.amazon.com/cognito/latest/developerguide/).

Im Folgenden finden Sie ein Beispiel für die Ausgabe, die Sie sehen können, wenn Sie Amazon Cognito verwenden, um private Arbeitskräfte zu erstellen. Dies ist im `identityProviderType` identifiziert.

```
"submissionTime": "2020-12-28T18:59:58.321Z",
"acceptanceTime": "2020-12-28T18:59:15.191Z", 
"timeSpentInSeconds": 40.543,
"workerId": "a12b3cdefg4h5i67",
"workerMetadata": {
    "identityData": {
        "identityProviderType": "Cognito",
        "issuer": "https://cognito-idp.aws-region.amazonaws.com/aws-region_123456789",
        "sub": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
    }
}
```

 Im Folgenden finden Sie ein Beispiel für die `workerMetadata`, die Sie sehen können, wenn Sie einen eigenen OIDC-IdP verwenden, um private Arbeitskräfte zu erstellen:

```
"workerMetadata": {
        "identityData": {
            "identityProviderType": "Oidc",
            "issuer": "https://example-oidc-ipd.com/adfs",
            "sub": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
        }
}
```

Weitere Informationen zur Verwendung von privaten Arbeitskräften finden Sie unter [Private Arbeitskräfte](sms-workforce-private.md).

## Ausgabemetadaten
<a name="sms-output-metadata"></a>

Die Ausgabe von jedem Auftrag enthält Metadaten über die Bezeichnung, die Datenobjekten zugewiesen ist. Diese Elemente sind für alle Aufträge mit geringfügigen Änderungen gleich. Im folgenden Beispiel werden die Metadaten-Elemente gezeigt:

```
    "confidence": 0.00,
    "type": "groundtruth/image-classification",
    "job-name": "identify-animal-species",
    "human-annotated": "yes",
    "creation-date": "2020-10-18T22:18:13.527256"
```

Die Elemente haben die folgende Bedeutung:
+ `confidence` – die Zuverlässigkeit, die Ground Truth aufweist, dass die Kennzeichnung korrekt ist. Weitere Informationen finden Sie unter [Zuverlässigkeitswert](#sms-output-confidence).
+ `type` – der Typ des Klassifizierungsauftrags. Informationen zu Auftragstypen finden Sie unter [Integrierte Aufgabentypen](sms-task-types.md). 
+ `job-name` – der Name, den Sie dem Auftrag bei seiner Erstellung zugewiesen haben.
+ `human-annotated` – gibt an, ob das Datenobjekt von einem Menschen oder durch automatisches Daten-Labeling beschriftet wurde. Weitere Informationen finden Sie unter [Automatisieren des Daten-Labeling](sms-automated-labeling.md).
+ `creation-date` – das Datum und die Uhrzeit, zu der die Kennzeichnung erstellt wurde.

## Ausgabe des Klassifizierungsauftrags
<a name="sms-output-class"></a>

Im Folgenden sehen Sie Beispielausgaben (Ausgabemanifestdateien) aus einem Bildklassifizierungsauftrag und einem Textklassifizierungsauftrag. Sie enthalten die Kennzeichnung, die Ground Truth dem Datenobjekt zugeordnet hat, den Wert für die Kennzeichnung und Metadaten zur Beschreibung der Kennzeichnung.

Zusätzlich zu den standardmäßigen Metadatenelementen umfassen die Metadaten für einen Klassifizierungsauftrag den Textwert der Bezeichnungsklasse. Weitere Informationen finden Sie unter [Bildklassifizierung - MXNet](image-classification.md).

Der rote, kursiv formatierte Text in den folgenden Beispielen hängt von den Spezifikationen des Kennzeichnungsauftrags und den Ausgabedaten ab. 

```
{
    "source-ref":"s3://amzn-s3-demo-bucket/example_image.jpg",
    "species":"0",
    "species-metadata":
    {
        "class-name": "dog",
        "confidence": 0.00,
        "type": "groundtruth/image-classification",
        "job-name": "identify-animal-species",
        "human-annotated": "yes",
        "creation-date": "2018-10-18T22:18:13.527256"
    }
}
```

```
{
    "source":"The food was delicious",
    "mood":"1",
    "mood-metadata":
    {
        "class-name": "positive",
        "confidence": 0.8,
        "type": "groundtruth/text-classification",
        "job-name": "label-sentiment",
        "human-annotated": "yes",
        "creation-date": "2020-10-18T22:18:13.527256"
    }
}
```

## Ausgabe von Multi-Label-Klassifizierungsaufträgen
<a name="sms-output-multi-label-classification"></a>

Im Folgenden finden Sie Beispiel-Ausgabemanifestdateien aus einem Multi-Label-Bildklassifizierungsauftrag und einem Multi-Label-Textklassifizierungsauftrag. Diese umfassen die Kennzeichnungen, die Ground Truth dem Datenobjekt zugewiesen hat (z. B. das Bild oder Textstück), sowie Metadaten, die die Kennzeichnungen beschreiben, die dem Auftragnehmer beim Abschluss der Labeling-Aufgabe angezeigt wurden. 

Der Parameter Kennzeichnungsattributname (z. B. `image-label-attribute-name`) enthält ein Array aller Kennzeichnungen, die von mindestens einem der Auftragnehmer ausgewählt wurden, die diese Aufgabe abgeschlossen haben. Dieses Array enthält Schlüssel aus Ganzzahlen (z. B. `[1,0,8]`), die den Kennzeichnungen in `class-map` entsprechen. Im Beispiel für die Multi-Label-Bildklassifizierung wurden `bicycle`, `person` und `clothing` von mindestens einem der Auftragnehmer ausgewählt, die die Labeling-Aufgabe für das Bild `exampleimage.jpg` abgeschlossen haben.

Die `confidence-map` zeigt den Konfidenzwert an, den Ground Truth den einzelnen Bezeichnungen zugeordnet hat, die von einem Auftragnehmer ausgewählt wurden. Weitere Informationen zu den Ground-Truth-Konfidenzwerten finden Sie unter [Zuverlässigkeitswert](#sms-output-confidence).

Der rote, kursiv formatierte Text in den folgenden Beispielen hängt von den Spezifikationen des Kennzeichnungsauftrags und den Ausgabedaten ab. 

Im Folgenden finden Sie ein Beispiel für eine Ausgabemanifestdatei für eine Multi-Label-Bildklassifizierung. 

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/example_image.jpg",
    "image-label-attribute-name":[1,0,8],
    "image-label-attribute-name-metadata":
       {
        "job-name":"labeling-job/image-label-attribute-name",
        "class-map":
            {
                "1":"bicycle","0":"person","8":"clothing"
            },
        "human-annotated":"yes",
        "creation-date":"2020-02-27T21:36:25.000201",
        "confidence-map":
            {
                "1":0.95,"0":0.77,"8":0.2
            },
        "type":"groundtruth/image-classification-multilabel"
        }
}
```

Im Folgenden finden Sie ein Beispiel für eine Ausgabemanifestdatei für eine Multi-Label-Textklassifizierung. In diesem Beispiel wurden `approving`, `sad` und `critical` von mindestens einem der Auftragnehmer ausgewählt, die die Labeling-Aufgabe für das in `amzn-s3-demo-bucket` gefundene Objekt `exampletext.txt` abgeschlossen haben.

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/exampletext.txt",
    "text-label-attribute-name":[1,0,4],
    "text-label-attribute-name-metadata":
       {
        "job-name":"labeling-job/text-label-attribute-name",
        "class-map":
            {
                "1":"approving","0":"sad","4":"critical"
            },
        "human-annotated":"yes",
        "creation-date":"2020-02-20T21:36:25.000201",
        "confidence-map":
            {
                "1":0.95,"0":0.77,"4":0.2
            },
        "type":"groundtruth/text-classification-multilabel"
        }
}
```

## Ausgabe des Begrenzungsrahmenauftrags
<a name="sms-output-box"></a>

Im Folgenden finden Sie eine Beispielausgabe (Ausgabemanifestdatei) aus einem Auftrag mit Begrenzungsrahmen. Für diese Aufgabe werden drei Begrenzungsrahmen zurückgegeben. Der Kennzeichnungswert enthält Informationen über die Größe des Bildes und den Speicherort der Begrenzungsrahmen.

Das `class_id`-Element ist der Index der Rahmenklasse in der Liste der verfügbaren Klassen für die Aufgabe. Das `class-map`-Metadatenelement enthält den Text der Klasse.

Die Metadaten verfügen über einen separaten Zuverlässigkeitswert für jeden Begrenzungsrahmen. Die Metadaten enthalten auch das `class-map`-Element, das die `class_id` dem Textwert der Klasse zuweist. Weitere Informationen finden Sie unter [Objekterkennung - MXNet](object-detection.md).

Der rote, kursiv formatierte Text in den folgenden Beispielen hängt von den Spezifikationen des Kennzeichnungsauftrags und den Ausgabedaten ab. 

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/example_image.png",
    "bounding-box-attribute-name":
    {
        "image_size": [{ "width": 500, "height": 400, "depth":3}],
        "annotations":
        [
            {"class_id": 0, "left": 111, "top": 134,
                    "width": 61, "height": 128},
            {"class_id": 5, "left": 161, "top": 250,
                     "width": 30, "height": 30},
            {"class_id": 5, "left": 20, "top": 20,
                     "width": 30, "height": 30}
        ]
    },
    "bounding-box-attribute-name-metadata":
    {
        "objects":
        [
            {"confidence": 0.8},
            {"confidence": 0.9},
            {"confidence": 0.9}
        ],
        "class-map":
        {
            "0": "dog",
            "5": "bone"
        },
        "type": "groundtruth/object-detection",
        "human-annotated": "yes",
        "creation-date": "2018-10-18T22:18:13.527256",
        "job-name": "identify-dogs-and-toys"
    }
 }
```

Die Ausgabe eines Anpassungsauftrags für Begrenzungsrahmen sieht wie der folgende JSON aus. Beachten Sie, dass das ursprüngliche JSON intakt bleibt und zwei neue Aufträge aufgelistet werden, deren ursprünglichen Attributsnamen jeweils „adjust-“ vorangestellt wird. 

```
{
    "source-ref": "S3 bucket location",
    "bounding-box-attribute-name":
    {
        "image_size": [{ "width": 500, "height": 400, "depth":3}],
        "annotations":
        [
            {"class_id": 0, "left": 111, "top": 134,
                    "width": 61, "height": 128},
            {"class_id": 5, "left": 161, "top": 250,
                     "width": 30, "height": 30},
            {"class_id": 5, "left": 20, "top": 20,
                     "width": 30, "height": 30}
        ]
    },
    "bounding-box-attribute-name-metadata":
    {
        "objects":
        [
            {"confidence": 0.8},
            {"confidence": 0.9},
            {"confidence": 0.9}
        ],
        "class-map":
        {
            "0": "dog",
            "5": "bone"
        },
        "type": "groundtruth/object-detection",
        "human-annotated": "yes",
        "creation-date": "2018-10-18T22:18:13.527256",
        "job-name": "identify-dogs-and-toys"
    },
    "adjusted-bounding-box":
    {
        "image_size": [{ "width": 500, "height": 400, "depth":3}],
        "annotations":
        [
            {"class_id": 0, "left": 110, "top": 135,
                    "width": 61, "height": 128},
            {"class_id": 5, "left": 161, "top": 250,
                     "width": 30, "height": 30},
            {"class_id": 5, "left": 10, "top": 10,
                     "width": 30, "height": 30}
        ]
    },
    "adjusted-bounding-box-metadata":
    {
        "objects":
        [
            {"confidence": 0.8},
            {"confidence": 0.9},
            {"confidence": 0.9}
        ],
        "class-map":
        {
            "0": "dog",
            "5": "bone"
        },
        "type": "groundtruth/object-detection",
        "human-annotated": "yes",
        "creation-date": "2018-11-20T22:18:13.527256",
        "job-name": "adjust-bounding-boxes-on-dogs-and-toys",
        "adjustment-status": "adjusted"
    }
}
```

In dieser Ausgabe ändert sich zwar der `type` des Auftrags nicht, es wird jedoch ein `adjustment-status`-Feld hinzugefügt. Dieses Feld weist den Wert `adjusted` oder `unadjusted` auf. Wenn mehrere Worker das Objekt überprüft haben und mindestens einer die Kennzeichnung angepasst hat, lautet der Status `adjusted`.

## Erkennung benannter Entitäten
<a name="sms-output-data-ner"></a>

Im Folgenden finden Sie ein Beispiel für eine Ausgabemanifestdatei aus einer Labeling-Aufgabe zur Erkennung benannter Entitäten (Named Entity Recognition, NER). Für diese Aufgabe werden sieben `entities` zurückgegeben.

Im Ausgabemanifest enthält das JSON-Objekt `annotations` eine Liste der `labels` (Kennzeichnungskategorien), die Sie angegeben haben.

Die Antworten der Auftragnehmer befinden sich in einer Liste mit dem Namen `entities`. Jede Entität in dieser Liste ist ein JSON-Objekt, das einen `label`-Wert enthält, der einem Wert in der `labels`-Liste entspricht, einen `startOffset`-Ganzzahlwert für den bezeichneten Anfang des Unicode-Offset-Bereichs und einen `endOffset`-Ganzzahlwert für das Ende des Unicode-Offset-Bereichs.

Die Metadaten verfügen über einen separaten Zuverlässigkeitswert für jede Entität. Wenn ein einzelner Auftragnehmer jedes Datenobjekt beschriftet, ist der Zuverlässigkeitswert für jede Entität Null.

Der rote, kursiv gedruckte Text in den folgenden Beispielen hängt von den Eingaben des Kennzeichnungsauftrags und den Antworten der Arbeitnehmer ab.

```
{
    "source": "Amazon SageMaker is a cloud machine-learning platform that was launched in November 2017. SageMaker enables developers to create, train, and deploy machine-learning (ML) models in the cloud. SageMaker also enables developers to deploy ML models on embedded systems and edge-devices",
    "ner-labeling-job-attribute-name": {
        "annotations": {
            "labels": [
                {
                    "label": "Date",
                    "shortDisplayName": "dt"
                },
                {
                    "label": "Verb",
                    "shortDisplayName": "vb"
                },
                {
                    "label": "Thing",
                    "shortDisplayName": "tng"
                },
                {
                    "label": "People",
                    "shortDisplayName": "ppl"
                }
            ],
            "entities": [
                {
                    "label": "Thing",
                    "startOffset": 22,
                    "endOffset": 53
                },
                {
                    "label": "Thing",
                    "startOffset": 269,
                    "endOffset": 281
                },
                {
                    "label": "Verb",
                    "startOffset": 63,
                    "endOffset": 71
                },
                {
                    "label": "Verb",
                    "startOffset": 228,
                    "endOffset": 234
                },
                {
                    "label": "Date",
                    "startOffset": 75,
                    "endOffset": 88
                },
                {
                    "label": "People",
                    "startOffset": 108,
                    "endOffset": 118
                },
                {
                    "label": "People",
                    "startOffset": 214,
                    "endOffset": 224
                }
            ]
        }
    },
    "ner-labeling-job-attribute-name-metadata": {
        "job-name": "labeling-job/example-ner-labeling-job",
        "type": "groundtruth/text-span",
        "creation-date": "2020-10-29T00:40:39.398470",
        "human-annotated": "yes",
        "entities": [
            {
                "confidence": 0
            },
            {
                "confidence": 0
            },
            {
                "confidence": 0
            },
            {
                "confidence": 0
            },
            {
                "confidence": 0
            },
            {
                "confidence": 0
            },
            {
                "confidence": 0
            }
        ]
    }
}
```

## Ausgabe des Auftrags zur Bezeichnungsverifizierung
<a name="sms-output-bounding-box-verification"></a>

Die Ausgabe (Ausgabemanifestdatei) eines Verifizierungsauftrags für Begrenzungsrahmen unterschiedet sich von der Ausgabe eines Anmerkungsauftrags für Begrenzungsrahmen. Das liegt daran, dass die Auftragnehmer einen anderen Aufgabentyp haben. Sie kennzeichnen keine Objekte, sondern bewerten die Genauigkeit der vorherigen Kennzeichnung, beurteilen diese und geben daraufhin dieses Urteil sowie vielleicht einige Kommentare ab.

Wenn menschliche Mitarbeiter vorherige Bezeichnungen für Begrenzungsrahmen überprüfen oder anpassen, sieht die Ausgabe eines Verifizierungsauftrags wie das folgende JSON aus. Der rote, kursiv formatierte Text in den folgenden Beispielen hängt von den Spezifikationen des Kennzeichnungsauftrags und den Ausgabedaten ab. 

```
{
    "source-ref":"s3://amzn-s3-demo-bucket/image_example.png",
    "bounding-box-attribute-name":
    {
        "image_size": [{ "width": 500, "height": 400, "depth":3}],
        "annotations":
        [
            {"class_id": 0, "left": 111, "top": 134,
                    "width": 61, "height": 128},
            {"class_id": 5, "left": 161, "top": 250,
                     "width": 30, "height": 30},
            {"class_id": 5, "left": 20, "top": 20,
                     "width": 30, "height": 30}
        ]
    },
    "bounding-box-attribute-name-metadata":
    {
        "objects":
        [
            {"confidence": 0.8},
            {"confidence": 0.9},
            {"confidence": 0.9}
        ],
        "class-map":
        {
            "0": "dog",
            "5": "bone"
        },
        "type": "groundtruth/object-detection",
        "human-annotated": "yes",
        "creation-date": "2018-10-18T22:18:13.527256",
        "job-name": "identify-dogs-and-toys"
    },
    "verify-bounding-box-attribute-name":"1",
    "verify-bounding-box-attribute-name-metadata":
    {
        "class-name": "bad",
        "confidence": 0.93,
        "type": "groundtruth/label-verification",
        "job-name": "verify-bounding-boxes",
        "human-annotated": "yes",
        "creation-date": "2018-11-20T22:18:13.527256",
        "worker-feedback": [
            {"comment": "The bounding box on the bird is too wide on the right side."},
            {"comment": "The bird on the upper right is not labeled."}
        ]
    }
}
```

Obwohl der `type` der ursprünglichen Begrenzungsrahmenausgabe `groundtruth/object-detection` war, lautet der neue `type` `groundtruth/label-verification`. Beachten Sie auch, dass das `worker-feedback`-Array Worker-Kommentare bereitstellt. Wenn der Worker keine Kommentare bereitstellt, werden die leeren Felder während der Konsolidierung ausgeschlossen.

## Ausgabe des semantischen Segmentierungsauftrags
<a name="sms-output-segmentation"></a>

Es folgt die Ausgabemanifestdatei für einen semantischen Segmentierungskennzeichnungsauftrag. Der Wert der Bezeichnung für diesen Auftrag ist eine Referenz auf eine PNG-Datei in einem S3-Bucket.

Zusätzlich zu den Standardelementen enthalten die Metadaten für die Bezeichnung eine Farbkarte, die definiert, welche Farbe für die Kennzeichnung des Bildes verwendet wurde, den Klassennamen, der mit der Farbe verknüpft ist, und den Zuverlässigkeitswert für jede Farbe. Weitere Informationen finden Sie unter [Semantischer Segmentierungsalgorithm](semantic-segmentation.md).

Der rote, kursiv formatierte Text in den folgenden Beispielen hängt von den Spezifikationen des Kennzeichnungsauftrags und den Ausgabedaten ab. 

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/example_city_image.png",
    "city-streets-ref": "S3 bucket location",
    "city-streets-ref-metadata": {
      "internal-color-map": {
        "0": {
           "class-name": "BACKGROUND",
           "confidence": 0.9,
           "hex-color": "#ffffff"
        },
        "1": {
           "class-name": "buildings",
           "confidence": 0.9,
           "hex-color": "#2acf59"
        },
        "2":  {
           "class-name": "road",
           "confidence": 0.9,
           "hex-color": "#f28333"
       }
     },
     "type": "groundtruth/semantic-segmentation",
     "human-annotated": "yes",
     "creation-date": "2018-10-18T22:18:13.527256",
     "job-name": "label-city-streets",
     },
     "verify-city-streets-ref":"1",
     "verify-city-streets-ref-metadata":
     {
        "class-name": "bad",
        "confidence": 0.93,
        "type": "groundtruth/label-verification",
        "job-name": "verify-city-streets",
        "human-annotated": "yes",
        "creation-date": "2018-11-20T22:18:13.527256",
        "worker-feedback": [
            {"comment": "The mask on the leftmost building is assigned the wrong side of the road."},
            {"comment": "The curb of the road is not labeled but the instructions say otherwise."}
        ]
     }
}
```

Die Vertrauensstellung wird pro Abbild bewertet. Die Vertrauenswerte sind für alle Klassen in einem Abbild gleich. 

Die Ausgabe eines semantischen Segmentierung-Anpassungsauftrags sollte dem folgenden JSON ähnlich sehen.

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/example_city_image.png",
    "city-streets-ref": "S3 bucket location",
    "city-streets-ref-metadata": {
      "internal-color-map": {
        "0": {
           "class-name": "BACKGROUND",
           "confidence": 0.9,
           "hex-color": "#ffffff"
        },
        "1": {
           "class-name": "buildings",
           "confidence": 0.9,
           "hex-color": "#2acf59"
        },
        "2":  {
           "class-name": "road",
           "confidence": 0.9,
           "hex-color": "#f28333"
       }
     },
     "type": "groundtruth/semantic-segmentation",
     "human-annotated": "yes",
     "creation-date": "2018-10-18T22:18:13.527256",
     "job-name": "label-city-streets",
     },
     "adjusted-city-streets-ref": "s3://amzn-s3-demo-bucket/example_city_image.png",
     "adjusted-city-streets-ref-metadata": {
      "internal-color-map": {
        "0": {
           "class-name": "BACKGROUND",
           "confidence": 0.9,
           "hex-color": "#ffffff"
        },
        "1": {
           "class-name": "buildings",
           "confidence": 0.9,
           "hex-color": "#2acf59"
        },
        "2":  {
           "class-name": "road",
           "confidence": 0.9,
           "hex-color": "#f28333"
       }
     },
     "type": "groundtruth/semantic-segmentation",
     "human-annotated": "yes",
     "creation-date": "2018-11-20T22:18:13.527256",
     "job-name": "adjust-label-city-streets",
     }
}
```

## Ausgabe der Video-Frame-Objekterkennung
<a name="sms-output-video-object-detection"></a>

Es folgt die Ausgabemanifestdatei für einen Kennzeichnungsauftrag der Video-Frame-Objektverfolgung. Was *red, italicized text* in den folgenden Beispielen gezeigt wird, hängt von den Auftragsspezifikationen und den Ausgabedaten für die Kennzeichnung ab.

Zusätzlich zu den Standardelementen enthalten die Metadaten eine Klassenzuordnung, die jede Klasse auflistet, die mindestens eine Bezeichnung in der Sequenz enthält. Zu den Metadaten gehört auch der Name `job-name`, den Sie dem Kennzeichnungsauftrag zugewiesen haben. Wenn bei Anpassungsaufgaben ein oder mehrere Begrenzungsrahmen geändert wurden, gibt es in den Metadaten für Prüfungs-Workflows einen `adjustment-status`-Parameter, der auf `adjusted` festgelegt ist. 

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/example-path/input-manifest.json",
    "CarObjectDetection-ref": "s3://amzn-s3-demo-bucket/output/labeling-job-name/annotations/consolidated-annotation/output/0/SeqLabel.json",
    "CarObjectDetection-ref-metadata": {
        "class-map": {
            "0": "car",
            "1": "bus"
        },
        "job-name": "labeling-job/labeling-job-name",
        "human-annotated": "yes",
        "creation-date": "2021-09-29T05:50:35.566000",
        "type": "groundtruth/video-object-detection"
        }
}
```

Ground Truth erstellt eine Ausgabesequenzdatei für jede Sequenz von Video-Frames, die beschriftet wurde. Jede Ausgabesequenzdatei enthält Folgendes: 
+ Alle Anmerkungen für alle Frames in einer Sequenz in der `detection-annotations`-Liste der JSON-Objekte. 
+ Für jeden Frame, der von einem Auftragnehmer mit Anmerkungen versehen wurde, der Name der Frame-Datei (`frame`), die Nummer (`frame-no`), eine Liste der JSON-Objekte, die Anmerkungen enthalten (`annotations`), und, falls zutreffend, `frame-attributes`. Der Name dieser Liste wird durch den Aufgabentyp definiert, den Sie verwenden: `polylines`, `polygons`, `keypoints` und für Begrenzungsrahmen `annotations`.

   

  Jedes JSON-Objekt enthält Informationen zu einer einzelnen Anmerkung und der zugehörigen Bezeichnung. In der folgenden Tabelle sind die Parameter aufgeführt, die Sie für jeden Video-Frame-Aufgabentyp sehen werden.   
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/sms-data-output.html)

  Zusätzlich zu den für den Aufgabentyp spezifischen Werten werden Sie in jedem JSON-Objekt Folgendes sehen:
  + Werte aller `label-category-attributes`, die für diese Bezeichnung angegeben wurden. 
  + Die `class-id` des Rahmens. Verwenden Sie die `class-map`-Datei in der Ausgabemanifestdatei, um zu sehen, welcher Kennzeichnungskategorie diese ID zugeordnet ist. 

Im Folgenden finden Sie ein Beispiel für eine `SeqLabel.json`-Datei aus einem Kennzeichnungsauftrag der Video-Frame-Objekterkennung mit Begrenzungsrahmen. Diese Datei befindet sich unter `s3://amzn-s3-demo-bucket/output-prefix/annotations/consolidated-annotation/output/annotation-number/`.

```
{
    "detection-annotations": [
        {
            "annotations": [
                {
                    "height": 41,
                    "width": 53,
                    "top": 152,
                    "left": 339,
                    "class-id": "1",
                    "label-category-attributes": {
                        "occluded": "no",
                        "size": "medium"
                    }
                },
                {
                    "height": 24,
                    "width": 37,
                    "top": 148,
                    "left": 183,
                    "class-id": "0",
                    "label-category-attributes": {
                        "occluded": "no",
                    }
                }
            ],
            "frame-no": 0,
            "frame": "frame_0000.jpeg", 
            "frame-attributes": {name: value, name: value}
        },
        {
            "annotations": [
                {
                    "height": 41,
                    "width": 53,
                    "top": 152,
                    "left": 341,
                    "class-id": "0",
                    "label-category-attributes": {}
                },
                {
                    "height": 24,
                    "width": 37,
                    "top": 141,
                    "left": 177,
                    "class-id": "0",
                    "label-category-attributes": {
                        "occluded": "no",
                    }
                }
            ],
            "frame-no": 1,
            "frame": "frame_0001.jpeg",
            "frame-attributes": {name: value, name: value}
        }
    ]
}
```

## Ausgabe der Video-Frame-Objektverfolgung
<a name="sms-output-video-object-tracking"></a>

Es folgt die Ausgabemanifestdatei für einen Kennzeichnungsauftrag der Video-Frame-Objektverfolgung. Was *red, italicized text* in den folgenden Beispielen gezeigt wird, hängt von der Kennzeichnung der Auftragsspezifikationen und der Ausgabedaten ab.

Zusätzlich zu den Standardelementen enthalten die Metadaten eine Klassenzuordnung, die jede Klasse auflistet, die mindestens eine Bezeichnung in der Sequenz enthält. Zu den Metadaten gehört auch der Name `job-name`, den Sie dem Kennzeichnungsauftrag zugewiesen haben. Wenn bei Anpassungsaufgaben ein oder mehrere Begrenzungsrahmen geändert wurden, gibt es in den Metadaten für Prüfungs-Workflows einen `adjustment-status`-Parameter, der auf `adjusted` festgelegt ist. 

```
{
    "source-ref": "s3://amzn-s3-demo-bucket/example-path/input-manifest.json",
    "CarObjectTracking-ref": "s3://amzn-s3-demo-bucket/output/labeling-job-name/annotations/consolidated-annotation/output/0/SeqLabel.json",
    "CarObjectTracking-ref-metadata": {
        "class-map": {
            "0": "car",
            "1": "bus"
        },
        "job-name": "labeling-job/labeling-job-name",
        "human-annotated": "yes",
        "creation-date": "2021-09-29T05:50:35.566000",
        "type": "groundtruth/video-object-tracking"
        }
 }
```

Ground Truth erstellt eine Ausgabesequenzdatei für jede Sequenz von Video-Frames, die beschriftet wurde. Jede Ausgabesequenzdatei enthält Folgendes: 
+ Alle Anmerkungen für alle Frames in einer Sequenz in der `tracking-annotations`-Liste der JSON-Objekte. 
+ Für jeden Frame, der von einem Auftragnehmer mit Anmerkungen versehen wurde, der Frame (`frame`), die Nummer (`frame-no`), eine Liste der JSON-Objekte, die Anmerkungen enthalten (`annotations`), und, falls zutreffend, `frame-attributes`. Der Name dieser Liste wird durch den Aufgabentyp definiert, den Sie verwenden: `polylines`, `polygons`, `keypoints` und für Begrenzungsrahmen `annotations`.

  Jedes JSON-Objekt enthält Informationen zu einer einzelnen Anmerkung und der zugehörigen Bezeichnung. In der folgenden Tabelle sind die Parameter aufgeführt, die Sie für jeden Video-Frame-Aufgabentyp sehen werden.   
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/sms-data-output.html)

  Zusätzlich zu den für den Aufgabentyp spezifischen Werten werden Sie in jedem JSON-Objekt Folgendes sehen: 
  + Werte aller `label-category-attributes`, die für diese Bezeichnung angegeben wurden. 
  + Die `class-id` des Rahmens. Verwenden Sie die `class-map`-Datei in der Ausgabemanifestdatei, um zu sehen, welcher Kennzeichnungskategorie diese ID zugeordnet ist. 
  + Eine `object-id`, die eine Instance einer Bezeichnung identifiziert. Diese ID ist für alle Frames dieselbe, wenn ein Auftragnehmer dieselbe Instance eines Objekts in mehreren Frames identifiziert hat. Wenn ein Auto beispielsweise in mehreren Frames angezeigt wird, hätten alle Begrenzungsfelder, die zur Identifizierung dieses Autos verwendet werden, dieselbe `object-id`.
  + Der `object-name`, der die Instance-ID dieser Anmerkung ist. 

Im Folgenden finden Sie ein Beispiel für eine `SeqLabel.json`-Datei aus einem Kennzeichnungsauftrag der Video-Frame-Objektverfolgung mit Begrenzungsrahmen. Diese Datei befindet sich unter `s3://amzn-s3-demo-bucket/output-prefix/annotations/consolidated-annotation/output/annotation-number/`.

```
{
    "tracking-annotations": [
        {
            "annotations": [
                {
                    "height": 36,
                    "width": 46,
                    "top": 178,
                    "left": 315,
                    "class-id": "0",
                    "label-category-attributes": {
                        "occluded": "no"
                    },
                    "object-id": "480dc450-c0ca-11ea-961f-a9b1c5c97972",
                    "object-name": "car:1"
                }
            ],
            "frame-no": 0,
            "frame": "frame_0001.jpeg",
            "frame-attributes": {}
        },
        {
            "annotations": [
                {
                    "height": 30,
                    "width": 47,
                    "top": 163,
                    "left": 344,
                    "class-id": "1",
                    "label-category-attributes": {
                        "occluded": "no",
                        "size": "medium"
                    },
                    "object-id": "98f2b0b0-c0ca-11ea-961f-a9b1c5c97972",
                    "object-name": "bus:1"
                },
                {
                    "height": 28,
                    "width": 33,
                    "top": 150,
                    "left": 192,
                    "class-id": "0",
                    "label-category-attributes": {
                        "occluded": "partially"
                    },
                    "object-id": "480dc450-c0ca-11ea-961f-a9b1c5c97972",
                    "object-name": "car:1"
                }
            ],
            "frame-no": 1,
            "frame": "frame_0002.jpeg",
            "frame-attributes": {name: value, name: value}
        }
    ]
}
```

## Ausgabe der semantischen 3D-Punktwolkensegmentierung
<a name="sms-output-point-cloud-segmentation"></a>

Es folgt die Ausgabemanifestdatei für einen semantischen Segmentierungskennzeichnungsauftrag für eine 3D-Punktwolke. 

Zusätzlich zu den Standardelementen enthalten die Metadaten für die Bezeichnung eine Farbkarte, die definiert, welche Farbe für die Kennzeichnung des Bildes verwendet wird, den Klassennamen, der mit der Farbe verknüpft ist, und den Zuverlässigkeitswert für jede Farbe. Darüber hinaus gibt es einen `adjustment-status`-Parameter in den Metadaten für Prüfungs-Workflows, der auf `adjusted` festgelegt wird, wenn die Farbmaske geändert wird. Wenn Sie der Konfigurationsdatei für die Kennzeichnungskategorie eine oder mehrere `frameAttributes` hinzugefügt haben, befinden sich die Auftragnehmerantworten für Frame-Attribute im JSON-Objekt, `dataset-object-attributes`.

Der Parameter `your-label-attribute-ref` enthält den Speicherort einer komprimierten Datei mit der Erweiterung .zlib. Wenn Sie diese Datei entpacken, enthält sie ein Array. Jeder Index im Array entspricht dem Index eines mit Anmerkungen versehenen Punkts in der Eingabepunktwolke. Der Wert des Arrays an einem bestimmten Index gibt die Klasse des Punkts an demselben Index in der Punktwolke an, basierend auf der semantischen Farbkarte, die im `color-map`-Parameter von `metadata` gefunden wurde.

Sie können Python-Code ähnlich dem folgenden Beispiel verwenden, um eine .zlib-Datei zu entpacken:

```
import zlib
from array import array

# read the label file
compressed_binary_file = open(zlib_file_path/file.zlib, 'rb').read()

# uncompress the label file
binary_content = zlib.decompress(compressed_binary_file)

# load labels to an array
my_int_array_data = array('B', binary_content);

print(my_int_array_data)
```

Der obige Codeblock erzeugt eine Ausgabe ähnlich der folgenden. Jedes Element des gedruckten Arrays enthält die Klasse eines Punktes an diesem Index in der Punktwolke. In Beispiel bedeutet `my_int_array_data[0] = 1` `point[0]` in der Eingabe-Punktwolke, die Klasse `1` hat. Im folgenden Beispiel für eine Ausgabemanifestdatei entspricht Klasse `0` `"Background"`, `1` mit `Car` und `2` mit`Pedestrian`.

```
>> array('B', [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])
```

Nachfolgend finden Sie ein Beispiel einer Ausgabemanifestdatei eines 3D-Punktwolken-Kennzeichnungsauftrags mit semantischer Segmentierung. Der rote, kursiv formatierte Text in den folgenden Beispielen hängt von den Spezifikationen des Kennzeichnungsauftrags und den Ausgabedaten ab. 

```
{
   "source-ref": "s3://amzn-s3-demo-bucket/examplefolder/frame1.bin",
   "source-ref-metadata":{
      "format": "binary/xyzi",
      "unix-timestamp": 1566861644.759115,
      "ego-vehicle-pose":{...}, 
      "prefix": "s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/prefix",
      "images": [{...}] 
    },
    "lidar-ss-label-attribute-ref": "s3://amzn-s3-demo-bucket/labeling-job-name/annotations/consolidated-annotation/output/dataset-object-id/filename.zlib",
    "lidar-ss-label-attribute-ref-metadata": { 
        'color-map': {
            "0": {
                "class-name": "Background",
                "hex-color": "#ffffff",
                "confidence": 0.00
            },
            "1": {
                "class-name": "Car",
                "hex-color": "#2ca02c",
                "confidence": 0.00
            },
            "2": {
                "class-name": "Pedestrian",
                "hex-color": "#1f77b4",
                "confidence": 0.00
            },
            "3": {
                "class-name": "Tree",
                "hex-color": "#ff7f0e",
                "confidence": 0.00
            }
        },
        'type': 'groundtruth/point_cloud_single_frame_semantic_segmentation', 
        'human-annotated': 'yes',
        'creation-date': '2019-11-12T01:18:14.271944',
        'job-name': 'labeling-job-name',
        //only present for adjustment audit workflow
        "adjustment-status": "adjusted", // "adjusted" means the label was adjusted
        "dataset-object-attributes": {name: value, name: value}
    }
}
```

## Ausgabe der 3D-Punktwolken-Objekterkennung
<a name="sms-output-point-cloud-object-detection"></a>

Im Folgenden finden Sie eine Beispielausgabe von einem 3D-Punktwolken-Objekterkennungsauftrag. Für diesen Aufgabentyp werden die Daten zu 3D-Quadern im Parameter `3d-bounding-box` in einer Liste mit dem Namen `annotations` zurückgegeben. In dieser Liste wird jeder 3D-Quader anhand der folgenden Informationen beschrieben. 
+ Jede Klasse oder Kennzeichnungskategorie, die Sie in Ihrem Eingabemanifest angegeben haben, ist mit einer `class-id` verknüpft. Verwenden Sie die `class-map`, um die Klasse zu identifizieren, die jeder Klassen-ID zugeordnet ist.
+ Diese Klassen werden verwendet, um jedem 3D-Quader einen `object-name` im Format `<class>:<integer>` zu geben, wobei `integer` eine eindeutige Nummer ist, um diesen Quader im Frame zu identifizieren. 
+ `center-x`, `center-y` und `center-z` sind die Koordinaten des Mittelpunkts des Quaders in demselben Koordinatensystem wie die 3D-Punktwolken-Eingabedaten, die in Ihrem Kennzeichnungsauftrag verwendet wurden.
+ `length`, `width` und `height` beschreiben die Dimensionen des Quaders. 
+ `yaw` wird verwendet, um die Ausrichtung (Fahrkurs) des Quaders zu beschreiben.
**Anmerkung**  
`yaw` befindet sich jetzt im kartesischen System für Rechtshänder. Da diese Funktion am 2. September 2022 19:02:17 UTC hinzugefügt wurde, können Sie die `yaw`-Messung in den vorherigen Ausgabedaten wie folgt umrechnen (alle Einheiten sind im Bogenmaß angegeben):  

  ```
  old_yaw_in_output = pi - yaw
  ```
+ In unserer Definition befindet sich \$1x rechts, \$1y vor und \$1z über der Grundebene. Die Rotationsreihenfolge ist x – y – z. `roll`, `pitch` und `yaw` werden im kartesischen System für Rechtshänder dargestellt. `roll` befindet sich im 3D-Raum entlang der X-Achse, `pitch` befindet sich entlang der Y-Achse und `yaw` befindet sich entlang der Z-Achse. Alle drei sind gegen den Uhrzeigersinn ausgerichtet.
+ Wenn Sie Kennzeichnungsattribute in Ihre Eingabemanifestdatei für eine bestimmte Klasse aufgenommen haben, wird ein `label-category-attributes`-Parameter für alle Quader eingeschlossen, für den Auftragnehmer Kennzeichnungsattribute ausgewählt haben. 

Wenn ein oder mehrere Quader geändert wurden, gibt es in den Metadaten für Prüfungs-Workflows einen `adjustment-status`-Parameter, der auf `adjusted` festgelegt ist. Wenn Sie der Konfigurationsdatei für die Kennzeichnungskategorie eine oder mehrere `frameAttributes` hinzugefügt haben, befinden sich die Auftragnehmerantworten für Frame-Attribute im JSON-Objekt, `dataset-object-attributes`.

Was *red, italicized text* in den folgenden Beispielen gezeigt wird, hängt von der Kennzeichnung der Auftragsspezifikationen und der Ausgabedaten ab. Die Auslassungspunkte (*...*) kennzeichnen eine Fortsetzung dieser Liste, in der weitere Objekte mit demselben Format wie das vorhergehende Objekt erscheinen können.

```
{
   "source-ref": "s3://amzn-s3-demo-bucket/examplefolder/frame1.txt",
   "source-ref-metadata":{
      "format": "text/xyzi",
      "unix-timestamp": 1566861644.759115, 
      "prefix": "s3://amzn-s3-demo-bucket/lidar_singleframe_dataset/prefix",
      "ego-vehicle-pose": {
            "heading": {
                "qx": -0.02111296123795955,
                "qy": -0.006495469416730261,
                "qz": -0.008024565904865688,
                "qw": 0.9997181192298087
            },
            "position": {
                "x": -2.7161461413869947,
                "y": 116.25822288149078,
                "z": 1.8348751887989483
            }
       },
       "images": [
            {
                "fx": 847.7962624528487,
                "fy": 850.0340893791985,
                "cx": 576.2129134707038,
                "cy": 317.2423573573745,
                "k1": 0,
                "k2": 0,
                "k3": 0,
                "k4": 0,
                "p1": 0,
                "p2": 0,
                "skew": 0,
                "unix-timestamp": 1566861644.759115,
                "image-path": "images/frame_0_camera_0.jpg", 
                "position": {
                    "x": -2.2722515189268138,
                    "y": 116.86003310568965,
                    "z": 1.454614668542299
                },
                "heading": {
                    "qx": 0.7594754093069037,
                    "qy": 0.02181790885672969,
                    "qz": -0.02461725233103356,
                    "qw": -0.6496916273040025
                },
                "camera_model": "pinhole"
            }
        ]
    },
   "3d-bounding-box": 
    {
       "annotations": [
            {
                "label-category-attributes": {
                    "Occlusion": "Partial",
                    "Type": "Sedan"
                },
                "object-name": "Car:1",
                "class-id": 0,
                "center-x": -2.616382013657516,
                "center-y": 125.04149850484193,
                "center-z": 0.311272296465834,
                "length": 2.993000265181146,
                "width": 1.8355260519692056,
                "height": 1.3233490884304047,
                "roll": 0,
                "pitch": 0,
                "yaw": 1.6479308313703527
            },
            {
                "label-category-attributes": {
                    "Occlusion": "Partial",
                    "Type": "Sedan"
                },
                "object-name": "Car:2",
                "class-id": 0,
                "center-x": -5.188984560617168,
                "center-y": 99.7954483288783,
                "center-z": 0.2226435567445657,
                "length": 4,
                "width": 2,
                "height": 2,
                "roll": 0,
                "pitch": 0,
                "yaw": 1.6243170732068055
            }
        ]
    },
    "3d-bounding-box-metadata":
    {
        "objects": [], 
        "class_map": 
        {
            "0": "Car",
        },
        "type": "groundtruth/point_cloud_object_detection",
        "human-annotated": "yes", 
        "creation-date": "2018-10-18T22:18:13.527256",
        "job-name": "identify-3d-objects",
        "adjustment-status": "adjusted",
        "dataset-object-attributes": {name: value, name: value}
    }
}
```

## Ausgabe der 3D-Punktwolken-Objektverfolgung
<a name="sms-output-point-cloud-object-tracking"></a>

Nachfolgend finden Sie ein Beispiel für eine Ausgabemanifestdatei aus einem Kennzeichnungsauftrag der 3D-Punktwolken-Objektverfolgung. Was *red, italicized text* in den folgenden Beispielen gezeigt wird, hängt von der Kennzeichnung der Auftragsspezifikationen und den Ausgabedaten ab. Die Auslassungspunkte (*...*) kennzeichnen eine Fortsetzung dieser Liste, in der weitere Objekte mit demselben Format wie das vorhergehende Objekt erscheinen können.

Zusätzlich zu den Standardelementen enthalten die Metadaten eine Klassenzuordnung, die jede Klasse auflistet, die mindestens eine Beschriftung in der Sequenz enthält. Wenn ein oder mehrere Quader geändert wurden, gibt es in den Metadaten für Prüfungs-Workflows einen `adjustment-status`-Parameter, der auf `adjusted` festgelegt ist. 

```
{
   "source-ref": "s3://amzn-s3-demo-bucket/myfolder/seq1.json",
    "lidar-label-attribute-ref": "s3://amzn-s3-demo-bucket/<labelingJobName>/annotations/consolidated-annotation/output/<datasetObjectId>/SeqLabel.json",
    "lidar-label-attribute-ref-metadata": { 
        "objects": 
        [
            {   
                "frame-no": 300,
                "confidence": []
            },
            {
                "frame-no": 301,
                "confidence": []
            },
            ...
        ],    
        'class-map': {'0': 'Car', '1': 'Person'}, 
        'type': 'groundtruth/point_cloud_object_tracking', 
        'human-annotated': 'yes',
        'creation-date': '2019-11-12T01:18:14.271944',
        'job-name': 'identify-3d-objects',
        "adjustment-status": "adjusted" 
    }
}
```

Im obigen Beispiel befinden sich die Quaderdaten für jeden Frame in `seq1.json` in `SeqLabel.json` am Amazon–S3-Speicherort `s3://amzn-s3-demo-bucket/<labelingJobName>/annotations/consolidated-annotation/output/<datasetObjectId>/SeqLabel.json`. Im Folgenden finden Sie ein Beispiel für diese Bezeichnungssequenzdatei.

Für jedes Bild in der Sequenz sehen Sie `frame-number`, `frame-name`, falls zutreffend `frame-attributes` und eine Liste von `annotations`. Diese Liste enthält 3D-Quader, die für diesen Frame gezeichnet wurden. Jede Anmerkung enthält die folgenden Informationen: 
+ Ein `object-name` im Format `<class>:<integer>`, bei dem `class` die Kennzeichnungskategorie identifiziert und `integer` eine eindeutige ID im gesamten Datensatz darstellt.
+ Wenn Auftragnehmer einen Quader zeichnen, wird er mit einer eindeutigen `object-id` verknüpft, die allen Quadern zugeordnet ist, die dasselbe Objekt über mehrere Frames hinweg identifizieren.
+ Jede Klasse oder Beschriftungskategorie, die Sie in Ihrem Eingabemanifest angegeben haben, ist mit einer `class-id` verknüpft. Verwenden Sie die `class-map`, um die Klasse zu identifizieren, die jeder Klassen-ID zugeordnet ist.
+ `center-x`, `center-y` und `center-z` sind die Koordinaten des Mittelpunkts des Quaders in demselben Koordinatensystem wie die 3D-Punktwolken-Eingabedaten, die in Ihrem Kennzeichnungsauftrag verwendet wurden.
+ `length`, `width` und `height` beschreiben die Dimensionen des Quaders. 
+ `yaw` wird verwendet, um die Ausrichtung (Fahrkurs) des Quaders zu beschreiben.
**Anmerkung**  
`yaw` befindet sich jetzt im kartesischen System für Rechtshänder. Da diese Funktion am 2. September 2022 19:02:17 UTC hinzugefügt wurde, können Sie die `yaw`-Messung in den vorherigen Ausgabedaten wie folgt umrechnen (alle Einheiten sind im Bogenmaß angegeben):  

  ```
  old_yaw_in_output = pi - yaw
  ```
+ In unserer Definition befindet sich \$1x rechts, \$1y vor und \$1z über der Grundebene. Die Rotationsreihenfolge ist x – y – z. `roll`, `pitch` und `yaw` werden im kartesischen System für Rechtshänder dargestellt. `roll` befindet sich im 3D-Raum entlang der X-Achse, `pitch` befindet sich entlang der Y-Achse und `yaw` befindet sich entlang der Z-Achse. Alle drei sind gegen den Uhrzeigersinn ausgerichtet.
+ Wenn Sie Kennzeichnungsattribute in Ihre Eingabemanifestdatei für eine bestimmte Klasse aufgenommen haben, wird ein `label-category-attributes`-Parameter für alle Quader eingeschlossen, für den Auftragnehmer Kennzeichnungsattribute ausgewählt haben. 

```
{
    "tracking-annotations": [
        {
            "frame-number": 0,
            "frame-name": "0.txt.pcd",
            "frame-attributes": {name: value, name: value},
            "annotations": [
                {
                    "label-category-attributes": {},
                    "object-name": "Car:4",
                    "class-id": 0,
                    "center-x": -2.2906369208300674,
                    "center-y": 103.73924823843463,
                    "center-z": 0.37634114027023313,
                    "length": 4,
                    "width": 2,
                    "height": 2,
                    "roll": 0,
                    "pitch": 0,
                    "yaw": 1.5827222214406014,
                    "object-id": "ae5dc770-a782-11ea-b57d-67c51a0561a1"
                },
                {
                    "label-category-attributes": {
                        "Occlusion": "Partial",
                        "Type": "Sedan"
                    },
                    "object-name": "Car:1",
                    "class-id": 0,
                    "center-x": -2.6451293634707413,
                    "center-y": 124.9534455706848,
                    "center-z": 0.5020834081743839,
                    "length": 4,
                    "width": 2,
                    "height": 2.080488827301309,
                    "roll": 0,
                    "pitch": 0,
                    "yaw": -1.5963335581398077,
                    "object-id": "06efb020-a782-11ea-b57d-67c51a0561a1"
                },
                {
                    "label-category-attributes": {
                        "Occlusion": "Partial",
                        "Type": "Sedan"
                    },
                    "object-name": "Car:2",
                    "class-id": 0,
                    "center-x": -5.205611313118477,
                    "center-y": 99.91731932137061,
                    "center-z": 0.22917217081212138,
                    "length": 3.8747142207671956,
                    "width": 1.9999999999999918,
                    "height": 2,
                    "roll": 0,
                    "pitch": 0,
                    "yaw": 1.5672228760316775,
                    "object-id": "26fad020-a782-11ea-b57d-67c51a0561a1"
                }
            ]
        },
        {
            "frame-number": 1,
            "frame-name": "1.txt.pcd",
            "frame-attributes": {},
            "annotations": [
                {
                    "label-category-attributes": {},
                    "object-name": "Car:4",
                    "class-id": 0,
                    "center-x": -2.2906369208300674,
                    "center-y": 103.73924823843463,
                    "center-z": 0.37634114027023313,
                    "length": 4,
                    "width": 2,
                    "height": 2,
                    "roll": 0,
                    "pitch": 0,
                    "yaw": 1.5827222214406014,
                    "object-id": "ae5dc770-a782-11ea-b57d-67c51a0561a1"
                },
                {
                    "label-category-attributes": {
                        "Occlusion": "Partial",
                        "Type": "Sedan"
                    },
                    "object-name": "Car:1",
                    "class-id": 0,
                    "center-x": -2.6451293634707413,
                    "center-y": 124.9534455706848,
                    "center-z": 0.5020834081743839,
                    "length": 4,
                    "width": 2,
                    "height": 2.080488827301309,
                    "roll": 0,
                    "pitch": 0,
                    "yaw": -1.5963335581398077,
                    "object-id": "06efb020-a782-11ea-b57d-67c51a0561a1"
                },
                {
                    "label-category-attributes": {
                        "Occlusion": "Partial",
                        "Type": "Sedan"
                    },
                    "object-name": "Car:2",
                    "class-id": 0,
                    "center-x": -5.221311072916759,
                    "center-y": 100.4639841045424,
                    "center-z": 0.22917217081212138,
                    "length": 3.8747142207671956,
                    "width": 1.9999999999999918,
                    "height": 2,
                    "roll": 0,
                    "pitch": 0,
                    "yaw": 1.5672228760316775,
                    "object-id": "26fad020-a782-11ea-b57d-67c51a0561a1"
                }
            ]
        }       
    ]
}
```

## 3D-2D-Objektverfolgung, Punktwolke, Ausgabe der Objektverfolgung
<a name="sms-output-3d-2d-point-cloud-object-tracking"></a>

Nachfolgend finden Sie ein Beispiel für eine Ausgabemanifestdatei aus einem Kennzeichnungsauftrag der 3D-Punktwolken-Objektverfolgung. Was *red, italicized text* in den folgenden Beispielen gezeigt wird, hängt von der Kennzeichnung der Auftragsspezifikationen und den Ausgabedaten ab. Die Auslassungspunkte (*...*) kennzeichnen eine Fortsetzung dieser Liste, in der weitere Objekte mit demselben Format wie das vorhergehende Objekt erscheinen können.

Zusätzlich zu den Standardelementen enthalten die Metadaten eine Klassenzuordnung, die jede Klasse auflistet, die mindestens eine Beschriftung in der Sequenz enthält. Wenn ein oder mehrere Quader geändert wurden, gibt es in den Metadaten für Prüfungs-Workflows einen `adjustment-status`-Parameter, der auf `adjusted` festgelegt ist. 

```
{
  "source-ref": "s3://amzn-s3-demo-bucket/artifacts/gt-point-cloud-demos/sequences/seq2.json",
  "source-ref-metadata": {
    "json-paths": [
      "number-of-frames",
      "prefix",
      "frames{frame-no, frame}"
    ]
  },
  "3D2D-linking-ref": "s3://amzn-s3-demo-bucket/xyz/3D2D-linking/annotations/consolidated-annotation/output/0/SeqLabel.json",
  "3D2D-linking-ref-metadata": {
    "objects": [
      {
        "frame-no": 0,
        "confidence": []
      },
      {
        "frame-no": 1,
        "confidence": []
      },
      {
        "frame-no": 2,
        "confidence": []
      },
      {
        "frame-no": 3,
        "confidence": []
      },
      {
        "frame-no": 4,
        "confidence": []
      },
      {
        "frame-no": 5,
        "confidence": []
      },
      {
        "frame-no": 6,
        "confidence": []
      },
      {
        "frame-no": 7,
        "confidence": []
      },
      {
        "frame-no": 8,
        "confidence": []
      },
      {
        "frame-no": 9,
        "confidence": []
      }
    ],
    "class-map": {
      "0": "Car"
    },
    "type": "groundtruth/point_cloud_object_tracking",
    "human-annotated": "yes",
    "creation-date": "2023-01-19T02:55:10.206508",
    "job-name": "mcm-linking"
  },
  "3D2D-linking-chain-ref": "s3://amzn-s3-demo-bucket/xyz/3D2D-linking-chain/annotations/consolidated-annotation/output/0/SeqLabel.json",
  "3D2D-linking-chain-ref-metadata": {
    "objects": [
      {
        "frame-no": 0,
        "confidence": []
      },
      {
        "frame-no": 1,
        "confidence": []
      },
      {
        "frame-no": 2,
        "confidence": []
      },
      {
        "frame-no": 3,
        "confidence": []
      },
      {
        "frame-no": 4,
        "confidence": []
      },
      {
        "frame-no": 5,
        "confidence": []
      },
      {
        "frame-no": 6,
        "confidence": []
      },
      {
        "frame-no": 7,
        "confidence": []
      },
      {
        "frame-no": 8,
        "confidence": []
      },
      {
        "frame-no": 9,
        "confidence": []
      }
    ],
    "class-map": {
      "0": "Car"
    },
    "type": "groundtruth/point_cloud_object_tracking",
    "human-annotated": "yes",
    "creation-date": "2023-01-19T03:29:49.149935",
    "job-name": "3d2d-linking-chain"
  }
}
```

Im obigen Beispiel befinden sich die Quaderdaten für jeden Frame in `seq2.json` in `SeqLabel.json` am Amazon–S3-Speicherort `s3://amzn-s3-demo-bucket/<labelingJobName>/annotations/consolidated-annotation/output/<datasetObjectId>/SeqLabel.json`. Im Folgenden finden Sie ein Beispiel für diese Bezeichnungssequenzdatei.

Für jedes Bild in der Sequenz sehen Sie `frame-number`, `frame-name`, falls zutreffend `frame-attributes` und eine Liste von `annotations`. Diese Liste enthält 3D-Quader, die für diesen Frame gezeichnet wurden. Jede Anmerkung enthält die folgenden Informationen: 
+ Ein `object-name` im Format `<class>:<integer>`, bei dem `class` die Kennzeichnungskategorie identifiziert und `integer` eine eindeutige ID im gesamten Datensatz darstellt.
+ Wenn Auftragnehmer einen Quader zeichnen, wird er mit einer eindeutigen `object-id` verknüpft, die allen Quadern zugeordnet ist, die dasselbe Objekt über mehrere Frames hinweg identifizieren.
+ Jede Klasse oder Beschriftungskategorie, die Sie in Ihrem Eingabemanifest angegeben haben, ist mit einer `class-id` verknüpft. Verwenden Sie die `class-map`, um die Klasse zu identifizieren, die jeder Klassen-ID zugeordnet ist.
+ `center-x`, `center-y` und `center-z` sind die Koordinaten des Mittelpunkts des Quaders in demselben Koordinatensystem wie die 3D-Punktwolken-Eingabedaten, die in Ihrem Kennzeichnungsauftrag verwendet wurden.
+ `length`, `width` und `height` beschreiben die Dimensionen des Quaders. 
+ `yaw` wird verwendet, um die Ausrichtung (Fahrkurs) des Quaders zu beschreiben.
**Anmerkung**  
`yaw` befindet sich jetzt im kartesischen System für Rechtshänder. Da diese Funktion am 2. September 2022 19:02:17 UTC hinzugefügt wurde, können Sie die `yaw`-Messung in den vorherigen Ausgabedaten wie folgt umrechnen (alle Einheiten sind im Bogenmaß angegeben):  

  ```
  old_yaw_in_output = pi - yaw
  ```
+ In unserer Definition befindet sich \$1x rechts, \$1y vor und \$1z über der Grundebene. Die Rotationsreihenfolge ist x – y – z. `roll`, `pitch` und `yaw` werden im kartesischen System für Rechtshänder dargestellt. `roll` befindet sich im 3D-Raum entlang der X-Achse, `pitch` befindet sich entlang der Y-Achse und `yaw` befindet sich entlang der Z-Achse. Alle drei sind gegen den Uhrzeigersinn ausgerichtet.
+ Wenn Sie Kennzeichnungsattribute in Ihre Eingabemanifestdatei für eine bestimmte Klasse aufgenommen haben, wird ein `label-category-attributes`-Parameter für alle Quader eingeschlossen, für den Auftragnehmer Kennzeichnungsattribute ausgewählt haben. 

```
{
  "lidar": {
    "tracking-annotations": [
      {
        "frame-number": 0,
        "frame-name": "0.txt.pcd",
        "annotations": [
          {
            "label-category-attributes": {
              "Type": "Sedan"
            },
            "object-name": "Car:1",
            "class-id": 0,
            "center-x": 12.172361721602815,
            "center-y": 120.23067521992364,
            "center-z": 1.590525771183712,
            "length": 4,
            "width": 2,
            "height": 2,
            "roll": 0,
            "pitch": 0,
            "yaw": 0,
            "object-id": "505b39e0-97a4-11ed-8903-dd5b8b903715"
          },
          {
            "label-category-attributes": {},
            "object-name": "Car:4",
            "class-id": 0,
            "center-x": 17.192725195301094,
            "center-y": 114.55705365827872,
            "center-z": 1.590525771183712,
            "length": 4,
            "width": 2,
            "height": 2,
            "roll": 0,
            "pitch": 0,
            "yaw": 0,
            "object-id": "1afcb670-97a9-11ed-9a84-ff627d099e16"
          }
        ],
        "frame-attributes": {}
      },
      {
        "frame-number": 1,
        "frame-name": "1.txt.pcd",
        "annotations": [
          {
            "label-category-attributes": {
              "Type": "Sedan"
            },
            "object-name": "Car:1",
            "class-id": 0,
            "center-x": -1.6841480600695489,
            "center-y": 126.20198882749516,
            "center-z": 1.590525771183712,
            "length": 4,
            "width": 2,
            "height": 2,
            "roll": 0,
            "pitch": 0,
            "yaw": 0,
            "object-id": "505b39e0-97a4-11ed-8903-dd5b8b903715"
          },
          {
            "label-category-attributes": {},
            "object-name": "Car:4",
            "class-id": 0,
            "center-x": 17.192725195301094,
            "center-y": 114.55705365827872,
            "center-z": 1.590525771183712,
            "length": 4,
            "width": 2,
            "height": 2,
            "roll": 0,
            "pitch": 0,
            "yaw": 0,
            "object-id": "1afcb670-97a9-11ed-9a84-ff627d099e16"
          }
        ],
        "frame-attributes": {}
      },
      {
        "frame-number": 2,
        "frame-name": "2.txt.pcd",
        "annotations": [
          {
            "label-category-attributes": {
              "Type": "Sedan"
            },
            "object-name": "Car:1",
            "class-id": 0,
            "center-x": -1.6841480600695489,
            "center-y": 126.20198882749516,
            "center-z": 1.590525771183712,
            "length": 4,
            "width": 2,
            "height": 2,
            "roll": 0,
            "pitch": 0,
            "yaw": 0,
            "object-id": "505b39e0-97a4-11ed-8903-dd5b8b903715"
          },
          {
            "label-category-attributes": {},
            "object-name": "Car:4",
            "class-id": 0,
            "center-x": 17.192725195301094,
            "center-y": 114.55705365827872,
            "center-z": 1.590525771183712,
            "length": 4,
            "width": 2,
            "height": 2,
            "roll": 0,
            "pitch": 0,
            "yaw": 0,
            "object-id": "1afcb670-97a9-11ed-9a84-ff627d099e16"
          }
        ],
        "frame-attributes": {}
      }
    ]
  },
  "camera-0": {
    "tracking-annotations": [
      {
        "frame-no": 0,
        "frame": "0.txt.pcd",
        "annotations": [
          {
            "label-category-attributes": {
              "Occlusion": "Partial"
            },
            "object-name": "Car:2",
            "class-id": 0,
            "width": 223,
            "height": 164,
            "top": 225,
            "left": 486,
            "object-id": "5229df60-97a4-11ed-8903-dd5b8b903715"
          }
        ],
        "frame-attributes": {}
      },
      {
        "frame-no": 1,
        "frame": "1.txt.pcd",
        "annotations": [
          {
            "label-category-attributes": {},
            "object-name": "Car:4",
            "class-id": 0,
            "width": 252,
            "height": 246,
            "top": 237,
            "left": 473,
            "object-id": "1afcb670-97a9-11ed-9a84-ff627d099e16"
          }
        ],
        "frame-attributes": {}
      }
    ]
  }
}
```

Der Quader und der Begrenzungsrahmen eines Objekts sind durch eine gemeinsame Objekt-ID verknüpft.

# Erweitertes Daten-Labeling
<a name="sms-data-labeling"></a>

Amazon SageMaker Ground Truth verwaltet das Senden Ihrer Datenobjekte an Mitarbeiter zur Kennzeichnung. Die Kennzeichnung jedes Datenobjekts ist eine *Aufgabe*. Worker erledigen jede Aufgabe, bis der gesamte Kennzeichnungsauftrag abgeschlossen ist. Ground Truth teilt die Gesamtzahl der Aufgaben in kleinere *Batches* auf, die an Worker gesendet werden. Workern wird ein neuer Stapel bereitgestellt, wenn der vorherige abgeschlossen ist.

Ground Truth bietet zwei Funktionen, mit denen Sie die Genauigkeit Ihrer Datenkennzeichnungen verbessern und die Gesamtkosten für das Labeling Ihrer Daten reduzieren können:
+ *Anmerkungskonsolidierung* hilft, die Genauigkeit der Kennzeichnungen Ihrer Datenobjekte zu verbessern. Das System kombiniert die Anmerkungsaufgaben mehrerer Worker in eine Kennzeichnung mit hoher Wiedergabetreue.
+ Beim *automatischen Daten-Labeling* wird Machine Learning verwendet, um Teile Ihrer Daten automatisch zu kennzeichnen, ohne sie an menschliche Worker senden zu müssen.

**Topics**
+ [Steuern des Flusses von Datenobjekten, die an Auftragnehmer gesendet werden](sms-batching.md)
+ [Anmerkungskonsolidierung](sms-annotation-consolidation.md)
+ [Automatisieren des Daten-Labeling](sms-automated-labeling.md)
+ [Verketten von Kennzeichnungsaufträgen](sms-reusing-data.md)

# Steuern des Flusses von Datenobjekten, die an Auftragnehmer gesendet werden
<a name="sms-batching"></a>

Abhängig von der Art des von Ihnen erstellten Kennzeichnungsauftrags sendet Amazon SageMaker Ground Truth Datenobjekte stapelweise oder im Streaming-Modus an Mitarbeiter. Sie können den Fluss von Datenobjekten an Worker wie folgt steuern:
+ Bei beiden Arten von Kennzeichnungsaufträgen können Sie mit `MaxConcurrentTaskCount` die Gesamtzahl der Datenobjekte steuern, die allen Workern zu einem bestimmten Zeitpunkt, zu dem der Kennzeichnungsauftrag ausgeführt wird, zur Verfügung stehen.
+ Bei Streaming-Kennzeichnungsaufträgen können Sie den Fluss von Datenobjekten an Worker steuern, indem Sie die Anzahl der Datenobjekte überwachen und kontrollieren, die an den Amazon SQS gesendet werden, der mit Ihrem Kennzeichnungsauftrag verknüpft ist. 

In den folgenden Abschnitten erfahren Sie mehr über diese Optionen.

**Topics**
+ [Wird verwendet MaxConcurrentTaskCount , um den Fluss von Datenobjekten zu steuern](#sms-batching-maxconcurrenttaskcount)
+ [Verwenden von Amazon SQS, um den Fluss von Datenobjekten zu Streaming-Kennzeichnungsaufträgen zu steuern](#sms-batching-streaming-sqs)

## Wird verwendet MaxConcurrentTaskCount , um den Fluss von Datenobjekten zu steuern
<a name="sms-batching-maxconcurrenttaskcount"></a>

[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) definiert die maximale Anzahl von Datenobjekten, die gleichzeitig in der Aufgabenwarteschlange des Auftragnehmerportals verfügbar sind. Wenn Sie die Konsole verwenden, ist dieser Parameter auf 1.000 festgelegt. Wenn Sie `CreateLabelingJob` verwenden, können Sie diesen Parameter auf eine beliebige Ganzzahl zwischen 1 und 5 000 setzen.

Das folgende Beispiel hilft Ihnen besser zu verstehen, wie die Anzahl der Einträge in Ihrer Manifestdatei, die `MaxConcurrentTaskCount` und die `NumberOfHumanWorkersPerDataObject` definieren, welche Aufgaben Mitarbeitern in ihrer Aufgabenwarteschlange auf der Benutzeroberfläche des Auftragnehmerportals angezeigt werden.

1. Sie haben eine Eingabe-Manifestdatei mit 600 Einträgen.

1. Für jeden Eintrag in Ihrer Eingabe-Manifestdatei können Sie mit `NumberOfHumanWorkersPerDataObject` die Anzahl der menschlichen Auftragnehmer definieren, die einen Eintrag aus Ihrer Eingabe-Manifestdatei kennzeichnen. In diesem Beispiel setzen Sie den Wert für `NumberOfHumanWorkersPerDataObject` auf 3. Dadurch werden 3 verschiedene Aufgaben für jeden Eintrag in Ihrer Eingabemanifestdatei erstellt. Um als erfolgreich gekennzeichnet markiert zu werden, müssen mindestens 3 verschiedene Auftragnehmer das Objekt kennzeichnen. Dadurch entstehen insgesamt 1 800 Aufgaben (600 x 3), die von Auftragnehmern erledigt werden müssen.

1. Sie möchten, dass Auftragnehmern in ihrer Warteschlange in der Benutzeroberfläche des Auftragnehmerportals jeweils nur 100 Aufgaben angezeigt werden. Hierfür setzen Sie den Wert für `MaxConcurrentTaskCount` auf 100. Ground Truth füllt dann die Aufgabenwarteschlange im Auftragnehmerportal mit 100 Aufgaben pro Auftragnehmer.

1. Der nächste Schritt hängt von der Art des von Ihnen erstellten Kennzeichnungsauftrags ab und davon, ob es sich um einen Streaming-Kennzeichnungsauftrag handelt.
   + **Streaming-Kennzeichnungsauftrag**: Solange die Gesamtzahl der Objekte, die Workern zur Verfügung stehen, `MaxConcurrentTaskCount` entspricht, werden alle verbleibenden Datensatzobjekte in Ihrer Eingabe-Manifestdatei und Datensatzobjekte, die Sie mit Amazon SNS in Echtzeit senden, in eine Amazon SQS-Warteschlange gestellt. Wenn die Gesamtzahl der für Worker verfügbaren Objekte unter `MaxConcurrentTaskCount` minus `NumberOfHumanWorkersPerDataObject` fällt, wird ein neues Datenobjekt aus der Warteschlange verwendet, um `NumberOfHumanWorkersPerDataObject`-Aufgaben zu erstellen, die in Echtzeit an Worker gesendet werden.
   + **Kennzeichnungsauftrag ohne Streaming**: Wenn Worker mit der Kennzeichnung einer Gruppe von Objekten fertig sind, werden bis zu `MaxConcurrentTaskCount` mal `NumberOfHumanWorkersPerDataObject` so viele neue Aufgaben an Worker gesendet. Dieser Vorgang wird wiederholt, bis alle Datenobjekte in der Eingabe-Manifestdatei gekennzeichnet sind.

## Verwenden von Amazon SQS, um den Fluss von Datenobjekten zu Streaming-Kennzeichnungsaufträgen zu steuern
<a name="sms-batching-streaming-sqs"></a>

Wenn Sie einen Streaming-Kennzeichnungsauftrag erstellen, wird in Ihrem Konto automatisch eine Amazon SQS-Warteschlange erstellt. Datenobjekte werden der Amazon SQS-Warteschlange nur hinzugefügt, wenn die Gesamtzahl der an Worker gesendeten Objekte über `MaxConcurrentTaskCount` liegt. Andernfalls werden Objekte direkt an Worker gesendet.

Sie können diese Warteschlange zum Verwalten des Flusses von Datenobjekten zu Ihrem Kennzeichnungsauftrag verwenden. Weitere Informationen hierzu finden Sie unter [Verwalten von Kennzeichnungsanfragen mit einer Amazon SQS-Warteschlange](sms-streaming-how-it-works-sqs.md).

# Anmerkungskonsolidierung
<a name="sms-annotation-consolidation"></a>

Eine *Anmerkung* ist das Ergebnis der Labeling-Aufgabe eines einzelnen Workers. Mit der *Anmerkungskonsolidierung* werden die Anmerkungen von zwei oder mehr Workern zu einer einzigen Kennzeichnung für Ihre Datenobjekte kombiniert. Eine Kennzeichnung, die jedem Objekt im Datensatz zugewiesen wird, ist eine probabilistische Schätzung dessen, was die wahre Kennzeichnung sein soll. Jedes Objekt im Datensatz hat in der Regel mehrere Anmerkungen, aber nur eine Kennzeichnung oder nur einen Satz von Kennzeichnungen.

Sie können entscheiden, wie viele Worker die einzelnen Objekte in Ihrem Datensatz mit Anmerkungen versehen sollen. Durch den Einsatz von mehr Workern lässt sich die Genauigkeit Ihrer Kennzeichnungen erhöhen, dies führt aber auch zu einem Anstieg der Kosten für die Kennzeichnung. Weitere Informationen zu den Preisen von Ground Truth finden Sie unter [Amazon SageMaker Ground Truth — Preise](https://aws.amazon.com/sagemaker/groundtruth/pricing/).

Wenn Sie die Amazon SageMaker AI-Konsole verwenden, um einen Labeling-Job zu erstellen, sind die folgenden Standardwerte für die Anzahl der Worker, die Objekte kommentieren können: 
+ Textklassifizierung – 3 Worker
+ Bildklassifizierung – 3 Worker
+ Begrenzungsrahmen – 5 Worker
+ Semantische Segmentierung – 3 Worker
+ Erkennung benannter Entitäten – 3 Worker

Mit der Operation [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) legen Sie die Anzahl der Auftragnehmer, die jedes Datenobjekt mit Anmerkungen versehen sollen, mit dem Parameter `NumberOfHumanWorkersPerDataObject` fest. Sie können die Standardanzahl der für das Versehen eines Datenobjekts mit Anmerkungen eingesetzten Auftragnehmer über die Konsole oder mithilfe der Operation [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) überschreiben.

Ground Truth bietet eine Anmerkungskonsolidierungsfunktion für jede der vordefinierten Labeling-Aufgaben: Begrenzungsrahmen, Namensentitätenerkennung, Bildklassifizierung, semantische Segmentierung und Textklassifizierung. Dies sind die Funktionen:
+ Bei der Mehrklassen-Anmerkungskonsolidierung für die Bild- und Textklassifizierung wird eine Variante des [Expectation Maximization](https://en.wikipedia.org/wiki/Expectation-maximization_algorithm)-Ansatzes für Anmerkungen verwendet. Sie schätzt Parameter für jeden Worker und nutzt Bayessche Inferenz zum Schätzen der echten Klasse auf Basis der Klassenanmerkungen einzelner Worker. 
+ Bei den Begrenzungsrahmen-Anmerkungen findet eine Konsolidierung der Begrenzungsrahmen mehrerer Worker statt. Diese Funktion findet die ähnlichsten Begrenzungsrahmen unter denen unterschiedlicher Worker basierend auf dem [Jaccard-Koeffizienten](https://en.wikipedia.org/wiki/Jaccard_index) (Schnittmenge über Vereinigungsmenge, Intersection over Union (IoU)) der Begrenzungsrahmen und mittelt sie. 
+ Bei der Anmerkungskonsolidierung für die semantische Segmentierung wird jedes Pixel in einem einzigen Bild als Mehrklassen-Klassifizierung behandelt. Pixelanmerkungen von Workern werden als „Stimmen“ betrachtet und zusätzliche Informationen aus umgebenden Pixeln werden durch Anwendung einer Glättungsfunktion auf das Bild integriert.
+ Die Funktion zur Erkennung benannter Entitäten clustert ausgewählten Text nach Jaccard-Ähnlichkeit und berechnet Auswahlgrenzen basierend auf dem Modus bzw. auf dem Median, wenn der Modus nicht eindeutig ist. Die Bezeichnung wird zur am häufigsten zugewiesenen Entity-Bezeichnung im Cluster aufgelöst. Dadurch werden Bindungen durch zufällige Auswahl aufgebrochen.

Sie können andere Algorithmen verwenden, um Anmerkungen zu konsolidieren. Weitere Informationen finden Sie unter [Erstellen einer Funktion zur Anmerkungskonsolidierung](consolidation-lambda.md). 

# Erstellen einer Funktion zur Anmerkungskonsolidierung
<a name="consolidation-lambda"></a>

Sie können auf Wunsch Ihre eigene Anmerkungskonsolidierungsfunktion verwenden, um die endgültigen Kennzeichnungen für die gekennzeichneten Objekte zu bestimmen. Es gibt viele mögliche Ansätze zum Schreiben einer Funktion, und der von Ihnen gewählte Ansatz hängt von der Art der Anmerkungen ab, die zu konsolidieren sind. Grob gesagt sollten Konsolidierungsfunktionen die Anmerkungen von Workern betrachten, die zwischen ihnen bestehende Ähnlichkeit messen und dann durch eine Art probabilistische Beurteilung bestimmen, was die wahrscheinlichste Kennzeichnung sein sollte.

Wenn Sie andere Algorithmen zum Erstellen von Anmerkungskonsolidierungsfunktionen verwenden möchten, finden Sie die Reaktionen von Workern im `[project-name]/annotations/worker-response`-Ordner des Amazon–S3-Buckets, in den Sie die Auftragsausgabe leiten.

## Bewerten der Ähnlichkeit
<a name="consolidation-assessing"></a>

Zum Beurteilen der Ähnlichkeit zwischen Kennzeichnungen können Sie eine der folgenden Strategien verwenden oder eine Strategie, die Ihren Daten-Labeling-Anforderungen entspricht:
+ Für Kennzeichnungsbereiche, die aus separaten, sich gegenseitig ausschließenden Kategorien bestehen (wie die Mehrklassen-Klassifizierung), kann sich die Ähnlichkeitsbeurteilung als recht unkompliziert erweisen. Einzelne Kennzeichnungen stimmen entweder überein oder nicht. 
+ Für Kennzeichnungsbereiche ohne klar abgegrenzte Werte (wie Begrenzungsrahmen-Anmerkungen) muss ein breiteres Maß für die Ähnlichkeit gefunden werden. Im Fall von Begrenzungsrahmen ist der Jaccard-Koeffizient ein solches Maß. Damit wird das Verhältnis zwischen der Schnittmenge zweier Begrenzungsrahmen und der Vereinigungsmenge der Begrenzungsrahmen ermittelt, um zu beurteilen, wie ähnlich sie sind. Beispiel: Bei drei Anmerkungen kann anhand einer Funktion bestimmt werden, welche Anmerkungen dasselbe Objekt darstellen und konsolidiert werden können.

## Bewerten der wahrscheinlichsten Kennzeichnung
<a name="consolidation-probable-label"></a>

Nehmen Sie anhand der in den vorherigen Abschnitten erläuterten Strategien eine probabilistische Beurteilung vor, um zu bestimmen, welche konsolidierte Kennzeichnung verwendet werden sollte. Im Falle separater, sich gegenseitig ausschließender Kategorien kann sich das als recht unkompliziert erweisen. Eine der gängigsten Methoden hierfür besteht in der Betrachtung der Ergebnisse eines Mehrheitsbeschlusses zwischen den Anmerkungen. Dabei werden die Anmerkungen gleich gewichtet. 

Bei einigen Ansätzen wird versucht, die Genauigkeit unterschiedlicher Ersteller von Anmerkungen abzuschätzen und deren Anmerkungen in Relation zur Korrektheitswahrscheinlichkeit zu gewichten. Ein Beispiel dafür ist die Expectation Maximization Methode, die in der Standard-Ground-Truth-Konsolidierungsfunktion für mehrklassige Anmerkungen verwendet wird. 

Weitere Informationen zur Erstellung einer Anmerkungskonsolidierungsfunktion finden Sie unter [Verarbeitung von Daten in einem benutzerdefinierten Etikettierungs-Workflow mit AWS Lambda](sms-custom-templates-step3.md).

# Automatisieren des Daten-Labeling
<a name="sms-automated-labeling"></a>

Wenn Sie möchten, kann Amazon SageMaker Ground Truth aktives Lernen verwenden, um die Kennzeichnung Ihrer Eingabedaten für bestimmte integrierte Aufgabentypen zu automatisieren. *Aktives Lernen* ist eine Machine-Learning-Methode, mit der Daten identifiziert werden, die von Ihren Workern gekennzeichnet werden sollten. In Ground Truth wird diese Funktionalität als automatisches Daten-Labeling bezeichnet. Das automatische Daten-Labeling trägt dazu bei, erforderliche Kosten und Zeit für die Kennzeichnung Ihres Datasatzes im Vergleich zur ausschließlichen Verwendung von Menschen zu reduzieren. Wenn Sie die automatische Kennzeichnung verwenden, fallen für Sie SageMaker Schulungs- und Inferenzkosten an. 

Es wird empfohlen, ein automatisches Daten-Labeling für große Datensätze zu verwenden, da die neuronalen Netzwerke, die mit aktivem Lernen verwendet werden, für jeden neuen Datensatz eine erhebliche Menge an Daten benötigen. Wenn Sie mehr Daten bereitstellen, sind Prognosen hoher Genauigkeit wahrscheinlicher. Daten werden nur dann automatisch gekennzeichnet, wenn das neuronale Netzwerk, das im Modell des automatischen Labeling verwendet wird, eine akzeptabel hohe Genauigkeit erreichen kann. Daher besteht bei größeren Datensätzen eher die Möglichkeit, dass die Daten automatisch gekennzeichnet werden, da das neuronale Netzwerk eine ausreichend hohe Genauigkeit für die automatische Kennzeichnung erreichen kann. Automatisches Daten-Labeling ist am besten geeignet, wenn Sie Tausende von Datenobjekten haben. Die minimale Anzahl von Objekten, die für das automatische Daten-Labeling zulässig ist, beträgt 1.250, aber wir empfehlen dringend, mindestens 5.000 Objekte bereitzustellen.

Das automatische Daten-Labeling ist nur für die folgenden in Ground Truth integrierten Algorithmen verfügbar: 
+ [Erstellen eines Bildklassifizierungsjobs (Single-Label)](sms-image-classification.md)
+ [Identifizieren von Bildinhalten anhand der semantischen Segmentierung](sms-semantic-segmentation.md)
+ Objekterkennung ([Klassifizieren von Bildobjekten mithilfe eines Begrenzungsrahmens](sms-bounding-box.md))
+ [Kategorisieren von Text anhand der Textklassifizierung (Single-Label)](sms-text-classification.md)

[Streaming-Kennzeichnungsaufträge](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html) unterstützen kein automatisches Daten-Labeling.

Wie Sie einen benutzerdefinierten Workflow für aktives Lernen unter Verwendung Ihres eigenen Modells erstellen, erfahren Sie unter [Einrichten eines Workflows für aktives Lernen mit Ihrem eigenen Modell ein](#samurai-automated-labeling-byom).

Eingabedatenkontingente gelten für Aufträge des automatischen Daten-Labeling. Informationen zur Datensatzgröße, Eingabedatengröße und Auflösungsgrenzen finden Sie unter [Eingabedatenkontingente](input-data-limits.md).

**Anmerkung**  
Bevor Sie ein Modell mit automatischem Labeling in der Produktion verwenden, müssen Sie es optimieren und/oder testen. Sie können das Modell für den von Ihrem Kennzeichnungsauftrag erstellten Datensatz optimieren (oder ein anderes überwachtes Modell Ihrer Wahl erstellen und optimieren), um die Architektur und die Hyperparameter des Modells zu optimieren. Wenn Sie sich für das Modell für eine Inferenz ohne Optimierung entscheiden, empfehlen wir nachdrücklich, seine Genauigkeit unbedingt bei einer repräsentativen (z. B. zufällig ausgewählten) Teilmenge des mit Ground Truth kennzeichneten Datensätze auszuwerten und sicherzustellen, dass es Ihren Erwartungen entspricht.

## Funktionsweise
<a name="sms-automated-labeling-how-it-works"></a>

Sie aktivieren das automatische Daten-Labeling, wenn Sie einen Kennzeichnungsauftrag erstellen. Es funktioniert so:

1. Wenn Ground Truth einen Auftrag zum automatischen Daten-Labeling startet, wählt das System eine zufällige Stichprobe von Eingabedatenobjekten aus und sendet sie an menschliche Mitarbeiter. Wenn mehr als 10 % dieser Datenobjekte ausfallen, schlägt der Kennzeichnungsauftrag fehl. Wenn der Kennzeichnungsauftrag fehlschlägt, überprüfen Sie nicht nur alle Fehlermeldungen, die Ground Truth zurückgibt, sondern überprüfen Sie auch, ob Ihre Eingabedaten auf der Worker-Benutzeroberfläche korrekt angezeigt werden, die Anweisungen klar sind und ob Sie Workern genügend Zeit gegeben haben, um Aufgaben zu erledigen.

1. Wenn die beschrifteten Daten zurückgegeben werden, werden sie zur Erstellung eines Trainingssatzes und eines Validierungssatzes verwendet. Ground Truth trainiert und überprüft anhand dieser Datensätze das für die automatische Kennzeichnung verwendete Modell.

1. Ground Truth führt einen Batch-Transformationsauftrag aus, wobei das validierte Modell zur Inferenz für die Validierungsdaten verwendet wird. Die Batch-Inferenz erzeugt eine Konfidenzbewertung und Qualitätsmetrik für jedes Objekt in den Validierungsdaten.

1. Das automatische Labeling erstellt anhand dieser Qualitätsmetriken und Konfidenzbewertungen einen *Schwellenwert für Konfidenzbewertungen*, mit dem hochwertige Kennzeichnungen gewährleistet werden. 

1. Ground Truth führt einen Batch-Transformationsauftrag für die nicht gekennzeichneten Daten im Datensatz aus, wobei dasselbe validierte Modell für die Inferenz verwendet wird. Dies führt zu einem Konfidenzwert für jedes Objekt. 

1. Die automatische Labeling-Komponente in Ground Truth bestimmt, ob der in Schritt 5 für jedes Objekt erstellte Konfidenzwert den in Schritt 4 festgestellten erforderlichen Schwellenwert erfüllt. Wenn der Konfidenzwert den Schwellenwert erfüllt, überschreitet die erwartete Qualität des automatischen Labeling den angeforderten Genauigkeitsgrad und dieses Objekt wird als automatisch gekennzeichnet angesehen. 

1. In Schritt 6 wird ein Datensatz mit nicht gekennzeichneten Daten mit Konfidenzwerten erstellt. Ground Truth wählt Datenpunkte mit niedrigen Konfidenzwerten aus diesem Datensatz aus und sendet sie an menschliche Mitarbeiter. 

1. Ground Truth verwendet die vorhandenen durch Menschen gekennzeichneten Daten und diese zusätzlichen kennzeichneten Daten von menschlichen Mitarbeitern, um das Modell zu aktualisieren.

1. Der Vorgang wird wiederholt, bis der Datensatz vollständig gekennzeichnet ist oder bis eine andere Stoppbedingung erfüllt ist. Das automatische Labeling wird beispielsweise gestoppt, wenn Ihr Budget für Anmerkungen durch Menschen erreicht ist.

Die vorherigen Schritte erfolgen in einer Schleife. Wählen Sie jede Registerkarte in der folgenden Tabelle aus, um ein Beispiel für die Prozesse anzuzeigen, die in jeder Iteration für einen automatisierten Kennzeichnungsauftrag zur Objekterkennung ablaufen. Die Anzahl der in einem bestimmten Schritt in diesen Bildern verwendeten Datenobjekte (z. B. 200) gilt speziell für dieses Beispiel. Wenn weniger als 5.000 Objekte gekennzeichnet werden müssen, entspricht die Größe des Validierungssatzes 20 % des gesamten Datensatzes. Wenn Ihr Eingabedatensatz mehr als 5.000 Objekte enthält, entspricht die Größe des Validierungssatzes 10 % des gesamten Datensatzes. Sie können die Anzahl der pro aktiver Lerniteration gesammelten menschlichen Kennzeichnungen steuern, indem Sie den Wert für [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) ändern, wenn Sie die API-Operation [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html) verwenden. Dieser Wert wird auf 1.000 festgelegt, wenn Sie einen Kennzeichnungsauftrag mit der Konsole erstellen. Im Workflow für aktives Lernen, der auf der Registerkarte **Aktives Lernen** dargestellt ist, ist dieser Wert auf 200 festgelegt.

------
#### [ Model Training ]

![\[Beispielprozess für das Modelltraining\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/auto-labeling/sagemaker-gt-annotate-data-3.png)


------
#### [ Automated Labeling ]

![\[Beispielprozess für automatisiertes Kennzeichnen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/auto-labeling/sagemaker-gt-annotate-data-4.png)


------
#### [ Active Learning ]

![\[Beispielprozess für aktives Lernen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/auto-labeling/sagemaker-gt-annotate-data-5.png)


------

### Genauigkeit automatisierter Kennzeichnungen
<a name="sms-automated-labeling-accuracy"></a>

Die Definition für *Genauigkeit* hängt vom integrierten Aufgabentyp ab, den Sie beim automatisierten Labeling verwenden. Für alle Aufgabentypen sind diese Genauigkeitsanforderungen von Ground Truth im Voraus festgelegt und können nicht manuell konfiguriert werden.
+ Für die Bildklassifizierung und Textklassifizierung verwendet Ground Truth Logik, um ein Konfidenzniveau für die Kennzeichnungsvoraussage zu ermitteln, das einer Kennzeichnungsgenauigkeit von mindestens 95 % entspricht. Dies bedeutet, dass Ground Truth erwartet, dass die Genauigkeit der automatisierten Kennzeichnungen im Vergleich zu den Kennzeichnungen, die menschliche Mitarbeiter für diese Beispiele bereitstellen würden, mindestens 95 % beträgt.
+ Bei Begrenzungsrahmen liegt der erwartete Mittelwert für [Schnittmenge über Vereinigungsmenge, Intersection over Union (IoU)](https://www.pyimagesearch.com/2016/11/07/intersection-over-union-iou-for-object-detection/) der automatisch gekennzeichneten Bilder bei 0,6. Um den Mittelwert für IoU zu ermitteln, berechnet Ground Truth den mittleren IoU aller vorhergesagten und verpassten Rahmen im Bild für jede Klasse und berechnet dann den Durchschnitt dieser Werte für alle Klassen.
+ Für die semantische Segmentierung beträgt der erwartete Mittelwert für IoU der automatisch beschrifteten Bilder 0,7. Um den Mittelwert für IoU zu ermitteln, verwendet Ground Truth den Mittelwert der IoU-Werte aller Klassen im Bild (mit Ausnahme des Hintergrunds).

Bei jeder Iteration des aktiven Lernens (Schritte 3–6 in der obigen Liste) wird der Konfidenzschwellenwert mithilfe des von Menschen mit Anmerkungen versehenen Validierungssatzes ermittelt, sodass die erwartete Genauigkeit der automatisch gekennzeichneten Objekte bestimmte vordefinierte Genauigkeitsanforderungen erfüllt.

## Erstellen eines automatisierten Daten-Labeling-Jobs (Konsole)
<a name="sms-create-automated-labeling-console"></a>

Gehen Sie wie folgt vor, um einen Labeling-Job zu erstellen, der automatisiertes Labeling in der SageMaker AI-Konsole verwendet.

**So erstellen Sie einen Auftrag des automatischen Daten-Labeling (Konsole)**

1. Öffnen Sie den Bereich Ground Truth **Labeling-Jobs** der SageMaker AI-Konsole:[https://console.aws.amazon.com/sagemaker/groundtruth](https://console.aws.amazon.com/sagemaker/groundtruth).

1. Führen Sie nach der Anleitung unter [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md) die Schritte für **Job overview (Auftragsübersicht)** und **Task type (Aufgabentyp)** durch. Beachten Sie, dass das automatische Labeling für benutzerdefinierte Aufgabentypen nicht unterstützt wird.

1. Wählen Sie unter **Workers (Arbeitnehmer)** den Typ der Arbeitskräfte aus. 

1. Wählen Sie im selben Bereich **Enable automated data labeling (Automatisches Daten-Labeling aktivieren)** aus. 

1. Erstellen Sie [Konfigurieren des Tools für Begrenzungsrahmen](sms-getting-started.md#sms-getting-started-step4) als Leitfaden Anweisungen für Mitarbeiter im Abschnitt ***Task Type*Labeling-Tool**. Wenn Sie beispielsweise **Semantische Segmentierung** als Kennzeichnungsauftragstyp ausgewählt haben, wird dieser Abschnitt als **Kennzeichnungs-Tool für die semantische Segmentierung** bezeichnet.

1. Um eine Vorschau Ihrer Anweisungen für Worker und Ihres Dashboards anzuzeigen, wählen Sie **Preview (Vorschau)**.

1. Wählen Sie **Erstellen** aus. Dadurch wird Ihr Kennzeichnungsauftrag und der automatische Kennzeichnungsvorgang erstellt und gestartet. 

Sie können sehen, dass Ihr Labeling-Job im Bereich **Labeling-Jobs** der SageMaker AI-Konsole angezeigt wird. Die Ausgabedaten werden in dem Amazon-S3-Bucket angezeigt, den Sie beim Erstellen des Kennzeichnungsauftrags angegeben haben. Weitere Hinweise zum Format und der Dateistruktur der Ausgabedaten von Kennzeichnungsaufträgen finden Sie unter [Ausgabedaten von Kennzeichnungsaufträgen](sms-data-output.md).

## Erstellen eines automatisierten Daten-Labeling-Jobs (API)
<a name="sms-create-automated-labeling-api"></a>

Verwenden Sie den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobAlgorithmsConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobAlgorithmsConfig.html)Parameter des [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Vorgangs, um mithilfe der SageMaker API einen automatisierten Datenbeschriftungsauftrag zu erstellen. Informationen zum Starten eines Kennzeichnungsauftrags mithilfe der Operation `CreateLabelingJob` finden Sie unter [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md).

Geben Sie im [LabelingJobAlgorithmSpecificationArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobAlgorithmsConfig.html#SageMaker-Type-LabelingJobAlgorithmsConfig-LabelingJobAlgorithmSpecificationArn)Parameter den Amazon-Ressourcennamen (ARN) des Algorithmus an, den Sie für die automatische Datenbeschriftung verwenden. Wählen Sie einen der vier in Ground Truth integrierten Algorithmen aus, die für die automatische Kennzeichnung unterstützt werden:
+ [Erstellen eines Bildklassifizierungsjobs (Single-Label)](sms-image-classification.md)
+ [Identifizieren von Bildinhalten anhand der semantischen Segmentierung](sms-semantic-segmentation.md)
+ Objekterkennung ([Klassifizieren von Bildobjekten mithilfe eines Begrenzungsrahmens](sms-bounding-box.md)) 
+ [Kategorisieren von Text anhand der Textklassifizierung (Single-Label)](sms-text-classification.md)

Wenn ein Auftrag des automatischen Daten-Labeling abgeschlossen wird, gibt Ground Truth den ARN des Modells zurück, den es für den Auftrag des automatischen Daten-Labeling verwendet hat. Verwenden Sie dieses Modell als Startmodell für ähnliche Auftragstypen mit automatischer Kennzeichnung, indem Sie den ARN im Zeichenkettenformat im [InitialActiveLearningModelArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobAlgorithmsConfig.html#SageMaker-Type-LabelingJobAlgorithmsConfig-InitialActiveLearningModelArn)Parameter angeben. Verwenden Sie einen AWS Command Line Interface (AWS CLI) -Befehl, der dem folgenden ähnelt, um den ARN des Modells abzurufen. 

```
# Fetch the mARN of the model trained in the final iteration of the previous labeling job.Ground Truth
pretrained_model_arn = sagemaker_client.describe_labeling_job(LabelingJobName=job_name)['LabelingJobOutput']['FinalActiveLearningModelArn']
```

Um Daten auf dem Speichervolume zu verschlüsseln, das an die ML-Compute-Instanz (en) angehängt ist, die für die automatische Kennzeichnung verwendet werden, fügen Sie einen AWS Key Management Service (AWS KMS) -Schlüssel in den `VolumeKmsKeyId` Parameter ein. Informationen zu AWS KMS-Schlüsseln finden Sie unter [Was ist der AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)? im *AWS Key Management Service Developer Guide*.

Ein Beispiel, das den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)Vorgang verwendet, um einen automatisierten Datenbeschriftungsauftrag zu erstellen, finden Sie im Beispiel **object\$1detection\$1tutorial** im Abschnitt **SageMaker KI-Beispiele**, **Ground Truth Labeling-Jobs** einer KI-Notebook-Instanz. SageMaker Informationen zum Erstellen und Öffnen einer Notebook-Instance finden Sie unter [Erstellen Sie eine SageMaker Amazon-Notebook-Instance](howitworks-create-ws.md).

## Für das automatisierte Daten-Labeling erforderliche Amazon-EC2-Instances
<a name="sms-auto-labeling-ec2"></a>

In der folgenden Tabelle sind die Amazon Elastic Compute Cloud (Amazon EC2)-Instances aufgeführt, die Sie benötigen, um automatisches Daten-Labeling für Trainings- und Batch-Inferenzaufträge auszuführen.


| Auftragstyp des automatischen Daten-Labeling | Trainings-Instance-Typ | Inferenz-Instance-Typ | 
| --- | --- | --- | 
|  Bildklassifizierung  |  ml.p3.2xlarge\$1  |  ml.c5.xlarge  | 
|  Objekterkennung (Begrenzungsrahmen)  |  ml.p3.2xlarge\$1  |  ml.c5.4xlarge  | 
|  Textklassifizierung  |  ml.c5.2xlarge  |  ml.m4.xlarge  | 
|  Semantische Segmentierung  |  ml.p3.2xlarge\$1  |  ml.p3.2xlarge\$1  | 

\$1 In der Region Asien-Pazifik (Mumbai) (ap-south-1) verwenden Sie stattdessen ml.p2.8xlarge.

 Ground Truth verwaltet die Instances, die Sie für Aufträge des automatischen Daten-Labeling verwenden. Es erstellt, konfiguriert und beendet die Instances wie für die Ausführung Ihres Auftrags erforderlich. Diese Instances werden nicht in Ihrem Amazon-EC2-Instance-Dashboard angezeigt.

## Einrichten eines Workflows für aktives Lernen mit Ihrem eigenen Modell ein
<a name="samurai-automated-labeling-byom"></a>

Sie können einen Workflow für aktives Lernen mit Ihrem eigenen Algorithmus erstellen, um Trainings und Interferenzen in diesem Workflow durchzuführen, um Ihre Daten automatisch zu kennzeichnen. Das Notizbuch bring\$1your\$1own\$1model\$1for\$1sagemaker\$1labeling\$1workflows\$1with\$1active\$1learning.ipynb demonstriert dies mithilfe des integrierten KI-Algorithmus,. SageMaker [BlazingText](https://docs.aws.amazon.com/sagemaker/latest/dg/blazingtext.html) Dieses Notizbuch bietet einen Stapel, mit dem Sie diesen Workflow ausführen können. CloudFormation AWS Step Functions Sie finden das Notizbuch und die unterstützenden Dateien in diesem [GitHub Repository](https://github.com/awslabs/amazon-sagemaker-examples/tree/master/ground_truth_labeling_jobs/bring_your_own_model_for_sagemaker_labeling_workflows_with_active_learning).

# Verketten von Kennzeichnungsaufträgen
<a name="sms-reusing-data"></a>

Amazon SageMaker Ground Truth kann Datensätze aus früheren Jobs auf zwei Arten wiederverwenden: Klonen und Verketten.

Beim *Klonen* wird die Einrichtung des vorherigen Kennzeichnungsauftrags kopiert. Ihnen wird außerdem die Möglichkeit gegeben, weitere Änderungen daran vorzunehmen, bevor Sie ihn als auszuführend einstellen.

*Verkettung* verwendet nicht nur die Einrichtung des vorherigen Auftrags, sondern auch dessen Ergebnisse. So können Sie einen unvollständigen Auftrag fortsetzen und einem abgeschlossenen Auftrag Kennzeichnungen oder Datenobjekte hinzufügen. Die Verkettung ist eine komplexe Operation. 

Zur Datenverarbeitung: 
+  Beim Klonen verwendet das *Eingabe*-Manifest des vorherigen Auftrags mit optionalen Änderungen als Eingabemanifest des neuen Auftrags. 
+  Beim Verketten wird das *Ausgabe*-Manifestdatei des vorherigen Auftrags als Eingabemanifest des neuen Auftrags verwendet. 

Verkettung ist nützlich, wenn Sie Folgendes tun müssen:
+ Fortführung eines manuell gestoppten Kennzeichnungsauftrags.
+ Fortführung eines Kennzeichnungsauftrags, der mittendrin fehlschlug, nachdem Sie die Probleme behoben haben.
+ Wechsel zum automatischen Daten-Labeling, nachdem ein Teil des Auftrags manuell gekennzeichnet wurde (oder umgekehrt).
+ Hinzufügen weiterer Datenobjekte zu einem abgeschlossenen Auftrag und Starten des Auftrags ab diesem Punkt.
+ Hinzufügen weiterer Anmerkungen zu einem abgeschlossenen Auftrag. Beispiel: Sie haben eine Sammlung von Phrasen für ein Thema gekennzeichnet und möchten den Datensatz erneut ausführen und nach der voraussichtlichen Zielgruppe des Themas kategorisieren.

In Amazon SageMaker Ground Truth können Sie einen verketteten Labeling-Job entweder mit der Konsole oder der API konfigurieren.

## Schlüsselbegriff: Kennzeichnungsattributname
<a name="sms-reusing-data-LAN"></a>

Die Zeichenfolge des *Kennzeichnungsattributnamen* (`LabelAttributeName` in der API) wird als Schlüssel für das Schlüssel-Wert-Paar verwendet, das mit der Kennzeichnung gebildet wird, die ein Worker einem Datenobjekt zuweist.

Für den Kennzeichnungsattributnamen gelten die folgenden Regeln:
+ Er kann nicht mit `-metadata` enden.
+ Die Namen `source` und `source-ref` sind reserviert und dürfen nicht verwendet werden.
+ Bei Kennzeichnungsaufträgen zur semantischen Segmentierung muss er mit `-ref` enden. Für alle anderen Kennzeichnungsaufträge *kann er nicht* auf `-ref` enden. Wenn Sie die Konsole verwenden, um den Job zu erstellen, hängt Amazon SageMaker Ground Truth automatisch alle Label-Attributnamen `-ref` an, mit Ausnahme von semantischen Segmentierungsaufträgen.
+ Wenn Sie bei einem verketteten Kennzeichnungsauftrag den gleichen Kennzeichnungsattributnamen wie bei dem ursprünglichen Auftrag verwenden und den verketteten Auftrag für automatische Kennzeichnung konfigurieren, dann verwendet Ground Truth, sofern zu irgendeinem Zeitpunkt der Modus zur automatischen Kennzeichnung aktiv war, das Modell des ursprünglichen Auftrags.

In einem Ausgabemanifest wird der Kennzeichnungsattributname ähnlich dem folgenden angezeigt.

```
  "source-ref": "<S3 URI>",
  "<label attribute name>": {
    "annotations": [{
      "class_id": 0,
      "width": 99,
      "top": 87,
      "height": 62,
      "left": 175
    }],
    "image_size": [{
      "width": 344,
      "depth": 3,
      "height": 234
    }]
  },
  "<label attribute name>-metadata": {
    "job-name": "<job name>",
    "class-map": {
      "0": "<label attribute name>"
    },
    "human-annotated": "yes",
    "objects": [{
      "confidence": 0.09
    }],
    "creation-date": "<timestamp>",
    "type": "groundtruth/object-detection"
  }
```

Wenn Sie beim Erstellen eines Auftrags in der Konsole nicht explizit einen Wert für den Kennzeichnungsattributnamen festlegen, verwendet Ground Truth den Auftragsnamen als Kennzeichnungsattributnamen des Auftrags.

## Starten eines verketteten Jobs (Konsole)
<a name="sms-reusing-data-console"></a>

Wählen Sie einen angehaltenen, fehlgeschlagenen oder abgeschlossenen Kennzeichnungsauftrag aus der Liste der vorhandenen Aufträge aus. Das Menü **Actions (Aktionen)** wird aktiviert.

Wählen Sie im Menü **Actions (Aktionen)** die Option **Chain (Verketten)** aus.

### Auftragsübersicht
<a name="sms-reusing-data-console-job-panel"></a>

Im Bereich **Job overview (Auftragsübersicht)** wird ein neuer **Job name (Auftragsname)** basierend auf dem Auftragstitel festgelegt, auf dem diese Verkettung basiert. Er kann angepasst werden.

Sie können auch einen anderen Kennzeichnungsattributnamen als den Namen des Kennzeichnungsauftrags verwenden.

Wenn Sie eine Verkettung aus einem abgeschlossenen Auftrag erstellen, wird als Kennzeichnungsattributname der Name des neu konfigurierten Auftrags verwendet. Aktivieren Sie das Kontrollkästchen, um den Namen zu ändern.

Wenn Sie eine Verkettung aus einem angehaltenen oder fehlgeschlagenen Auftrag erstellen, wird als Kennzeichnungsattributname der Name des Auftrags verwendet, von dem aus die Verkettung erstellt wird. Der Wert kann einfach angezeigt und bearbeitet werden, da das Namenskontrollkästchen aktiviert ist.

**Überlegungen zur Benennung der Attributskennzeichnung**  
**Standardmäßig** wird der von Ground Truth ausgewählte Kennzeichnungsattributname verwendet. Alle Datenobjekte, die nicht mit diesem Kennzeichnungsattributnamen verknüpft sind, werden gekennzeichnet.
Die **Verwendung eines Kennzeichnungsattributnamens**, der nicht im Manifest vorhanden ist, führt dazu, dass *alle* Objekte im Datensatz verarbeitet werden.

Der **Speicherort des Eingabedatensatzes** wird in diesem Fall automatisch als Ausgabemanifest des verketteten Auftrags ausgewählt. Das Eingabefeld ist nicht verfügbar und kann somit auch nicht geändert werden.

**Hinzufügen von Datenobjekten zu einem Kennzeichnungsauftrag**  
Sie können keine alternative Manifestdatei angeben. Bearbeiten Sie die Ausgabemanifestdatei des vorherigen Auftrags manuell, um neue Elemente hinzuzufügen, bevor Sie einen verketteten Auftrag starten. Anhand der Amazon-S3-URI können Sie den Speicherort der Manifestdatei in Ihrem Amazon-S3-Bucket finden. Laden Sie die Manifestdatei dort herunter, bearbeiten Sie sie lokal auf Ihrem Computer und laden Sie die neue Version wieder hoch. Achten Sie darauf, beim Bearbeiten keine Fehler einzubauen. Wir empfehlen, Ihre JSON-Datei mit JSON Linter zu überprüfen. Viele beliebte Texteditoren und IDEs verfügen über Linter-Plugins.

## Starten eines verketteten Jobs (API)
<a name="sms-reusing-data-API"></a>

Das Verfahren ist nahezu identisch mit dem Einrichten eines neuen Kennzeichnungsauftrags mit `CreateLabelingJob`, bis auf zwei wesentliche Unterschiede:
+ **Speicherort des Manifests:** Statt das ursprüngliche Manifest des vorherigen Auftrags zu verwenden, sollte der Wert für die `ManifestS3Uri` in `DataSource` auf die Amazon-S3-URI des *Ausgabemanifests* des vorherigen Kennzeichnungsauftrags verweisen.
+ **Kennzeichnungsattributname:** Es ist wichtig, hier den korrekten Wert für `LabelAttributeName` festzulegen. Dies ist der Schlüssel des Schlüssel-Wert-Paars, wobei die Kennzeichnungsdaten der Wert sind. Beispiel-Anwendungsfälle umfassen:
  + **Hinzufügen neuer oder spezifischerer Kennzeichnungen zu einem abgeschlossenen Auftrag** – Geben Sie einen neuen Kennzeichnungsattributnamen ein.
  + **Kennzeichnen der nicht gekennzeichneten Artikel aus einem früheren Auftrag** – Verwenden Sie den Kennzeichnungsattributnamen aus dem vorherigen Auftrag.

## Verwenden eines teilweise gekennzeichneten Datensatzes
<a name="sms-reusing-data-newdata"></a>

Sie profitieren von der Verkettung, wenn Sie ein erweitertes, bereits teilweise gekennzeichnetes Manifest verwenden. Aktivieren Sie das Kontrollkästchen **Label attribute name (Kennzeichnungsattributwert)** und legen Sie den Namen so fest, dass er mit dem Namen in Ihrem Manifest übereinstimmt.

Befolgen Sie bei Verwendung der API dieselben Anweisungen wie beim Starten eines verketteten Auftrags. Achten Sie jedoch darauf, dass Sie das Manifest in einen Amazon-S3-Bucket hochladen und dieses anstelle des Ausgabemanifests des vorherigen Auftrags verwenden.

Der Wert **Kennzeichnungsattributname** in der Manifestdatei muss mit den oben genannten Überlegungen zur Namensgebung übereinstimmen.

# Ground Truth: Sicherheit und Berechtigungen
<a name="sms-security-general"></a>

Anhand der auf dieser Seite besprochenen Themen erfahren Sie etwas über die Sicherheitsfunktionen von Ground Truth und darüber, wie Sie AWS Identity and Access Management (IAM-)Berechtigungen konfigurieren können, damit ein Benutzer oder eine Rolle einen Kennzeichnungsauftrag erstellen kann. Erfahren Sie außerdem, wie Sie eine *Ausführungsrolle* erstellen. Eine Ausführungsrolle ist die Rolle, die Sie angeben, wenn Sie einen Kennzeichnungsauftrag erstellen. Diese Rolle dient dazu, Ihren Kennzeichnungsauftrag zu starten.

Wenn Sie ein neuer Benutzer sind und schnell loslegen möchten, oder wenn Sie keine detaillierten Berechtigungen brauchen, lesen Sie unter [Verwendung von IAM-verwalteten Richtlinien zusammen mit Ground Truth](sms-security-permissions-get-started.md) weiter.

Weitere Informationen über IAM-Benutzer und -Rollen finden Sie unter [Identitäten (Benutzer, Gruppen und Rollen)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) im IAM-Benutzerhandbuch. 

Weitere Informationen zur Verwendung von IAM mit SageMaker KI finden Sie unter[AWS Identity and Access Management für Amazon SageMaker AI](security-iam.md).

**Topics**
+ [CORS-Anforderung für Eingabebilddaten](sms-cors-update.md)
+ [IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen](sms-security-permission.md)
+ [Verwendung von Amazon SageMaker Ground Truth in einer Amazon Virtual Private Cloud](sms-vpc.md)
+ [Verschlüsselung von Ausgabedaten und Speicher-Volumes](sms-security.md)
+ [Authentifizierung der Arbeitskräfte und Einschränkungen](sms-security-workforce-authentication.md)

# CORS-Anforderung für Eingabebilddaten
<a name="sms-cors-update"></a>

Anfang 2020 wurde das Standardverhalten weit verbreiteter Browser wie Chrome und Firefox für das Rotieren von Bildern anhand von Bildmetadaten, den sogenannten [EXIF-Daten](https://en.wikipedia.org/wiki/Exif), geändert. Bis dahin zeigten Browser Bilder immer genau so an, wie sie auf der Festplatte gespeichert waren, normalerweise also nicht gedreht. Seit der Änderung werden Bilder jetzt gedreht, und zwar abhängig von einem Teil der Bildmetadaten, der als *Orientierungswert* bezeichnet wird. Dies hat erhebliche Auswirkungen für die gesamte Machine Learning Community (ML). Wenn beispielsweise Anwendungen, die Bilder kommentieren, die EXIF-Ausrichtung nicht berücksichtigen, können die Bilder in unerwarteter Ausrichtung erscheinen. Das führt dazu, dass die Bilder falsch beschriftet werden. 

Ab Chrome 89 AWS kann die Rotation von Bildern nicht mehr automatisch verhindert werden, da die Webstandardgruppe W3C entschieden hat, dass die Möglichkeit, die Rotation von Bildern zu kontrollieren, gegen die Same-Origin-Richtlinie des Webs verstößt. Um daher sicherzustellen, dass Mitarbeiter (d. h. Menschen), die die von Ihnen eingegebenen Bilder in vorhersehbarer Ausrichtung kommentieren, wenn Sie einen Kennzeichnungsauftrag beantragen, müssen Sie eine CORS-Header-Richtlinie zu den Amazon-S3-Buckets hinzufügen, die die von Ihnen eingegebenen Bilder enthalten.

**Wichtig**  
Wenn Sie zu den Amazon-S3-Buckets, die Ihre Eingabedaten enthalten, keine CORS-Konfiguration hinzufügen, schlagen die Labeling-Aufgaben für diese Eingabedatenobjekte fehl.

Wenn Sie einen Auftrag über die Ground-Truth-Konsole erstellen, ist CORS standardmäßig aktiviert. Wenn sich Ihre Eingabedaten *nicht* alle in demselben Amazon-S3-Bucket befinden wie Ihre Eingabe-Manifest-Datei, müssen Sie zu allen Amazon-S3-Buckets, die Eingabedaten enthalten, mit Hilfe der folgenden Anweisungen eine CORS-Konfiguration hinzufügen.

Wenn Sie mit Hilfe der `CreateLabelingJob` API einen Ground-Truth-Labeling-Auftrag erstellen, können Sie zu einem Amazon-S3-Bucket, der in der S3-Konsole Eingabedaten enthält, eine CORS-Richtlinie hinzufügen. Um die erforderlichen CORS-Header im Amazon-S3-Bucket festzulegen, die die von Ihnen eingegebenen Bilder in der Amazon S3-Konsole enthalten, folgen Sie den Anweisungen unter [Wie füge ich mit CORS eine domainübergreifende Ressourcenfreigabe hinzu?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html). Verwenden Sie den folgenden CORS-Konfigurationscode für die Buckets, in denen Ihre Bilder gehostet sind. Wenn Sie die Amazon S3-Konsole verwenden, um die Richtlinie zu Ihrem Bucket hinzuzufügen, müssen Sie das JSON-Format verwenden.

**Wichtig**  
Wenn Sie einen Kennzeichnungsauftrag mit 3D-Punktwolke oder Video-Frame erstellen, müssen Sie zusätzliche Regeln zu Ihrer CORS-Konfiguration hinzufügen. Weitere Informationen hierzu finden Sie unter [Berechtigungsvoraussetzungen für 3D-Punktwolken-Kennzeichnungsjobs](sms-security-permission-3d-point-cloud.md) bzw. [Anforderungen an die Genehmigung von Video-Frame-Aufträgen](sms-video-overview.md#sms-security-permission-video-frame). 

**JSON**

```
[{
   "AllowedHeaders": [],
   "AllowedMethods": ["GET"],
   "AllowedOrigins": ["*"],
   "ExposeHeaders": ["Access-Control-Allow-Origin"]
}]
```

**XML**

```
<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>*</AllowedOrigin>
   <AllowedMethod>GET</AllowedMethod>
   <ExposeHeader>Access-Control-Allow-Origin</ExposeHeader>
 </CORSRule>
</CORSConfiguration>
```

Das folgende GIF zeigt die Anweisungen, die in der Amazon S3-Dokumentation zu finden sind. Dabei geht es darum, eine mithilfe der Amazon S3-Konsole CORS-Header-Richtlinie hinzuzufügen. Eine schriftliche Anleitung finden Sie unter **Verwendung der Amazon S3-Konsole** auf der Seite [So fügen Sie mit CORS die domainübergreifende gemeinsame Ressourcennutzung hinzu](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html) der Dokumentation im Benutzerhandbuch zum Amazon Simple Storage Service.

![\[GIF zum Hinzufügen einer CORS-Header-Richtlinie über die Amazon-S3-Konsole\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/cors-config.gif)


# IAM-Berechtigungen zur Verwendung von Ground Truth zuweisen
<a name="sms-security-permission"></a>

In den Themen in diesem Abschnitt erfahren Sie, wie Sie verwaltete und benutzerdefinierte AWS Identity and Access Management (IAM) -Richtlinien verwenden, um den Zugriff auf Ground Truth und zugehörige Ressourcen zu verwalten. 

In den Abschnitten auf dieser Seite können Sie sich darüber informieren, wie: 
+ Sie IAM-Richtlinien erstellen, die einem Benutzer oder einer Rolle die Berechtigung gewähren, einen Kennzeichnungsauftrag zu erstellen. Administratoren können IAM-Richtlinien verwenden, um den Zugriff auf Amazon SageMaker AI und andere AWS Dienste, die für Ground Truth spezifisch sind, einzuschränken.
+ So erstellen Sie eine SageMaker *KI-Ausführungsrolle*. Eine Ausführungsrolle ist die Rolle, die Sie angeben, wenn Sie einen Kennzeichnungsauftrag erstellen. Die Rolle dient dazu, Ihren Kennzeichnungsauftrag zu starten und zu verwalten.

Nachfolgend finden Sie eine Übersicht über die Themen auf dieser Seite: 
+ Wenn Sie Ground Truth zu verwenden beginnen oder keine detaillierten Berechtigungen für Ihren Anwendungsfall brauchen, wird empfohlen, die unter [Verwendung von IAM-verwalteten Richtlinien zusammen mit Ground Truth](sms-security-permissions-get-started.md) beschriebenen IAM-verwalteten Richtlinien zu verwenden.
+ Erfahren Sie mehr über die für die Nutzung der Ground-Truth-Konsole in [Erteilen Sie IAM-Berechtigungen zur Nutzung der Amazon SageMaker Ground Truth Console](sms-security-permission-console-access.md)erforderlichen Berechtigungen. Dieser Abschnitt enthält Richtlinienbeispiele, die einer IAM-Entität die Berechtigung erteilen, private Arbeitsteams zu erstellen und zu ändern, Arbeitsteams von Anbietern zu abonnieren und benutzerdefinierte Kennzeichnungs-Workflows zu erstellen.
+ Wenn Sie einen Kennzeichnungsauftrag erstellen, müssen Sie eine Ausführungsrolle bereitstellen. Verwenden Sie [Erstellen Sie eine SageMaker KI-Ausführungsrolle für einen Ground-Truth-Labeling-Job](sms-security-permission-execution-role.md), um mehr über die für diese Rolle erforderlichen Berechtigungen zu erfahren.

# Verwendung von IAM-verwalteten Richtlinien zusammen mit Ground Truth
<a name="sms-security-permissions-get-started"></a>

SageMaker KI und Ground Truth bieten AWS verwaltete Richtlinien, mit denen Sie einen Labeling-Job erstellen können. Wenn Sie Ground Truth erstmals verwenden und keine detaillierten Berechtigungen für Ihren Anwendungsfall brauchen, wird empfohlen, die folgenden Richtlinien zu verwenden:
+ `[AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess)` – Verwenden Sie diese Richtlinie, um einem Benutzer oder einer Rolle die Berechtigung zu erteilen, einen Kennzeichnungsauftrag zu erstellen. Dabei handelt es sich um eine weit gefasste Richtlinie, die einer Entität die Erlaubnis erteilt, SageMaker KI-Funktionen sowie Funktionen der erforderlichen AWS Dienste über die Konsole und die API zu nutzen. Diese Richtlinie erteilt der Entität die Berechtigung, mithilfe von Amazon Cognito einen Kennzeichnungsauftrag zu erstellen und Belegschaften einzurichten und zu verwalten. Weitere Informationen finden Sie unter [AmazonSageMakerFullAccess Richtlinie](https://docs.aws.amazon.com/sagemaker/latest/dg/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonSageMakerFullAccess).
+ `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)`- Um eine *Ausführungsrolle* zu erstellen, können Sie die Richtlinie `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)` einer Rolle zuordnen. Eine Ausführungsrolle ist die Rolle, die Sie angeben, wenn Sie einen Kennzeichnungsauftrag erstellen. Sie dient dazu, Ihren Kennzeichnungsauftrag zu starten. Mit Hilfe dieser Richtlinie können Sie Kennzeichnungsaufträge mit und ohne Streaming sowie solche mit beliebigem Aufgabentyp erstellen. Beachten Sie bitte die folgenden Einschränkungen dieser verwalteten Richtlinie.
  + **Amazon S3-Berechtigungen**: Diese Richtlinie gewährt einer Ausführungsrolle die Berechtigung für den Zugriff auf Amazon-S3-Buckets mit den folgenden Zeichenfolgen im Namen: `GroundTruth`, `Groundtruth`, `groundtruth`, `SageMaker`, `Sagemaker` und `sagemaker` oder einen Bucket mit einer [Objekt-Markierung](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html), die `SageMaker` im Namen enthält (Groß- und Kleinschreibung spielt dabei keine Rolle). Achten Sie darauf, dass die Namen Ihrer Eingabe- und Ausgabe-Buckets diese Zeichenfolgen enthalten, oder fügen Sie zu Ihrer Ausführungsrolle zusätzliche Berechtigungen hinzu, um ihr [die Berechtigung für den Zugriff auf Ihre Amazon-S3-Buckets zu gewähren](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_s3_rw-bucket.html). Sie müssen dieser Rolle die Berechtigung erteilen, an Ihren Amazon-S3-Buckets die folgenden Aktionen durchzuführen: `AbortMultipartUpload`, `GetObject` und `PutObject`.
  + **Benutzerdefinierte Workflows**: Wenn Sie einen [benutzerdefinierten Label-Workflow](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html) erstellen, ist diese Ausführungsrolle darauf beschränkt, AWS Lambda Funktionen mit einer der folgenden Zeichenfolgen als Teil des Funktionsnamens aufzurufen:`GtRecipe`,`SageMaker`, `Sagemaker``sagemaker`, oder`LabelingFunction`. Dies gilt sowohl für Ihre Lambda-Funktionen zur Vorverarbeitung als auch zur Nachbereitung. Wenn Sie Namen ohne diese Zeichenfolgen verwenden möchten, müssen Sie der Ausführungsrolle, mit der Sie den Kennzeichnungsauftrag erstellen, die entsprechende `lambda:InvokeFunction` Berechtigung eigens erteilen.

Informationen zum Anhängen einer AWS verwalteten Richtlinie an einen Benutzer oder eine Rolle finden Sie unter [Hinzufügen und Entfernen von IAM-Identitätsberechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html#add-policies-console) im IAM-Benutzerhandbuch.

# Erteilen Sie IAM-Berechtigungen zur Nutzung der Amazon SageMaker Ground Truth Console
<a name="sms-security-permission-console-access"></a>

Um den Ground-Truth-Bereich der SageMaker KI-Konsole nutzen zu können, müssen Sie einer Entität die Erlaubnis erteilen, auf SageMaker KI und andere AWS Dienste zuzugreifen, mit denen Ground Truth interagiert. Die erforderlichen Berechtigungen für den Zugriff auf andere AWS Dienste hängen von Ihrem Anwendungsfall ab: 
+ Amazon S3-Berechtigungen sind für alle Anwendungsfälle erforderlich. Diese Berechtigungen müssen den Zugriff auf die Amazon-S3-Buckets gewähren, die Eingabe- und Ausgabedaten enthalten. 
+ AWS Marketplace Für den Einsatz von Mitarbeitern eines Anbieters sind Berechtigungen erforderlich.
+ Für die Einrichtung eines privaten Arbeitsteams ist eine Amazon Cognito-Berechtigung erforderlich.
+ AWS KMS Zum Anzeigen verfügbarer AWS KMS Schlüssel, die für die Verschlüsselung der Ausgabedaten verwendet werden können, sind Berechtigungen erforderlich.
+ Um bereits vorhandene Ausführungsrollen aufzulisten oder eine neue zu erstellen sind IAM-Berechtigungen erforderlich. Darüber hinaus müssen Sie die Option „`PassRole`Berechtigung hinzufügen“ verwenden, damit SageMaker KI die Ausführungsrolle verwenden kann, die ausgewählt wurde, um den Labeling-Job zu starten.

In den folgenden Abschnitten sind Richtlinien aufgeführt, die Sie einer Rolle ggf. zuweisen sollten, um eine oder mehrere Funktionen von Ground Truth zu nutzen. 

**Topics**
+ [Konsolenberechtigungen für Ground Truth](#sms-security-permissions-console-all)
+ [Workflow-Berechtigungen für benutzerdefinierte Kennzeichnungsaufträge](#sms-security-permissions-custom-workflow)
+ [Berechtigungen für private Arbeitskräfte](#sms-security-permission-workforce-creation)
+ [Berechtigungen der Arbeitskräfte von Anbietern](#sms-security-permissions-workforce-creation-vendor)

## Konsolenberechtigungen für Ground Truth
<a name="sms-security-permissions-console-all"></a>

Um einem Benutzer oder einer Rolle die Erlaubnis zu erteilen, den Ground Truth Truth-Bereich der SageMaker KI-Konsole zur Erstellung eines Labeling-Jobs zu verwenden, fügen Sie dem Benutzer oder der Rolle die folgende Richtlinie bei. Mit der folgenden Richtlinie wird einer IAM-Rolle die Berechtigung erteilt, einen Kennzeichnungsauftrag unter Verwendung eines [integrierten Aufgabentyps](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) zu erstellen. Wenn Sie einen benutzerdefinierten Kennzeichnungs-Workflow erstellen möchten, fügen Sie die Richtlinie in [Workflow-Berechtigungen für benutzerdefinierte Kennzeichnungsaufträge](#sms-security-permissions-custom-workflow) zu der folgenden Richtlinie hinzu. Jede der in der folgenden Richtlinie enthaltene `Statement` wird unter diesem Codeblock beschrieben.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "SageMakerApis",
            "Effect": "Allow",
            "Action": [
                "sagemaker:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "KmsKeysForCreateForms",
            "Effect": "Allow",
            "Action": [
                "kms:DescribeKey",
                "kms:ListAliases"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AccessAwsMarketplaceSubscriptions",
            "Effect": "Allow",
            "Action": [
                "aws-marketplace:ViewSubscriptions"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SecretsManager",
            "Effect": "Allow",
            "Action": [
                "secretsmanager:CreateSecret",
                "secretsmanager:DescribeSecret",
                "secretsmanager:ListSecrets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ListAndCreateExecutionRoles",
            "Effect": "Allow",
            "Action": [
                "iam:ListRoles",
                "iam:CreateRole",
                "iam:CreatePolicy",
                "iam:AttachRolePolicy"
            ],
            "Resource": "*"
        },
        {
            "Sid": "PassRoleForExecutionRoles",
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "sagemaker.amazonaws.com"
                }
            }
        },
        {
            "Sid": "GroundTruthConsole",
            "Effect": "Allow",
            "Action": [
                "groundtruthlabeling:*",
                "lambda:InvokeFunction",
                "lambda:ListFunctions",
                "s3:GetObject",
                "s3:PutObject",
                "s3:ListBucket",
                "s3:GetBucketCors",
                "s3:PutBucketCors",
                "s3:ListAllMyBuckets",
                "cognito-idp:AdminAddUserToGroup",
                "cognito-idp:AdminCreateUser",
                "cognito-idp:AdminDeleteUser",
                "cognito-idp:AdminDisableUser",
                "cognito-idp:AdminEnableUser",
                "cognito-idp:AdminRemoveUserFromGroup",
                "cognito-idp:CreateGroup",
                "cognito-idp:CreateUserPool",
                "cognito-idp:CreateUserPoolClient",
                "cognito-idp:CreateUserPoolDomain",
                "cognito-idp:DescribeUserPool",
                "cognito-idp:DescribeUserPoolClient",
                "cognito-idp:ListGroups",
                "cognito-idp:ListIdentityProviders",
                "cognito-idp:ListUsers",
                "cognito-idp:ListUsersInGroup",
                "cognito-idp:ListUserPoolClients",
                "cognito-idp:ListUserPools",
                "cognito-idp:UpdateUserPool",
                "cognito-idp:UpdateUserPoolClient"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Diese Richtlinie enthält die folgenden Aussagen. Sie können jede dieser Aussagen eingrenzen, indem Sie konkrete Ressourcen auf die `Resource` Liste für diese Anweisung setzen.

`SageMakerApis`

Diese Aussage beinhaltet`sagemaker:*`, was es dem Benutzer ermöglicht, alle [SageMaker KI-API-Aktionen](sagemaker/latest/APIReference/API_Operations.html) durchzuführen. Sie können den Umfang dieser Richtlinie einschränken, indem Sie Benutzer daran hindern, Aktionen auszuführen, die bei der Erstellung und Überwachung eines Kennzeichnungsauftrags keine Anwendung finden. 

**`KmsKeysForCreateForms`**

Sie müssen diese Anweisung nur angeben, wenn Sie einem Benutzer die Erlaubnis erteilen möchten, AWS KMS Schlüssel in der Ground Truth Konsole aufzulisten und auszuwählen, die für die Verschlüsselung der Ausgabedaten verwendet werden sollen. Die o.g. Richtlinie gibt dem Benutzer die Berechtigung, im Konto unter AWS KMS beliebige Schlüssel aufzulisten und auszuwählen. Um die Schlüssel einzuschränken, die ein Benutzer auflisten und auswählen kann, geben Sie diese Schlüssel ARNs in ein`Resource`.

**`SecretsManager`**

Diese Anweisung gibt dem Benutzer die Erlaubnis, Ressourcen zu beschreiben, aufzulisten und zu erstellen, die für die Erstellung des Labeling-Jobs AWS Secrets Manager erforderlich sind.

`ListAndCreateExecutionRoles`

Diese Anweisung erteilt einem Benutzer die Berechtigung, IAM-Rollen in Ihrem Konto aufzulisten (`ListRoles`) und zu erstellen (`CreateRole`). Sie gibt dem Benutzer auch die Berechtigung, Richtlinien zu erstellen (`CreatePolicy`) und sie an Entitäten anzuhängen (`AttachRolePolicy`). Diese sind erforderlich, um in der Konsole eine Ausführungsrolle aufzulisten, auszuwählen und ggf. zu erstellen. 

Wenn Sie bereits eine Ausführungsrolle erstellt haben und den Geltungsbereich dieser Anweisung einschränken möchten, sodass Benutzer nur diese Rolle in der Konsole auswählen können, geben Sie die ARNs Rollen an, für die der Benutzer berechtigt sein soll, die Aktionen anzuzeigen `Resource` und zu entfernen `CreateRole``CreatePolicy`, und`AttachRolePolicy`.

`AccessAwsMarketplaceSubscriptions`

Diese Berechtigungen sind erforderlich, um Arbeitsteams von Lieferanten anzeigen und auswählen zu können, die Sie bei der Erstellung eines Kennzeichnungsauftrags bereits abonniert haben. Um dem Benutzer die Berechtigung zu geben, Arbeitsteams von Lieferanten zu *abonnieren*, fügen Sie die Anweisung in [Berechtigungen der Arbeitskräfte von Anbietern](#sms-security-permissions-workforce-creation-vendor) zu der obigen Richtlinie hinzu

`PassRoleForExecutionRoles`

Dies ist erforderlich, um dem Ersteller des Kennzeichnungsauftrags die Berechtigung zu geben, eine Vorschau der Worker-Benutzeroberfläche anzuzeigen und zu überprüfen, ob Eingabedaten, Beschriftungen und Anweisungen korrekt angezeigt werden. Diese Anweisung erteilt einer Entität die Erlaubnis, die IAM-Ausführungsrolle, die zur Erstellung des Labeling-Jobs verwendet wurde, an SageMaker KI zu übergeben, um die Worker-Benutzeroberfläche zu rendern und eine Vorschau anzuzeigen. Um den Umfang dieser Richtlinie einzugrenzen, fügen Sie unter `Resource` die Rollen-ARN der Ausführungsrolle hinzu, mit der der Kennzeichnungsauftrag erstellt wurde.

**`GroundTruthConsole`**
+ `groundtruthlabeling` – Damit kann ein Benutzer Aktionen ausführen, die für die Nutzung bestimmter Funktionen der Ground-Truth-Konsole erforderlich sind. Dazu gehören Berechtigungen zur Beschreibung des Status des Kennzeichnungsauftrags (`DescribeConsoleJob`), zum Auflisten aller Datensatz-Objekte in der Eingabe-Manifestdatei (`ListDatasetObjects`), zum Filtern des Datensatzes, wenn die Datensatz-Probenahme ausgewählt ist (`RunFilterOrSampleDatasetJob`), sowie zum Generieren von Eingabe-Manifestdateien, falls das automatische Daten-Labeling verwendet wird (`RunGenerateManifestByCrawlingJob`). Diese Aktionen stehen nur bei Verwendung der Ground-Truth-Konsole zur Verfügung und können nicht direkt über eine API aufgerufen werden.
+ `lambda:InvokeFunction` und `lambda:ListFunctions` – diese Aktionen geben dem Benutzer die Berechtigung, Lambda-Funktionen aufzulisten und aufzurufen, die zur Ausführung eines benutzerdefinierten Kennzeichnungs-Workflows verwendet werden.
+ `s3:*` – Alle in dieser Anweisung enthaltenen Amazon S3-Berechtigungen dienen dazu, Amazon-S3-Buckets für die [automatisierte Dateneinrichtung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-console-create-manifest-file.html) anzuzeigen (`ListAllMyBuckets`), in Amazon S3 auf Eingabedaten zuzugreifen (`ListBucket`,`GetObject`), ggf. nach CORS-Richtlinien in Amazon S3 zu suchen und diese zu erstellen (`GetBucketCors` und `PutBucketCors`) und Ausgabedateien für Kennzeichnungsaufträge in S3 zu schreiben (`PutObject`).
+ `cognito-idp`- Diese Berechtigungen dienen dazu, mithilfe von Amazon Cognito private Arbeitskräfte zu erstellen, anzuzeigen und zu verwalten. Weitere Informationen zu diesen Aktionen finden Sie in den [Amazon Cognito API-Referenzen](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-reference.html).

## Workflow-Berechtigungen für benutzerdefinierte Kennzeichnungsaufträge
<a name="sms-security-permissions-custom-workflow"></a>

Fügen Sie die folgende Anweisung zu einer Richtlinie hinzu, ähnlich der in [Konsolenberechtigungen für Ground Truth](#sms-security-permissions-console-all), um einem Benutzer die Berechtigung zu erteilen, bereits vorhandene Lambda-Funktionen vor und nach der Anmerkung auszuwählen und dabei einen [benutzerdefinierten Kennzeichnungs-Workflow zu erstellen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html).

```
{
    "Sid": "GroundTruthConsoleCustomWorkflow",
    "Effect": "Allow",
    "Action": [
        "lambda:InvokeFunction",
        "lambda:ListFunctions"
    ],
    "Resource": "*"
}
```

Informationen darüber, wie Sie einer Entität die Berechtigung erteilen, Lambda-Funktionen vor und nach der Annotation zu erstellen und zu testen, finden Sie unter [Erforderliche Berechtigungen zur Verwendung von Lambda mit Ground Truth](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates-step3-lambda-permissions.html).

## Berechtigungen für private Arbeitskräfte
<a name="sms-security-permission-workforce-creation"></a>

Wenn die folgende Berechtigung zu einer Berechtigungsrichtlinie hinzugefügt wird, gewährt sie Zugriff auf die Erstellung und Verwaltung privater Arbeitskräfte und eines Arbeitsteams mit Hilfe von Amazon Cognito. Diese Berechtigungen sind nicht erforderlich, um [OIDC-IdP-Arbeitskräfte](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-create-private-oidc.html#sms-workforce-create-private-oidc-next-steps) zu verwenden.

```
{
    "Effect": "Allow",
    "Action": [
        "cognito-idp:AdminAddUserToGroup",
        "cognito-idp:AdminCreateUser",
        "cognito-idp:AdminDeleteUser",
        "cognito-idp:AdminDisableUser",
        "cognito-idp:AdminEnableUser",
        "cognito-idp:AdminRemoveUserFromGroup",
        "cognito-idp:CreateGroup",
        "cognito-idp:CreateUserPool",
        "cognito-idp:CreateUserPoolClient",
        "cognito-idp:CreateUserPoolDomain",
        "cognito-idp:DescribeUserPool",
        "cognito-idp:DescribeUserPoolClient",
        "cognito-idp:ListGroups",
        "cognito-idp:ListIdentityProviders",
        "cognito-idp:ListUsers",
        "cognito-idp:ListUsersInGroup",
        "cognito-idp:ListUserPoolClients",
        "cognito-idp:ListUserPools",
        "cognito-idp:UpdateUserPool",
        "cognito-idp:UpdateUserPoolClient"
        ],
    "Resource": "*"
}
```

Weitere Informationen zum Erstellen privater Arbeitskräfte mit Hilfe von Amazon Cognito finden Sie unter [Amazon Cognito – Arbeitskräfte](sms-workforce-private-use-cognito.md). 

## Berechtigungen der Arbeitskräfte von Anbietern
<a name="sms-security-permissions-workforce-creation-vendor"></a>

Sie können zu der Richtlinie in [Erteilen Sie IAM-Berechtigungen zur Nutzung der Amazon SageMaker Ground Truth Console](#sms-security-permission-console-access) die folgende Erklärung hinzufügen, um einer Entität die Berechtigung zu erteilen, [Arbeitskräfte von einem Anbieter zu abonnieren](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-vendor.html).

```
{
    "Sid": "AccessAwsMarketplaceSubscriptions",
    "Effect": "Allow",
    "Action": [
        "aws-marketplace:Subscribe",
        "aws-marketplace:Unsubscribe",
        "aws-marketplace:ViewSubscriptions"
    ],
    "Resource": "*"
}
```

# Erstellen Sie eine SageMaker KI-Ausführungsrolle für einen Ground-Truth-Labeling-Job
<a name="sms-security-permission-execution-role"></a>

Wenn Sie Ihren Labeling-Job konfigurieren, müssen Sie eine *Ausführungsrolle* angeben. Dabei handelt es sich um eine Rolle, die SageMaker KI übernehmen darf, um Ihren Labeling-Job zu starten und auszuführen.

Diese Rolle muss Ground Truth die folgende Zugriffsberechtigung geben: 
+ Amazon S3 kann Ihre Eingabedaten abrufen und Ausgabedaten in einen Amazon-S3-Bucket schreiben. Sie können entweder einer IAM-Rolle die Berechtigung für den Zugriff auf einen gesamten Bucket erteilen, indem Sie den Bucket-ARN angeben, oder Sie können der Rolle den Zugriff auf bestimmte Ressourcen in einem Bucket gewähren. Der ARN für einen Bucket kann z. B. so aussehen wie `arn:aws:s3:::amzn-s3-demo-bucket1`, und der ARN einer Ressource in einem Amazon-S3-Bucket kann so aussehen wie `arn:aws:s3:::amzn-s3-demo-bucket1/prefix/file-name.png`. Um eine Aktion auf alle Ressourcen in einem Amazon-S3-Bucket anzuwenden, können Sie den Platzhalter `*` verwenden. Beispiel, `arn:aws:s3:::amzn-s3-demo-bucket1/prefix/*`. Weitere Informationen finden Sie unter [Amazon S3-Ressourcen](https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html) im Benutzerhandbuch zum Amazon Simple Storage Service.
+ CloudWatch um Arbeitsmetriken und den Status von Labeling-Jobs zu protokollieren.
+ AWS KMS zur Datenverschlüsselung. (Optional)
+ AWS Lambda für die Verarbeitung von Eingabe- und Ausgabedaten, wenn Sie einen benutzerdefinierten Workflow erstellen. 

Wenn Sie einen [Streaming-Kennzeichnungsauftrag](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html) erstellen, muss diese Rolle außerdem über folgende Zugriffsberechtigungen verfügen:
+ Amazon SQS zur Erstellung einer Interaktion mit einer SQS-Warteschlange für die [Verwaltung von Kennzeichnungsanfragen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html#sms-streaming-how-it-works-sqs).
+ Amazon SNS, um Nachrichten aus Ihrem Amazon SNS-Eingabethema zu abonnieren und abzurufen und Nachrichten an Ihr Amazon SNS-Ausgabethema zu senden.

Alle diese Berechtigungen können mit der `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)` verwalteten Richtlinie erteilt werden, *außer*:
+ Verschlüsselung von Daten und Speicher-Volumes Ihrer Amazon-S3-Buckets. Informationen zum Einrichten dieser Berechtigungen finden Sie unter [Verschlüsseln Sie Ausgabedaten und Speichervolumen mit AWS KMS](sms-security-kms-permissions.md).
+ Berechtigung zum Auswählen und Aufrufen von Lambda-Funktionen ohne `GtRecipe`, `SageMaker`, `Sagemaker`, `sagemaker` oder `LabelingFunction` im Funktionsnamen.
+ Amazon-S3-Buckets, die weder `GroundTruth`, `Groundtruth`, `groundtruth`, `SageMaker`, `Sagemaker` noch `sagemaker` im Präfix oder im Bucket-Namen oder eine [Objekt-Markierung](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html) enthalten, die `SageMaker` im Namen enthält (Groß- und Kleinschreibung wird nicht beachtet).

Wenn Sie präzisere Berechtigungen brauchen als die unter `AmazonSageMakerGroundTruthExecution` angegebenen, verwenden Sie die folgenden Richtlinienbeispiele, um eine Ausführungsrolle zu erstellen, die zu Ihrem speziellen Anwendungsfall passt.

**Topics**
+ [Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (ohne Streaming)](#sms-security-permission-execution-role-built-in-tt)
+ [Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (mit Streaming)](#sms-security-permission-execution-role-built-in-tt-streaming)
+ [Anforderungen an die Ausführungsrolle für benutzerdefinierte Aufgabentypen](#sms-security-permission-execution-role-custom-tt)
+ [Berechtigungsanforderungen für die automatisierte Datenbeschriftung](#sms-security-permission-execution-role-custom-auto-labeling)

## Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (ohne Streaming)
<a name="sms-security-permission-execution-role-built-in-tt"></a>

Die folgende Richtlinie gewährt die Berechtigung, einen Kennzeichnungsauftrag für einen [integrierten Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) zu erstellen. Diese Ausführungsrichtlinie beinhaltet keine Berechtigungen für die AWS KMS Datenverschlüsselung oder -entschlüsselung. Ersetzen Sie jeden roten, kursiv geschriebenen ARN durch Ihren eigenen Amazon S3. ARNs

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ViewBuckets",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::<input-bucket-name>",
                "arn:aws:s3:::<output-bucket-name>"
            ]
        },
        {
            "Sid": "S3GetPutObjects",
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::<input-bucket-name>/*",
                "arn:aws:s3:::<output-bucket-name>/*"
            ]
        },
        {
            "Sid": "CloudWatch",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:PutMetricData",
                "logs:CreateLogStream",
                "logs:CreateLogGroup",
                "logs:DescribeLogStreams",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (mit Streaming)
<a name="sms-security-permission-execution-role-built-in-tt-streaming"></a>

Wenn Sie einen Kennzeichnungsauftrag mit Streaming erstellen, müssen Sie zu der Ausführungsrolle, mit der Sie den Kennzeichnungsauftrag erstellen, eine Richtlinie hinzufügen, ähnlich der folgenden. Um den Geltungsbereich der Richtlinie einzugrenzen, ersetzen Sie das Feld `*` in `Resource` durch spezifische AWS Ressourcen, für deren Zugriff und Nutzung Sie der IAM-Rolle Zugriff und Nutzung gewähren möchten.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/*",
                "arn:aws:s3:::amzn-s3-demo-bucket2/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "s3:ExistingObjectTag/SageMaker": "true"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketLocation",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket2"
            ]
        },
        {
            "Sid": "CloudWatch",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:PutMetricData",
                "logs:CreateLogStream",
                "logs:CreateLogGroup",
                "logs:DescribeLogStreams",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "StreamingQueue",
            "Effect": "Allow",
            "Action": [
                "sqs:CreateQueue",
                "sqs:DeleteMessage",
                "sqs:GetQueueAttributes",
                "sqs:GetQueueUrl",
                "sqs:ReceiveMessage",
                "sqs:SendMessage",
                "sqs:SetQueueAttributes"
            ],
            "Resource": "arn:aws:sqs:*:*:*GroundTruth*"
        },
        {
            "Sid": "StreamingTopicSubscribe",
            "Effect": "Allow",
            "Action": "sns:Subscribe",
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:input-topic-name",
                "arn:aws:sns:us-east-1:111122223333:output-topic-name"
            ],
            "Condition": {
                "StringEquals": {
                    "sns:Protocol": "sqs"
                },
                "StringLike": {
                    "sns:Endpoint": "arn:aws:sns:us-east-1:111122223333:*GroundTruth*"
                }
            }
        },
        {
            "Sid": "StreamingTopic",
            "Effect": "Allow",
            "Action": [
                "sns:Publish"
            ],
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:input-topic-name",
                "arn:aws:sns:us-east-1:111122223333:output-topic-name"
            ]
        },
        {
            "Sid": "StreamingTopicUnsubscribe",
            "Effect": "Allow",
            "Action": [
                "sns:Unsubscribe"
            ],
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:input-topic-name",
                "arn:aws:sns:us-east-1:111122223333:output-topic-name"
            ]
        }
    ]
}
```

------

## Anforderungen an die Ausführungsrolle für benutzerdefinierte Aufgabentypen
<a name="sms-security-permission-execution-role-custom-tt"></a>

Wenn Sie einen [benutzerdefinierten Kennzeichnungs-Workflow](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html) erstellen möchten, fügen Sie die folgende Anweisung zur Richtlinie einer Ausführungsrolle hinzu, wie sie in [Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (ohne Streaming)](#sms-security-permission-execution-role-built-in-tt) oder [Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (mit Streaming)](#sms-security-permission-execution-role-built-in-tt-streaming) zu finden ist.

Diese Richtlinie erteilt der Ausführungsrolle die Berechtigung zur `Invoke` Ihrer Lambda-Funktionen vor und nach der Anmerkung.

```
{
    "Sid": "LambdaFunctions",
    "Effect": "Allow",
    "Action": [
        "lambda:InvokeFunction"
    ],
    "Resource": [
        "arn:aws:lambda:<region>:<account-id>:function:<pre-annotation-lambda-name>",
        "arn:aws:lambda:<region>:<account-id>:function:<post-annotation-lambda-name>"
    ]
}
```

## Berechtigungsanforderungen für die automatisierte Datenbeschriftung
<a name="sms-security-permission-execution-role-custom-auto-labeling"></a>

Wenn Sie einen Kennzeichnungsauftrag mit aktivierter [automatisierter Datenbeschriftung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html) erstellen möchten, müssen Sie 1) zu der IAM-Richtlinie, die der Ausführungsrolle zugeordnet ist, eine Richtlinie hinzufügen und 2) die Vertrauensrichtlinie der Ausführungsrolle aktualisieren. 

Mit der folgenden Anweisung kann die IAM-Ausführungsrolle an SageMaker KI übergeben werden, sodass sie zur Ausführung der Trainings- und Inferenzjobs verwendet werden kann, die für aktives Lernen bzw. für die automatische Datenkennzeichnung verwendet werden. Fügen Sie diese Anweisung zur Richtlinie für eine Ausführungsrolle hinzu, wie sie in [Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (ohne Streaming)](#sms-security-permission-execution-role-built-in-tt) oder [Anforderungen an die Ausführungsrolle für integrierte Aufgabentypen (mit Streaming)](#sms-security-permission-execution-role-built-in-tt-streaming) zu finden sind. Ersetzen Sie `arn:aws:iam::<account-number>:role/<role-name>` durch den Ausführungsrollen-ARN. Den ARN Ihrer IAM-Rolle finden Sie in der IAM-Konsole unter **Rollen**. 

```
{
    "Effect": "Allow",
    "Action": [
        "iam:PassRole"
    ],
    "Resource": "arn:aws:iam::<account-number>:role/<execution-role-name>",
    "Condition": {
        "StringEquals": {
            "iam:PassedToService": [
                "sagemaker.amazonaws.com"
            ]
        }
    }
}
```

Die folgende Anweisung ermöglicht es der SageMaker KI, die Ausführungsrolle für die Erstellung und Verwaltung der SageMaker Trainings- und Inferenzjobs zu übernehmen. Diese Richtlinie muss zur Vertrauensstellung der Ausführungsrolle hinzugefügt werden. Informationen zum Hinzufügen oder Ändern der Vertrauensrichtlinie für eine IAM-Rolle finden Sie unter [Ändern einer Rolle](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html) im IAM-Benutzerhandbuch.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Principal": {"Service": "sagemaker.amazonaws.com" },
        "Action": "sts:AssumeRole"
    }
}
```

------



# Verschlüsseln Sie Ausgabedaten und Speichervolumen mit AWS KMS
<a name="sms-security-kms-permissions"></a>

Sie können AWS Key Management Service (AWS KMS) verwenden, um Ausgabedaten eines Labeling-Jobs zu verschlüsseln, indem Sie bei der Erstellung des Labeling-Jobs einen vom [Kunden verwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys) angeben. Wenn Sie den API-Vorgang `CreateLabelingJob` verwenden, um einen Kennzeichnungsauftrag zu erstellen, der das automatisierte Daten-Labeling verwendet, können Sie auch einen vom Kunden verwalteten Schlüssel verwenden, um das Speicher-Volume zu verschlüsseln, das an die ML-Datenverarbeitungs-Instances angehängt ist, um das Trainings- und Inference-Aufträge auszuführen.

In diesem Abschnitt werden die IAM-Richtlinien beschrieben, die Sie Ihrem vom Kunden verwalteten Schlüssel zuordnen müssen, um die Verschlüsselung der Ausgabedaten zu aktivieren, sowie die Richtlinien, die Sie Ihrem vom Kunden verwalteten Schlüssel und Ihrer Ausführungsrolle zuordnen müssen, um die Verschlüsselung von Speicher-Volumes verwenden zu können. Weitere Informationen zu diesen Optionen finden Sie unter [Verschlüsselung von Ausgabedaten und Speicher-Volumes](sms-security.md).

## Ausgabedaten mit KMS verschlüsseln
<a name="sms-security-kms-permissions-output-data"></a>

Wenn Sie einen vom AWS KMS Kunden verwalteten Schlüssel zum Verschlüsseln von Ausgabedaten angeben, müssen Sie diesem Schlüssel eine IAM-Richtlinie hinzufügen, die der folgenden ähnelt. Diese Richtlinie erteilt der IAM-Ausführungsrolle, mit der Sie Ihren Kennzeichnungsauftrag erstellen, die Berechtigung, diesen Schlüssel für die Ausführung aller unter `"Action"` aufgeführten Aktionen zu verwenden. Weitere Informationen zu diesen Aktionen finden Sie im [AWS KMSAWS Key Management Service Entwicklerhandbuch unter Berechtigungen](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html).

Um diese Richtlinie zu verwenden, ersetzen Sie den ARN der IAM-Service-Rolle in `"Principal"` durch den ARN der Ausführungsrolle mit der Sie den Kennzeichnungsauftrag erstellen. Wenn Sie in der Konsole einen Kennzeichnungsauftrag erstellen, ist dies die Rolle, die Sie für die **IAM-Rolle** im Abschnitt **Auftragsübersicht** angeben. Wenn Sie mit Hilfe von `CreateLabelingJob` einen Kennzeichnungsauftrag erstellen, ist dies der ARN, den Sie für [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn) angeben.

```
{
    "Sid": "AllowUseOfKmsKey",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/service-role/example-role"
    },
    "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
    ],
    "Resource": "*"
}
```

## Automatische Datenbeschriftung verschlüsseln (ML Datenverarbeitungs-Instance Speicher-Volume)
<a name="sms-security-kms-permissions-storage-volume"></a>

Wenn Sie eine [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobResourceConfig.html#sagemaker-Type-LabelingJobResourceConfig-VolumeKmsKeyId](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobResourceConfig.html#sagemaker-Type-LabelingJobResourceConfig-VolumeKmsKeyId) angeben, um das an die ML-Datenverarbeitungs-Instance angehängte Speicher-Volume zu verschlüsseln, die für Training und Inference zum automatisierten Daten-Labeling verwendet wird, müssen Sie wie folgt vorgehen:
+ Fügen Sie zu dem vom Kunden verwalteten Schlüssel die unter [Ausgabedaten mit KMS verschlüsseln](#sms-security-kms-permissions-output-data) beschriebenen Berechtigungen hinzu.
+ Fügen Sie eine Richtlinie ähnlich der folgenden an die IAM-Ausführungsrolle an, die Sie zum Erstellen Ihres Kennzeichnungsauftrags verwenden. Dies ist die IAM-Rolle, die Sie für [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn) in `CreateLabelingJob` angeben. Weitere Informationen zu den `"kms:CreateGrant"` Aktionen, die diese Richtlinie zulässt, finden Sie [https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)in der AWS Key Management Service API-Referenz.

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

****  

```
{
"Version":"2012-10-17",		 	 	  
"Statement": 
 [  
   {
    "Effect": "Allow",
    "Action": [
       "kms:CreateGrant"
    ],
    "Resource": "*"
  }
]
}
```

------

Weitere Informationen zur Verschlüsselung von Ground-Truth-Speicher-Volumes finden Sie unter [Verwenden Sie Ihren KMS-Schlüssel, um das Speicher-Volume für die automatische Datenbeschriftung zu verschlüsseln (nur API)](sms-security.md#sms-security-kms-storage-volume).

# Verwendung von Amazon SageMaker Ground Truth in einer Amazon Virtual Private Cloud
<a name="sms-vpc"></a>

 Mit [Amazon Virtual Private Cloud](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Introduction.html) (Amazon VPC) können Sie AWS Ressourcen in einem logisch isolierten virtuellen Netzwerk starten, das Sie definieren. Mit Ground Truth können Sie Kennzeichnungsaufträge innerhalb einer Amazon-VPC ausführen, anstatt eine Verbindung über das Internet herzustellen. Wenn Sie einen Labeling-Job in einer Amazon VPC starten, erfolgt die Kommunikation zwischen Ihrer VPC und Ground Truth vollständig und sicher innerhalb des AWS Netzwerks.

Dieses Handbuch zeigt, wie Sie Ground Truth in einer Amazon VPC auf folgende Weise verwenden können:

1. [Führen Sie einen Amazon SageMaker Ground Truth Labeling-Job in einer Amazon Virtual Private Cloud aus](samurai-vpc-labeling-job.md)

1. [Verwenden Sie den Amazon VPC-Modus von einem Private Worker-Portal aus](samurai-vpc-worker-portal.md)

# Führen Sie einen Amazon SageMaker Ground Truth Labeling-Job in einer Amazon Virtual Private Cloud aus
<a name="samurai-vpc-labeling-job"></a>

Ground Truth unterstützt die folgenden Funktionen in Amazon VPC.
+ Sie können Amazon S3 S3-Bucket-Richtlinien verwenden, um den Zugriff auf Buckets von bestimmten Amazon VPC-Endpunkten oder bestimmten zu kontrollieren. VPCs Wenn Sie einen Labeling-Job starten und sich Ihre Eingabedaten in einem Amazon-S3-Bucket befinden, dessen Zugriff auf Benutzer in Ihrer VPC beschränkt ist, können Sie eine Bucket-Richtlinie hinzufügen, um auch einem Ground-Truth-Endpunkt die Erlaubnis zu erteilen, auf den Bucket zuzugreifen. Weitere Informationen hierzu finden Sie unter [Erlauben Sie Ground Truth den Zugriff auf VPC-eingeschränkte Amazon-S3-Buckets](#sms-vpc-permissions-s3).
+ Sie können einen [automatisierten Daten-Labeling-Job](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html) in Ihrer VPC starten. Sie verwenden eine VPC-Konfiguration, um VPC-Subnetze und Sicherheitsgruppen anzugeben. SageMaker KI verwendet diese Konfiguration, um die Trainings- und Inferenzjobs zu starten, die für die automatische Datenkennzeichnung in Ihrer VPC verwendet werden. Weitere Informationen hierzu finden Sie unter [Erstellen eines automatisierten Datenetikettierungsauftrags in einer VPC](#sms-vpc-permissions-automated-labeling).

Sie können diese Optionen auf eine der folgenden Arten verwenden.
+ Sie können beide Methoden verwenden, um einen Labeling-Job mit einem VPC-geschützten Amazon-S3-Bucket mit aktiviertem automatisierten Daten-Labeling zu starten.
+ Sie können einen Labeling-Job mit jedem [integrierten Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) starten, der einen VPC-geschützten Bucket verwendet.
+ Sie können einen [benutzerdefinierten Label-Workflow](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html) mit einem VPC-geschützten Bucket starten. Ground Truth interagiert mit Ihren Lambda-Funktionen vor und nach der Annotation über einen [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/endpoint-services-overview.html) Endpunkt.

Wir empfehlen Ihnen, dies zu überprüfen, [Voraussetzungen für die Ausführung eines Ground-Truth-Kennzeichnungsauftrags in einer VPC](#sms-vpc-gt-prereq) bevor Sie einen Labeling-Job in einer Amazon VPC erstellen.

## Voraussetzungen für die Ausführung eines Ground-Truth-Kennzeichnungsauftrags in einer VPC
<a name="sms-vpc-gt-prereq"></a>

Überprüfen Sie die folgenden Voraussetzungen, bevor Sie einen Ground-Truth-Labeling-Auftrag in einer Amazon VPC erstellen. 
+ Wenn Sie ein neuer Benutzer von Ground Truth sind, lesen Sie den Artikel [Erste Schritte](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-getting-started.html), um zu erfahren, wie Sie einen Labeling-Auftrag erstellen.
+ Wenn sich Ihre Eingabedaten in einem VPC-geschützten Amazon-S3-Bucket befinden, müssen Ihre Mitarbeiter von Ihrer VPC aus auf das Worker-Portal zugreifen. VPC-basierte Kennzeichnungsaufträge erfordern den Einsatz eines privaten Arbeitsteams. Weitere Informationen zum Erstellen eines privaten Arbeitsteams finden Sie unter [Private Arbeitskraft einsetzen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private.html).
+ Die folgenden Voraussetzungen sind spezifisch für das Starten eines Kennzeichnungsauftrags in Ihrer VPC.
  + Folgen Sie den Anweisungen unter [Erstellen eines Amazon S3-VPC-Endpunkts](https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html#train-vpc-s3). Trainings- und Inferenzcontainer, die im automatisierten Daten-Labeling-Workflow verwendet werden, verwenden diesen Endpunkt, um mit Ihren Buckets in Amazon S3 zu kommunizieren.
  + Weitere Informationen zu dieser Funktion finden Sie unter [Automatisiertes Daten-Labeling](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html). Beachten Sie, dass das automatische Daten-Labeling für die folgenden [integrierten Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) unterstützt wird: [Image-Klassifizierung (Single Label)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-image-classification.html), [Semantische Image-Segmentierung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-semantic-segmentation.html), [Bounding Box](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-bounding-box.html) und [Textklassifizierung (Single Label)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-text-classification.html). Streaming-Labeling-Jobs unterstützen kein automatisches Daten-Labeling.
+ Lesen Sie den Abschnitt [Ground Truth Sicherheit und Berechtigungen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-security-general.html) und stellen Sie sicher, dass Sie die folgenden Bedingungen erfüllt haben.
  + Der Benutzer, der den Labeling-Job erstellt, verfügt über alle erforderlichen Berechtigungen
  + Sie haben eine IAM-Ausführungsrolle mit den erforderlichen Berechtigungen erstellt. Wenn Sie für Ihren Anwendungsfall keine genau abgestimmten Berechtigungen benötigen, empfehlen wir Ihnen, die unter [Erteilen Sie allgemeine Berechtigungen, um mit Ground Truth zu beginnen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-security-permission.html#sms-security-permissions-get-started).
  + Erlauben Sie Ihrer VPC den Zugriff auf die `sagemaker-labeling-data-region` und `sm-bxcb-region-saved-task-states` S3 Buckets. Dabei handelt es sich um systemeigene, regionalisierte S3-Buckets, auf die über das Worker-Portal zugegriffen wird, wenn der Worker an einer Aufgabe arbeitet. Wir verwenden diese Buckets, um mit systemverwalteten Daten zu interagieren.

## Erlauben Sie Ground Truth den Zugriff auf VPC-eingeschränkte Amazon-S3-Buckets
<a name="sms-vpc-permissions-s3"></a>

In den folgenden Abschnitten finden Sie Einzelheiten zu den Berechtigungen, die Ground Truth benötigt, um Labeling-Jobs mit Amazon-S3-Buckets zu starten, deren Zugriff auf Ihre VPC und VPC-Endpunkte beschränkt ist. Informationen zum Beschränken des Zugriffs auf einen Amazon-S3-Bucket auf eine VPC finden Sie unter [Steuern des Zugriffs von VPC-Endpunkten mit Bucket-Richtlinien](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies-vpc-endpoint.html) im Benutzerhandbuch zu Amazon Simple Storage Service. Informationen zum Hinzufügen einer Richtlinie zu einem S3-Bucket finden Sie unter [Hinzufügen einer Bucket-Richtlinie mit der Amazon-S3-Konsole](https://docs.aws.amazon.com/AmazonS3/latest/userguide/add-bucket-policy.html).

**Anmerkung**  
Das Ändern von Richtlinien für bestehende Buckets kann dazu führen, dass `IN_PROGRESS` Ground-Truth-Jobs fehlschlagen. Wir empfehlen Ihnen, neue Jobs mit einem neuen Bucket zu starten. Wenn Sie weiterhin denselben Bucket verwenden möchten, können Sie eine der folgenden Aktionen durchführen.  
Warten Sie, bis ein `IN_PROGRESS` Job abgeschlossen ist.
Beenden Sie den Job mit der Konsole oder dem AWS CLI.

Sie können den Amazon-S3-Bucket-Zugriff auf Benutzer in Ihrer VPC mithilfe eines [AWS PrivateLink](https://aws.amazon.com/privatelink/)Endpunkts einschränken. Die folgende S3-Bucket-Richtlinie erlaubt zum Beispiel den Zugriff auf einen bestimmten Bucket, `<bucket-name>`, nur von `<vpc>` und dem Endpunkt `<vpc-endpoint>`. Wenn Sie diese Richtlinie ändern, müssen Sie alle *red-italized text* durch Ihre Ressourcen und Spezifikationen ersetzen.

**Anmerkung**  
Die folgende Richtlinie *verweigert* allen Entitäten *außer* Benutzern innerhalb einer VPC die Durchführung der unter `Action` aufgeführten Aktionen. Wenn Sie Aktionen nicht in diese Liste aufnehmen, sind sie dennoch für jede Entität zugänglich, die Zugriff auf diesen Bucket und die Berechtigung hat, diese Aktionen auszuführen. Wenn ein Benutzer beispielsweise berechtigt ist, in Ihrem `GetBucketLocation` Amazon-S3-Bucket etwas auszuführen, schränkt die folgende Richtlinie den Benutzer nicht daran ein, diese Aktion außerhalb Ihrer VPC auszuführen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "Policy1415115909152",
    "Statement": [
        {
            "Sid": "AccessToSpecificVPCEOnly",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Effect": "Deny",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ],
            "Condition": {
                "StringNotEquals": {
                    "aws:sourceVpce": [
                        "vpce-12345678",
                        "vpce-12345678901234567"
                    ]
                }
            }
        }
    ]
}
```

------

Ground Truth muss in der Lage sein, die folgenden Amazon S3-Aktionen für die S3-Buckets durchzuführen, die Sie zur Konfiguration des Labeling-Jobs verwenden.

```
"s3:AbortMultipartUpload",
"s3:GetObject",
"s3:PutObject",
"s3:ListBucket",
"s3:GetBucketLocation"
```

Sie können dies tun, indem Sie der Bucket-Richtlinie einen Ground-Truth-Endpunkt hinzufügen, wie der zuvor erwähnte. Die folgende Tabelle enthält Ground Truth Service-Endpunkte für jede AWS Region. Fügen Sie Ihrer Bucket-Richtlinie einen Endpunkt in derselben [AWS -Region](https://docs.aws.amazon.com/general/latest/gr/rande.html) hinzu, in der Sie Ihren Labeling-Job ausführen.


****  

| AWS Region | Ground Truth | 
| --- | --- | 
| us-east-2 | vpce-02569ba1c40aad0bc | 
| us-east-1 | vpce-08408e335ebf95b40 | 
| us-west-2 | vpce-0ea07aa498eb78469 | 
| ca-central-1 | vpce-0d46ea4c9ff55e1b7 | 
| eu-central-1 | vpce-0865e7194a099183d | 
| eu-west-2 | vpce-0bccd56798f4c5df0 | 
| eu-west-1 | vpce-0788e7ed8628e595d | 
| ap-south-1 | vpce-0d7fcda14e1783f11 | 
| ap-southeast-2 | vpce-0b7609e6f305a77d4 | 
| ap-southeast-1 | vpce-0e7e67b32e9efed27 | 
| ap-northeast-2 | vpce-007893f89e05f2bbf | 
| ap-northeast-1 | vpce-0247996a1a1807dbd | 

Die folgende Richtlinie schränkt zum Beispiel ein und führt Aktionen durch: `GetObject` `PutObject`
+ Ein Amazon-S3-Bucket für Benutzer in einer VPC () `<vpc>`
+ Ein VPC-Endpunkt (`<vpc-endpoint>`)
+ Ein Ground-Truth-Dienstendpunkt (`<ground-truth-endpoint>`)

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "1",
    "Statement": [
        {
            "Sid": "DenyAccessFromNonGTandCustomerVPC",
            "Effect": "Deny",
            "Principal": "*",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::bucket-name",
                "arn:aws:s3:::bucket-name/*"
            ],
            "Condition": {
              "StringNotEquals": {
                "aws:SourceVpc": "vpc-12345678",
                "aws:sourceVpce": [
                  "vpce-12345678",
                  "vpce-12345678"
                ] 
             }
           }
        }
    ]
}
```

------

Wenn Sie möchten, dass ein Benutzer berechtigt ist, einen Labeling-Auftrag über die Ground-Truth-Konsole zu starten, müssen Sie unter Verwendung der `aws:PrincipalArn` Bedingung auch den ARN des Benutzers zur Bucket-Richtlinie hinzufügen. Dieser Benutzer muss außerdem berechtigt sein, die folgenden Amazon S3-Aktionen für den Bucket auszuführen, den Sie zum Starten des Labeling-Aufträge verwenden.

```
"s3:GetObject",
"s3:PutObject",
"s3:ListBucket",
"s3:GetBucketCors",
"s3:PutBucketCors",
"s3:ListAllMyBuckets",
```

Der folgende Code ist ein Beispiel für eine Bucket-Richtlinie, die die Erlaubnis zur Ausführung der im S3-Bucket `<bucket-name>` aufgeführten Aktionen `Action` auf die folgenden beschränkt.
+ *<role-name>*
+ Die VPC-Endpunkte, die unter aufgeführt sind `aws:sourceVpce`
+ Benannte Benutzer innerhalb der VPC *<vpc>*

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "1",
    "Statement": [
        {
            "Sid": "DenyAccessFromNonGTandCustomerVPC",
            "Effect": "Deny",
            "Principal": "*",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::bucket-name/*",
                "arn:aws:s3:::bucket-name"
            ],
            "Condition": {
                "StringNotEquals": {
                    "aws:SourceVpc": "vpc-12345678",
                    "aws:PrincipalArn": "arn:aws:iam::111122223333:role/role-name"
                },
                "StringNotEquals": {
                    "aws:sourceVpce": [
                        "vpce-12345678",
                        "vpce-12345678"
                    ]
                }
            }
        }
    ]
}
```

------

**Anmerkung**  
Die Endpunkte der Amazon VPC-Schnittstelle und die geschützten Amazon S3 S3-Buckets, die Sie für Eingabe- und Ausgabedaten verwenden, müssen sich in derselben AWS Region befinden, in der Sie den Labeling-Job erstellen.

Nachdem Sie Ground Truth die Erlaubnis erteilt haben, auf Ihre Amazon-S3-Buckets zuzugreifen, können Sie eines der Themen unter [Labeling-Job](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-create-labeling-job.html) erstellen verwenden, um einen Labeling-Job zu starten. Geben Sie die VPC-beschränkten Amazon-S3-Buckets für Ihre Eingabe- und Ausgabe-Daten-Buckets an.

## Erstellen eines automatisierten Datenetikettierungsauftrags in einer VPC
<a name="sms-vpc-permissions-automated-labeling"></a>

Um einen automatisierten Daten-Labeling-Job mit einer Amazon VPC zu erstellen, stellen Sie mithilfe der Ground-Truth-Konsole oder des `CreateLabelingJob`-API-Vorgangs eine VPC-Konfiguration bereit. SageMaker KI verwendet die von Ihnen bereitgestellten Subnetze und Sicherheitsgruppen, um die für die automatische Kennzeichnung verwendeten Schulungs- und Inferenzaufgaben zu starten. 

**Wichtig**  
Bevor Sie einen automatisierten Daten-Beschriftungsauftrag mit einer VPC-Konfiguration starten, stellen Sie sicher, dass Sie einen Amazon S3-VPC-Endpunkt mit der VPC erstellt haben, die Sie für den Labeling-Job verwenden möchten. Wie das geht, erfahren Sie unter [Erstellen eines Amazon S3-VPC-Endpunkts](https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html#train-vpc-s3).  
Wenn Sie einen automatisierten Daten-Labeling-Job mit einem VPC-beschränkten Amazon-S3-Bucket erstellen, müssen Sie außerdem den Anweisungen unter [Erlauben Sie Ground Truth den Zugriff auf VPC-eingeschränkte Amazon-S3-Buckets](#sms-vpc-permissions-s3) folgen, um Ground Truth die Erlaubnis für den Zugriff auf den Bucket zu erteilen.

Verwenden Sie die folgenden Verfahren, um zu erfahren, wie Sie Ihrer Labeling-Job-Anfrage eine VPC-Konfiguration hinzufügen.

**Fügen Sie einer automatisierte Daten-Labeling-Aufgabe (Konsole) eine VPC-Konfiguration hinzu:**

1. Folgen Sie den Anweisungen unter [Einen Labeling-Job erstellen (Konsole)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-create-labeling-job-console.html) und führen Sie jeden Schritt des Verfahrens aus, bis zu Schritt 15.

1. Aktivieren Sie im Bereich **Auftragnehmer** das Kontrollkästchen neben **Automatisiertes Daten-Labeling aktivieren**.

1. Maximieren Sie den **VPC-Konfigurationsbereich** der Konsole, indem Sie den Pfeil auswählen.

1. Geben Sie die **Virtual Private Cloud (VPC)** an, die Sie für Ihr automatisiertes Daten-Labeling verwenden möchten.

1. Wählen Sie die Dropdown-Liste unter **Subnetze** und wählen Sie ein oder mehrere Subnetze aus.

1. Wählen Sie die Dropdown-Liste unter **Sicherheitsgruppen** und wählen Sie eine oder mehrere Gruppen aus.

1. Schließen Sie alle verbleibenden Schritte des Verfahrens unter Einen [Labeling-Job erstellen (Konsole)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-create-labeling-job-console.html) ab.

**Fügen Sie einer automatisierten Daten-Labeling-Aufgabe (API) eine VPC-Konfiguration hinzu:**  
Um einen Labeling-Job mithilfe des Ground-Truth-API-Vorgangs, `CreateLabelingJob`, zu konfigurieren, folgen Sie den Anweisungen unter [Erstellen eines automatisierten Daten-Labeling-Jobs (API)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html#sms-create-automated-labeling-api), um Ihre Anfrage zu konfigurieren. Zusätzlich zu den in dieser Dokumentation beschriebenen Parametern müssen Sie einen `VpcConfig` Parameter in `LabelingJobResourceConfig` angeben, um ein oder mehrere Subnetze und Sicherheitsgruppen mithilfe des folgenden Schemas anzugeben.

```
"LabelingJobAlgorithmsConfig": { 
      "InitialActiveLearningModelArn": "string",
      "LabelingJobAlgorithmSpecificationArn": "string",
      "LabelingJobResourceConfig": { 
         "VolumeKmsKeyId": "string",
         "VpcConfig": { 
            "SecurityGroupIds": [ "string" ],
            "Subnets": [ "string" ]
         }
      }
}
```

Im Folgenden finden Sie ein Beispiel für eine [AWS Python-SDK-Anfrage (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_labeling_job) zur Erstellung eines automatisierten Daten-Labeling-Jobs in der Region USA Ost (Nord-Virginia) mithilfe einer privaten Belegschaft. Ersetzen Sie alle *red-italicized text* durch Ihre Ressourcen und Spezifikationen für Etikettierungsaufgaben. Weitere Informationen zu diesem `CreateLabelingJob` Vorgang finden Sie im Tutorial [Create a Labeling Job (API)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-create-labeling-job-api.html) und in der [CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)API-Dokumentation.

```
import boto3
client = boto3.client(service_name='sagemaker')

response = client.create_labeling_job(
    LabelingJobName="example-labeling-job",
    LabelAttributeName="label",
    InputConfig={
        'DataSource': {
            'S3DataSource': {
                'ManifestS3Uri': "s3://bucket/path/manifest-with-input-data.json"
            }
        }
    },
    "LabelingJobAlgorithmsConfig": {
      "LabelingJobAlgorithmSpecificationArn": "arn:aws:sagemaker:us-east-1:027400017018:labeling-job-algorithm-specification/tasktype",
      "LabelingJobResourceConfig": { 
         "VpcConfig": { 
            "SecurityGroupIds": [ "sg-01233456789", "sg-987654321" ],
            "Subnets": [ "subnet-e0123456", "subnet-e7891011" ]
         }
      }
    },
    OutputConfig={
        'S3OutputPath': "s3://bucket/path/file-to-store-output-data",
        'KmsKeyId': "string"
    },
    RoleArn="arn:aws:iam::*:role/*,
    LabelCategoryConfigS3Uri="s3://bucket/path/label-categories.json",
    StoppingConditions={
        'MaxHumanLabeledObjectCount': 123,
        'MaxPercentageOfInputDatasetLabeled': 123
    },
    HumanTaskConfig={
        'WorkteamArn': "arn:aws:sagemaker:region:*: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': [
            "Images",
            "Classification",
            "Multi-label"
        ],
        'TaskTitle': "Add task title here",
        'TaskDescription': "Add description of task here for workers",
        'NumberOfHumanWorkersPerDataObject': 1,
        'TaskTimeLimitInSeconds': 3600,
        'TaskAvailabilityLifetimeInSeconds': 21600,
        'MaxConcurrentTaskCount': 1000,
        'AnnotationConsolidationConfig': {
            'AnnotationConsolidationLambdaArn': "arn:aws:lambda:us-east-1:432418664414:function:ACS-tasktype"
        },
    Tags=[
        {
            'Key': "string",
            'Value': "string"
        },
    ]
)
```

# Verwenden Sie den Amazon VPC-Modus von einem Private Worker-Portal aus
<a name="samurai-vpc-worker-portal"></a>

Um den Zugriff auf das Worker-Portal auf Labeler zu beschränken, die in Ihrer Amazon VPC arbeiten, können Sie eine VPC-Konfiguration hinzufügen, wenn Sie eine private Ground-Truth-Arbeitskraft erstellen. Sie können einer vorhandenen privaten Arbeitskraft auch eine VPC-Konfiguration hinzufügen. Ground Truth erstellt automatisch VPC-Schnittstellenendpunkte in Ihrer VPC und richtet sie AWS PrivateLink zwischen Ihrem VPC-Endpunkt und den Ground-Truth-Diensten ein. Auf die der Arbeitskraft zugeordnete URL des Worker-Portals kann von Ihrer VPC aus zugegriffen werden. Auf die URL des Worker-Portals kann auch über das öffentliche Internet zugegriffen werden, bis Sie die Einschränkung für das öffentliche Internet festlegen. Wenn Sie die Arbeitskraft löschen oder die VPC-Konfiguration aus Ihrer Arbeitskraft entfernen, löscht Ground Truth automatisch die VPC-Endpunkte, die der Arbeitskraft zugeordnet sind.

**Anmerkung**  
Für eine Arbeitskraft kann nur eine VPC unterstützt werden.

[Punktwolken](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-point-cloud.html) – und [Videoaufgaben](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-video.html) unterstützen das Laden über eine VPC nicht.

Der Leitfaden zeigt, wie Sie die erforderlichen Schritte ausführen, um Ihrer Arbeitskraft eine Amazon VPC-Konfiguration hinzuzufügen und zu löschen und die Voraussetzungen zu erfüllen.

## Voraussetzungen
<a name="samurai-vpc-getting-started-prerequisites"></a>

Um einen Ground-Truth-Labeling-Auftrag in Amazon VPC auszuführen, überprüfen Sie die folgenden Voraussetzungen.
+ Sie haben eine Amazon VPC konfiguriert, die Sie verwenden können. Wenn Sie keine VPC konfiguriert haben, folgen Sie diesen Anweisungen zum [Erstellen einer VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#interface-endpoint-shared-subnets).
+ Je nachdem, wie eine [Worker-Aufgabenvorlage](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-instructions-overview.html) geschrieben ist, kann bei Labeling-Aufgaben direkt von Amazon S3 aus auf die in einem Amazon-S3-Bucket gespeicherten Kennzeichnungsdaten zugegriffen werden. In diesen Fällen muss das VPC-Netzwerk so konfiguriert werden, dass Datenverkehr von dem vom menschlichen Labeler verwendeten Gerät zum S3-Bucket mit den Labeling-Daten zugelassen wird.
+ Folgen Sie [Anzeigen und Aktualisieren von DNS-Attributen für Ihre VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating), um DNS-Hostnamen und die DNS-Auflösung für Ihre VPC zu aktivieren.

**Anmerkung**  
Es gibt zwei Möglichkeiten, um Ihre VPC für Ihre Arbeitskraft zu konfigurieren. Sie können dies über die [Konsole](https://console.aws.amazon.com/sagemaker) oder die AWS SageMaker [KI-CLI](https://aws.amazon.com/cli/) tun.

# Verwenden der SageMaker AI-Konsole zur Verwaltung einer VPC-Konfiguration
<a name="samurai-vpc-workforce-console"></a>

Sie können die [SageMaker AI-Konsole](https://console.aws.amazon.com/sagemaker) verwenden, um eine VPC-Konfiguration hinzuzufügen oder zu entfernen. Sie können eine bestehende Arbeitskraft auch löschen.

## Hinzufügen einer VPC-Konfiguration zu Ihrer Arbeitskraft
<a name="samurai-add-vpc-workforce"></a>

### Erstellen von privaten Arbeitskräften
<a name="samurai-vpc-create-workforce"></a>
+ [Erstellen Sie eine private Arbeitskraft mit Amazon Cognito](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private-use-cognito.html)
+ [Richten Sie mithilfe von OpenID Connect (OIDC) Identity Provider (IdP) eine private Arbeitskraft](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private-use-oidc.html) ein.

Nachdem Sie Ihre private Arbeitskraft erstellt haben, fügen Sie ihr eine VPC-Konfiguration hinzu.

1. Navigieren Sie in Ihrer Konsole zu [Amazon SageMaker Runtime](https://console.aws.amazon.com/sagemaker).

1. Wählen Sie im linken Bereich die Option **Arbeitskraft kennzeichnen** aus.

1. Wählen Sie **Privat** aus, um auf Ihre privaten Mitarbeiter zuzugreifen. Wenn Ihr **Status der Arbeitskraft** **Aktiv** lautet, wählen Sie neben **VPC** die Option **Hinzufügen** aus.

1. Wenn Sie aufgefordert werden, Ihre VPC zu konfigurieren, geben Sie Folgendes an:

   1. Ihre **VPC**

   1. **Subnets**

      1. Stellen Sie sicher, dass Ihre VPC über ein vorhandenes Subnetz verfügt

   1. **Sicherheitsgruppen**

      1. 
**Anmerkung**  
Sie können nicht mehr als 5 Sicherheitsgruppen auswählen.

   1. Nachdem Sie diese Informationen eingegeben haben, wählen Sie **Bestätigen**.

1. Nachdem Sie **Bestätigen** ausgewählt haben, werden Sie zurück zur **privaten** Seite unter **Kennzeichnung von Arbeitskräften** weitergeleitet. Oben sollte ein grünes Banner mit der Aufschrift **Ihre private Arbeitskraft-Aktualisierung mit VPC-Konfiguration wurde erfolgreich initialisiert** zu sehen sein. Der Personalstatus ist **Wird aktualisiert.** Neben der Schaltfläche **Arbeitskraft löschen** befindet sich die Schaltfläche **Aktualisieren**, mit der Sie den aktuellen **Status der Arbeitskraft** abrufen können. Nachdem der Personalstatus auf **Aktiv** geändert wurde, wird auch die VPC-Endpunkt-ID aktualisiert.

## Entfernen einer VPC-Konfiguration aus Ihrer Arbeitskraft
<a name="samurai-remove-vpc-workforce"></a>

Verwenden Sie die folgenden Informationen, um mithilfe der Konsole eine VPC-Konfiguration von Ihren Mitarbeitern zu entfernen.

1. Navigieren Sie in Ihrer Konsole zu [Amazon SageMaker Runtime](https://console.aws.amazon.com/sagemaker).

1. Wählen Sie im linken Bereich die Option **Kennzeichnung von Arbeitskräften** aus.

1. Suchen Sie Ihre Arbeitskraft und wählen Sie sie aus.

1. Suchen Sie unter **Zusammenfassung der privaten Arbeitskraft** nach **VPC** und wählen Sie daneben **Entfernen** aus.

1. Wählen Sie **Entfernen** aus.

## Löschen einer Arbeitskraft über die Konsole
<a name="samurai-delete-vpc-workforce"></a>

Wenn Sie eine Arbeitskraft löschen, sollten ihr keine Teams zugeordnet sein. Sie können eine Arbeitskraft nur löschen, wenn der Personalstatus **Aktiv** oder **Fehlgeschlagen** lautet.

Verwenden Sie die folgenden Informationen, um eine Arbeitskraft mithilfe der Konsole zu löschen.

1. Navigieren Sie in Ihrer Konsole zu [Amazon SageMaker Runtime](https://console.aws.amazon.com/sagemaker).

1. Wählen Sie im linken Bereich die Option **Kennzeichnung von Arbeitskräften** aus.

1. Suchen Sie Ihre Arbeitskraft und wählen Sie sie aus.

1. Wählen Sie **Arbeitskraft löschen**.

1. Wählen Sie **Löschen**.

# Verwenden der SageMaker AWS KI-API zur Verwaltung einer VPC-Konfiguration
<a name="samurai-vpc-workforce-cli"></a>

Verwenden Sie die folgenden Abschnitte, um mehr über die Verwaltung einer VPCs Konfiguration zu erfahren und gleichzeitig den richtigen Zugriff auf das Arbeitsteam zu gewährleisten.

## Erstellen Sie eine Arbeitskraft mit einer VPC-Konfiguration
<a name="samurai-create-vpc-cli"></a>

Wenn das Konto bereits Arbeitskraft hat, müssen Sie es zuerst löschen. Sie können die Arbeitskraft auch mit der VPC-Konfiguration aktualisieren.

```
aws sagemaker create-workforce --cognito-config '{"ClientId": "app-client-id","UserPool": "Pool_ID",}' --workforce-vpc-config \       
" {\"VpcId\": \"vpc-id\", \"SecurityGroupIds\": [\"sg-0123456789abcdef0\"], \"Subnets\": [\"subnet-0123456789abcdef0\"]}" --workforce-name workforce-name
{
    "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name"
}
```

Beschreiben Sie die Arbeitskraft und stellen Sie sicher, dass der Status `Initializing` lautet.

```
aws sagemaker describe-workforce --workforce-name workforce-name
{
    "Workforce": {
        "WorkforceName": "workforce-name",
        "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name",
        "LastUpdatedDate": 1622151252.451,
        "SourceIpConfig": {
            "Cidrs": []
        },
        "SubDomain": "subdomain.us-west-2.sagamaker.aws.com",
        "CognitoConfig": {
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        "CreateDate": 1622151252.451,
        "WorkforceVpcConfig": {
            "VpcId": "vpc-id",
            "SecurityGroupIds": [
                "sg-0123456789abcdef0"
            ],
            "Subnets": [
                "subnet-0123456789abcdef0"
            ]
        },
        "Status": "Initializing"
    }
}
```

Navigieren Sie zur Amazon-VPC-Konsole. Wählen Sie im linken Bereich **Endpunkte** aus. In Ihrem Konto sollten zwei VPC-Endpunkte erstellt werden.

## Hinzufügen einer VPC-Konfiguration für Ihre Arbeitskraft
<a name="samurai-add-vpc-cli"></a>

Aktualisieren Sie private Mitarbeiter, die nicht zu VPC gehören, mithilfe des folgenden Befehls mit einer VPC-Konfiguration.

```
aws sagemaker update-workforce --workforce-name workforce-name\
--workforce-vpc-config "{\"VpcId\": \"vpc-id\", \"SecurityGroupIds\": [\"sg-0123456789abcdef0\"], \"Subnets\": [\"subnet-0123456789abcdef0\"]}"
```

Beschreiben Sie die Arbeitskraft und stellen Sie sicher, dass der Status `Updating` lautet.

```
aws sagemaker describe-workforce --workforce-name workforce-name
{
    "Workforce": {
        "WorkforceName": "workforce-name",
        "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name",
        "LastUpdatedDate": 1622151252.451,
        "SourceIpConfig": {
            "Cidrs": []
        },
        "SubDomain": "subdomain.us-west-2.sagamaker.aws.com",
        "CognitoConfig": {
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        "CreateDate": 1622151252.451,
        "WorkforceVpcConfig": {
            "VpcId": "vpc-id",
            "SecurityGroupIds": [
                "sg-0123456789abcdef0"
            ],
            "Subnets": [
                "subnet-0123456789abcdef0"
            ]
        },
        "Status": "Updating"
    }
}
```

Navigieren Sie zu Ihrer Amazon VPC-Konsole. Wählen Sie im linken **Bereich Endpunkte** aus. In Ihrem Konto sollten zwei VPC-Endpunkte erstellt werden.

## Entfernen einer VPC-Konfiguration aus Ihrer Arbeitskraft
<a name="samurai-remove-vpc-cli"></a>

Aktualisieren Sie eine private VPC-Arbeitskraft mit einer leeren VPC-Konfiguration, um VPC-Ressourcen zu entfernen.

```
aws sagemaker update-workforce --workforce-name workforce-name\ 
--workforce-vpc-config "{}"
```

Beschreiben Sie die Arbeitskraft und stellen Sie sicher, dass der Status `Updating` lautet.

```
aws sagemaker describe-workforce --workforce-name workforce-name
{
    "Workforce": {
        "WorkforceName": "workforce-name",
        "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name",
        "LastUpdatedDate": 1622151252.451,
        "SourceIpConfig": {
            "Cidrs": []
        },
        "SubDomain": "subdomain.us-west-2.sagamaker.aws.com",
        "CognitoConfig": {
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        "CreateDate": 1622151252.451,
        "Status": "Updating"
    }
}
```

Navigieren Sie zu Ihrer Amazon VPC-Konsole. Wählen Sie im linken **Bereich Endpunkte** aus. Die beiden VPC-Endpoints sollten gelöscht werden.

## Beschränken Sie den öffentlichen Zugriff auf das Worker-Portal und behalten Sie gleichzeitig den Zugriff über eine VPC bei
<a name="public-access-vpc"></a>

 Die Mitarbeiter in einem VPC- oder Nicht-VPC-Worker-Portal können die ihnen zugewiesenen Labeling-Job-Aufgaben sehen. Die Zuweisung erfolgt durch die Zuweisung von Mitarbeitern in einem Arbeitsteam über OIDC-Gruppen. Es liegt in der Verantwortung des Kunden, den Zugang zu seinem öffentlichen Worker-Portal zu beschränken, indem er `sourceIpConfig` in seiner Arbeitskraft einstellt. 

**Anmerkung**  
Sie können den Zugriff auf das Worker-Portal nur über die SageMaker API einschränken. Dies kann nicht über die Konsole erfolgen.

Verwenden Sie den folgenden Befehl, um den öffentlichen Zugriff auf das Worker-Portal einzuschränken.

```
aws sagemaker update-workforce --region us-west-2 \
--workforce-name workforce-demo --source-ip-config '{"Cidrs":["10.0.0.0/16"]}'
```

Sobald das `sourceIpConfig` für die Arbeitskraft festgelegt ist, können die Mitarbeiter in VPC auf das Worker-Portal zugreifen, jedoch nicht über das öffentliche Internet.

**Anmerkung**  
Sie können die `sourceIP` Einschränkung für das Worker-Portal in VPC nicht festlegen.

# Verschlüsselung von Ausgabedaten und Speicher-Volumes
<a name="sms-security"></a>

Mit Amazon SageMaker Ground Truth können Sie hochsensible Daten kennzeichnen, die Kontrolle über Ihre Daten behalten und bewährte Sicherheitsmethoden anwenden. Während Ihr Kennzeichnungsauftrag läuft, verschlüsselt Ground Truth Ihre Daten während der Übertragung und im Ruhezustand. Zusätzlich können Sie AWS Key Management Service (AWS KMS) mit Ground Truth verwenden, um Folgendes zu tun:
+ Verwenden Sie einen [vom Kunden verwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys), um Ihre Ausgabedaten zu verschlüsseln. 
+ Verwenden Sie den vom AWS KMS Kunden verwalteten Schlüssel mit Ihrem automatisierten Datenkennzeichnungsauftrag, um das Speichervolumen zu verschlüsseln, das an die Recheninstanz angehängt ist, die für Modelltraining und Inferenz verwendet wird. 

Anhand der Themen auf dieser Seite erfahren Sie mehr über diese Sicherheitsfunktionen von Ground Truth.

## Verwenden Sie Ihren KMS-Schlüssel, um die Ausgabedaten zu verschlüsseln
<a name="sms-security-kms-output-data"></a>

Optional können Sie bei der Erstellung eines Labeling-Jobs einen vom AWS KMS Kunden verwalteten Schlüssel angeben, den Ground Truth zur Verschlüsselung Ihrer Ausgabedaten verwendet. 

Wenn Sie keinen vom Kunden verwalteten Schlüssel angeben, verwendet Amazon SageMaker AI den Standard Von AWS verwalteter Schlüssel für Amazon S3 für das Konto Ihrer Rolle, um Ihre Ausgabedaten zu verschlüsseln.

Wenn Sie einen vom Kunden verwalteten Schlüssel angeben, müssen Sie zu dem unter [Verschlüsseln Sie Ausgabedaten und Speichervolumen mit AWS KMS](sms-security-kms-permissions.md) beschriebenen Schlüssel die erforderlichen Berechtigungen hinzufügen. Wenn Sie den API-Vorgang `CreateLabelingJob` verwenden, können Sie Ihre vom Kunden verwaltete Schlüssel-ID mithilfe des Parameters `[KmsKeyId](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobOutputConfig.html#sagemaker-Type-LabelingJobOutputConfig-KmsKeyId)` angeben. Im folgenden Verfahren erfahren Sie, wie Sie einen vom Kunden verwalteten Schlüssel hinzufügen, wenn Sie einen Kennzeichnungsauftrag über die Konsole erstellen.

**Um einen AWS KMS Schlüssel zur Verschlüsselung von Ausgabedaten hinzuzufügen (Konsole):**

1. Führen Sie die ersten 7 Schritte in [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md) aus.

1. Wählen Sie in Schritt 8 den Pfeil neben **Zusätzliche Konfiguration** aus, um diesen Abschnitt zu erweitern.

1. Wählen Sie **unter Verschlüsselungsschlüssel** den AWS KMS Schlüssel aus, den Sie zum Verschlüsseln der Ausgabedaten verwenden möchten.

1. Folgen Sie den übrigen Schritten in [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um einen Kennzeichnungsauftrag zu erstellen.

## Verwenden Sie Ihren KMS-Schlüssel, um das Speicher-Volume für die automatische Datenbeschriftung zu verschlüsseln (nur API)
<a name="sms-security-kms-storage-volume"></a>

Wenn Sie mithilfe der `CreateLabelingJob` API-Operation einen Daten-Labeling-Auftrag mit automatischer Datenbeschriftung erstellen, haben Sie die Möglichkeit, das Speichervolumen zu verschlüsseln, das mit den ML-Datenverarbeitungs-Instances verbunden ist, die das Trainings- und Inference-Aufträge ausführen. Um Ihrem Speichervolume Verschlüsselung hinzuzufügen, geben Sie mithilfe des Parameters `VolumeKmsKeyId` einen vom AWS KMS Kunden verwalteten Schlüssel ein. Weitere Informationen zu diesem Parameter finden Sie unter `[LabelingJobResourceConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobResourceConfig.html#sagemaker-Type-LabelingJobResourceConfig-VolumeKmsKeyId)`.

Wenn Sie eine Schlüssel-ID oder einen ARN für angeben`VolumeKmsKeyId`, muss Ihre SageMaker KI-Ausführungsrolle Aufrufberechtigungen enthalten`kms:CreateGrant`. Informationen zum Hinzufügen dieser Berechtigung zu einer Ausführungsrolle finden Sie unter [Erstellen Sie eine SageMaker KI-Ausführungsrolle für einen Ground-Truth-Labeling-Job](sms-security-permission-execution-role.md).

**Anmerkung**  
Wenn Sie bei der Erstellung eines Labeling-Jobs in der Konsole einen vom AWS KMS Kunden verwalteten Schlüssel angeben, wird dieser Schlüssel *nur* zur Verschlüsselung Ihrer Ausgabedaten verwendet. Er wird nicht dafür verwendet, das Speicher-Volume zu verschlüsseln, das an die ML-Datenverarbeitungs-Instances angehängt ist, die für das automatische Daten-Labeling verwendet werden.

# Authentifizierung der Arbeitskräfte und Einschränkungen
<a name="sms-security-workforce-authentication"></a>

Mit Hilfe von Ground Truth können Sie für die Bearbeitung von Kennzeichnungsaufträgen Ihre eigenen privaten Arbeitskräfte einsetzen. *Private Arbeitskräfte* ist ein abstrakter Begriff. Er bedeutet eine Personengruppe, die für Sie arbeitet. Jeder Kennzeichnungsauftrag wird mit einem Arbeitsteam erstellt, das sich aus Auftragnehmern unter Ihren Arbeitskräften zusammensetzt. Ground Truth unterstützt die Erstellung privater Arbeitskräfte mit Amazon Cognito. 

Ground-Truth-Arbeitskräfte werden einem Amazon Cognito-Benutzerpool zugeordnet. Ein Ground-Truth-Arbeitsteam wird einer Amazon Cognito-Benutzergruppe zugeordnet. Amazon Cognito verwaltet die Authentifizierung des Personals. Amazon Cognito unterstützt Open ID Connection (OIDC). Der Kunde kann mit seinem eigenen Identitätsanbieter (IdP) den Amazon Cognito-Verbund einrichten. 

Ground Truth erlaubt nur eine Belegschaft pro Konto und AWS Region. Arbeitskräfte haben jeweils eine eigene Anmelde-URL für das Arbeitsportal Ground Truth. 

Sie können Mitarbeiter auch auf einen CIDR-Adressbereich (Classless Inter-Domain Routing) block/IP beschränken. Das bedeutet, dass Annotatoren sich in einem bestimmten Netzwerk befinden müssen, um auf die Annotations-Site zugreifen zu können. Sie können für eine Mitarbeitergruppe bis zu zehn CIDR-Blöcke hinzufügen. Weitere Informationen hierzu finden Sie unter [Private Personalverwaltung mithilfe der SageMaker Amazon-API](sms-workforce-management-private-api.md).

Informationen dazu, wie Sie private Arbeitskräfte erstellen können, finden Sie unter [Erstellen Sie eine private Belegschaft (Amazon Cognito)](sms-workforce-create-private.md).

## Beschränken des Zugriffs auf Arbeitskrafttypen
<a name="sms-security-permission-condition-keys"></a>

Die Arbeitsteams von Amazon SageMaker Ground Truth lassen sich in eine von drei [Arten von Mitarbeitern](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management.html) einteilen: öffentliche Mitarbeiter (mit Amazon Mechanical Turk), private Mitarbeiter und Zulieferer. Um den Benutzerzugriff auf ein bestimmtes Arbeitsteam mithilfe eines dieser Typen oder des Arbeitsteams ARN einzuschränken, verwenden Sie `sagemaker:WorkteamType` and/or die `sagemaker:WorkteamArn` Bedingungstasten. Verwenden Sie als `sagemaker:WorkteamType`-Bedingungsschlüssel [Bedingungsoperatoren für Zeichenfolgen](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). Verwenden Sie für den `sagemaker:WorkteamArn`-Bedingungsschlüssel [Amazon-Ressourcennamen(ARN)-Zustandsoperatoren](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_ARN). Wenn der Benutzer versucht, einen Labeling-Job mit einem eingeschränkten Arbeitsteam zu erstellen, gibt SageMaker AI die Fehlermeldung Zugriff verweigert zurück. 

Die folgenden Richtlinien veranschaulichen verschiedene Möglichkeiten zur Verwendung der Bedingungsschlüssel `sagemaker:WorkteamType` und `sagemaker:WorkteamArn` mit geeigneten Bedingungsoperatoren und gültigen Bedingungswerten. 

Im folgenden Beispiel wird der `sagemaker:WorkteamType`-Bedingungsschlüssel zusammen mit dem `StringEquals`-Bedingungsoperator verwendet, um den Zugriff auf ein öffentliches Arbeitsteam zu beschränken. Sie akzeptiert Bedingungswerte im folgenden Format:`workforcetype-crowd`, wobei `public``private`, oder entsprechen *workforcetype* kann`vendor`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "RestrictWorkteamType",
            "Effect": "Deny",
            "Action": "sagemaker:CreateLabelingJob",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "sagemaker:WorkteamType": "public-crowd"
                }
            }
        }
    ]
}
```

------

Die folgenden Richtlinien zeigen, wie Sie mithilfe des `sagemaker:WorkteamArn`-Bedingungsschlüssels den Zugriff auf ein öffentliches Arbeitsteam einschränken. Die erste zeigt, wie man ihn mit einer gültigen IAM-Regex-Variante der ARN des Arbeitsteams und dem `ArnLike` Bedingungsoperator verwendet. Die zweite zeigt, wie Sie es mit dem `ArnEquals`-Bedingungsoperator und dem Arbeitsteam-ARN verwenden.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "RestrictWorkteamType",
            "Effect": "Deny",
            "Action": "sagemaker:CreateLabelingJob",
            "Resource": "*",
            "Condition": {
                "ArnLike": {
                    "sagemaker:WorkteamArn": "arn:aws:sagemaker:*:*:workteam/public-crowd/*"
                }
            }
        }
    ]
}
```

------

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "RestrictWorkteamType",
            "Effect": "Deny",
            "Action": "sagemaker:CreateLabelingJob",
            "Resource": "*",
            "Condition": {
                "ArnEquals": {
                    "sagemaker:WorkteamArn": "arn:aws:sagemaker:us-west-2:394669845002:workteam/public-crowd/default"
                }
            }
        }
    ]
}
```

------

# Überwachen des Status des Kennzeichnungsauftrags
<a name="sms-monitor-cloud-watch"></a>

Um den Status Ihrer Labeling-Jobs zu überwachen, können Sie eine [Amazon CloudWatch Events (CloudWatch Events](https://docs.aws.amazon.com/sagemaker/latest/dg/monitoring-cloudwatch.html#cloudwatch-metrics-ground-truth)) -Regel für Amazon SageMaker Ground Truth (Ground Truth) einrichten, um ein Ereignis an CloudWatch Events zu senden, wenn sich der Status eines Labeling-Jobs in `Completed``Failed`, `Stopped` oder wenn ein Mitarbeiter 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 Event-Regel zu erstellen, benötigen Sie eine AWS Identity and Access Management (IAM-) Rolle, der eine Events.amazonaws.com.rproxy.goskope.com-Vertrauensrichtlinie beigefü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"
    }
  ]
}
```

------

**Topics**
+ [CloudWatch Ereignisse an Ereignisse senden](#sms-cloud-watch-event-rule-setup)
+ [Einrichten eines Ziels für die Verarbeitung von Ereignissen](#sms-cloud-watch-events-labelingjob-notifications)
+ [Ablauf der Kennzeichnungsaufträge](#sms-labeling-job-expiration)
+ [Aufgaben ablehnen](#sms-decline-tasks)

## CloudWatch Ereignisse an Ereignisse senden
<a name="sms-cloud-watch-event-rule-setup"></a>

Verwenden Sie den [https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html](https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html)Befehl AWS Command Line Interface (AWS CLI), um eine CloudWatch Ereignisregel zu konfigurieren, um Statusaktualisierungen oder *Ereignisse* für Ihre Ground Truth-Labeling-Jobs abzurufen. 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 Ereignisregel so zu konfigurieren, dass alle Statusänderungen überwacht werden, verwenden Sie den folgenden Befehl und ersetzen Sie den Platzhaltertext. `"GTLabelingJobStateChanges"`Ersetzen Sie es beispielsweise durch einen eindeutigen Namen für die CloudWatch Events-Regel und *`"arn:aws:iam::111122223333:role/MyRoleForThisRule"`* durch die Amazon-Ressourcennummer (ARN) einer IAM-Rolle, der eine Events.amazonaws.com.rproxy.goskope.com-Vertrauensrichtlinie beigefü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 Ereignisregel erstellt, die Sie benachrichtigt, wenn ein Labeling-Job in us-west-2 (Oregon) auf geändert wird. `Completed`

```
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 Ereignisregel erstellt, die Sie benachrichtigt, wenn ein Labeling-Job in us-east-1 (Virginia) auf oder geändert wird. `Completed` `Failed`

```
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
```

 Weitere Informationen zu der `put-rule` Anfrage finden Sie unter [Event Patterns in CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CloudWatchEventsandEventPatterns.html) im *Amazon CloudWatch Events-Benutzerhandbuch*.

## Einrichten eines Ziels für die Verarbeitung von Ereignissen
<a name="sms-cloud-watch-events-labelingjob-notifications"></a>

Nachdem Sie eine Regel erstellt haben, werden Ereignisse, die den folgenden ähneln, 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 Ihres Labeling-Jobs ändert, verwenden Sie ein Verfahren unter [Einrichten von Amazon SNS SNS-Benachrichtigungen](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/US_SetupSNS.html) im * CloudWatch Amazon-Benutzerhandbuch*, um ein Amazon SNS-Thema einzurichten und Ihre E-Mail-Adresse zu abonnieren. Sobald Sie ein Thema erstellt haben, können Sie es zum Erstellen eines Ziels verwenden. 

**Um Ihrer Event-Regel ein Ziel hinzuzufügen CloudWatch**

1. Öffnen Sie die CloudWatch Konsole: [https://console.aws.amazon.com/cloudwatch/home](https://console.aws.amazon.com/cloudwatch/home)

1. Wählen Sie im Navigationsbereich **Regeln** aus.

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

1. Wählen Sie **Actions** und anschließend **Bearbeiten**.

1. Wählen Sie unter **Ziele** die Option **Ziel hinzufügen** und wählen Sie den AWS Service aus, der ausgeführt werden soll, wenn ein Ereignis zur Änderung des Status eines Labeling-Jobs erkannt wird. 

1. Konfigurieren Sie Ihr Ziel. Anweisungen finden Sie im Thema zum Konfigurieren eines Ziels in der [AWS Dokumentation für diesen Service](https://docs.aws.amazon.com/index.html).

1. Wählen Sie **Details konfigurieren**.

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

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

1. Wählen Sie **Regel aktualisieren** aus.

## Ablauf der Kennzeichnungsaufträge
<a name="sms-labeling-job-expiration"></a>

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](sms-reusing-data.md).

## Aufgaben ablehnen
<a name="sms-decline-tasks"></a>

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 ([https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-NumberOfHumanWorkersPerDataObject](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-NumberOfHumanWorkersPerDataObject)) die Aufgabe ablehnt, wird das Datenobjekt als abgelaufen markiert und nicht an zusätzliche Worker gesendet.

# Verwenden Sie Amazon SageMaker Ground Truth Plus, um Daten zu kennzeichnen
<a name="gtp"></a>

Amazon SageMaker Ground Truth Plus ist ein schlüsselfertiger Datenkennzeichnungsservice, bei dem fachkundige Mitarbeiter eingesetzt werden, um schnell hochwertige Anmerkungen zu erstellen und die Kosten um bis zu 40% zu senken. Mit SageMaker Ground Truth Plus können Datenwissenschaftler und Unternehmensmanager wie Data Operations Manager und Programmmanager hochwertige Trainingsdatensätze erstellen, ohne Kennzeichnungsanwendungen erstellen und Labelling-Mitarbeiter selbst verwalten zu müssen. Sie können mit Amazon SageMaker Ground Truth Plus beginnen, indem Sie Daten zusammen mit den Kennzeichnungsanforderungen in Amazon S3 hochladen. 
<a name="why-use-gtp"></a>
**Warum SageMaker Ground Truth Plus verwenden?**  
Um ein Modell für Machine Learning (ML) zu trainieren, benötigen Datenwissenschaftler große, hochwertige, beschriftete Datensätze. Mit zunehmender Verbreitung von ML steigt auch der Bedarf an Beschriftungen. Dies zwingt Datenwissenschaftler, Wochen damit zu verbringen, Workflows für das Daten-Labeling zu entwickeln und eine Belegschaft für das Daten-Labeling zu verwalten. Leider verlangsamt dies die Innovation und erhöht die Kosten. Um sicherzustellen, dass Datenwissenschaftler ihre Zeit mit der Erstellung, Training und Bereitstellung von ML-Modellen verbringen können, beauftragen Datenwissenschaftler in der Regel andere interne Teams, bestehend aus Data Operations Managern und Programmmanagern, mit der Erstellung hochwertiger Trainingsdatensätze. Diese Teams haben jedoch in der Regel keinen Zugang zu den Fähigkeiten, die für die Bereitstellung hochwertiger Trainingsdatensätze erforderlich sind, was sich auf die ML-Ergebnisse auswirkt. Daher suchen Sie nach einem Partner für Daten-Labeling, der Ihnen helfen kann, qualitativ hochwertige Trainingsdatensätze in großem Maßstab zu erstellen, ohne ihre internen Ressourcen zu verbrauchen.

Wenn Sie die Daten hochladen, richtet SageMaker Ground Truth Plus die Workflows zur Datenkennzeichnung ein und führt sie in Ihrem Namen durch. Von dort aus führt eine fachkundige Belegschaft, die in einer Vielzahl von Aufgaben des maschinellen Lernens (ML) geschult ist, die Datenkennzeichnung durch. SageMaker Ground Truth Plus bietet derzeit zwei Arten von Fachkräften: eine von Amazon angestellte Belegschaft und eine kuratierte Liste von Drittanbietern. SageMaker Ground Truth Plus bietet Ihnen die Flexibilität, das Personal für die Etikettierung auszuwählen. AWS Experten wählen auf der Grundlage Ihrer Projektanforderungen das beste Personal für die Etikettierung aus. Wenn Sie beispielsweise Personen benötigen, die sich mit der Kennzeichnung von Audiodateien auskennen, geben Sie dies in den Richtlinien für SageMaker Ground Truth Plus an, und der Service wählt automatisch Labeler mit diesen Fähigkeiten aus. 

**Wichtig**  
SageMaker Ground Truth Plus unterstützt keine PHI-, PCI- oder FedRAMP-zertifizierten Daten, und Sie sollten diese Daten nicht an SageMaker Ground Truth Plus weitergeben. 
<a name="how-it-works-gtp"></a>
**Wie funktioniert SageMaker Ground Truth Plus?**  
Ein Workflow besteht aus fünf Hauptkomponenten.
+ Ein Projekt beantragen
+ Erstellen eines Projektteams
+ Zugriff auf das Projektportal, um den Fortschritt der Trainingsdatensätze zu überwachen und beschriftete Daten zu überprüfen
+ Einen Batch erstellen
+ Empfangen der beschrifteten Daten
<a name="how-do-i-use-gtp"></a>
**Wie verwende ich SageMaker Ground Truth Plus?**  
Wenn Sie SageMaker Ground Truth Plus zum ersten Mal verwenden, verwenden Sie [Erste Schritte mit Amazon SageMaker Ground Truth Plus.](gtp-getting-started.md) Get Started. Um über die SageMaker KI-Konsole auf SageMaker Ground Truth Plus zugreifen zu können, müssen Sie sich in USA Ost (Nord-Virginia) befinden (`us-east-1`).

# Erste Schritte mit Amazon SageMaker Ground Truth Plus.
<a name="gtp-getting-started"></a>

Der Leitfaden zeigt, wie Sie die notwendigen Schritte ausführen, um ein Amazon SageMaker Ground Truth Plus-Projekt zu starten, Labels zu überprüfen und die Voraussetzungen für SageMaker Ground Truth Plus zu erfüllen.

Um mit der Verwendung von SageMaker Ground Truth Plus zu beginnen, überprüfen Sie [Voraussetzungen für die Einrichtung von Amazon SageMaker Ground Truth Plus](gtp-getting-started-prerequisites.md) und[Kernkomponenten von Amazon SageMaker Ground Truth Plus](gtp-getting-started-core-components.md).

# Voraussetzungen für die Einrichtung von Amazon SageMaker Ground Truth Plus
<a name="gtp-getting-started-prerequisites"></a>

Auf der folgenden Seite wird beschrieben, wie Sie sich für ein AWS Konto registrieren und einen Administratorbenutzer in Ihrem Konto konfigurieren. Wenn Sie bereits ein AWS Konto und einen Benutzer eingerichtet haben, können Sie diese Seite überspringen.

## Melde dich an für ein AWS-Konto
<a name="sign-up-for-aws"></a>

Wenn Sie noch keine habenAWS-Konto, führen Sie die folgenden Schritte aus, um eine zu erstellen.

**Um sich für eine anzumelden AWS-Konto**

1. Öffnen Sie [https://portal.aws.amazon.com/billing/die Anmeldung.](https://portal.aws.amazon.com/billing/signup)

1. Folgen Sie den Online-Anweisungen.

   Während der Anmeldung erhalten Sie einen Telefonanruf oder eine Textnachricht und müssen einen Verifizierungscode über die Telefontasten eingeben.

   Wenn Sie sich für eine anmeldenAWS-Konto, *Root-Benutzer des AWS-Kontos*wird eine erstellt. Der Root-Benutzer hat Zugriff auf alle AWS-Services und Ressourcen des Kontos. Als bewährte Sicherheitsmethode weisen Sie einem Benutzer Administratorzugriff zu und verwenden Sie nur den Root-Benutzer, um [Aufgaben auszuführen, die Root-Benutzerzugriff erfordern](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWSsendet Ihnen nach Abschluss des Anmeldevorgangs eine Bestätigungs-E-Mail. Sie können Ihre aktuellen Kontoaktivitäten jederzeit einsehen und Ihr Konto verwalten, indem Sie zu [https://aws.amazon.com/](https://aws.amazon.com/)gehen und **Mein Konto** auswählen.

## Erstellen eines Benutzers mit Administratorzugriff
<a name="create-an-admin"></a>

Nachdem Sie sich für einen angemeldet habenAWS-Konto, sichern Sie Ihren Root-Benutzer des AWS-KontosAWS IAM Identity Center, aktivieren und erstellen Sie einen Administratorbenutzer, sodass Sie den Root-Benutzer nicht für alltägliche Aufgaben verwenden.

**Sichern Sie Ihre Root-Benutzer des AWS-Kontos**

1.  Melden Sie sich [AWS-Managementkonsole](https://console.aws.amazon.com/)als Kontoinhaber an, indem Sie **Root-Benutzer** auswählen und Ihre AWS-Konto E-Mail-Adresse eingeben. Geben Sie auf der nächsten Seite Ihr Passwort ein.

   Hilfe bei der Anmeldung mit dem Root-Benutzer finden Sie unter [Anmelden als Root-Benutzer](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) im *AWS-Anmeldung Benutzerhandbuch* zu.

1. Aktivieren Sie die Multi-Faktor-Authentifizierung (MFA) für den Root-Benutzer.

   Anweisungen finden Sie unter [Aktivieren eines virtuellen MFA-Geräts für Ihren AWS-Konto Root-Benutzer (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) im *IAM-Benutzerhandbuch*.

**Erstellen eines Benutzers mit Administratorzugriff**

1. Aktivieren Sie das IAM Identity Center.

   Anweisungen finden Sie unter [Aktivieren AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) im *AWS IAM Identity Center Benutzerhandbuch*.

1. Gewähren Sie einem Administratorbenutzer im IAM Identity Center Benutzerzugriff.

   *Ein Tutorial zur Verwendung von IAM-Identity-Center-Verzeichnis als Identitätsquelle finden Sie IAM-Identity-Center-Verzeichnis im Benutzerhandbuch unter [Benutzerzugriff mit der Standardeinstellung konfigurieren](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html). AWS IAM Identity Center*

**Anmelden als Administratorbenutzer**
+ Um sich mit Ihrem IAM-Identity-Center-Benutzer anzumelden, verwenden Sie die Anmelde-URL, die an Ihre E-Mail-Adresse gesendet wurde, als Sie den IAM-Identity-Center-Benutzer erstellt haben.

  Hilfe bei der Anmeldung mit einem IAM Identity Center-Benutzer finden Sie [im *AWS-AnmeldungBenutzerhandbuch* unter Anmeldung beim AWS Access-Portal](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html).

**Weiteren Benutzern Zugriff zuweisen**

1. Erstellen Sie im IAM-Identity-Center einen Berechtigungssatz, der den bewährten Vorgehensweisen für die Anwendung von geringsten Berechtigungen folgt.

   Anweisungen hierzu finden Sie unter [ Berechtigungssatz erstellen](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) im *AWS IAM Identity Center Benutzerhandbuch*.

1. Weisen Sie Benutzer einer Gruppe zu und weisen Sie der Gruppe dann Single Sign-On-Zugriff zu.

   Eine genaue Anleitung finden Sie unter [ Gruppen hinzufügen](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) im *AWS IAM Identity Center Benutzerhandbuch*.

# Kernkomponenten von Amazon SageMaker Ground Truth Plus
<a name="gtp-getting-started-core-components"></a>

Die folgenden Begriffe sind wichtig, um die Funktionen von SageMaker Ground Truth Plus zu verstehen:
+ **Projekt**: Jedes qualifizierte Engagement mit einem AWS Experten führt zu einem SageMaker Ground Truth Plus-Projekt. Ein Projekt kann sich in der Pilot- oder Produktionsphase befinden.
+ **Batch**: Ein Batch ist eine Sammlung ähnlicher wiederkehrender Datenobjekte wie Bilder, Videoframes und Text, die beschriftet werden sollen. Ein Projekt kann mehrere Batches enthalten.
+ **Metriken**: Metriken sind Daten über Ihr SageMaker Ground Truth Plus-Projekt für ein bestimmtes Datum oder über einen bestimmten Zeitraum.
+ **Aufgabentyp**: SageMaker Ground Truth Plus unterstützt fünf Aufgabentypen für die Datenkennzeichnung. Sie können auch einen benutzerdefinierten Aufgabentyp verwenden. Dazu gehören Text, Bild, Video, Audio und 3D-Punktwolke.
+ **Datenobjekte**: Einzelne Elemente, die beschriftet werden sollen.

# Beantragung eines Projekts
<a name="gtp-request-project"></a>

Wenn Sie ein neues Amazon SageMaker Ground Truth Plus-Projekt beantragen, wird die Zusammenarbeit mit dem SageMaker Ground Truth Plus-Team eingeleitet, das daran arbeitet, Ihre Anforderungen zu verstehen und einen hochwertigen, beschrifteten Datensatz zu liefern, der auf Ihren Anwendungsfall zugeschnitten ist. In der Projektanforderung können Sie Details zu Ihrer Labeling-Aufgabe angeben, z. B. den Aufgabentyp, die Datensatzgröße und alle sensiblen Daten. Sie müssen auch eine AWS IAM-Rolle mit Berechtigungen für SageMaker Ground Truth Plus angeben, um auf Ihre Daten zuzugreifen und den Labeling-Job auszuführen. Auf der folgenden Seite erfahren Sie, wie Sie mithilfe der SageMaker AI-Konsole eine neue Projektanfrage erstellen.

Gehen Sie folgendermaßen vor, um ein Projekt anzufordern:

1. Wählen Sie unter dem Tab Ground Truth von Amazon SageMaker AI **Plus** aus.

1. Wählen Sie auf der **SageMaker Ground Truth Plus-Seite** die Option **Projekt anfragen** aus.

1. Eine Seite mit dem Titel **Projekt anfragen** wird geöffnet. Die Seite enthält Felder für **allgemeine Informationen** und eine **Projektübersicht**. Geben Sie die folgenden Informationen ein

   1. Geben Sie unter **Allgemeine Informationen** Ihren **Vornamen**, **Nachnamen** und Ihre **geschäftliche E-Mail-Adresse** ein. Ein AWS Experte verwendet diese Informationen, um Sie zu kontaktieren, um das Projekt zu besprechen, nachdem Sie die Anfrage eingereicht haben.

   1. Geben Sie unter **Projektübersicht** Ihren **Projektnamen** und Ihre **Projektbeschreibung** ein. Wählen Sie den **Aufgabentyp** basierend auf Ihren Daten und Ihrem Anwendungsfall aus. Sie können auch angeben, ob Ihre Daten persönlich identifizierbare Informationen (PII) enthalten. 

   1. Erstellen oder wählen Sie eine IAM-Rolle aus, die SageMaker Ground Truth Plus Berechtigungen zur Ausführung eines Labeling-Jobs gewährt, indem Sie eine der folgenden Optionen wählen. 

      1. Sie können **eine IAM-Rolle erstellen**, die Zugriff auf jeden von Ihnen angegebenen S3-Bucket bietet.

      1. Sie können **einen benutzerdefinierten IAM-Rollen-ARN eingeben**.

      1. Sie haben die Möglichkeit eine vorhandene Rolle zu verwenden.

      1. Wenn Sie eine vorhandene Rolle oder einen benutzerdefinierten IAM-Rollen-ARN verwenden, stellen Sie sicher, dass Sie über die folgende IAM-Rollen- und Vertrauensrichtlinie verfügen.

         IAM role (IAM-Rolle)

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

****  

         ```
         {
             "Version":"2012-10-17",		 	 	 
             "Statement": [
                 {
                     "Effect": "Allow",
                     "Action": [
                         "s3:GetObject",
                         "s3:GetBucketLocation",
                         "s3:ListBucket",
                         "s3:PutObject"
                     ],
                     "Resource": [
                         "arn:aws:s3:::your-bucket-name",
                         "arn:aws:s3:::your-bucket-name/*"
                     ]
                 }
             ]
         }
         ```

------

         Vertrauensrichtlinie

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

****  

         ```
         {
             "Version":"2012-10-17",		 	 	 
             "Statement": [
                 {
                     "Effect": "Allow",
                     "Principal": {
                         "Service": "sagemaker-ground-truth-plus.amazonaws.com"
                     },
                     "Action": "sts:AssumeRole"
                 }
             ]
         }
         ```

------

1. Wählen Sie **Projekt anfragen** aus.

Sobald Sie ein Projekt erstellt haben, finden Sie es auf der **SageMaker Ground Truth Plus-Seite** im Bereich Projekte. Der Projektstatus sollte **Überprüfung läuft** lauten

**Anmerkung**  
Sie können nicht mehr als 5 Projekte mit dem Status **Überprüfung in Bearbeitung** haben.

# Erstellen eines Projektteams
<a name="gtp-project-team"></a>

Ein Projektteam bietet den Mitgliedern Ihrer Organisation oder Ihres Teams Zugriff, um Projekte zu verfolgen, Kennzahlen einzusehen und Anmerkungen zu überprüfen. Sie können ein SageMaker Ground Truth Plus-Projektteam zusammenstellen, sobald Sie Ihre Daten in einem Amazon-S3-Bucket geteilt haben.

Es gibt zwei Möglichkeiten, Teammitglieder mithilfe von Amazon Cognito hinzuzufügen:

1. Erstellen einer neuen Amazon-Cognito-Benutzergruppe

   1. Geben Sie einen **Namen für die Amazon Cognito-Benutzergruppe** ein. Dieser Name kann nicht geändert werden.

   1. Geben Sie die E-Mail-Adressen von bis zu 50 Teammitgliedern in das Feld **E-Mail-Adressen** ein. Die Adressen müssen durch ein Komma voneinander getrennt werden.

   1. Wählen Sie **Projektteam** anlegen.  
![\[Beispiel: Abschnitt Projektteam erstellen in der Konsole\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtb-project-team.png)

   1. Ihre Teammitglieder erhalten eine E-Mail, in der sie eingeladen werden, dem SageMaker Ground Truth Plus-Projektteam beizutreten, wie in der folgenden Abbildung dargestellt.   
![\[Beispiel für die Vorschau einer Einladungs-E-Mail\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtb-email-preview.png)

1. Auftragnehmer aus Amazon Cognito-Benutzergruppen importieren.

   1. Wählen Sie einen Benutzer-Pool aus, den Sie erstellt haben. Benutzer-Pools benötigen eine Domain und eine existierende Benutzergruppe. Wenn ein Fehler gemeldet wird, weil die Domain fehlt, legen Sie eine Domain in den **Domainname**-Optionen auf der Seite **App-Integration** der Amazon Cognito-Konsole für Ihre Gruppe fest.

   1. Wählen Sie einen App-Client aus. Wir empfehlen die Verwendung eines von Amazon SageMaker AI generierten Clients.

   1. Wählen Sie eine Benutzergruppe im Pool aus, um deren Mitglieder zu importieren.

   1. Wählen Sie **Projektteam** anlegen.

Sie können die Rollen von Teammitgliedern in der AWS Konsole sehen und verwalten.

**So fügen Sie Teammitglieder hinzu, nachdem Sie das Projektteam erstellt haben:**

1. Wählen Sie im Bereich **Mitglieder** die Option **Neue Mitglieder einladen** aus.

1. Geben Sie die E-Mail-Adressen von bis zu 50 Teammitgliedern in das Feld **E-Mail-Adressen** ein. Die Adressen müssen durch ein Komma voneinander getrennt werden.

1. Wählen Sie **Neue Mitglieder einladen**

**Um bestehende Teammitglieder zu löschen:**

1. Wählen Sie im Bereich **Mitglieder** das Teammitglied aus, das gelöscht werden soll.

1. Wählen Sie **Löschen** aus.

Sobald Sie Ihrem Projektteam Mitglieder hinzugefügt haben, können Sie das Projektportal öffnen, um auf Ihre Projekte zuzugreifen.

# Projektportal
<a name="gtp-project-portal"></a>

Nachdem Sie das Aufnahmeformular erfolgreich eingereicht und ein Projektteam zusammengestellt haben, können Sie auf das SageMaker Ground Truth Plus-Projekt zugreifen, indem Sie auf der AWS Konsole das **Projektportal öffnen** auswählen.

Jedes Projekt besteht aus einem oder mehreren Batches. Ein *Stapel* ist eine Sammlung sich wiederholender ähnlicher Datenobjekte (Text, Bild, Videoframe und Punktwolke), die beschriftet werden sollen. Das Projektportal bietet Ihnen Transparenz über den Daten-Labeling-Prozess. Sie können über ein Projekt auf dem Laufenden bleiben, Stapel innerhalb eines Projekts erstellen, den Fortschritt der Datensätze über mehrere Projekte hinweg überprüfen und Projektkennzahlen analysieren. Das Projektportal ermöglicht es Ihnen auch, eine Teilmenge der beschrifteten Daten zu überprüfen und Feedback zu geben. Sie können die Spalten konfigurieren, die in Ihrer Projekt- und Batchtabelle angezeigt werden.

![\[Das Projektportal für Amazon SageMaker Ground Truth Plus.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtp-project-how-it-works.png)


Sie können das SageMaker Ground Truth Plus-Projektportal verwenden, um die folgenden Details zu Ihrem Projekt nachzuverfolgen.

**Projektname**: Jedes Projekt wird mit einem eindeutigen Namen identifiziert.

**Status**: Ein SageMaker Ground Truth Plus-Projekt hat einen der folgenden Statustypen:

1. **Überprüfung läuft**: Sie haben das Projektantragsformular erfolgreich eingereicht. Ein AWS Experte prüft derzeit Ihre Anfrage.

1. **Anfrage genehmigt**: Ihre Projektanfrage wurde genehmigt. Sie können Ihre Daten jetzt teilen, indem Sie im Projektportal einen neuen Stapel erstellen.

1. **Workflow-Design und Einrichtungsfortschritt**: Ein AWS Experte richtet Ihr Projekt ein.

1. **Pilotprojekt läuft**: Die Objektkennzeichnung für das Projekt in der Pilotphase ist derzeit im Gange.

1. **Pilotprojekt abgeschlossen**: Die Objektkennzeichnung ist abgeschlossen und die beschrifteten Daten sind in Ihrem Amazon-S3-Bucket gespeichert.

1. **Preisgestaltung abgeschlossen**: Ein AWS Experte teilt Ihnen die Preise für das Produktionsprojekt mit.

1. **Vertrag abgeschlossen**: Der Vertrag ist abgeschlossen.

1. **Produktion läuft**: Die Kennzeichnung für das Projekt in der Produktionsphase ist im Gange.

1. **Produktion abgeschlossen**: Die Objektkennzeichnung ist abgeschlossen und die beschrifteten Daten werden in Ihrem Amazon-S3-Bucket gespeichert.

1. **Unterbrochen**: Das Projekt wird derzeit auf Ihren Wunsch hin angehalten.

**Aufgabentyp**: Mit SageMaker Ground Truth Plus können Sie fünf Aufgabentypen kennzeichnen, darunter Text, Bild, Video, Audio und Punktwolke.

**Batches**: Gesamtzahl der Batches innerhalb eines Projekts.

**Erstellungsdatum des Projekts**: Startdatum eines Projekts.

**Objekte insgesamt**: Gesamtzahl der Objekte, die über alle Stapel hinweg beschriftet werden sollen.

**Abgeschlossene Objekte**: Anzahl der beschrifteten Objekte.

**Verbleibende Objekte**: Anzahl der Objekte, die noch beschriftet werden müssen.

**Fehlgeschlagene Objekte**: Anzahl der Objekte, die aufgrund eines Problems mit den Eingabedaten nicht beschriftet werden können.

# Einen Batch erstellen
<a name="gtp-create-batches"></a>

Sie können das Projektportal verwenden, um Stapel für ein Projekt zu erstellen, nachdem der Projektstatus auf **Anfrage genehmigt** geändert wurde.

![\[Das Aufnahmeformular für die Erstellung eines Batches mit Amazon SageMaker Ground Truth Plus.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtp-create-batch.png)


Gehen Sie wie folgt vor, um einen Stapel zu erstellen:

1. Wählen Sie ein Projekt aus, indem Sie den Projektnamen wählen.

1. Eine Seite mit dem Projektnamen wird geöffnet. Wählen Sie im Abschnitt **Batches** die Option **Stapel erstellen** aus.

1. Geben Sie den **Batchnamen**, die **Batch-Beschreibung**, den **S3-Speicherort für Eingabedatensätze** und den **S3-Speicherort für Ausgabedatensätze** ein.

1. Wählen Sie **Absenden** aus.

**Um einen Stapel erfolgreich zu erstellen, stellen Sie sicher, dass die folgenden Kriterien erfüllt sind:**
+ Ihre Daten befinden sich in der Region USA Ost (Nord-Virginia).
+ Die maximale Größe für jede Datei beträgt nicht mehr als 2 Gigabyte.
+ Die maximale Anzahl von Dateien in einem Stapel beträgt 10 000.
+ Die Gesamtgröße eines Stapels beträgt weniger als 100 Gigabyte.
+ Sie haben nicht mehr als 5 Stapel mit dem Status **Datenübertragung wird ausgeführt**.

**Anmerkung**  
Sie können keinen Stapel erstellen, bevor sich der Projektstatus auf **Anfrage genehmigt** ändert.

# Batch-Werte
<a name="gtp-review-metrics"></a>

Metriken sind Daten über Ihr SageMaker Ground Truth Plus-Projekt für ein bestimmtes Datum oder über einen bestimmten Zeitraum.

Sie können die Metriken für alle Batches überprüfen oder einen Batch Ihrer Wahl auswählen, wie in der folgenden Abbildung dargestellt.

![\[Beispiel-Histogramme von Metriken für Ihre Batches in der Konsole\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtb-review-metrics.png)


Sie können die folgenden Metriken zu dem Batch überprüfen:

**Objekte insgesamt**: Gesamtzahl der Objekte in einem Batch oder über alle Batches hinweg.

**Fertiggestellte Objekte pro Tag**: Gesamtzahl der Objekte, die an einem bestimmten Datum oder in einem bestimmten Zeitraum beschriftet wurden.

**Fertiggestellte Labels pro Tag**: Gesamtzahl der Beschriftungen, die an einem bestimmten Datum oder in einem bestimmten Zeitraum fertiggestellt wurden. Ein Objekt kann über mehrere Beschriftungen verfügen.

# Batchdetails
<a name="gtp-review-batches"></a>

Jedes Amazon SageMaker Ground Truth Plus-Projekt besteht aus einem oder mehreren Batches. Jeder Batch besteht aus Datenobjekten, die beschriftet werden sollen. Sie können alle Batches für Ihr Projekt mithilfe des Projektportals anzeigen, wie in der folgenden Abbildung dargestellt. 

![\[Beispiel-Batches für Ihr Projekt im Projektportal\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtb-review-batch.png)


Sie können das SageMaker Ground Truth Plus-Projektportal verwenden, um die folgenden Details zu jedem Batch nachzuverfolgen: 

**Batchname**: Jeder Batch wird mit einem eindeutigen Batchnamen identifiziert.

**Status**: Ein SageMaker Ground Truth Plus-Batch hat einen der folgenden Statustypen:

1. **Anfrage gesendet**: Sie haben erfolgreich einen neuen Batch eingereicht.

1. **Datenübertragung fehlgeschlagen**: Die Datenübertragung ist mit Fehlern fehlgeschlagen. Überprüfen Sie die Fehlerursache und erstellen Sie nach der Behebung des Fehlers einen neuen Batch.

1. **Empfangene Daten**: Wir haben Ihre unbeschrifteten Eingabedaten erhalten.

1. **In Bearbeitung**: Die Datenbeschriftung ist im Gange.

1. **Bereit zur Überprüfung**: Die Datenbeschriftung ist abgeschlossen. Eine Teilmenge der beschrifteten Objekte aus dem Batch steht für Sie zur Überprüfung bereit. Dieser Schritt ist optional.

1. **Einreichung der Bewertung läuft**: Feedback zur Bewertung wird derzeit bearbeitet.

1. **Überprüfung abgeschlossen**: Sie haben den Batch erfolgreich überprüft. Als Nächstes müssen Sie ihn akzeptieren oder ablehnen. Diese Aktion kann nicht mehr rückgängig gemacht werden.

1. **Akzeptiert**: Sie haben die beschriftetDaten akzeptiert und werden sie in Kürze in Ihrem Amazon-S3-Bucket erhalten.

1. **Abgelehnt**: Die beschrifteten Daten müssen überarbeitet werden.

1. **Zur Überarbeitung gesendet**: Beschriftete Daten werden zur Überarbeitung gesendet. Sie können den Batch überprüfen, nachdem sein Status auf **Bereit zur Überprüfung** geändert wurde.

1. **Bereit für die Lieferung**: Die beschrifteten Daten können jetzt in Ihren Amazon-S3-Bucket übertragen werden.

1. **Gelieferte Daten**: Die Objektbeschriftung ist abgeschlossen und die beschrifteten Daten werden in Ihrem Amazon-S3-Bucket gespeichert.

1. **Pausiert**: Der Batch wurde auf Ihre Anfrage hin angehalten.

**Aufgabentyp**: Mit SageMaker Ground Truth Plus können Sie fünf Aufgabentypen beschriften, darunter Text, Bild, Video, Audio und Punktwolke.

**Erstellungsdatum des Batches**: Datum, an dem der Batch erstellt wurde.

**Objekte insgesamt**: Gesamtzahl der Objekte, die in einem Batch beschriftet werden sollen.

**Abgeschlossene Objekte**: Anzahl der beschrifteten Objekte.

**Verbleibende Objekte**: Anzahl der Objekte, die noch beschriftet werden müssen.

**Fehlgeschlagene Objekte**: Anzahl der Objekte, die aufgrund eines Problems mit den Eingabedaten nicht beschriftet werden können.

**Zu überprüfende Objekte**: Anzahl der Objekte, die für Ihre Überprüfung bereit sind.

**Objekte mit Feedback**: Anzahl der Objekte, die Feedback von den Teammitgliedern erhalten haben.

Mit SageMaker Ground Truth Plus können Sie einen Beispielsatz Ihrer beschrifteten Daten (die während des ersten Beratungsgesprächs ermittelt wurden) über die in der folgenden Abbildung gezeigte Überprüfungs-UI überprüfen.

![\[Ein Screenshot des Projektportals, das zur Überprüfung von Batches verwendet wurde.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/gtb-review-ui.png)


Das Portal ermöglicht es Ihren Projektteammitgliedern und Ihnen, für jeden Batch einen kleinen Beispielsatz der beschrifteten Objekte zu überprüfen. Über diese Benutzeroberfläche können Sie Feedback zu jedem beschrifteten Objekt innerhalb dieser Teilmenge geben. Die Benutzeroberfläche für Bewertungen ermöglicht es Ihnen, durch die Teilmenge der beschrifteten Objekte zu navigieren und Feedback zu diesen beschrifteten Objekten zu geben.

Sie können die folgenden Aktionen mit der Überprüfungs-UI durchführen.
+ Verwenden Sie die Pfeilsteuerelemente unten links, um durch die Datenobjekte zu navigieren.
+ Sie können zu jedem Objekt Feedback geben. Der **Feedback-Bereich** befindet sich im rechten Bereich. Wählen Sie **Senden**, um Feedback für alle Bilder einzureichen.
+ Verwenden Sie die Bildsteuerelemente in der unteren Ablage, um zu zoomen, zu schwenken und den Kontrast zu steuern.
+ Wenn Sie zurückkehren möchten, um Ihre Überprüfung zu beenden, wählen Sie oben rechts die Option **Beenden und später fortsetzen** aus.
+ Wählen Sie **Speichern**, um Ihren Fortschritt zu speichern. Ihr Fortschritt wird außerdem alle 15 Minuten automatisch gespeichert.
+ Um die Überprüfungs-UI zu verlassen, wählen Sie in der oberen rechten Ecke der Überprüfungs-UI die Option **Schließen** aus.
+ Sie können die **Beschriftungsattribute** und **Frame-Attribute** für jeden Frame mithilfe des Fensters auf der rechten Seite überprüfen. In dieser Aufgabe können Sie keine neuen Objekte erstellen oder bestehende Objekte ändern.

# Batches annehmen oder ablehnen
<a name="gtp-accept-reject-batch"></a>

Nachdem Sie einen Stapel geprüft haben, müssen Sie entscheiden, ob Sie ihn annehmen oder ablehnen möchten.

Wenn Sie einen Stapel akzeptieren, wird die Ausgabe dieses Beschriftungsauftrages in dem von Ihnen angegebenen Amazon-S3-Bucket platziert. Sobald die Daten an Ihren S3-Bucket übermittelt wurden, ändert sich der Status Ihres Batches von **Akzeptiert** in **Daten geliefert**.

Wenn Sie einen Stapel ablehnen, können Sie uns Feedback geben und Ihre Gründe für die Ablehnung des Stapels erläutern.

Mit SageMaker Ground Truth Plus können Sie Feedback sowohl auf Datenobjektebene als auch auf Batch-Ebene geben. Sie können Feedback zu Datenobjekten über die Überprüfungsoberfläche geben. Sie können das Projektportal verwenden, um Feedback zu jedem Stapel zu geben. Wenn Sie einen Stapel ablehnen, kontaktiert Sie ein AWS Experte, um den Nacharbeitsprozess und die nächsten Schritte für den Stapel festzulegen. 

**Anmerkung**  
 Das Annehmen oder Ablehnen eines Batches ist eine einmalige Aktion und kann nicht rückgängig gemacht werden. Es ist notwendig, jeden Stapel des Projekts entweder anzunehmen oder abzulehnen. 

# Arbeitskräfte
<a name="sms-workforce-management"></a>

Die *Arbeitskräfte* sind die Gruppe von Auftragnehmern, die Sie zum Beschriften Ihres Datensatzes ausgewählt haben. Sie können entweder die von einem Anbieter verwalteten Amazon Mechanical Turk-Workforce verwenden oder private Workforce für das Beschriften oder die Überprüfung Ihres Datensatzes erstellen. Unabhängig davon, welche Workforce Sie wählen, kümmert sich Amazon SageMaker AI um das Senden von Aufgaben an Auftragnehmer. 

Wenn Sie private Workforce verwenden, erstellen Sie ebenfalls *Arbeitsteams*, eine Gruppe von Auftragnehmern aus Ihren Arbeitskräften, die bestimmten *Aufträgen* zugewiesen werden – [Amazon SageMaker Ground Truth](https://docs.aws.amazon.com/sagemaker/latest/dg/sms.html)-Beschriftungsaufträge oder [Amazon Augmented AI](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-use-augmented-ai-a2i-human-review-loops.html)-Aufgaben für die Prüfung durch Menschen. Sie können über mehrere Arbeitsteams verfügen und jedem Auftrag ein oder mehrere Teams zuweisen.

Sie können Amazon Cognito oder Ihren eigenen privaten OpenID Connect (OIDC) Identity Provider (IdP) verwenden, um Ihre privaten Auftragnehmer und Arbeitsteams zu verwalten. Weitere Informationen über die erforderlichen Berechtigungen für diese Art von Verwaltung Ihrer Arbeitskräfte finden Sie unter [Für die Nutzung der Amazon SageMaker Ground Truth Konsole sind Berechtigungen erforderlich](security_iam_id-based-policy-examples.md#groundtruth-console-policy).

**Topics**
+ [Nutzung der Amazon Mechanical Turk-Workforce](sms-workforce-management-public.md)
+ [Abonnieren von Arbeitskräften eines Anbieters](sms-workforce-management-vendor.md)
+ [Private Arbeitskräfte](sms-workforce-private.md)

# Nutzung der Amazon Mechanical Turk-Workforce
<a name="sms-workforce-management-public"></a>

Die Belegschaft von Amazon Mechanical Turk (Mechanical Turk) stellt die meisten Mitarbeiter für Ihre [Amazon SageMaker Ground Truth Etikettierungsaufgabe und Amazon](https://docs.aws.amazon.com//sagemaker/latest/dg/a2i.html) [Augmented AI](https://docs.aws.amazon.com//sagemaker/latest/dg/a2i-use-augmented-ai-a2i-human-review-loops.html) Human Review-Aufgabe zur Verfügung. Die Belegschaft von Amazon Mechanical Turk ist eine weltweite Ressource. Auftragnehmer sind 7 Tage die Woche 24 Stunden am Tag verfügbar. Sie erhalten in der Regel die schnellste Bearbeitungszeit für Ihre menschlichen Überprüfungsaufgaben und Beschriftungsaufträge, wenn Sie die Arbeitskräfte von Amazon Mechanical Turk nutzen.

Jede Abrechnung der Arbeitskräfte von Amazon Mechanical Turk wird im Rahmen Ihrer Ground-Truth- oder Amazon Augmented AI-Abrechnung abgewickelt. Sie müssen kein separates Mechanical Turk-Konto erstellen, um die Amazon Mechanical Turk-Arbeitskraft zu nutzen.

**Wichtig**  
Sie sollten keine vertraulichen Informationen, persönlichen Daten oder geschützten Gesundheitsinformationen an diese Arbeitskräfte weitergeben. Sie sollten die Belegschaft von Amazon Mechanical Turk nicht einsetzen, wenn Sie Amazon A2I in Verbindung mit AWS HIPAA-fähigen Diensten wie Amazon Textract und Amazon Rekognition für Workloads verwenden, die geschützte Gesundheitsinformationen enthalten.

Sie können Mechanical Turk als Ihre Belegschaft wählen, wenn Sie einen Ground-Truth-Labeling-Auftrag oder einen Amazon A2I Human Review Workflow (Ablaufdefinition) erstellen. Mithilfe der KI-Konsole und der API können Sie einen Labeling-Job und einen Workflow zur Überprüfung durch einen Mitarbeiter erstellen. SageMaker 

Wenn Sie einen API-Vorgang verwenden, um einen Etikettierungsauftrag oder einen Workflow zur Überprüfung durch einen Auftragnehmer zu erstellen, verwenden Sie den folgenden ARN für die Belegschaft von Amazon Mechanical Turk für Ihre `WorkteamArn`. *`region`*Ersetzen Sie es durch die AWS Region, die Sie für die Erstellung des Labeling-Jobs verwenden, oder durch menschliche Arbeitsabläufe. Wenn Sie z. B. einen Beschriftungsauftrag in USA West (Oregon) erstellen, ersetzen Sie *`region`* durch `us-west-2`.
+ ` arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default`

Ground Truth und Amazon A2I *verlangen*, dass Ihre Eingabedaten frei von persönlich identifizierbaren Informationen (PII) sind, wenn Sie Mechanical Turk verwenden. Wenn Sie die Belegschaft von Mechanical Turk einsetzen und nicht angeben, dass Ihre Eingabedaten frei von personenbezogenen Daten sind, schlagen Ihre Ground-Truth-Labeling-Aufträge und Augmented AI-Aufgaben fehl. Sie geben an, dass Ihre Eingabedaten frei von PII sind, wenn Sie einen Ground-Truth-Labeling-Auftrag erstellen und wenn Sie eine menschliche Amazon-A2I-Schleife mit Hilfe einer integrierten Integration oder der `StartHumanLoop`-Operation erstellen.

In den folgenden Abschnitten erfahren Sie, wie Sie Mechanical Turk mit diesen Diensten verwenden können.

**Topics**
+ [Verwenden Sie Mechanical Turk mit Ground Truth](#sms-workforce-management-public-unsupported)
+ [Verwenden Sie Mechanical Turk mit Amazon A2I](#sms-workforce-management-public-gt)
+ [Wann wird Mechanical Turk nicht unterstützt?](#sms-workforce-management-public-a2i)

## Verwenden Sie Mechanical Turk mit Ground Truth
<a name="sms-workforce-management-public-unsupported"></a>

Sie können Mechanical Turk mit Ground Truth verwenden, wenn Sie einen Labeling-Job über die Konsole oder die `[CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)` Operation erstellen.

Wenn Sie einen Labeling-Job erstellen, empfehlen wir Ihnen, die Anzahl der Auftragnehmer, die jedes Datenobjekt mit Anmerkungen versehen, an die Komplexität des Jobs und die Qualität, die Sie benötigen, anzupassen. Amazon SageMaker Ground Truth verwendet die Konsolidierung von Anmerkungen, um die Qualität der Etiketten zu verbessern. Mehr Auftragnehmer zu verwenden kann sich auf die Qualität der Bezeichnungen komplexerer Etikettierungaufträge auswirken, aber möglicherweise nicht auf die einfacherer Aufträge. Weitere Informationen finden Sie unter [Anmerkungskonsolidierung](sms-annotation-consolidation.md). Beachten Sie, dass die Konsolidierung von Kommentaren für Amazon-A2I-Workflows zur Überprüfung durch Menschen nicht unterstützt wird. 

**Um Mechanical Turk zu verwenden, wenn Sie einen Labeling-Job erstellen (Konsole):**

1. Gehen Sie wie folgt vor, um einen Labeling-Job im Ground Truth Truth-Bereich der SageMaker AI-Konsole zu erstellen:[Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md). 

1. Wählen Sie **Amazon Mechanical Turk** aus, wenn Sie im Abschnitt **Auftragnehmer** die **Typen von Auftragnehmern** auswählen.

1. Geben Sie mithilfe von **Task-Timeout** die Gesamtzeit an, die Auftragnehmern zur Erledigung einer Aufgabe zur Verfügung steht.

1. Geben Sie unter **Ablauf der Aufgabe** an, wie lange eine Aufgabe den Auftragnehmern insgesamt zur Verfügung steht. So lange müssen Auftragnehmer eine Aufgabe übernehmen, bevor sie fehlschlägt.

1. Wählen Sie in der Drop-down-Liste den **Preis pro Aufgabe** aus. Dies ist der Geldbetrag, den ein Auftragnehmer für die Erledigung einer einzelnen Aufgabe erhält.

1. (Optional) Wählen Sie, falls zutreffend, **die Option Der Datensatz enthält keine Inhalte für Erwachsene** aus. SageMaker KI kann die Mitarbeiter von Mechanical Turk einschränken, die deine Aufgabe sehen können, wenn sie Inhalte für Erwachsene enthält.

1. Sie müssen die folgende Erklärung lesen und bestätigen, indem Sie das Kontrollkästchen aktivieren, um die Belegschaft von Mechanical Turk einzusetzen. Wenn Ihre Eingabedaten vertrauliche Informationen, persönliche Informationen oder geschützte Gesundheitsinformationen enthalten, müssen Sie eine andere Belegschaft auswählen.

   **Sie verstehen und erklären sich damit einverstanden, dass die Belegschaft von Mechanical Turk aus unabhängigen Auftragnehmern auf der ganzen Welt besteht und dass Sie keine vertraulichen Informationen, persönlichen Daten oder geschützten Gesundheitsinformationen an diese Arbeitskraft weitergeben sollten.**

1. (Optional) Aktivieren Sie das Kontrollkästchen neben **Automatisches Daten-Labeling aktivieren**, wenn Sie das automatische Daten-Labeling aktivieren möchten. Für weitere Informationen zu dieser Funktion siehe [Automatisieren des Daten-Labeling](sms-automated-labeling.md).

1. Sie können die **Anzahl der Auftragnehmer pro Datensatzobjekt** unter **Zusätzliche Konfiguration** angeben. Wenn Sie beispielsweise 3 in dieses Feld eingeben, wird jedes Datenobjekt mit 3 Arbeitskräften beschriftet.

Wenn Sie Ihren Etikettierungsauftrag erstellen, indem Sie **Erstellen** auswählen, werden Ihre Etikettierungsaufgaben an die Mitarbeiter von Mechanical Turk gesendet.

**Um Mechanical Turk zu verwenden, wenn Sie einen Labeling-Job (API) erstellen:**

1. Um einen Kennzeichnungsauftrag über die `[CreateLabelingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html)`-API zu erstellen, verwenden Sie die Operation : [Erstellen eines Kennzeichnungsauftrags (API)](sms-create-labeling-job-api.md). 

1. Verwenden Sie das folgende für [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-WorkteamArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-WorkteamArn). *`region`*Ersetzen Sie es durch die AWS Region, die Sie für die Erstellung des Labeling-Jobs verwenden.

   `arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default`

1. Geben `[TaskTimeLimitInSeconds](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-TaskTimeLimitInSeconds)` Sie hier die Gesamtzeit an, die Auftragnehmern zur Erledigung einer Aufgabe zur Verfügung steht.

1. Geben Sie hier `[TaskAvailabilityLifetimeInSeconds](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-TaskAvailabilityLifetimeInSeconds)` an, wie viel Zeit eine Aufgabe den Auftragnehmern insgesamt zur Verfügung steht. So lange müssen Auftragnehmer eine Aufgabe übernehmen, bevor sie fehlschlägt.

1. Verwenden Sie `[NumberOfHumanWorkersPerDataObject]()`, um die Anzahl der Auftragnehmer pro Datensatz-Objekt anzugeben.

1. Verwenden Sie `[PublicWorkforceTaskPrice](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PublicWorkforceTaskPrice)`, um den Preis pro Aufgabe festzulegen. Dies ist der Geldbetrag, den ein Auftragnehmer für die Erledigung einer einzelnen Aufgabe erhält.

1. Verwenden Sie `[DataAttributes](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_LabelingJobInputConfig.html#sagemaker-Type-LabelingJobInputConfig-DataAttributes)`, um anzugeben, dass Ihre Eingabedaten keine vertraulichen, persönlichen oder geschützten Gesundheitsdaten enthalten. 

   Ground Truth *verlangt*, dass Ihre Eingabedaten frei von persönlich identifizierbaren Informationen (PII) sind, wenn Sie Auftragnehmer von Mechanical Turk einsetzen. Wenn Sie Mechanical Turk verwenden und nicht mithilfe der `FreeOfPersonallyIdentifiableInformation`-Markierung angeben, dass Ihre Eingabedaten frei von persönlich identifizierbaren Informationen sind, schlägt Ihr Labeling-Job fehl. 

   Verwenden Sie die `FreeOfAdultContent` Flagge, um zu erklären, dass Ihre Eingabedaten frei von Inhalten für Erwachsene sind. SageMaker KI kann die Mitarbeiter von Mechanical Turk einschränken, die deine Aufgabe sehen können, wenn sie Inhalte für Erwachsene enthält. 

Beispiele für die Verwendung dieser API finden Sie in den folgenden Notizbüchern unter GitHub: [Ground Truth Jupyter](https://github.com/aws/amazon-sagemaker-examples/tree/master/ground_truth_labeling_jobs) Notebook Examples.

## Verwenden Sie Mechanical Turk mit Amazon A2I
<a name="sms-workforce-management-public-gt"></a>

Sie können angeben, dass Sie Mechanical Turk mit Amazon A2I verwenden möchten, wenn Sie in der Konsole oder bei der `CreateFlowDefinition` API-Operation einen menschlichen Überprüfungs-Workflow, auch als *Flow-Definition* bezeichnet, erstellen. Wenn Sie diesen Workflow zur Überprüfung durch Menschen verwenden, um menschliche Abläufe zu konfigurieren, müssen Sie angeben, dass Ihre Eingabedaten frei von personenbezogenen Daten sind.

**Um Mechanical Turk zu verwenden, wenn Sie einen menschlichen Überprüfungs-Workflow erstellen (Konsole):**

1. Gehen Sie wie folgt vor, um im Bereich Augmented AI der AI-Konsole einen Workflow für menschliche Überprüfungen zu erstellen:[Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)](a2i-create-flow-definition.md#a2i-create-human-review-console). SageMaker 

1. Wählen Sie **Amazon Mechanical Turk** aus, wenn Sie im Abschnitt **Arbeitskräfte** die **Typen von Arbeitskräften** auswählen.

1. Wählen Sie in der Drop-down-Liste den **Preis pro Aufgabe** aus. Dies ist der Geldbetrag, den ein Auftragnehmer für die Erledigung einer einzelnen Aufgabe erhält.

1. (Optional) Sie können die **Anzahl der Worker pro Datensatzobjekt** unter **Zusätzliche Konfiguration** angeben. Wenn Sie beispielsweise 3 in dieses Feld eingeben, wird jedes Datenobjekt mit 3 Arbeitskräften beschriftet.

1. (Optional) Geben Sie mithilfe des Zeitlimits für Aufgaben die Gesamtzeit an, die Auftragnehmern zur Erledigung einer **Task-Zeitlimit** steht.

1. (Optional) Geben Sie unter **Task-Zeitlimit** an, wie lange eine Aufgabe den Auftragnehmern insgesamt zur Verfügung steht. So lange haben Auftragnehmer Zeit, um eine Aufgabe zu übernehmen, bevor sie fehlschlägt.

1. Nachdem Sie Ihren Human Review-Workflow erstellt haben, können Sie ihn verwenden, um eine Human Loop zu konfigurieren, indem Sie den Amazon Ressourcennamen (ARN) im Parameter angeben`FlowDefinitionArn`. Sie konfigurieren eine Human Loop mithilfe einer der API-Operationen eines integrierten Aufgabentyps oder der Amazon A2I Runtime-API-Operation, `StartHumanLoop`. Weitere Informationen hierzu finden Sie unter [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md).

   Wenn Sie Ihren Human Loop konfigurieren, müssen Sie mithilfe des `FreeOfPersonallyIdentifiableInformation` Inhaltsklassifizierers in `DataAttributes`angeben, dass Ihre Eingabedaten frei von persönlich identifizierbaren Informationen (PII) sind. Wenn Sie Mechanical Turk verwenden und nicht angeben, dass Ihre Eingabedaten frei von personenbezogenen Daten sind, schlagen Ihre manuellen Überprüfungsaufgaben fehl. 

   Verwenden Sie die `FreeOfAdultContent` Flagge, um zu erklären, dass Ihre Eingabedaten frei von Inhalten für Erwachsene sind. SageMaker KI kann die Mitarbeiter von Mechanical Turk einschränken, die deine Aufgabe sehen können, wenn sie Inhalte für Erwachsene enthält. 

**Um Mechanical Turk zu verwenden, wenn Sie einen Human Review Workflow (API) erstellen:**

1. Gehen Sie wie folgt vor, um mithilfe der `[CreateFlowDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)` Operation einen menschlichen Überprüfungs-Workflow zu erstellen:[Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)](a2i-create-flow-definition.md#a2i-create-human-review-api).

1. Verwenden Sie das folgende für [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-WorkteamArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-WorkteamArn). *`region`*Ersetzen Sie es durch die AWS Region, die Sie für die Erstellung des Labeling-Jobs verwenden.

   `arn:aws:sagemaker:region:394669845002:workteam/public-crowd/default`

1. Geben `[TaskTimeLimitInSeconds](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-TaskTimeLimitInSeconds)` Sie hier die Gesamtzeit an, die Auftragnehmern zur Erledigung einer Aufgabe zur Verfügung steht.

1. Geben Sie hier `[TaskAvailabilityLifetimeInSeconds](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-TaskAvailabilityLifetimeInSeconds)` an, wie viel Zeit eine Aufgabe den Auftragnehmern insgesamt zur Verfügung steht. So lange müssen Auftragnehmer eine Aufgabe übernehmen, bevor sie fehlschlägt.

1. Verwenden Sie `[TaskCount](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanLoopConfig.html#sagemaker-Type-HumanLoopConfig-TaskCount)`, um die Anzahl der Arbeiter pro Datensatz-Objekt anzugeben. Wenn Sie beispielsweise 3 für diesen Parameter angeben, wird jedes Datenobjekt von 3 Workern beschriftet.

1. Verwenden Sie `[PublicWorkforceTaskPrice](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanTaskConfig.html#sagemaker-Type-HumanTaskConfig-PublicWorkforceTaskPrice)`, um den Preis pro Aufgabe festzulegen. Dies ist der Geldbetrag, den ein Auftragnehmer für die Erledigung einer einzelnen Aufgabe erhält.

1. Nachdem Sie Ihren Human Review-Workflow erstellt haben, können Sie ihn verwenden, um eine Human Loop zu konfigurieren, indem Sie den Amazon-Ressourcennamen (ARN) im `FlowDefinitionArn`Parameter angeben. Sie konfigurieren eine Human Loop mithilfe einer der API-Operationen eines integrierten Aufgabentyps oder der Amazon A2I Runtime-API-Operation, `StartHumanLoop`. Weitere Informationen hierzu finden Sie unter [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md).

   Wenn Sie Ihren Human Loop konfigurieren, müssen Sie mithilfe des `FreeOfPersonallyIdentifiableInformation` Inhaltsklassifizierers in `DataAttributes`angeben, dass Ihre Eingabedaten frei von persönlich identifizierbaren Informationen (PII) sind. Wenn Sie Mechanical Turk verwenden und nicht angeben, dass Ihre Eingabedaten frei von personenbezogenen Daten sind, schlagen Ihre manuellen Überprüfungsaufgaben fehl. 

   Verwenden Sie die `FreeOfAdultContent` Flagge, um zu erklären, dass Ihre Eingabedaten frei von Inhalten für Erwachsene sind. SageMaker KI kann die Mitarbeiter von Mechanical Turk einschränken, die deine Aufgabe sehen können, wenn sie Inhalte für Erwachsene enthält. 

Beispiele für die Verwendung dieser API finden Sie in den folgenden Notizbüchern unter GitHub: [Amazon A2I Jupyter](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks) Notebook Examples.

## Wann wird Mechanical Turk nicht unterstützt?
<a name="sms-workforce-management-public-a2i"></a>

Diese Belegschaft wird in den folgenden Szenarien nicht unterstützt. In jedem Szenario müssen Sie [private](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private.html) Auftragnehmer oder [externe Arbeitskraft](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-vendor.html) einsetzen. 
+ Diese Belegschaft wird für Ground-Truth-Videoframe-Labeling-Aufträge und 3D-Punktwolken-Labeling-Aufträge nicht unterstützt.
+ Sie können diese Belegschaft nicht einsetzen, wenn Ihre Eingabedaten persönlich identifizierbare Informationen (PII) enthalten.
+ Mechanical Turk ist in einigen AWS Spezialregionen nicht verfügbar. Falls zutreffend, finden Sie weitere Informationen in der Dokumentation zu Ihrer speziellen Region. 

# Abonnieren von Arbeitskräften eines Anbieters
<a name="sms-workforce-management-vendor"></a>

Mithilfe von Amazon SageMaker Ground Truth und Amazon Augmented AI (Amazon A2I) können Sie eine vom Anbieter verwaltete Belegschaft einsetzen, um Ihre Daten zu kennzeichnen. Anbieter verfügen über umfassende Erfahrung in der Bereitstellung von Daten-Labeling-Diensten für Machine Learning. Anbieterarbeitskräfte für diese beiden Services müssen separat über die Konsole von Amazon SageMaker AI erstellt und verwaltet werden. 

Anbieter stellen ihre Dienste über den AWS Marketplace zur Verfügung. Weitere Informationen zu den Diensten des Anbieters, wie z. B. die Anzahl der Auftragnehmer und die tägliche Arbeitszeit, finden Sie auf dessen Detailseite. Sie können diese Details verwenden, um abzuschätzen, wie viel Sie der Etikettierungsauftrag kosten und wie lange die Ausführung des Auftrags ungefähr dauern wird. Sobald Sie einen Anbieter ausgewählt haben, abonnieren Sie seine Dienste über AWS Marketplace.

Ein Abonnement ist eine Vereinbarung zwischen Ihnen und dem Anbieter. Die Vereinbarung regelt die Details der Vereinbarung, wie z. B. den Preis, Zeitplan oder die Erstattungsrichtlinie. Wenn es Probleme mit Ihrem Etikettierungsauftrag gibt, arbeiten Sie direkt mit dem Anbieter zusammen.

Sie können eine beliebige Anzahl von Anbietern abonnieren, um Ihren Datenkennzeichnungsanforderungen gerecht zu werden. Beim Erstellen eines Labeling-Auftrags oder eines Workflows für die Prüfung durch Menschen (Human Review) können Sie angeben, dass der Auftrag an einen bestimmten Anbieter weitergeleitet werden soll.

**Wichtig**  
Bevor Sie sensible Daten an einen Anbieter zu senden, überprüfen Sie die Sicherheitsverfahren des Anbieters auf seiner Detailseite und lesen Sie die Endbenutzer-Lizenzvereinbarung (EULA), die Teil Ihres Abonnementvertrags ist. Sie sind dafür verantwortlich, dass der Anbieter Ihre Compliance-Anforderungen in Bezug auf persönliche oder vertrauliche Informationen erfüllt. Geben Sie keine geschützten Gesundheitsinformationen an diese Belegschaft weiter.

Sie müssen die Konsole verwenden, um die Arbeitskräfte eines Anbieters zu abonnieren. Sobald Sie ein Abonnement haben, können Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListSubscribedWorkteams.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListSubscribedWorkteams.html)-Operation verwenden, um Ihre abonnierten Anbieter aufzulisten.

**So abonnieren Sie Arbeitskräfte eines Anbieters**

1. Öffnen Sie die SageMaker-AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Wählen Sie die entsprechende Seite in der SageMaker-AI-Konsole aus.
   + Wählen Sie für Ground-Truth-Labeling-Aufträge die Optionen **Beschriftungsaufträge**, **Vendor** und dann **Find data labeling services** aus.
   + Wählen Sie für Amazon-A2I-Workflows für die Prüfung durch Menschen die Option **Human review Arbeitskräfte **, danach **Vendor** und schließlich **Find human review services**. 

1. Die Konsole öffnet AWS Marketplace mit:
   + Für Ground Truth ausgewählte Kategorie von Daten-Labeling-Services
   + Für Amazon A2I ausgewählte Kategorie der Services für die Prüfung durch Menschen

   Hier sehen Sie eine Liste der für diesen Service verfügbaren Anbieterservices. 

1. Wählen Sie einen Anbieter aus. Die AWS Marketplace zeigt detaillierte Informationen über das Daten-Labeling oder den Service für die Prüfung durch Menschen (Human Review). Verwenden Sie diese Informationen, um zu bestimmen, ob der Anbieter Ihren Anforderungen für die Aufgabe gerecht wird.

1. Wenn der Anbieter Ihren Anforderungen entspricht, wählen Sie **Continue to subscribe (Weiter zum Abonnement) aus**.

1. Überprüfen Sie die Details des Abonnements. Wenn Sie den Bedingungen zustimmen, wählen Sie **Abonnieren** aus, um Ihr Abonnement des Dienstes abzuschließen.

# Private Arbeitskräfte
<a name="sms-workforce-private"></a>

 **Private Arbeitskräfte** ist eine Gruppe von Auftragnehmern, die *Sie* auswählen. Dabei kann es sich um Mitarbeiter Ihres Unternehmens oder eine Gruppe von Experten aus Ihrer Branche handeln. Wenn die Aufgabe beispielsweise darin besteht, medizinische Bilder zu etikettieren, könnten Sie private Arbeitskräfte einsetzen, die über fundierte Kenntnisse dieser Bilder verfügen. 

Jedes AWS-Konto hat Zugriff auf eine einzelne Gruppe privater Arbeitskräfte pro Region, und der Besitzer hat die Möglichkeit, mehrere **private** **Arbeitsteams** innerhalb dieser Arbeitskräfte zu erstellen. Ein einzelnes privates Arbeitsteam wird verwendet, um einen Labeling-Auftrag oder eine Aufgabe für die Prüfung durch Menschen (Human Review) oder einen *Auftrag* durchzuführen. Sie können jedes Arbeitsteam einem separaten Auftrag zuordnen oder ein einzelnes Team für mehrere Aufträge verwenden. Ein einzelner Auftragnehmer kann in mehr als einem Arbeitsteam sein. 

Ihre private Arbeitskraft kann entweder mit [Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/what-is-amazon-cognito.html) oder Ihrem eigenen privaten OpenID Connect (OIDC) Identity Provider (IdP) erstellt und verwaltet werden. 

Wenn Sie ein neuer Benutzer von [Amazon SageMaker Ground Truth](https://docs.aws.amazon.com/sagemaker/latest/dg/sms.html) oder [Amazon Augmented AI](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-use-augmented-ai-a2i-human-review-loops.html) sind und nicht möchten, dass Ihre Auftragnehmer mit Ihrem eigenen IdP verwaltet werden, wird empfohlen, Amazon Cognito für die Erstellung und Verwaltung Ihrer privaten Arbeitskraft zu verwenden. 

Nachdem Sie eine Arbeitskraft erstellt haben, können Sie zusätzlich zur Erstellung und Verwaltung von Arbeitsteams die folgenden Schritte ausführen: 
+ [Nachverfolgen der Worker-Leistung](https://docs.aws.amazon.com/sagemaker/latest/dg/workteam-private-tracking.html)
+ [Erstellen und verwalten Sie Amazon SNS-Themen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-private-sns.html), um Auftragnehmer zu benachrichtigen, wenn Labeling-Aufgaben verfügbar sind
+ [Verwalten des Zugriffs privater Arbeitskräfte auf Aufgaben über IP-Adressen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-private-api.html)

**Anmerkung**  
Ihre privaten Arbeitskräfte werden zwischen Ground Truth und Amazon A2I geteilt. Verwenden Sie den Ground-Truth-Bereich der SageMaker-AI-Konsole, um private Arbeitsteams zu erstellen und zu verwalten, die von Augmented AI verwendet werden. 

**Topics**
+ [Amazon Cognito – Arbeitskräfte](sms-workforce-private-use-cognito.md)
+ [OIDC IdP – Arbeitskräfte](sms-workforce-private-use-oidc.md)
+ [Private Personalverwaltung mithilfe der SageMaker Amazon-API](sms-workforce-management-private-api.md)
+ [Nachverfolgen der Leistungsmetriken von Mitarbeitern](workteam-private-tracking.md)
+ [So erstellen Sie das Amazon-SNS-Thema](sms-workforce-management-private-sns.md)

# Amazon Cognito – Arbeitskräfte
<a name="sms-workforce-private-use-cognito"></a>

Erstellen und verwalten Sie Ihre private Arbeitskraft mit Amazon Cognito, wenn Sie Ihre Arbeitskraft mithilfe der Konsole von Amazon SageMaker AI erstellen möchten oder wenn Sie den Aufwand für die Verwaltung von Auftragnehmeranmeldedaten und Authentifizierung vermeiden möchten. Wenn Sie eine private Arbeitskraft mit Amazon Cognito erstellen, bietet Amazon Cognito Authentifizierung, Autorisierung und Benutzerverwaltung für Ihre Privatauftragnehmer. 

**Topics**
+ [Erstellen Sie eine private Belegschaft (Amazon Cognito)](sms-workforce-create-private.md)
+ [Private Arbeitskraft verwalten (Amazon Cognito)](sms-workforce-management-private.md)

# Erstellen Sie eine private Belegschaft (Amazon Cognito)
<a name="sms-workforce-create-private"></a>

Wenn Sie Amazon Cognito verwenden, können Sie eine private Belegschaft auf eine der folgenden Arten erstellen: 
+ Erstellen Sie neue Arbeitskräfte, wenn Sie Ihren Labeling-Auftrag erstellen. Um zu erfahren wie dies geht, vgl. [Erstellen von Amazon Cognito Arbeitskräften beim Erstellen eines Beschriftungsauftrags](sms-workforce-create-private-console.md#create-workforce-labeling-job).
+ Erstellen Sie neue Arbeitskräfte, bevor Sie Ihren Labeling-Auftrag erstellen. Um zu erfahren wie dies geht, vgl. [Erstellen von Amazon Cognito Arbeitskräfte durch die Seite Beschriftungsarbeitskräfte](sms-workforce-create-private-console.md#create-workforce-sm-console).
+ Importieren Sie vorhandene Arbeitskräfte, nachdem Sie einen Benutzerpool in der Amazon Cognito-Konsole erstellt haben. Um zu erfahren wie dies geht, vgl. [Eine private Arbeitskraft erstellen (Amazon Cognito-Konsole)](sms-workforce-create-private-cognito.md). 

Sobald Sie private Arbeitskräfte erstellt haben, stehen diese Arbeitskräfte und alle damit verbundenen Arbeitsteams und Auftragnehmer für alle Ground-Truth-Labeling-Auftragsaufgaben und -Workflow-Aufgaben für die Prüfung durch Menschen zur Verfügung. 

Wenn Sie Amazon SageMaker AI noch nicht kennen und Ground Truth oder Amazon A2I testen möchten, empfehlen wir Ihnen, ein privates Arbeitsteam zusammenzustellen, das aus Personen aus Ihrer Organisation besteht, die die Konsole verwenden. Verwenden Sie dieses Arbeitsteam, wenn Sie Beschriftung-Workflows oder Workflows für die menschliche Überprüfung (Flow-Definitionen) erstellen, um die Benutzeroberfläche für Ihre Auftragnehmer und den Workflow des Auftrags zu testen. 

**Topics**
+ [Eine private Belegschaft erstellen (Amazon SageMaker AI Console)](sms-workforce-create-private-console.md)
+ [Eine private Arbeitskraft erstellen (Amazon Cognito-Konsole)](sms-workforce-create-private-cognito.md)

# Eine private Belegschaft erstellen (Amazon SageMaker AI Console)
<a name="sms-workforce-create-private-console"></a>

 Sie können in der Amazon SageMaker AI-Konsole auf zwei Arten eine private Belegschaft erstellen:
+ Beim Erstellen eines Labeling-Jobs auf der Seite **Labeling-Jobs** im Bereich Amazon SageMaker Ground Truth.
+ Verwenden Sie die Seite **Labeling Workforces** im Bereich Amazon SageMaker Ground Truth. Wenn Sie private Arbeitskräfte für einen Amazon A2I Workflow für die menschliche Überprüfung erstellen, verwenden Sie diese Methode.

Mit beiden Methoden wird außerdem ein Standard-Arbeitsteam erstellt, das alle Mitglieder der Arbeitskraft umfasst. Diese private Arbeitskraft kann sowohl für Ground-Truth- als auch für Amazon Augmented AI-Aufträge eingesetzt werden. 

Wenn Sie mithilfe der Konsole eine private Belegschaft erstellen, verwendet SageMaker KI Amazon Cognito als Identitätsanbieter für Ihre Belegschaft. Wenn Sie Ihren eigenen OpenID Connect (OIDC) Identity Provider (IdP) verwenden möchten, um Ihre private Belegschaft zu erstellen und zu verwalten, müssen Sie mithilfe der API-Operation eine Belegschaft erstellen. SageMaker `CreateWorkforce` Weitere Informationen hierzu finden Sie unter [Erstellen einer privaten Arbeitskraft (OIDC IdP)](sms-workforce-create-private-oidc.md). 

## Erstellen von Amazon Cognito Arbeitskräften beim Erstellen eines Beschriftungsauftrags
<a name="create-workforce-labeling-job"></a>

Wenn Sie beim Erstellen Ihres Beschriftungsauftrags keine privaten Arbeitskräfte erstellt haben, und Sie entscheiden, private Auftragnehmer zu verwenden, werden Sie dazu aufgefordert, sie zu erstellen. Dadurch wird eine private Arbeitskraft mit Amazon Cognito erstellt.

**So erstellen Sie Arbeitskräfte beim Erstellen eines Labeling-Auftrags (Konsole)**

1.  Öffnen Sie die AI-Konsole unter SageMaker . [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)

1. Wählen Sie im Navigationsbereich **Labeling jobs (Labeling-Aufträge)** aus und füllen Sie alle erforderlichen Felder aus. Anweisungen zum Starten eines Labeling-Auftrags finden Sie unter [Erste Schritte: Erstellen eines Kennzeichnungsauftrags mit Begrenzungsrahmen über Ground Truth](sms-getting-started.md). Wählen Sie **Weiter** aus.

1. Wählen Sie als Arbeitskräftetyp **Private (Privat)** aus. 

1. Geben Sie im Bereich **Auftragnehmer** Folgendes ein:

   1. Der **Team name (Team-Name)**. 

   1. E-Mail-Adressen für bis zu 100 Auftragnehmer. Bei E-Mail-Adressen ist die Groß-/Kleinschreibung relevant. Ihre Auftragnehmer müssen bei der Anmeldung mit der E-Mail-Adresse die Groß-und Kleinschreibung der anfänglich eingegebenen Adresse beachten. Nachdem der Auftrag erstellt wurde, können Sie zusätzliche Mitglieder zu den Arbeitskräften hinzufügen. 

   1. Der Name Ihrer Organisation. SageMaker KI verwendet dies, um die an die Mitarbeiter gesendeten E-Mails anzupassen.

   1. Eine Kontakt-E-Mail-Adresse für Auftragnehmer, um Probleme im Zusammenhang mit der Aufgabe zu melden.

Beim Erstellen des Labeling-Auftrags wird an alle Auftragnehmer eine E-Mail gesendet, die sie dazu einlädt, Mitglied der Arbeitskräfte zu werden. Nachdem Sie die Belegschaft erstellt haben, können Sie Mitarbeiter mithilfe der SageMaker KI-Konsole oder der Amazon Cognito Cognito-Konsole hinzufügen, löschen und deaktivieren. 

## Erstellen von Amazon Cognito Arbeitskräfte durch die Seite Beschriftungsarbeitskräfte
<a name="create-workforce-sm-console"></a>

Zum Erstellen Ihrer privaten Arbeitskräfte können Sie die Seite **Beschriftungsarbeitskräfte** verwenden. Wenn Sie die folgenden Anweisungen befolgen, haben Sie die Möglichkeit, private Arbeitskräfte zu erstellen, indem Sie E-Mail-Adressen von Auftragnehmern eingeben oder bereits vorhandene Arbeitskräfte aus einem Amazon Cognito-Benutzerpool importieren. Informationen zum Importieren von Arbeitskräften finden Sie unter [Eine private Arbeitskraft erstellen (Amazon Cognito-Konsole)](sms-workforce-create-private-cognito.md).

**So erstellen Sie private Arbeitskräfte mit Auftragnehmer-E-Mails**

1. Öffnen Sie die Amazon SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Wählen Sie im Navigationsbereich die Option **Labeling workforces (Arbeitskräfte für das Labeling)** aus. 

1. Wählen Sie **Private (Privat)** und anschließend **Create private team (Privatteam erstellen)** aus. 

1. Wählen Sie **Invite new workers by email (Neue Auftragnehmer per E-Mail einladen)**.

1. Fügen Sie eine Liste von bis zu 50 E-Mail-Adressen, getrennt durch Kommas, in das Feld für E-Mail-Adressen ein oder geben Sie die Adressen ein. 

1. Geben Sie einen Organisationsnamen und eine E-Mail-Kontaktadresse ein. 

1. Wählen Sie optional ein SNS-Thema aus, das für das Team abonniert werden soll, damit die Auftragnehmer per E-Mail benachrichtigt werden, wenn neue Beschriftungsaufträge verfügbar werden. Amazon SNS-Benachrichtigungen werden von Ground Truth unterstützt und von Augmented AI nicht. Wenn Sie Arbeitnehmer für den Erhalt von SNS-Benachrichtigungen anmelden, erhalten diese nur Benachrichtigungen über Ground-Truth-Labeling-Aufträge. Sie erhalten keine Benachrichtigungen über Augmented AI-Aufgaben. 

1.  Klicken Sie auf die Schaltfläche **Create private team (Privates Team erstellen)**. 

Nachdem Sie Ihre privaten Arbeitskräfte importiert haben, aktualisieren Sie die Seite. Auf der Übersichtsseite **Private Arbeitskräfte** sehen Sie Informationen über den Amazon Cognito-Benutzerpool für Ihre Arbeitskräfte, eine Liste der Arbeitsteams für Ihre Arbeitskräfte sowie eine Liste aller Mitglieder Ihrer privaten Arbeitskräfte. 

**Anmerkung**  
Wenn Sie alle privaten Arbeitsteams löschen, müssen Sie diesen Vorgang wiederholen, um private Arbeitskräfte in dieser Region zu verwenden. 

# Eine private Arbeitskraft erstellen (Amazon Cognito-Konsole)
<a name="sms-workforce-create-private-cognito"></a>

 Amazon Cognito wird verwendet, um Ihre privaten Arbeitskräfte und Ihre Arbeitsteams zu definieren und zu verwalten. Es handelt sich um einen Service, mit dem Sie Identitäten für Ihre Mitarbeiter erstellen und diese Identitäten bei Identitätsanbietern authentifizieren können.  Private Arbeitskräfte entsprechen einem einzelnen **Amazon Cognito-Benutzerpool**. Private Arbeitsteams entsprechen **Amazon Cognito-Benutzergruppen** innerhalb dieses Benutzerpools.  

 Beispiel für Identitätsanbieter, die von Amazon Cognito unterstützt werden: 
+ Social Sign-in-Anbieter wie Facebook und Google 
+ Open ID Connect (OIDC)-Anbieter 
+ SAML-Anbieter (Security Assertion Markup Language) wie Active Directory 
+ Der integrierte Identitätsanbieter von Amazon Cognito 

 Weitere Informationen finden Sie unter [Was ist Amazon Cognito?](https://docs.aws.amazon.com/cognito/latest/developerguide/what-is-amazon-cognito.html).

Um private Arbeitskräfte mit Amazon Cognito zu erstellen, müssen Sie über einen vorhandenen Amazon Cognito Benutzerpool verfügen, der mindestens eine Benutzergruppe enthält. Unter [Tutorial: Erstellen eines Benutzerpools](https://docs.aws.amazon.com/cognito/latest/developerguide/tutorial-create-user-pool.html) finden Sie weitere Informationen zum Erstellen eines Benutzerpools. Unter [Hinzufügen von Gruppen zu einem Benutzerpool](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-user-groups.html) erfahren Sie, wie eine Benutzergruppe zu einem Pool hinzugefügt wird. 

Sobald Ihr Benutzerpool erstellt wurde, gehen Sie wie folgt vor, um eine private Belegschaft zu erstellen, indem Sie diesen Benutzerpool in Amazon SageMaker AI importieren.

**So erstellen Sie eine private Arbeitskraft durch Importieren eines Amazon Cognito Benutzerpools**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/). 

1. Wählen Sie im Navigationsbereich die Option **Labeling workforces (Arbeitskräfte für das Labeling)** aus. 

1. Wählen Sie **Private (Privat)** aus.

1. Wählen Sie **Create private team (Privatteam erstellen)**. Dadurch werden private Arbeitskräfte und ein Arbeitsteam erstellt. 

1. Wählen Sie **Auftragnehmer aus Amazon Cognito-Benutzergruppen importieren**. 

1. Wählen Sie einen Benutzer-Pool aus, den Sie erstellt haben. Benutzer-Pools benötigen eine Domain und eine existierende Benutzergruppe. Wenn ein Fehler gemeldet wird, weil die Domain fehlt, legen Sie eine Domain in den **Domainname**-Optionen auf der Seite **App-Integration** der Amazon Cognito-Konsole für Ihre Gruppe fest.

1. Wählen Sie einen App-Client aus. Wir empfehlen, einen von SageMaker KI generierten Client zu verwenden. 

1. Wählen Sie eine Benutzergruppe im Pool aus, um deren Mitglieder zu importieren. 

1. Wählen Sie optional ein Amazon Simple Notification Service (Amazon SNS)-Thema aus, das für das Team abonniert werden soll, damit die Auftragnehmer per E-Mail benachrichtigt werden, wenn neue Beschriftungsaufträge verfügbar werden. Amazon SNS-Benachrichtigungen werden von Ground Truth unterstützt, und von Augmented AI nicht. Wenn Sie Arbeitnehmer für den Erhalt von SNS-Benachrichtigungen anmelden, erhalten diese nur Benachrichtigungen über Ground-Truth-Labeling-Aufträge. Sie erhalten keine Benachrichtigungen über Augmented AI-Aufgaben. 

1. Wählen Sie **Create private team (Privatteam erstellen)**. 

**Wichtig**  
Nachdem Sie eine Belegschaft mithilfe eines Amazon Cognito Cognito-Benutzerpools erstellt haben, sollte diese nicht gelöscht werden, ohne zuerst alle mit diesem Pool verknüpften Arbeitsteams in der SageMaker KI-Konsole zu löschen.  

 Nachdem Sie Ihre privaten Arbeitskräfte importiert haben, aktualisieren Sie die Übersichtsseite **Private workforce (Private Arbeitskräfte)**. Auf dieser Seite sehen Sie Informationen über den Amazon Cognito-Benutzerpool für Ihre Arbeitskräfte, eine Liste der Arbeitsteams für Ihre Arbeitskräfte, sowie eine Liste aller Mitglieder Ihrer privaten Arbeitskräfte. Diese Belegschaft kann jetzt sowohl in Amazon Augmented AI als auch in Amazon SageMaker Ground Truth für menschliche Überprüfungsaufgaben bzw. Datenkennzeichnungsaufgaben verwendet werden. 

# Private Arbeitskraft verwalten (Amazon Cognito)
<a name="sms-workforce-management-private"></a>

Nachdem Sie mit Amazon Cognito eine private Belegschaft erstellt haben, können Sie mithilfe der Amazon SageMaker AI-Konsole und API-Operationen Arbeitsteams erstellen und verwalten.

Sie können entweder die [SageMaker KI-Konsole oder die [Amazon Cognito Cognito-Konsole](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-private-cognito.html)](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-private-console.html) verwenden, um Folgendes zu tun. 
+ Hinzufügen und Löschen von Arbeitsteams.
+ Hinzufügen von Auftragnehmern zu Ihren Arbeitskräften und zu einem oder mehreren Arbeitsteams
+ Deaktivieren oder Entfernen von Auftragnehmern von ihren Arbeitskräften und einem oder mehreren Arbeitsteams Wenn Sie Auftragnehmer über die Amazon Cognito-Konsole zu Arbeitskräften hinzufügen, müssen Sie dieselbe Konsole verwenden, um den Auftragnehmer aus den Arbeitskräften zu entfernen.

Mithilfe der SageMaker API können Sie den Zugriff auf Aufgaben auf Mitarbeiter mit bestimmten IP-Adressen beschränken. Weitere Informationen finden Sie unter [Private Personalverwaltung mithilfe der SageMaker Amazon-API](sms-workforce-management-private-api.md).

**Topics**
+ [Eine Belegschaft verwalten (Amazon SageMaker AI Console)](sms-workforce-management-private-console.md)
+ [Private Auftragnehmer verwalten (Amazon Cognito Console)](sms-workforce-management-private-cognito.md)

# Eine Belegschaft verwalten (Amazon SageMaker AI Console)
<a name="sms-workforce-management-private-console"></a>

Sie können die Amazon SageMaker AI-Konsole verwenden, um Arbeitsteams und einzelne Mitarbeiter, die eine private Belegschaft bilden, zu erstellen und zu verwalten. 

Verwenden Sie ein Arbeitsteam, um Mitglieder Ihrer privaten Belegschaft mit einer Beschriftungs- oder menschlichen Überprüfungs *-Job*zu betrauen. Wenn Sie Ihre Belegschaft mithilfe der SageMaker KI-Konsole zusammenstellen, gibt es ein Arbeitsteam namens **E veryone-in-private-workforce**, mit dem Sie Ihre gesamte Belegschaft einem Job zuweisen können. Da ein importierter Amazon Cognito-Benutzerpool Mitglieder enthalten kann, die Sie nicht in Ihre Arbeitsteams aufnehmen möchten, wird für Amazon Cognito-Benutzerpools kein ähnliches Arbeitsteam erstellt.

 Sie haben zwei Möglichkeiten, ein neues Arbeitsteam zu erstellen: 
+ Sie können in der SageMaker KI-Konsole ein Arbeitsteam erstellen und Mitglieder aus Ihrer Belegschaft zum Team hinzufügen. 
+ Sie können eine Benutzergruppe mit der Amazon Cognito-Konsole erstellen und dann ein Arbeitsteam erstellen, indem Sie die Benutzergruppe importieren. Sie können mehr als eine Benutzergruppe in jedes Arbeitsteam importieren. Sie verwalten die Mitglieder des Arbeitsteams, indem Sie die Benutzergruppe in der Amazon Cognito-Konsole aktualisieren. Weitere Informationen finden Sie unter [Private Auftragnehmer verwalten (Amazon Cognito Console)](sms-workforce-management-private-cognito.md).  

## Erstellen Sie mithilfe der SageMaker KI-Konsole ein Arbeitsteam
<a name="create-workteam-sm-console"></a>

Sie können mit der SageMaker KI-Konsole auf der Seite **Labeling Workforces** eine neue Amazon Cognito Cognito-Benutzergruppe erstellen oder eine bestehende Benutzergruppe importieren. Weitere Informationen zum Erstellen einer Benutzergruppe in der Amazon Cognito-Konsole finden Sie unter [Private Auftragnehmer verwalten (Amazon Cognito Console)](sms-workforce-management-private-cognito.md).

**Um mithilfe der KI-Konsole ein Arbeitsteam zu erstellen SageMaker**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/). 

1. Wählen Sie im linken Menü **Labeling workforces (Arbeitskräfte für die Etikettierung)** aus.

1.  Wählen Sie unter **Private (Privat)** die Option **Create private Team (Privates Team erstellen)** aus. 

1. Geben Sie unter **Team details (Teamdetails)** einen **Team name (Teamnamen)** ein. Der Name muss in Ihrem Konto in einer AWS Region eindeutig sein. 

1. Wählen unter **Add workers (Auftragnehmer hinzufügen)** eine Methode aus, um dem Team mithilfe einer Benutzergruppe Auftragsnehmer hinzuzufügen.
   + Wenn Sie **Team erstellen, indem Sie Arbeitnehmer zu einer neuen Amazon Cognito-Benutzergruppe hinzufügen** ausgewählt haben, wählen Sie die Arbeitnehmer aus, die dem Team hinzugefügt werden sollen. 
   + Wenn Sie **Erstellen Sie ein Team, indem Sie bestehende Amazon Cognito-Benutzergruppen importieren** ausgewählt haben, wählen Sie die Benutzergruppen aus, die Teil des neuen Teams sind. 

1. Wenn Sie ein **SNS topic (SNS-Thema)** auswählen, abonnieren alle Auftragnehmer, die dem Team hinzugefügt werden, das Amazon SNS-Thema und werden benachrichtigt, wenn dem Team neue Arbeitselemente zur Verfügung stehen. Wählen Sie aus einer Liste Ihrer bestehenden Ground-Truth-bezogenen Amazon SNS-Themen oder wählen Sie **Neues Thema erstellen**, um einen Dialog zur Themenerstellung zu öffnen. 

   Amazon SNS-Benachrichtigungen werden von Ground Truth unterstützt und nicht von Augmented AI. Wenn Sie Arbeitnehmer für den Erhalt von SNS-Benachrichtigungen anmelden, erhalten diese nur Benachrichtigungen über Ground-Truth-Labeling-Aufträge. Sie erhalten keine Benachrichtigungen über Augmented AI-Aufgaben. 

Arbeitnehmer in einem Arbeitsteam, die ein Thema abonniert haben, erhalten Benachrichtigungen, wenn ein neuer Ground-Truth-Labeling-Auftrag für dieses Team verfügbar wird und wenn ein solcher ausläuft. 

 Weitere Informationen zur Verwendung von Amazon SNS-Themen finden Sie unter [So erstellen Sie das Amazon-SNS-Thema](sms-workforce-management-private-sns.md).

### Subscriptions (Abonnements)
<a name="subscriptions"></a>

Nachdem Sie ein Arbeitsteam erstellt haben, können Sie weitere Informationen über das Team einsehen und das Amazon SNS-Thema, das die Mitglieder abonnieren, ändern oder festlegen, indem Sie die Amazon Cognito Cognito-Konsole aufrufen. Wenn Sie Teammitglieder hinzugefügt haben, bevor Sie das Team für ein Thema abonniert haben, müssen Sie diese Mitglieder manuell für dieses Thema abonnieren. Unter [Erstellen und Verwalten von Amazon SNS-Themen für Ihre Arbeitsteams](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-private-sns.html) finden Sie weitere Informationen zum Erstellen und Verwalten des Amazon SNS-Themas. 

## Hinzufügen oder Entfernen von Auftragnehmern
<a name="add-remove-workers-sm"></a>

 Ein *Arbeitsteam* ist eine Gruppe von Auftragnehmern der Arbeitskräfte, denen Sie Aufträge zuweisen können. Ein Arbeitnehmer kann zu mehr als einem Arbeitsteam hinzugefügt werden. Sobald eine Arbeitskraft zu einem Arbeitsteam hinzugefügt wurde, kann diese Arbeitskraft deaktiviert oder entfernt werden.

### Hinzufügen von Auftragnehmern zu den Arbeitskräften
<a name="add-workers-sm-console"></a>

 Arbeitnehmer in einem Arbeitsteam, die ein Thema abonniert haben, erhalten Benachrichtigungen, wenn ein neuer Ground-Truth-Labeling-Auftrag für dieses Team verfügbar wird und wenn ein solcher ausläuft.  

**So fügen Sie Arbeitnehmer über die Seite mit der privaten Arbeitskräfteübersicht hinzu**

1. Öffnen Sie die Amazon SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Wählen Sie **Labeling workforces (Arbeitskräfte für das Labeling)**, um zur Übersichtsseite Private workforce (Private Arbeitskräfte) zu navigieren. 

1. Wählen Sie **Private (Privat)** aus.

1. Wählen Sie **Invite new workers (Neue Auftragnehmer einladen)**.

1. Fügen Sie eine Liste der E-Mail-Adressen, getrennt durch Kommas, in das Feld für E-Mail-Adressen ein oder geben Sie die Adressen ein. Sie können bis zu 50 E-Mail-Adressen in diese Liste einfügen. 

### Hinzufügen eines Auftragnehmers zu einem Arbeitsteam
<a name="add-worker-workteam-sm-console"></a>

 Ein Auftragnehmer muss zuerst den Arbeitskräften hinzugefügt werden, bevor er einem Arbeitsteam hinzugefügt wird. Um einen Auftragnehmer zu einem Arbeitsteam hinzuzufügen, navigieren Sie zunächst mit den obigen Schritten zur Übersichtsseite **Private workforce (Private Arbeitskräfte)**. 

**So fügen Sie auf der Übersichtsseite für private Arbeitskräfte einen Arbeitnehmer zu einem Arbeitsteam hinzu**

1. Wählen Sie im Abschnitt **Private Teams** das Team aus, dem Sie die Arbeitnehmer hinzufügen möchten. 

1. Wählen Sie die Registerkarte **Workers (Arbeitskräfte)** aus. 

1. Wählen Sie **Add workers to team (Auftragnehmer zu Team hinzufügen)** und aktivieren Sie die Kontrollfelder neben den Auftragnehmern, die Sie hinzufügen möchten.

1. Klicken Sie auf **Add workers to team (Auftragnehmer zum Team hinzufügen)**.

### Deaktivieren und Entfernen eines Auftragnehmers aus den Arbeitskräften
<a name="disable-remove-workers-console"></a>

Durch Deaktivieren eines Auftragnehmers verhindert, dass er einen Auftrag erhält. Diese Maßnahme führt nicht zum Ausscheiden des Arbeitnehmers aus der Belegschaft oder aus einem Arbeitsteam, dem er angehört. Um einen Arbeitnehmer zu deaktivieren oder aus einem Arbeitsteam zu entfernen, navigieren Sie zunächst mit den oben beschriebenen Schritten zur Übersichtsseite für private Arbeitskräfte. 

**So deaktivieren Sie einen Auftragnehmer über die Übersichtsseite „Private workforce (Private Arbeitskräfte)“**

1. Wählen Sie im Bereich **Workers (Arbeitskräfte)** den Auftragnehmer aus, den Sie deaktivieren möchten. 

1. Wählen Sie **Disable ** (deaktivieren) aus. 

 Falls gewünscht, können Sie nachträglich für einen Auftragnehmer **Enable (Aktivieren)** wählen, nachdem er deaktiviert wurde. 

Sie können Mitarbeiter direkt in der SageMaker KI-Konsole aus Ihrer privaten Belegschaft entfernen, wenn diese Arbeitskraft in dieser Konsole hinzugefügt wurde. Wenn Sie den Arbeitnehmer (Benutzer) in der Amazon Cognito-Konsole hinzugefügt haben, lesen Sie unter  [Private Auftragnehmer verwalten (Amazon Cognito Console)](sms-workforce-management-private-cognito.md) nach, wie Sie den Arbeitnehmer in der Amazon Cognito-Konsole entfernen können. 

**So entfernen Sie einen Auftragnehmer über die Übersichtsseite Private workforce (Private Arbeitskräfte**

1. Wählen Sie im Bereich **Workers (Auftragnehmer)** den Auftragnehmer aus, den Sie löschen möchten. 

1. Wenn der Auftragnehmer nicht deaktiviert wurde, wählen Sie **Disable (Deaktivieren)**.  

1. Wählen Sie den Auftragnehmer aus und wählen Sie **Delete (Löschen)**. 

# Private Auftragnehmer verwalten (Amazon Cognito Console)
<a name="sms-workforce-management-private-cognito"></a>

Eine private Arbeitskraft entspricht einem einzelnen **Amazon Cognito-Benutzerpool**. Private Arbeitsteams entsprechen den **Amazon Cognito-Benutzergruppen** innerhalb dieses Benutzerpools. Die Auftragnehmer entsprechen den **Amazon Cognito-Benutzern** innerhalb dieser Gruppen. 

Nachdem Sie Ihre Belegschaft erstellt haben, können Sie über die Amazon Cognito-Konsole Arbeitsteams und einzelne Auftragnehmer hinzufügen. Sie können in der Amazon Cognito-Konsole auch Auftragnehmer aus Ihrem privaten Personalbestand löschen oder aus einzelnen Teams entfernen. 

**Wichtig**  
Sie können Arbeitsteams nicht aus der Amazon Cognito-Konsole löschen. Das Löschen einer Amazon Cognito Cognito-Benutzergruppe, die einem Amazon SageMaker AI-Arbeitsteam zugeordnet ist, führt zu einem Fehler. Verwenden Sie die SageMaker KI-Konsole, um Arbeitsteams zu entfernen.  

## Arbeitsteams erstellen (Amazon Cognito Console)
<a name="create-work-teams-cog"></a>

 Sie können ein neues Arbeitsteam erstellen, um einen Auftrag zu erledigen, indem Sie eine Amazon Cognito-Benutzergruppe zum Benutzerpool hinzufügen, der mit Ihrer privaten Belegschaft verbunden ist. Um eine Amazon Cognito-Benutzergruppe zu einem bestehenden Worker-Pool hinzuzufügen, siehe [Hinzufügen von Gruppen zu einem User-Pool](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-user-groups.html).  

**So erstellen Sie ein Arbeitsteam unter Verwendung einer bestehenden Amazon Cognito-Benutzergruppe**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/). 

1. Wählen Sie im Navigationsbereich **Workforces (Arbeitskräfte)** aus. 

1. Wählen Sie für **Private Teams (Private Teams)** die Option **Create private Team (Privates Team erstellen)** aus. 

1. Geben Sie unter **Team details (Team-Details)** dem Team einen Namen. Der Name muss in Ihrem Konto in einer AWS Region eindeutig sein. 

1. Wählen Sie für **Auftragnehmer hinzufügen** die Option **Vorhandene Amazon Cognito-Benutzergruppen importieren** und wählen Sie eine oder mehrere Benutzergruppen aus, die Teil des neuen Teams sind. 

1. Wenn Sie ein **SNS-Thema** wählen, werden alle dem Team hinzugefügten Auftragnehmer beim Amazon Simple Notification Service (Amazon SNS) abonniert und benachrichtigt, wenn neue Arbeitsaufgaben für das Team verfügbar sind. Wählen Sie aus einer Liste Ihrer bestehenden SNS-Themen, die sich auf SageMaker Ground Truth oder Amazon Augmented AI beziehen, oder wählen Sie **Neues Thema erstellen**, um eines zu erstellen. 
**Anmerkung**  
Amazon SNS-Benachrichtigungen werden von Ground Truth unterstützt und von Augmented AI nicht. Wenn Sie Arbeitnehmer für den Erhalt von SNS-Benachrichtigungen anmelden, erhalten diese nur Benachrichtigungen über Ground-Truth-Labeling-Aufträge. Sie erhalten keine Benachrichtigungen über Augmented AI-Aufgaben. 

### Subscriptions (Abonnements)
<a name="subscriptions-cog-workteam"></a>

Nachdem Sie ein Arbeitsteam erstellt haben, können Sie weitere Informationen über das Team anzeigen und das SNS-Thema, das die Mitglieder abonniert haben, über die Amazon Cognito-Konsole ändern oder festlegen. Wenn Sie Teammitglieder hinzugefügt haben, bevor Sie das Team für ein Thema abonniert haben, müssen Sie diese Mitglieder manuell für dieses Thema abonnieren. Weitere Informationen finden Sie unter [So erstellen Sie das Amazon-SNS-Thema](sms-workforce-management-private-sns.md). 

## Auftragnehmer hinzufügen und entfernen (Amazon Cognito Console)
<a name="add-remove-workers-cog"></a>

 Wenn Sie die Amazon Cognito-Konsole verwenden, um Auftragnehmer zu einem Arbeitsteam hinzuzufügen, müssen Sie einen Benutzer zu dem mit der Belegschaft verbundenen Benutzerpool hinzufügen, bevor Sie diesen Benutzer zu einer Benutzergruppe hinzufügen. Benutzer können einem Benutzerpool auf verschiedene Arten hinzugefügt werden. Weitere Informationen finden Sie unter [Registrieren und Bestätigen von Benutzerkonten](https://docs.aws.amazon.com/cognito/latest/developerguide/signing-up-users-in-your-app.html). 

### Hinzufügen eines Auftragnehmers zu einem Arbeitsteam
<a name="add-worker-workteam-cog"></a>

Nachdem ein Benutzer zu einem Pool hinzugefügt wurde, kann der Benutzer Benutzergruppen innerhalb dieses Pools zugeordnet werden. Nachdem ein Benutzer zu einer Benutzergruppe hinzugefügt wurde, wird dieser Benutzer zu einem Auftragnehmer in einem beliebigen Arbeitsteam, das mit dieser Benutzergruppe erstellt wurde.

**So fügen Sie einen Benutzer zu einer Benutzergruppe hinzu**

1. Öffnen Sie die Amazon Cognito Cognito-Konsole: [https://console.aws.amazon.com/cognito/](https://console.aws.amazon.com/cognito). 

1. Wählen Sie **Manage User Pools (Benutzerpools verwalten)**.

1. Wählen Sie den Benutzerpool aus, der Ihrer SageMaker KI-Belegschaft zugeordnet ist.  

1. Wählen Sie unter **General Settings (Allgemeine Einstellungen)** die Option **Users and Groups (Benutzer und Gruppen)** aus und führen Sie eine der folgenden Aktionen aus: 
   + Wählen Sie **Groups (Gruppen)**, wählen die Gruppe aus, der Sie den Benutzer hinzufügen möchten, und wählen Sie dann **Add users (Benutzer hinzufügen)**. Wählen Sie die Benutzer, die Sie hinzufügen möchten, indem Sie auf das Plus-Symbol rechts neben dem Namen des Benutzers klicken.  
   + Wählen Sie **Users (Benutzer)**, wählen Sie den Benutzer aus, den Sie der Benutzergruppe hinzufügen möchten, und wählen Sie dann **Add to group (Zur Gruppe hinzufügen)**. Wählen Sie im Dropdown-Menü die Gruppe aus und wählen Sie dann **Add to group (Zur Gruppe hinzufügen)**.

### Deaktivieren und Entfernen eines Auftragnehmers aus einem Arbeitsteam
<a name="disable-remove-workers-cog"></a>

Die Deaktivierung eines Arbeiters verhindert, dass der Arbeiter Aufträge erhält. Diese Maßnahme führt nicht zum Ausscheiden des Arbeitnehmers aus der Belegschaft oder aus einem Arbeitsteam, dem er angehört. Um einen Benutzer aus einem Arbeitsteam in Amazon Cognito zu entfernen, entfernen Sie den Benutzer aus der Benutzergruppe, die mit diesem Team verbunden ist.

**Einen Worker deaktivieren (Amazon-Cognito-Konsole)**

1. Öffnen Sie die Amazon Cognito Cognito-Konsole: [https://console.aws.amazon.com/cognito/](https://console.aws.amazon.com/cognito). 

1. Wählen Sie **Manage User Pools (Benutzerpools verwalten)**.

1. Wählen Sie den Benutzerpool aus, der Ihrer SageMaker KI-Belegschaft zugeordnet ist.

1. Wählen Sie unter Allgemeine**General Settings (Allgemeine Einstellungen)** die Option **Users and Groups (Benutzer und Gruppen)** aus.

1. Wählen Sie den Benutzer aus, den Sie deaktivieren möchten.

1. Wählen Sie **Benutzer deaktivieren** aus.

Sie können einen deaktivierten Benutzer aktivieren, indem Sie **Enable User (Benutzer aktivieren)** auswählen.  

**So entfernen Sie einen Benutzer aus einer Benutzergruppe (Amazon Cognito-Konsole)**

1. Öffnen Sie die Amazon Cognito Cognito-Konsole: [https://console.aws.amazon.com/cognito/](https://console.aws.amazon.com/cognito). 

1. Wählen Sie **Manage User Pools (Benutzerpools verwalten)**. 

1. Wählen Sie den Benutzerpool aus, der Ihrer SageMaker KI-Belegschaft zugeordnet ist.  

1. Wählen Sie unter Allgemeine**General Settings (Allgemeine Einstellungen)** die Option **Users and Groups (Benutzer und Gruppen)** aus. 

1. Wählen Sie auf der Registerkarte **Benutzer** das Icon **X** rechts neben der Gruppe, aus der Sie den Benutzer entfernen möchten. 

# OIDC IdP – Arbeitskräfte
<a name="sms-workforce-private-use-oidc"></a>

Richten Sie mithilfe eines OpenID Connect (OIDC) Identity Providers (IdP) eine private Arbeitskraft ein, wenn Sie Ihre Auftragnehmer mit Ihrem eigenen OIDC-IdP verwalten und authentifizieren möchten. Individuelle Auftragnehmeranmeldedaten und andere Daten werden vertraulich behandelt. Ground Truth und Amazon A2I haben nur Einblick in die Arbeitnehmerinformationen, die Sie im Rahmen der Anträge, die Sie an diese Dienste senden, zur Verfügung stellen. Um eine Arbeitskraft mit einem OIDC-IdP zusammenzustellen, muss Ihr IdP *Gruppen* unterstützen, da Ground Truth und Amazon A2I eine oder mehrere Gruppen in Ihrem IdP einem Arbeitsteam zuordnen. Weitere Informationen hierzu finden Sie unter [Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden](sms-workforce-create-private-oidc.md#sms-workforce-create-private-oidc-configure-idp).

Wenn Sie ein neuer Benutzer von Ground Truth oder Amazon A2I sind, können Sie Ihre Auftragnehmer-Benutzeroberfläche und Ihren Auftrag-Workflow testen, indem Sie ein privates Arbeitsteam erstellen und sich selbst als Auftragnehmer hinzufügen. Verwenden Sie dieses Arbeitsteam, wenn Sie einen Beschriftungsauftrag oder einen menschlichen Überprüfungs-Workflow erstellen. Erstellen Sie zunächst anhand der Anweisungen unter [Erstellen einer privaten Arbeitskraft (OIDC IdP)](sms-workforce-create-private-oidc.md) eine private OIDC-IdP-Arbeitskraft. Als Nächstes erfahren Sie unter [Verwalten von privaten Arbeitskräften (OIDC IdP)](sms-workforce-manage-private-oidc.md), wie Sie ein Arbeitsteam zusammenstellen.

**Topics**
+ [Erstellen einer privaten Arbeitskraft (OIDC IdP)](sms-workforce-create-private-oidc.md)
+ [Verwalten von privaten Arbeitskräften (OIDC IdP)](sms-workforce-manage-private-oidc.md)

# Erstellen einer privaten Arbeitskraft (OIDC IdP)
<a name="sms-workforce-create-private-oidc"></a>

Erstellen Sie eine private Belegschaft mithilfe eines OpenID Connect (OIDC) Identity Providers (IdP), wenn Sie Auftragnehmer mit Ihrem eigenen Identitätsanbieter authentifizieren und verwalten möchten. Auf dieser Seite erfahren Sie, wie Sie Ihren IdP für die Kommunikation mit Amazon SageMaker Ground Truth (Ground Truth) oder Amazon Augmented AI (Amazon A2I) konfigurieren und wie Sie mithilfe Ihres eigenen IdP eine Belegschaft aufbauen können. 

Um eine Belegschaft mit einem OIDC-IdP zusammenzustellen, muss Ihr IdP *Gruppen* unterstützen, da Ground Truth und Amazon A2I eine oder mehrere Gruppen verwenden, die Sie angeben, um Arbeitsteams zu bilden. Sie verwenden Arbeitsteams, um Auftragnehmer für Ihre Etikettierungsaufgaben und Aufgaben zur Überprüfung durch Auftragnehmer festzulegen. Da es sich bei Gruppen nicht um einen [Standardanspruch](https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims) handelt, hat Ihr IdP möglicherweise eine andere Benennungskonvention für eine Gruppe von Benutzern (Auftragnehmern). Daher müssen Sie mithilfe des benutzerdefinierten Antrags `sagemaker:groups`, der von Ihrem IdP an Ground Truth oder Amazon A2I gesendet wird, eine oder mehrere Benutzergruppen identifizieren, zu denen ein Auftragnehmer gehört. Weitere Informationen hierzu finden Sie unter [Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden](#sms-workforce-create-private-oidc-configure-idp).

Sie erstellen mithilfe der API-Operation eine OIDC-IdP-Belegschaft. SageMaker [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html) Sobald Sie eine private Belegschaft erstellt haben, stehen diese Belegschaft und alle mit ihr verbundenen Arbeitsteams und Arbeiter für alle Ground-Truth-Labeling-Aufgaben und Amazon A2I Überprüfungsworkflows zur Verfügung. Weitere Informationen hierzu finden Sie unter [Eine OIDC-IdP Workforce einrichten](#sms-workforce-create-private-oidc-createworkforce).

## Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden
<a name="sms-workforce-create-private-oidc-configure-idp"></a>

Wenn Sie Ihren eigenen IdP verwenden, benutzen Ground Truth und Amazon A2I Ihre `Issuer`, `ClientId`, und `ClientSecret`, um Auftragnehmer zu authentifizieren, indem sie einen Authentifizierungs-CODE von Ihrer `AuthorizationEndpoint` erhalten. 

Ground Truth und Amazon A2I verwenden diesen CODE, um einen individuellen Antrag entweder von Ihrem IdP `TokenEndpoint` oder `UserInfoEndpoint` zu erhalten. Sie können entweder so konfigurieren`TokenEndpoint`, dass ein JSON-Web-Token (JWT) oder `UserInfoEndpoint` ein JSON-Objekt zurückgegeben wird. Das JWT- oder JSON-Objekt muss die von Ihnen angegebenen erforderlichen und optionalen Ansprüche enthalten. Ein [Anspruch](https://openid.net/specs/openid-connect-core-1_0.html#Terminology) ist ein Schlüssel-Wert-Paar, das Informationen über einen Worker oder Metadaten über den OIDC-Dienst enthält. In der folgenden Tabelle sind die Ansprüche aufgeführt, die enthalten sein müssen und die optional in das JWT- oder JSON-Objekt aufgenommen werden können, das Ihr IdP zurückgibt. 

**Anmerkung**  
Einige der Parameter in der folgenden Tabelle können mit a `:` oder a `-` angegeben werden. Sie können beispielsweise mithilfe `sagemaker:groups` oder `sagemaker-groups` in Ihrem Antrag angeben, zu welchen Gruppen eine Arbeitskraft gehört. 


|  Name  | Erforderlich | Zulässiges Format und Werte | Description | Beispiel | 
| --- | --- | --- | --- | --- | 
|  `sagemaker:groups` oder `sagemaker-groups`  |  Ja  |  **Datentyp**: Wenn ein Auftragnehmer zu einer einzelnen Gruppe gehört, identifizieren Sie die Gruppe anhand einer Zeichenfolge. Wenn ein Worker zu mehreren Gruppen gehört, verwenden Sie eine Liste mit bis zu 10 Zeichenketten.  **Zulässige Zeichen**: Regex: [\$1 p \$1L\$1\$1 p \$1M\$1\$1 p \$1S\$1\$1 p \$1N\$1\$1 p \$1P\$1] \$1 **Kontingente**: 10 Gruppen pro Auftragnehmer 63 Zeichen pro Gruppenname  |  Weist einen Auftragnehmer einer oder mehreren Gruppen zu. Gruppen werden verwendet, um die Arbeitskraft Arbeitsteams zuzuordnen.   |  Beispiel für einen Auftragnehmer, der zu einer einzelnen Gruppe gehört: `"work_team1"` Beispiel für eine Arbeitskraft, die zu mehr als einer Gruppe gehört: `["work_team1", "work_team2"]`   | 
|  `sagemaker:sub` oder `sagemaker-sub`  |  Ja  |  **Datentyp**: Zeichenfolge  |  Dies ist erforderlich, um die Identität eines Auftragnehmers innerhalb der Ground-Truth-Plattform zu Auditzwecken nachzuverfolgen und Aufgaben zu identifizieren, an denen dieser Auftragnehmer gearbeitet hat.  Für ADFS: Kunden müssen den Primary Security Identifier (SID) verwenden.   |  `"111011101-123456789-3687056437-1111"`  | 
|  `sagemaker:client_id` oder `sagemaker-client_id`  |  Ja  |  **Datentyp**: Zeichenfolge **Zulässige Zeichen**: Regex: [\$1 w\$1-] \$1 **Zitate**: 128 Zeichen   |  Eine Client-ID. Alle Token müssen für diese Client-ID ausgestellt werden.   |  `"00b600bb-1f00-05d0-bd00-00be00fbd0e0"`  | 
|  `sagemaker:name` oder `sagemaker-name`  |  Ja  |  **Datentyp**: Zeichenfolge  |  Der Name des Auftragnehmers, der im Worker-Portal angezeigt werden soll.  |  `"Jane Doe"`  | 
|  `email`  |  Nein  |  **Datentyp**: Zeichenfolge  |  Die E-Mail-Adresse des Auftragnehmers. Ground Truth verwendet diese E-Mail, um Auftragnehmer darüber zu informieren, dass sie eingeladen wurden, an Labeling-Aufgaben zu arbeiten. Ground Truth verwendet diese E-Mail auch, um Ihre Auftragnehmer zu benachrichtigen, wenn Labeling-Aufgaben verfügbar werden, wenn Sie ein Amazon SNS-Thema für ein Arbeitsteam einrichten, dem dieser Auftragnehmer angehört.  |  `"example-email@domain.com"`  | 
|  `email_verified`  |  Nein  |  **Datentyp**: Bool **Akzeptierte Werte**: `True`, `False`  |  Gibt an, ob die Benutzer-E-Mail verifiziert wurde oder nicht.   |  `True`  | 

Es folgt ein Beispiel für die JSON-Objektsyntax, die Ihr `UserInfoEndpoint` zurückgeben kann. 

```
{
    "sub":"122",
    "exp":"10000",
    "sagemaker-groups":["group1","group2"]
    "sagemaker-name":"name",
    "sagemaker-sub":"122",
    "sagemaker-client_id":"123456"
}
```

Ground Truth oder Amazon A2I vergleicht die Gruppen, die in `sagemaker:groups` oder `sagemaker-groups` aufgeführt sind, um zu überprüfen, ob Ihr Auftragnehmer zu dem Arbeitsteam gehört, das in der Etikettierungsaufgabe oder der menschlichen Überprüfungsaufgabe angegeben ist. Nachdem das Arbeitsteam verifiziert wurde, werden Aufgaben zur Kennzeichnung oder Überprüfung durch einen Auftragnehmer an diesen Auftragnehmer gesendet. 

## Eine OIDC-IdP Workforce einrichten
<a name="sms-workforce-create-private-oidc-createworkforce"></a>

Sie können mithilfe des SageMaker API-Vorgangs `CreateWorkforce` und der zugehörigen sprachspezifischen Funktionen eine Belegschaft erstellen. SDKs Geben Sie im Parameter `OidcConfig` einen `WorkforceName` und Informationen zu Ihrem OIDC-IDP an. Es wird empfohlen, dass Sie Ihr OIDC mit einem Platzhalter-Umleitungs-URI konfigurieren und den URI dann mit der URL des Worker-Portals aktualisieren, nachdem Sie die Belegschaft erstellt haben. Weitere Informationen hierzu finden Sie unter [Konfigurieren Ihres OIDC-IdP](#sms-workforce-create-private-oidc-configure-url).

Im Folgenden wird ein Beispiel für eine solche Anfrage gezeigt. Weitere Informationen zu den einzelnen Parametern in dieser Anfrage finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html).

```
CreateWorkforceRequest: {
    #required fields
    WorkforceName: "example-oidc-workforce",
    OidcConfig: { 
        ClientId: "clientId",
        ClientSecret: "secret",
        Issuer: "https://example-oidc-idp.com/adfs",
        AuthorizationEndpoint: "https://example-oidc-idp.com/adfs/oauth2/authorize",
        TokenEndpoint: "https://example-oidc-idp.com/adfs/oauth2/token",
        UserInfoEndpoint: "https://example-oidc-idp.com/adfs/oauth2/userInfo",
        LogoutEndpoint: "https://example-oidc-idp.com/adfs/oauth2/log-out",
        JwksUri: "https://example-oidc-idp.com/adfs/discovery/keys"
    },
    SourceIpConfig: {
        Cidrs: ["string", "string"]
    }
}
```

### Konfigurieren Ihres OIDC-IdP
<a name="sms-workforce-create-private-oidc-configure-url"></a>

Wie Sie Ihren OIDC-IdP konfigurieren, hängt von dem von Ihnen verwendeten IdP und Ihren Geschäftsanforderungen ab. 

Wenn Sie Ihren IdP konfigurieren, müssen Sie eine Rückruf- oder Umleitungs-URI angeben. Nachdem Ground Truth oder Amazon A2I einen Auftragnehmer authentifiziert hat, leitet dieser URI den Auftragnehmer zum Worker-Portal weiter, wo die Auftragnehmer auf Kennzeichnungs- oder menschliche Überprüfungsaufgaben zugreifen können. Um eine URL für das Worker-Portal zu erstellen, müssen Sie mithilfe der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html) API-Operation eine Belegschaft mit Ihren OIDC-IdP-Details erstellen. Insbesondere müssen Sie Ihren OIDC-IdP mit den erforderlichen benutzerdefinierten Sagemaker-Ansprüchen konfigurieren (weitere Informationen finden Sie im nächsten Abschnitt). Daher wird empfohlen, dass Sie Ihr OIDC mit einem Platzhalter-Umleitungs-URI konfigurieren und den URI dann aktualisieren, nachdem Sie die Belegschaft erstellt haben. Sehen Sie [Eine OIDC-IdP Workforce einrichten](#sms-workforce-create-private-oidc-createworkforce) an, um zu erfahren, wie man eine Belegschaft mit dieser API erstellt. 

Sie können die URL Ihres Mitarbeiterportals in der SageMaker Ground Truth Konsole oder mithilfe der SageMaker API-Operation anzeigen`DescribeWorkforce`. Die URL des Worker-Portals ist im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Workforce.html#sagemaker-Type-Workforce-SubDomain](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Workforce.html#sagemaker-Type-Workforce-SubDomain) Parameter in der Antwort enthalten.

**Wichtig**  
Stellen Sie sicher, dass Sie die Workforce-Subdomain zu Ihrer OIDC-IdP-Zulassungsliste hinzufügen. Wenn Sie die Subdomain zu Ihrer Zulassungsliste hinzufügen, muss sie mit `/oauth2/idpresponse` enden.

**So zeigen Sie die URL Ihres Worker-Portals an, nachdem Sie eine private Belegschaft erstellt haben (Konsole):**

1. Öffnen Sie die SageMaker AI-Konsole unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/). 

1. Wählen Sie im Navigationsbereich die Option **Labeling workforces (Arbeitskräfte für das Labeling)** aus. 

1. Wählen Sie die Registerkarte **Private (Privat)** aus.

1. In der **Übersicht über private Auftragnehmer** finden Sie die **Anmelde-URL für das Labeling-Portal**. Dies ist die URL Ihres Worker-Portals.

**So zeigen Sie die URL Ihres Worker-Portals an, nachdem Sie eine private Belegschaft (API) erstellt haben:**

Wenn Sie eine private Arbeitskraft mithilfe von `[CreateWorkforce](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html)` erstellen, geben Sie eine `WorkforceName` an. Verwenden Sie diesen Namen, um [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeWorkforce.html) aufzurufen. Die folgende Tabelle enthält Beispiele für Anfragen, bei denen das AWS CLI und verwendet wird AWS SDK für Python (Boto3). 

------
#### [ SDK for Python (Boto3) ]

```
response = client.describe_workforce(WorkforceName='string')
print(f'The workforce subdomain is: {response['SubDomain']}')
```

------
#### [ AWS CLI ]

```
$ C:\>  describe-workforce --workforce-name 'string'
```

------

## Bestätigen Sie Ihre Antwort auf die OIDC IdP Workforce-Authentifizierung
<a name="sms-workforce-create-private-oidc-validate"></a>

Nachdem Sie Ihre OIDC-IdP Workforce erstellt haben, können Sie die folgenden Schritte zum Überprüfen des Authentifizierungs-Workflows mit cURL ausführen. Bei diesem Verfahren wird davon ausgegangen, dass Sie Zugriff auf ein Terminal haben und cURL installiert haben.

**So validieren Sie Ihre OIDC-IdP-Autorisierungsantwort:**

1. Rufen Sie einen Autorisierungscode mit einer wie folgt konfigurierten URI ab:

   ```
   {AUTHORIZE ENDPOINT}?client_id={CLIENT ID}&redirect_uri={REDIRECT URI}&scope={SCOPE}&response_type=code
   ```

   1. Ersetzen Sie *`{AUTHORIZE ENDPOINT}`* durch den Autorisierungsendpunkt für Ihren OIDC-IdP.

   1. `{CLIENT ID}`Ersetzen Sie es durch die Client-ID Ihres OAuth Kunden.

   1. Ersetzen Sie *`{REDIRECT URI}`* durch die URL des Worker-Portals. Falls sie noch nicht vorhanden ist, müssen Sie `/oauth2/idpresponse` am Ende der URL hinzufügen.

   1. Wenn Sie einen benutzerdefinierten Bereich haben, verwenden Sie diesen zum Ersetzen von `{SCOPE}`. Wenn Sie keinen benutzerdefinierten Bereich haben, ersetzen Sie `{SCOPE}` durch`openid`.

   Im Folgenden finden Sie ein Beispiel für einen URI, nachdem die obigen Änderungen vorgenommen wurden:

   ```
   https://example.com/authorize?client_id=f490a907-9bf1-4471-97aa-6bfd159f81ac&redirect_uri=https%3A%2F%2F%2Fexample.labeling.sagemaker.aws%2Foauth2%2Fidpresponse&response_type=code&scope=openid
   ```

1. Kopieren Sie die geänderte URI aus Schritt 1, fügen Sie sie in Ihren Browser ein und drücken Sie die Eingabetaste auf Ihrer Tastatur.

1. Authentifizieren Sie sich mit Ihrem IdP.

1. Kopieren Sie den Abfrageparameter für den Authentifizierungscode in die URI. Dieser Parameter beginnt mit `code=`. Das folgende Beispiel zeigt, wie die Anforderung aussehen kann. In diesem Beispiel kopieren Sie `code=MCNYDB...` und alles danach.

   ```
   https://example.labeling.sagemaker.aws/oauth2/idpresponse?code=MCNYDB....
   ```

1. Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein, nachdem Sie die unten aufgeführten erforderlichen Änderungen vorgenommen haben:

   ```
   curl --request POST \
     --url '{TOKEN ENDPOINT}' \
     --header 'content-type: application/x-www-form-urlencoded' \
     --data grant_type=authorization_code \
     --data 'client_id={CLIENT ID}' \
     --data client_secret={CLIENT SECRET} \
     --data code={CODE} \
     --data 'redirect_uri={REDIRECT URI}'
   ```

   1. Ersetzen Sie `{TOKEN ENDPOINT}` durch den Token-Endpunkt für Ihren OIDC-IdP.

   1. `{CLIENT ID}`Ersetzen Sie es durch die Client-ID Ihres OAuth Kunden.

   1. `{CLIENT SECRET}`Ersetzen Sie es durch das geheime Kundengeheimnis Ihres OAuth Kunden.

   1. Ersetzen Sie `{CODE}` durch den Abfrageparameter für den Authentifizierungscode, den Sie in Schritt 4 kopiert haben.

   1. Ersetzen Sie *`{REDIRECT URI}`* durch die URL des Worker-Portals.

   Im Folgenden finden Sie ein Beispiel für die cURL-Anfrage nach den oben beschriebenen Änderungen:

   ```
   curl --request POST \
     --url 'https://example.com/token' \
     --header 'content-type: application/x-www-form-urlencoded' \
     --data grant_type=authorization_code \
     --data 'client_id=f490a907-9bf1-4471-97aa-6bfd159f81ac' \
     --data client_secret=client-secret \
     --data code=MCNYDB... \
     --data 'redirect_uri=https://example.labeling.sagemaker.aws/oauth2/idpresponse'
   ```

1. Dieser Schritt hängt von der Art von `access_token` Ihrer IdP-Rücksendungen ab, einem Klartext-Zugriffstoken oder einem JWT-Zugriffstoken.
   + Wenn Ihr IdP keine JWT-Zugriffstoken unterstützt, kann `access_token` ein einfacher Text sein (z. B. eine UUID). Die Antwort, die Sie sehen, könnte so ähnlich aussehen wie die folgende. Fahren Sie in diesem Fall mit Schritt 7 fort.

     ```
     {
       "access_token":"179c144b-fccb-4d96-a28f-eea060f39c13",
       "token_type":"Bearer",
       "expires_in":3600,
       "refresh_token":"ef43e52e-9b4f-410c-8d4c-d5c5ee57631a",
       "scope":"openid"
     }
     ```
   + Wenn Ihr IdP JWT-Zugriffstoken unterstützt, sollte Schritt 5 ein Zugriffstoken im JWT-Format generieren. Die Antwort kann zum Beispiel wie folgt aussehen:

     ```
     {
         "access_token":"eyJh...JV_adQssw5c",
         "refresh_token":"i6mapTIAVSp2oJkgUnCACKKfZxt_H5MBLiqcybBBd04",
         "refresh_token_expires_in":6327,
         "scope":"openid",
         "id_token":"eyJ0eXAiOiJK9...-rDaQzUHl6cQQWNiDpWOl_lxXjQEvQ"
     }
     ```

     Kopieren Sie das JWT und dekodieren Sie es. Sie können ein Python-Skript oder eine Website eines Drittanbieters verwenden, um es zu dekodieren. Sie können beispielsweise auf die Website [https://jwt.io/](https://jwt.io/) gehen und das JWT in das Feld **Encoded** einfügen, um es zu dekodieren. 

     Stellen Sie sicher, dass die dekodierte Antwort Folgendes enthält:
     + Die **erforderlichen** SageMaker KI-Ansprüche finden Sie in der Tabelle unter[Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden](#sms-workforce-create-private-oidc-configure-idp). Ist dies nicht der Fall, müssen Sie Ihren OIDC-IdP neu konfigurieren, um diese Ansprüche zu berücksichtigen. 
     + Der [Emittent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OidcConfig.html#sagemaker-Type-OidcConfig-Issuer), den Sie bei der Einrichtung der IdP-Belegschaft angegeben haben.

1. Geben Sie in einem Terminal den folgenden Befehl ein, nachdem Sie die unten aufgeführten erforderlichen Änderungen vorgenommen haben:

   ```
   curl -X POST -H 'Authorization: Bearer {ACCESS TOKEN}' -d '' -k -v {USERINFO ENDPOINT}
   ```

   1. Ersetzen Sie `{USERINFO ENDPOINT}` durch den Benutzerinformationsendpunkt für Ihren OIDC-IdP.

   1. Ersetzen Sie `{ACCESS TOKEN}` durch das Zugriffstoken in der Antwort, die Sie in Schritt 7 erhalten haben. Dies ist der Eintrag für den `"access_token"` Parameter.

   Im Folgenden finden Sie ein Beispiel für die cURL-Anfrage nach den oben beschriebenen Änderungen:

   ```
    curl -X POST -H 'Authorization: Bearer eyJ0eX...' -d '' -k -v https://example.com/userinfo
   ```

1. Die Antwort auf den letzten Schritt des obigen Verfahrens könnte dem folgenden Codeblock ähneln. 

   Wenn der in Schritt 6 zurückgegebene `access_token` ein reiner Text war, müssen Sie überprüfen, ob diese Antwort die erforderlichen Informationen enthält. In diesem Fall muss die Antwort die **erforderlichen** SageMaker KI-Ansprüche in der Tabelle unter enthalten[Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden](#sms-workforce-create-private-oidc-configure-idp). Zum Beispiel `sagemaker-groups`, `sagamaker-name`.

   ```
   {
       "sub":"122",
       "exp":"10000",
       "sagemaker-groups":["group1","group2"]
       "sagemaker-name":"name",
       "sagemaker-sub":"122",
       "sagemaker-client_id":"123456"
   }
   ```

## Nächste Schritte
<a name="sms-workforce-create-private-oidc-next-steps"></a>

Sobald Sie mit Ihrem IdP eine private Belegschaft erstellt und Ihre IdP-Authentifizierungsantwort verifiziert haben, können Sie mithilfe Ihrer IdP-Gruppen Arbeitsteams erstellen. Weitere Informationen hierzu finden Sie unter [Verwalten von privaten Arbeitskräften (OIDC IdP)](sms-workforce-manage-private-oidc.md). 

Mithilfe der SageMaker API können Sie den Zugriff Ihrer Mitarbeiter auf Aufgaben auf bestimmte IP-Adressen beschränken und Ihre Belegschaft aktualisieren oder löschen. Weitere Informationen hierzu finden Sie unter [Private Personalverwaltung mithilfe der SageMaker Amazon-API](sms-workforce-management-private-api.md).

# Verwalten von privaten Arbeitskräften (OIDC IdP)
<a name="sms-workforce-manage-private-oidc"></a>

Sobald Sie mit Ihrem OpenID Connect (OIDC) Identity Provider (IdP) eine private Belegschaft erstellt haben, können Sie Ihre Mitarbeiter mithilfe Ihres IdP verwalten. So können Sie Worker beispielsweise direkt über Ihren IdP hinzufügen, entfernen und gruppieren.

Um Mitarbeiter zu einem Amazon SageMaker Ground Truth (Ground Truth) -Labeling-Job oder einer Amazon Augmented AI (Amazon A2I) Human Review-Aufgabe hinzuzufügen, erstellen Sie Arbeitsteams mit 1—10 IdP-Gruppen und weisen dieses Arbeitsteam dem Job oder der Aufgabe zu. Sie weisen einem Job oder einer Aufgabe ein Arbeitsteam zu, indem Sie dieses Arbeitsteam angeben, wenn Sie einen Labeling-Auftrag (Ground Truth) oder einen menschlichen Review-Workflow (Amazon A2I) erstellen. 

Sie können jedem Etikettierungsauftrag oder jedem Arbeitsablauf für die Überprüfung durch einen Mitarbeiter nur ein Team zuweisen. Sie können dasselbe Team verwenden, um mehrere Etikettierungsaufträge oder manuelle Überprüfungsaufgaben zu erstellen. Sie können auch mehrere Arbeitsteams zusammenstellen, um an verschiedenen Etikettierungsaufträgen oder menschlichen Überprüfungsaufgaben zu arbeiten. 

## Voraussetzungen
<a name="sms-workforce-manage-private-oidc-prerequisites"></a>

Um private Arbeitsteams mithilfe Ihrer OIDC-IdP-Gruppen zu erstellen und zu verwalten, müssen Sie zunächst mithilfe der SageMaker API-Operation eine Belegschaft erstellen. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html) Weitere Informationen hierzu finden Sie unter [Erstellen einer privaten Arbeitskraft (OIDC IdP)](sms-workforce-create-private-oidc.md). 

## Fügen Sie Arbeitsteams hinzu
<a name="sms-workforce-manage-private-oidc-workteams"></a>

**Sie können die SageMaker KI-Konsole verwenden, um mithilfe Ihrer OIDC-IdP-Mitarbeiter auf der Seite **Labeling Workforces** unter Ground Truth ein privates Arbeitsteam zusammenzustellen.** Wenn Sie einen Ground-Truth-Labeling-Auftrag erstellen, können Sie bei der Erstellung eines Labeling-Auftrags auch ein privates Arbeitsteam erstellen.

**Anmerkung**  
Sie erstellen und verwalten Arbeitsteams für Amazon A2I im Ground Truth Truth-Bereich der SageMaker KI-Konsole.

Sie können auch die SageMaker API und die zugehörige sprachspezifische API verwenden, SDKs um ein privates Arbeitsteam zusammenzustellen.

Verwenden Sie die folgenden Verfahren, um zu erfahren, wie Sie mithilfe der SageMaker KI-Konsole und der API ein privates Arbeitsteam erstellen. 

**So erstellen Sie auf der Seite Labeling Workforces (Konsole) ein privates Arbeitsteam**

1. Gehe zum Ground-Truth-Bereich der SageMaker KI-Konsole: [https://console.aws.amazon.com/sagemaker/Groundtruth](https://console.aws.amazon.com/sagemaker/groundtruth).

1. Wählen Sie **Labeling-Arbeitskräfte** aus.

1. Wählen Sie **Privat** aus.

1. Wählen Sie im Abschnitt **Private Teams** die Option **Privates Team erstellen** aus.

1. Geben Sie im Abschnitt **Teamdetails** einen **Teamnamen** ein. 

1. Geben Sie im Abschnitt **Mitarbeiter hinzufügen** den Namen einer einzelnen Benutzergruppe ein. Alle Mitarbeiter, die dieser Gruppe in Ihrem IdP zugeordnet sind, werden diesem Arbeitsteam hinzugefügt. 

1. Um mehr als eine Benutzergruppe hinzuzufügen, wählen Sie **Neue Benutzergruppe hinzufügen** aus und geben Sie die Namen der Benutzergruppen ein, die Sie diesem Arbeitsteam hinzufügen möchten. Geben Sie pro Zeile eine Benutzergruppe ein. 

1. (Optional) Wenn Sie bei Ground-Truth-Labeling-Aufträgen eine E-Mail für Mitarbeiter in Ihrem JWT angeben, benachrichtigt Ground Truth die Mitarbeiter, wenn eine neue Labeling-Aufgabe verfügbar ist, wenn Sie ein SNS-Thema auswählen. 

1. Wählen Sie **Privates Team erstellen**.

**So erstellen Sie ein privates Arbeitsteam beim Erstellen eines Ground-Truth-Labeling-Auftrags (Konsole)**

1. Gehe zum Ground-Truth-Bereich der SageMaker KI-Konsole: [https://console.aws.amazon.com/sagemaker/Groundtruth](https://console.aws.amazon.com/sagemaker/groundtruth).

1. Wählen Sie **Labeling-Job** aus.

1. Verwenden Sie die Anweisungen unter [Erstellen eines Kennzeichnungsauftrags (Konsole)](sms-create-labeling-job-console.md), um einen Labeling-Job zu erstellen. Hören Sie auf, wenn Sie auf der zweiten Seite zum Abschnitt **Mitarbeiter** gelangen. 

1. Wählen Sie **Privat** für Ihren Mitarbeitertyp aus.

1. Geben Sie einen **Teamnamen** ein. 

1. Geben Sie im Abschnitt **Mitarbeiter hinzufügen** unter **Benutzergruppen** den Namen einer einzelnen Benutzergruppe ein. Alle Mitarbeiter, die dieser Gruppe in Ihrem IdP zugeordnet sind, werden diesem Arbeitsteam hinzugefügt.
**Wichtig**  
Die Gruppennamen, die Sie für **Benutzergruppen** angeben, müssen mit den in Ihrem OIDC-IdP angegebenen Gruppennamen übereinstimmen.

1. Um mehr als eine Benutzergruppe hinzuzufügen, wählen Sie **Neue Benutzergruppe hinzufügen** aus und geben Sie die Namen der Benutzergruppen ein, die Sie diesem Arbeitsteam hinzufügen möchten. Geben Sie pro Zeile eine Benutzergruppe ein.

1. Führen Sie alle verbleibenden Schritte aus, um Ihren Etikettierungsauftrag zu erstellen. 

Das private Team, das Sie erstellen, wird für diesen Labeling-Job verwendet und ist im Bereich **Labeling Workforces** der SageMaker KI-Konsole aufgeführt. 

**Um mithilfe der API ein privates Arbeitsteam zu erstellen SageMaker**  
Mithilfe der SageMaker API-Operation können Sie ein privates Arbeitsteam erstellen`[CreateWorkteam](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkteam.html)`. 

Wenn Sie diesen Vorgang verwenden, listen Sie im `OidcMemberDefinition` Parameter `Groups` alle Benutzergruppen auf, die Sie in das Arbeitsteam aufnehmen möchten. 

**Wichtig**  
Die Gruppennamen, die Sie für `Groups` angeben, müssen mit den in Ihrem OIDC-IdP angegebenen Gruppennamen übereinstimmen. 

Wenn Ihre Benutzergruppennamen beispielsweise `group1`, `group2`, und `group3` in Ihrem OIDC-IdP lauten, konfigurieren Sie `OidcMemberDefinition` wie folgt:

```
 "OidcMemberDefinition": { 
    "Groups": ["group1", "group2", "group3"]
  }
```

Darüber hinaus müssen Sie dem Arbeitsteam mithilfe des Parameters `WorkteamName` einen Namen geben.

## IdP-Gruppen zu Arbeitsteams hinzufügen oder daraus entfernen
<a name="sms-workforce-manage-private-oidc-workteam-update"></a>

Nachdem Sie ein Arbeitsteam erstellt haben, können Sie die SageMaker API verwenden, um dieses Arbeitsteam zu verwalten. Verwenden Sie den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkteam.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkteam.html) Vorgang, um die IdP-Benutzergruppen zu aktualisieren, die in diesem Arbeitsteam enthalten sind. 
+ Verwenden Sie den `WorkteamName` Parameter, um das Worker zu identifizieren, das Sie aktualisieren möchten. 
+ Wenn Sie diesen Vorgang verwenden, listen Sie im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OidcMemberDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OidcMemberDefinition.html) Parameter `Groups` alle Benutzergruppen auf, die Sie in das Arbeitsteam aufnehmen möchten. Wenn eine Benutzergruppe einem Arbeitsteam zugeordnet ist und Sie sie *nicht* in diese Liste aufnehmen, ist diese Benutzergruppe nicht mehr diesem Arbeitsteam zugeordnet. 

## Löschen Sie ein Arbeitsteam
<a name="sms-workforce-manage-private-oidc-workteam-delete"></a>

Sie können ein Arbeitsteam mithilfe der SageMaker AI-Konsole und der SageMaker API löschen. 

**Um ein privates Arbeitsteam in der SageMaker AI-Konsole zu löschen**

1. Gehe zum Ground-Truth-Bereich der SageMaker KI-Konsole: [https://console.aws.amazon.com/sagemaker/Groundtruth](https://console.aws.amazon.com/sagemaker/groundtruth).

1. Wählen Sie **Labeling-Arbeitskräfte** aus.

1. Wählen Sie **Privat** aus.

1. Wählen Sie im Bereiche **Private Teams** das Team aus, dem Sie die Auftragnehmer hinzufügen möchten. 

1. Wählen Sie **Löschen** aus.

**Um ein privates Arbeitsteam (API) zu löschen**  
Sie können ein privates Arbeitsteam mithilfe der SageMaker API-Operation `[DeleteWorkteam](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkteam.html)` löschen.

## Einzelne Worker verwalten
<a name="sms-workforce-manage-private-oidc-worker-manage"></a>

Wenn Sie eine Belegschaft mit Ihrem eigenen OIDC-IdP zusammenstellen, können Sie Ground Truth oder Amazon A2I nicht verwenden, um einzelne Mitarbeiter zu verwalten. 
+ Um einen Mitarbeiter zu einem Arbeitsteam hinzuzufügen, fügen Sie diesen Mitarbeiter einer Gruppe hinzu, die diesem Arbeitsteam zugeordnet ist. 
+ Um einen Mitarbeiter aus einem Arbeitsteam zu entfernen, entfernen Sie diesen Mitarbeiter aus allen Benutzergruppen, die diesem Arbeitsteam zugeordnet sind. 

## Aktualisieren, löschen und beschreiben Sie Ihre Belegschaft
<a name="sms-workforce-manage-private-oidc-workforce"></a>

Sie können Ihre OIDC-IdP-Belegschaft mithilfe der API aktualisieren, löschen und beschreiben. SageMaker Im Folgenden finden Sie eine Liste von API-Operationen, mit denen Sie Ihre Worker verwalten können. Weitere Informationen, unter anderem dazu, wie Sie den Namen Ihrer Belegschaft finden können, finden Sie unter [Private Personalverwaltung mithilfe der SageMaker Amazon-API](sms-workforce-management-private-api.md).
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkforce.html)– Möglicherweise möchten Sie eine Belegschaft, die mit Ihrem eigenen OIDC-IdP erstellt wurde, aktualisieren, um einen anderen Autorisierungsendpunkt, Token-Endpunkt oder Emittenten anzugeben. Sie können jeden Parameter aktualisieren, der bei der Verwendung dieses Vorgangs in `[OidcConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OidcConfig.html)` gefunden wurde.

  Sie können Ihre OIDC-IdP-Konfiguration nur aktualisieren, wenn Ihrer Belegschaft keine Arbeitsteams zugeordnet sind. Weitere Informationen zum Löschen von Worker finden Sie unter [Löschen Sie ein Arbeitsteam](#sms-workforce-manage-private-oidc-workteam-delete).
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkforce.html)– Verwenden Sie diesen Vorgang, um Ihre privaten Mitarbeiter zu löschen. Wenn Ihrer Belegschaft Arbeitsteams zugeordnet sind, müssen Sie diese Arbeitsteams löschen, bevor Sie Ihre Belegschaft löschen. Weitere Informationen finden Sie unter [Löschen Sie ein Arbeitsteam](#sms-workforce-manage-private-oidc-workteam-delete).
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeWorkforce.html)— Verwenden Sie diesen Vorgang, um Informationen zu privaten Mitarbeitern aufzulisten, einschließlich des Namens der Belegschaft, des Amazon-Ressourcennamens (ARN) und, falls zutreffend, der zulässigen IP-Adressbereiche (CIDRs). 

# Private Personalverwaltung mithilfe der SageMaker Amazon-API
<a name="sms-workforce-management-private-api"></a>

Sie können Amazon SageMaker API-Operationen verwenden, um Ihre privaten Mitarbeiter zu verwalten, zu aktualisieren und zu löschen. Für jeden API-Vorgang, der in den folgenden Themen aufgeführt ist, finden Sie im Abschnitt „**Siehe auch**“ der API-Dokumentation eine Liste der unterstützten sprachspezifischen SDKs und zugehörigen Dokumentationen.

**Topics**
+ [Suche nach dem Namen Ihrer Arbeitskraft](sms-workforce-management-private-api-name.md)
+ [Beschränken des Zugriffs von Auftragnehmern auf Aufgaben auf zulässige IP-Adressen](sms-workforce-management-private-api-cidr.md)
+ [So aktivieren Sie Dual-Stack-Arbeitskräfte](sms-workforce-management-private-api-dualstack.md)
+ [Aktualisieren Sie die Arbeitskraft-Konfiguration des OIDC Identity Providers](sms-workforce-management-private-api-update.md)
+ [Löschen von privaten Arbeitskräften](sms-workforce-management-private-api-delete.md)

# Suche nach dem Namen Ihrer Arbeitskraft
<a name="sms-workforce-management-private-api-name"></a>

Für einige API-Operationen im Zusammenhang mit SageMaker KI-Mitarbeitern ist der Name Ihrer Belegschaft als Eingabe erforderlich. Mithilfe des []()API-Vorgangs in dieser Region können Sie die Namen Ihrer privaten Amazon Cognito- oder OIDC-IdP-Mitarbeiter und Ihrer Lieferantenmitarbeiter in einer AWS Region sehen. AWS Wenn Sie Ihre Belegschaft mit Ihrem eigenen OIDC-IdP erstellt haben, finden Sie den Namen Ihrer Belegschaft im Ground Truth-Bereich der SageMaker KI-Konsole. 

**So finden Sie den Namen Ihrer Belegschaft in der KI-Konsole SageMaker**

1. Gehe zum Ground-Truth-Bereich der SageMaker KI-Konsole: [https://console.aws.amazon.com/sagemaker/Groundtruth](https://console.aws.amazon.com/sagemaker/groundtruth).

1. Wählen Sie **Labeling-Arbeitskräfte** aus.

1. Wählen Sie **Privat** aus.

1. Suchen Sie im Abschnitt **Zusammenfassung der privaten Arbeitskraft** nach Ihrem ARN für Ihre Arbeitskraft. Der Name Ihrer Arbeitskraft befindet sich am Ende dieses ARN. Wenn der ARN beispielsweise `arn:aws:sagemaker:us-east-2:111122223333:workforce/example-workforce` lautet, lautet der Name der Arbeitskraft `example-workforce`. 

# Beschränken des Zugriffs von Auftragnehmern auf Aufgaben auf zulässige IP-Adressen
<a name="sms-workforce-management-private-api-cidr"></a>

Standardmäßig sind Arbeitskräfte nicht auf bestimmte IP-Adressen beschränkt. Mit diesem [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkforce.html)Vorgang können Sie festlegen, dass Mitarbeiter für den Zugriff auf Aufgaben einen bestimmten Bereich von IP-Adressen ([CIDRs](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)) verwenden. Wenn Sie eine oder mehrere angeben CIDRs, wird Mitarbeitern, die versuchen, mit einer IP-Adresse außerhalb der angegebenen Bereiche auf Aufgaben zuzugreifen, verweigert und sie erhalten im Workerportal die Fehlermeldung HTTP 204 No Content. Sie können bis zu 10 CIDR-Werte mit `UpdateWorkforce` angeben. 

Nachdem Sie Ihre Belegschaft auf eine oder mehrere Mitarbeiter beschränkt haben CIDRs, ist die Ausgabe von `UpdateWorkforce` Listen alle zulässig CIDRs. Sie können den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeWorkforce.html)Vorgang auch verwenden, um alle CIDRs für eine Belegschaft zulässigen Werte anzuzeigen. 

# So aktivieren Sie Dual-Stack-Arbeitskräfte
<a name="sms-workforce-management-private-api-dualstack"></a>

Mithilfe der [UpdateWorkforce](https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_UpdateWorkforce.html)API-Operationen können Sie eine [CreateWorkforce](https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_CreateWorkforce.html)Dual-Stack-Belegschaft einrichten. Die Einrichtung einer Dual-Stack-Belegschaft, die Aktualisierung einer bestehenden Belegschaft auf eine Dual-Stack-Belegschaft und der Wechsel von einer Dual-Stack-Belegschaft zurück zu einer Belegschaft IPv4 werden in nicht unterstützt. AWS-Managementkonsole

**Wichtig**  
Arbeitskräfte ohne definierten `IpAddressType` werden standardmäßig auf `IPv4` gesetzt. 

## Erstellen von Dual-Stack-Arbeitskräften
<a name="sms-workforce-management-private-dualstack-create"></a>

Das Verfahren zur Schaffung einer dualen Belegschaft ähnelt der Schaffung einer IPv4 reinen Belegschaft, mit den unten aufgeführten Ausnahmen. Weitere Informationen finden Sie unter [CreateWorkforce](https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_CreateWorkforce.html).
+ Um der privaten Belegschaft eine VPC zuzuweisen, stellen Sie sicher, dass es sich bei der VPC ebenfalls um einen Dual-Stack handelt, wobei IPv6 CIDR-Blöcke den Subnetzen der VPC zugeordnet sind.
+ Um den `SourceIpConfig` Parameter zur Beschränkung des Datenverkehrs auf einen bestimmten IP-Adressbereich zu verwenden, stellen Sie sicher, dass auch IPv6 CIDR-Blöcke in der Liste enthalten sind.
+ Um Richtlinien mit `SourceIp`-Bedingungen für S3-Buckets zu implementieren, auf die Ihre Aufgaben zugreifen, stellen Sie sicher, dass diese Richtlinien für die Kompatibilität mit Dual-Stack aktualisiert wurden.
+ Der Authentifizierungs-Endpunkt Ihres Identitätsanbieters unterstützt Dual-Stack. Weitere Informationen finden Sie unter [Ablauf der Authentifizierung](https://docs.aws.amazon.com//elasticloadbalancing/latest/application/listener-authenticate-users.html#authentication-flow).

**Beispiel für einen `CreateWorkforce`-SDK-Aufruf mit boto3**

Weitere Informationen finden Sie unter [create\$1workforce](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_workforce.html#SageMaker.Client.create_workforce).

```
import boto3

client = boto3.resource('sagemaker')

# IpAddressType = 'dualstack'|'ipv4'
client.create_workforce(
    WorkforceName='string',
    IpAddressType='dualstack',
    WorkforceConfig={
        'CognitoConfig': {
            'UserPool': 'string',
            'Client': 'string'
        }
    }
)
```

## Aktualisieren von Dual-Stack-Arbeitskräften
<a name="sms-workforce-management-private-dualstack-update"></a>

Beachten Sie bei der Aktualisierung von bestehenden Arbeitskräften auf Dual-Stack Folgendes. Weitere Informationen finden Sie unter [UpdateWorkforce](https://docs.aws.amazon.com//sagemaker/latest/APIReference/API_UpdateWorkforce.html)und [IPv6 Support für Ihre VPC](https://docs.aws.amazon.com//vpc/latest/userguide/vpc-migrate-ipv6.html).
+ Wenn den Arbeitskräften eine VPC zugeordnet ist, müssen Sie die VPC auf Dual-Stack aktualisieren. Stellen Sie außerdem sicher, dass alle Sicherheitsgruppen für die VPC IPv6 Datenverkehr zulassen.
+ Wenn Sie den `SourceIpConfig` Parameter verwenden, aktualisieren Sie ihn so, dass er IPv6 CIDR-Blöcke enthält.
+ Um Richtlinien mit `SourceIp`-Bedingungen für S3-Buckets zu implementieren, auf die Ihre Aufgaben zugreifen, stellen Sie sicher, dass diese Richtlinien für die Kompatibilität mit Dual-Stack aktualisiert wurden.
+ Der Authentifizierungs-Endpunkt Ihres Identitätsanbieters unterstützt Dual-Stack. Weitere Informationen finden Sie unter [Ablauf der Authentifizierung](https://docs.aws.amazon.com//elasticloadbalancing/latest/application/listener-authenticate-users.html#authentication-flow).

**Beispiel für einen `UpdateWorkforce`-SDK-Aufruf mit boto3**

Weitere Informationen finden Sie unter [update\$1workforce](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/update_workforce.html#SageMaker.Client.update_workforce).

```
import boto3

client = boto3.resource('sagemaker')

# IpAddressType = 'dualstack'|'ipv4'
client.update_workforce(
    WorkforceName='string',
    IpAddressType='dualstack'
)
```

# Aktualisieren Sie die Arbeitskraft-Konfiguration des OIDC Identity Providers
<a name="sms-workforce-management-private-api-update"></a>

Möglicherweise möchten Sie eine Arbeitskraft, die mit Ihrem eigenen OIDC-IdP erstellt wurde, aktualisieren, um einen anderen Autorisierungsendpunkt, Token-Endpunkt oder Emittenten anzugeben. Sie können jeden Parameter aktualisieren, der in `[OidcConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OidcConfig.html)`, bei der Verwendung des Vorgangs [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateWorkforce.html), gefunden wurde.

**Wichtig**  
Sie können Ihre OIDC-IdP-Konfiguration nur aktualisieren, wenn Ihrer Arbeitskraft keine Arbeitsteams zugeordnet sind. Sie können ein privates Arbeitsteam mithilfe des `[DeleteWorkteam](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkteam.html)` Vorgangs löschen.

# Löschen von privaten Arbeitskräften
<a name="sms-workforce-management-private-api-delete"></a>

Sie können in jeder AWS Region nur eine private Belegschaft haben. Möglicherweise möchten Sie Ihre privaten Mitarbeiter in einer AWS Region löschen, wenn:
+ Sie eine Arbeitskraft erstellen möchten, die einen Amazon Cognito-Benutzerpool verwendet. 
+ Sie bereits eine private Arbeitskraft mit Amazon Cognito erstellt haben und eine Arbeitskraft mit Ihrem eigenen OpenID Connect (OIDC) Identity Provider (IdP) einrichten möchten.

Verwenden Sie den API-Vorgang [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkforce.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkforce.html), um eine private Arbeitskraft zu löschen. Wenn Ihrer Arbeitskraft Arbeitsteams zugeordnet sind, müssen Sie diese Arbeitsteams löschen, bevor Sie Ihre Arbeitskraft löschen. Mithilfe dieses `[DeleteWorkteam](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteWorkteam.html)` Vorgangs können Sie ein privates Arbeitsteam löschen. 

# Nachverfolgen der Leistungsmetriken von Mitarbeitern
<a name="workteam-private-tracking"></a>

 Amazon SageMaker Ground Truth protokolliert Auftragnehmer-Ereignisse in Amazon CloudWatch, z. B. wenn ein Auftragnehmer eine Aufgabe startet oder einreicht. Verwenden Sie Amazon CloudWatch-Metriken, um den Durchsatz in einem Team oder für einzelne Auftragnehmer zu messen und nachzuverfolgen. 

**Wichtig**  
Die Auftragnehmer-Ereignisverfolgung ist für Amazon Augmented AI-Workflows für die Prüfung durch Mensche nicht verfügbar. 

## Aktivieren der Nachverfolgung
<a name="workteam-private-tracking-setup"></a>

 Während des Einrichtungsprozesses für ein neues Arbeitsteam werden die Berechtigungen für die Amazon CloudWatch-Protokollierung von Auftragnehmer-Ereignissen erstellt. Da diese Funktion im August 2019 hinzugefügt wurde, verfügen Arbeitsteams, die zuvor erstellt wurden, möglicherweise nicht über die richtigen Berechtigungen. Wenn alle Ihre Arbeitsteams vor August 2019 erstellt wurden, erstellen Sie ein neues Arbeitsteam. Es benötigt keine Mitglieder und kann nach der Erstellung gelöscht werden. Durch die Erstellung werden jedoch die Berechtigungen eingerichtet und gelten für alle Ihre Arbeitsteams, unabhängig davon, wann diese erstellt wurden. 

## Verfolgen von Metriken mithilfe von Protokollen
<a name="workteam-private-tracking-logs"></a>

 Sobald die Nachverfolgung aktiviert wurde, werden die Aktivitäten Ihrer Auftragnehmer protokolliert. Öffnen Sie die Amazon CloudWatch-Konsole und wählen Sie im Navigationsbereich **Logs** aus. Sie sollten eine Protokollgruppe mit dem Namen **/aws/sagemaker/groundtruth/WorkerActivity** sehen. 

Jede abgeschlossene Aufgabe wird durch einen Protokolleintrag dargestellt, der Informationen über den Auftragnehmer, sein Team, den Auftrag, den Zeitpunkt der Annahme der Aufgabe und den Zeitpunkt der Übermittlung enthält.

**Example Protokolleintrag**  

```
{
  "worker_id": "cd449a289e129409",
  "cognito_user_pool_id": "us-east-2_IpicJXXXX",
  "cognito_sub_id": "d6947aeb-0650-447a-ab5d-894db61017fd",
  "task_accepted_time": "Wed Aug 14 16:00:59 UTC 2019",
  "task_submitted_time": "Wed Aug 14 16:01:04 UTC 2019",
  "task_returned_time": "",
  "task_declined_time": "",
  "workteam_arn": "arn:aws:sagemaker:us-east-2:############:workteam/private-crowd/Sample-labeling-team",
  "labeling_job_arn": "arn:aws:sagemaker:us-east-2:############:labeling-job/metrics-demo",
  "work_requester_account_id": "############",
  "job_reference_code": "############",
  "job_type": "Private",
  "event_type": "TasksSubmitted",
  "event_timestamp": "1565798464"
}
```

Ein nützlicher Datenpunkt in jedem Ereignis ist die `cognito_sub_id`. Sie können diese einem einzelnen Worker zuordnen.

1. Öffnen Sie die Konsole von Amazon SageMaker AI unter [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Wählen Sie im Bereich **Ground Truth** die Option **Workforces** aus.

1. Wählen Sie **Private (Privat)** aus.

1. Wählen Sie im Bereich **Private teams (Private Teams)** den Namen eines Teams aus.

1. Wählen Sie im Bereich **Team summary (Teamzusammenfassung)** die Benutzergruppe aus, die unter **Amazon Cognito user group (Amazon Cognito-Benutzergruppe)** angegeben ist. Dadurch gelangen Sie zur Gruppe in der Amazon Cognito-Konsole.

1. Auf der Seite **Group (Gruppe)** werden die Benutzer in der Gruppe aufgeführt. Wählen Sie den Link eines Benutzers in der Spalte **Username (Benutzername)**, um weitere Informationen zum Benutzer anzuzeigen, einschließlich einer eindeutigen **Sub (Unter)**-ID.

Um Informationen über alle Teammitglieder zu erhalten, verwenden Sie die Aktion [ListUsers](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ListUsers.html) ([Beispiele](https://docs.aws.amazon.com/cognito/latest/developerguide/how-to-manage-user-accounts.html#cognito-user-pools-searching-for-users-listusers-api-examples)) in der Amazon Cognito API.

## Nachverfolgen von Metriken über die CloudWatch-Konsole
<a name="workteam-private-tracking-metrics"></a>

Wenn Sie keine eigenen Skripte schreiben möchten, um die rohen Protokollinformationen zu verarbeiten und zu visualisieren, bieten Ihnen die Amazon CloudWatch-Metriken Einblicke in die Arbeitsaktivitäten.

**Anzeigen von -Metriken**

1. Öffnen Sie die CloudWatch-Konsole unter [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Wählen Sie im Navigationsbereich **Metriken** aus.

1. Wählen Sie `AWS/SageMaker/Workteam` Namensraum aus und sehen Sie sich die [verfügbaren Metriken](monitoring-cloudwatch.md) an. Wenn Sie beispielsweise die Metrik Workflow, **Workteam** und **Workforce** auswählen, können Sie die durchschnittliche Zeit berechnen, die eine eingereichte Aufgabe für einen bestimmten Kennzeichnungsauftrag benötigt.

Weitere Informationen finden Sie unter [Verwenden von Amazon CloudWatch-Metriken](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html).

# So erstellen Sie das Amazon-SNS-Thema
<a name="sms-workforce-management-private-sns"></a>

Die Schritte zum Erstellen von Amazon SNS-Themen für Arbeitsteam-Benachrichtigungen ähneln den Schritten unter [Erste Schritte](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html) im *Amazon SNS-Entwicklerhandbuch*, mit einer wichtigen Ergänzung – Sie müssen eine Zugriffsrichtlinie hinzufügen, damit Amazon SageMaker AI in Ihrem Namen Nachrichten zu dem Thema veröffentlichen kann.

Wenn Sie ein Arbeitsteam über die Konsole anlegen, bietet die Konsole die Möglichkeit, ein neues Thema für das Team zu erstellen, sodass Sie diese Schritte nicht durchführen müssen.

**Wichtig**  
Die Amazon SNS-Funktion wird von Amazon A2I nicht unterstützt. Wenn Sie Ihr Arbeitsteam für ein Amazon SNS-Thema abonnieren, erhalten Worker nur Benachrichtigungen über Ground-Truth-Labeling-Aufträge. Worker erhalten keine Benachrichtigungen über neue Amazon-A2I-Aufgaben zur Überprüfung durch Menschen.

**So fügen Sie die Richtlinie beim Erstellen des Themas an**

1. Öffnen Sie die Amazon SNS-Konsole unter [https://console.aws.amazon.com/sns/v3/home](https://console.aws.amazon.com/sns/v3/home).

1. Geben Sie unter **Create topic (Thema erstellen)** den Namen Ihres Themas ein und wählen Sie dann **Next steps (Nächste Schritte)**.

1. Wählen Sie unter **Access policy (Zugriffsrichtlinie)** die Option **Advanced (Erweitert)** aus.

1. Suchen Sie im **JSON-Editor** die `Resource`-Eigenschaft, die den ARN des Themas anzeigt.

1. Kopieren Sie den `Resource`-ARN-Wert.

1. Fügen Sie vor der letzten schließenden Klammer (`]`) die folgende Richtlinie hinzu:

   ```
       , {
           "Sid": "AwsSagemaker_SnsAccessPolicy",
           "Effect": "Allow",
           "Principal": {
               "Service": "sagemaker.amazonaws.com"
           },
           "Action": "sns:Publish",
           "Resource": "arn:partition:sns:region:111122223333:MyTopic", # ARN of the topic you copied in the previous step
           "Condition": {
               "ArnLike": {
                   "aws:SourceArn": "arn:partition:sagemaker:region:111122223333:workteam/*" # Workteam ARN
               },
               "StringEquals": {
                   "aws:SourceAccount": "111122223333" # SNS topic account
               }
           }
       }
   ```

1. Erstellen Sie ein Thema.

Nachdem Sie das Thema erstellt haben, wird es im Übersichtsbildschirm **Topics (Themen)** angezeigt. Weitere Informationen zum Erstellen von Themen finden Sie unter [Erstellen eines Themas](https://docs.aws.amazon.com/sns/latest/dg/sns-tutorial-create-topic.html) im *Amazon SNS-Entwicklerhandbuch*.

# Verwalten von Auftragnehmerabonnements
<a name="workteam-private-sns-manage-topic"></a>

Wenn Sie ein Arbeitsteam für ein Thema abonnieren, nachdem Sie das Arbeitsteam bereits angelegt haben, werden die einzelnen Arbeitsteammitglieder, die bei der Erstellung des Arbeitsteams dem Team hinzugefügt wurden, nicht automatisch für das Thema abonniert. Weitere Informationen zum Abonnieren des Themas mit E-Mail-Adressen von Arbeitskräften finden Sie unter [Abonnieren eines Amazon SNS-Themas durch einen Endpunkt](https://docs.aws.amazon.com/sns/latest/dg/sns-tutorial-create-subscribe-endpoint-to-topic.html) im *Amazon SNS-Entwicklerhandbuch*.

Der einzige Fall, bei dem Auftragnehmer automatisch für Ihr Thema abonniert werden, ist, wenn Sie zu dem Zeitpunkt eine Amazon Cognito-Benutzergruppe erstellen oder importieren, zu dem Sie ein Arbeitsteam anlegen *** und *** das Themenabonnement beim Anlegen dieses Arbeitsteams einrichten. Weitere Informationen zum Anlegen und Verwalten von Arbeitsteams mit Amazon Cognito, finden Sie unter [Arbeitsteams erstellen (Amazon Cognito Console)](sms-workforce-management-private-cognito.md#create-work-teams-cog).

# Referenz der Crowd-HTML-Elemente
<a name="sms-ui-template-reference"></a>

Crowd-HTML-Elemente sind Webkomponenten, ein Webstandard, der HTML-Markup, CSS und JavaScript Funktionen in ein HTML-Tag oder eine Reihe von Tags abstrahiert. Amazon SageMaker AI bietet Kunden die Möglichkeit, ihre eigenen benutzerdefinierten Aufgabenvorlagen in HTML zu entwerfen. 

Als Ausgangspunkt können Sie eine Vorlage verwenden, die mit Crowd HTML Elements aus einem der folgenden GitHub Repositorys erstellt wurde: 
+ [Beispielaufgabe UIs für Amazon SageMaker Ground Truth](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis)
+ [Über 60 Beispielaufgaben UIs für Amazon Augmented AI (A2I)](https://github.com/aws-samples/amazon-a2i-sample-task-uis)

Diese Repositorys umfassen Vorlagen für Audio-, Bild-, Text-, Video- und andere Arten von Daten-Labeling- und Anmerkungsaufgaben. 

Weitere Informationen zur Implementierung benutzerdefinierter Vorlagen in Amazon SageMaker Ground Truth finden Sie unter[Benutzerdefinierte Kennzeichnung-Workflows](sms-custom-templates.md). Weitere Informationen zu benutzerdefinierten Vorlagen in Amazon Augmented AI finden Sie unter [Erstellen benutzerdefinierter Auftragnehmervorlagen](a2i-custom-templates.md).

# SageMaker HTML-Elemente von AI Crowd
<a name="general-topiclist"></a>

Im Folgenden finden Sie eine Liste der Crowd-HTML-Elemente, die das Erstellen einer benutzerdefinierten Vorlage vereinfachen und Auftragnehmern eine vertraute Benutzeroberfläche bereitstellen. Diese Elemente werden in Ground Truth, Augmented AI und Mechanical Turk unterstützt.

# crowd-alert
<a name="sms-ui-template-crowd-alert"></a>

Eine Nachricht, die den Worker vor einer aktuellen Situation warnt.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/YzNPdGd).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-alert>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <div id="errorBox"></div>
   
  <crowd-keypoint
    src="{{ task.input.taskObject | grant_read_access }}"
    labels="['Item A', 'Item B', 'Item C']"        
    header="Please locate the centers of each item."
    name="annotatedResult">
    <short-instructions>
      Describe your task briefly here and give examples
    </short-instructions>
    <full-instructions>
      Give additional instructions and good/bad examples here
    </full-instructions>   
  </crowd-keypoint>
</crowd-form>

<script>
  var num_obj = 1;

  document.querySelector('crowd-form').onsubmit = function(e) {
    const keypoints = document.querySelector('crowd-keypoint').value.keypoints || document.querySelector('crowd-keypoint')._submittableValue.keypoints;
    const labels = keypoints.map(function(p) {
      return p.label;
    });

    // 1. Make sure total number of keypoints is correct.
    var original_num_labels = document.getElementsByTagName("crowd-keypoint")[0].getAttribute("labels");

    original_num_labels = original_num_labels.substring(2, original_num_labels.length - 2).split("\",\"");
    var goalNumKeypoints = num_obj*original_num_labels.length;
    if (keypoints.length != goalNumKeypoints) {
      e.preventDefault();
      errorBox.innerHTML = '<crowd-alert type="error" dismissible>You must add all keypoint annotations and use each label only once.</crowd-alert>';
      errorBox.scrollIntoView();
      return;
    }

    // 2. Make sure all labels are unique.
    labelCounts = {};
    for (var i = 0; i < labels.length; i++) {
      if (!labelCounts[labels[i]]) {
        labelCounts[labels[i]] = 0;
      }
      labelCounts[labels[i]]++;
    }
    const goalNumSingleLabel = num_obj;

    const numLabels = Object.keys(labelCounts).length;

    Object.entries(labelCounts).forEach(entry => {
      if (entry[1] != goalNumSingleLabel) {
        e.preventDefault();
        errorBox.innerHTML = '<crowd-alert type="error" dismissible>You must use each label only once.</crowd-alert>';
        errorBox.scrollIntoView();
      }
    })
  };
</script>
```

## Attribute
<a name="alert-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### dismissible
<a name="alert-attributes-dismissible"></a>

Ein boolescher Schalter, der, falls vorhanden, erlaubt, dass der Worker die Nachricht schließt.

### type
<a name="alert-attributes-type"></a>

Eine Zeichenfolge, die den Typ der anzuzeigenden Nachricht angibt. Mögliche Werte sind "Information" (die Standardeinstellung), "Erfolg", "Fehler" und "Warnung".

## Hierarchie der Elemente
<a name="alert-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="alert-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-badge
<a name="sms-ui-template-crowd-badge"></a>

Ein Symbol, das über der rechten oberen Ecke eines anderen Elements schwebt, dem es zugeordnet ist.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/WNRbPwZ).

Im Folgenden finden Sie ein Beispiel für eine Vorlage, die das `<crowd-badge>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-image-classifier
    name="crowd-image-classifier"
    src="https://unsplash.com/photos/NLUkAA-nDdE"
    header="Choose the correct category for this image."
    categories="['Person', 'Umbrella', 'Chair', 'Dolphin']"
  >
    <full-instructions header="Classification Instructions">
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label that best suits the image.</p>
    </full-instructions>
   
    <short-instructions id="short-instructions">
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label that best suits the image.</p>
      <crowd-badge icon="star" for="short-instructions"/>
    </short-instructions>
  </crowd-image-classifier>
</crowd-form>
```

## Attribute
<a name="badge-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### for
<a name="badge-attributes-for"></a>

Eine Zeichenfolge, die die ID des Elements angibt, zu dem das Logo zugeordnet ist.

### icon
<a name="badge-attributes-icon"></a>

Eine Zeichenfolge, die das Symbol angibt, das im Logo angezeigt werden soll. Die Zeichenfolge muss entweder der Name eines Symbols aus dem Open-Source-*[iron-icons](https://github.com/PolymerElements/iron-icons)*-Satz sein, der bereits geladen ist, oder die URL zu einem benutzerdefinierten Symbol.

Dieses Attribut überschreibt das *label*-Attribut. 

Im Folgenden finden Sie ein Beispiel für die Syntax, mit der Sie einem `<crowd-badge>`-HTML-Element ein iron-icon hinzufügen können. Ersetzen Sie `icon-name` durch den Namen des Symbols aus diesem [Symbolsatz](https://www.webcomponents.org/element/@polymer/iron-icons/demo/demo/index.html), das Sie verwenden möchten. 

```
<crowd-badge icon="icon-name" for="short-instructions"/>
```

### Bezeichnung
<a name="badge-attributes-label"></a>

Der Text, der im Logo angezeigt werden soll. Drei Zeichen oder weniger wird empfohlen, da Text, der zu groß ist, über den Logobereich hinausreicht. Ein Symbol kann anstelle von Text angezeigt werden, indem Sie das *icon*-Attribut festlegen.

## Hierarchie der Elemente
<a name="badge-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="badge-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-button
<a name="sms-ui-template-crowd-button"></a>

Eine formatierte Schaltfläche, die eine Aktion darstellt.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/RwKNvgG).

Im Folgenden finden Sie ein Beispiel für eine Vorlage, die das `<crowd-button>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-image-classifier
    name="crowd-image-classifier"
    src="https://unsplash.com/photos/NLUkAA-nDdE"
    header="Please select the correct category for this image"
    categories="['Person', 'Umbrella', 'Chair', 'Dolphin']"
  >
    <full-instructions header="Classification Instructions">
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label that best suits the image.</p>
    </full-instructions>
    <short-instructions>
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label that best suits the image.</p>
      <crowd-button>
        <iron-icon icon="question-answer"/>
      </crowd-button>
    </short-instructions>
  </crowd-image-classifier>
</crowd-form>
```

## Attribute
<a name="button-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### disabled
<a name="button-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, die Schaltfläche als deaktiviert anzeigt und Klicks verhindert.

### form-action
<a name="button-attributes-form-action"></a>

Ein Schalter, der entweder sein übergeordnetes [crowd-form](sms-ui-template-crowd-form.md)-Element sendet, wenn die Einstellung auf "Senden" gesetzt wurde, oder sein übergeordnetes <crowd-form>-Element zurücksetzt, wenn die Einstellung auf "Zurücksetzen" gesetzt wurde.

### href
<a name="button-attributes-href"></a>

Die URL zu einer Online-Ressource. Verwenden Sie diese Eigenschaft, wenn Sie einen Link als Schaltfläche formatiert benötigen.

### icon
<a name="button-attributes-icon"></a>

Eine Zeichenfolge, die das Symbol angibt, das neben dem Schaltflächentext angezeigt werden soll. Die Zeichenfolge muss der Name eines Symbols aus dem Open-Source-Satz *[iron-icons](https://github.com/PolymerElements/iron-icons)* sein, das vorinstalliert ist. Verwenden Sie zum Beispiel Folgendes, um das [Suchsymbol](https://www.webcomponents.org/element/@polymer/iron-icons/demo/demo/index.html) einzufügen:

```
<crowd-button>
    <iron-icon icon="search"/>
</crowd-button>
```

Das Symbol befindet sich entweder links oder rechts neben dem Text, wie vom *icon-align*-Attribut angegeben.

Informationen zum Verwenden eines benutzerdefinierten Symbols finden Sie unter **icon-url**.

### icon-align
<a name="button-attributes-icon-align"></a>

Die linke oder rechte Position des Symbols relativ zum Schaltflächentext. Der Standardwert ist "links".

### icon-url
<a name="button-attributes-icon-url"></a>

Eine URL zu einem benutzerdefinierten Bild für das Symbol. Ein benutzerdefiniertes Bild kann anstelle eines Standardsymbols verwendet werden, das vom *icon*-Attribut angegeben wird.

### laden
<a name="button-attributes-loading"></a>

Ein boolescher Schalter, der, falls vorhanden, die Schaltfläche als im Ladestatus anzeigt. Dieses Attribut hat Vorrang vor dem *disabled*-Attribut, wenn beide Attribute vorhanden sind.

### Ziel
<a name="button-attributes-target"></a>

Wenn Sie das `href`-Attribut verwenden, damit die Schaltfläche als Hyperlink auf eine bestimmte URL fungiert, zielt das `target`-Attribut optional auf ein Frame oder Fenster, in dem die verknüpfte URL laden soll.

### variant
<a name="button-attributes-variantl"></a>

Der allgemeine Stil der Schaltfläche. Verwenden Sie "primary" für primäre Schaltflächen, "normal" für sekundäre Schaltflächen, "link" für tertiäre Schaltflächen oder "icon", um nur das Symbol ohne Text anzuzeigen.

## Hierarchie der Elemente
<a name="button-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="button-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-bounding-box
<a name="sms-ui-template-crowd-bounding-box"></a>

Ein Widget für das Zeichnen von Rechtecken auf einem Bild und das Zuweisen einer Bezeichnung zum Teil des Bildes, der in jedem Rechteck eingeschlossen ist.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/XWpJGad).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-bounding-box>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. Weitere Beispiele finden Sie in diesem [GitHub Repository](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis/tree/master/images). 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-bounding-box
    name="annotatedResult"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Draw bounding boxes around all the cats and dogs in this image"
    labels="['Cat', 'Dog']"
  >
    <full-instructions header="Bounding Box Instructions" >
      <p>Use the bounding box tool to draw boxes around the requested target of interest:</p>
      <ol>
        <li>Draw a rectangle using your mouse over each instance of the target.</li>
        <li>Make sure the box does not cut into the target, leave a 2 - 3 pixel margin</li>
        <li>
          When targets are overlapping, draw a box around each object,
          include all contiguous parts of the target in the box.
          Do not include parts that are completely overlapped by another object.
        </li>
        <li>
          Do not include parts of the target that cannot be seen,
          even though you think you can interpolate the whole shape of the target.
        </li>
        <li>Avoid shadows, they're not considered as a part of the target.</li>
        <li>If the target goes off the screen, label up to the edge of the image.</li>
      </ol>
    </full-instructions>

    <short-instructions>
      Draw boxes around the requested target of interest.
    </short-instructions>
  </crowd-bounding-box>
</crowd-form>
```

## Attribute
<a name="bounding-box-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="bounding-box-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### initial-value
<a name="bounding-box-attributes-initialValue"></a>

Ein Array von JSON-Objekten, von denen jedes einen Begrenzungsrahmen festlegt, wenn die Komponente geladen wird. Jedes JSON-Objekt im Array enthält die folgenden Eigenschaften. Über die `initial-value` Eigenschaft festgelegte Begrenzungsfelder können angepasst werden. Außerdem wird über einen `initialValueModified` booleschen Wert in der Auftragnehmer-Antwortausgabe verfolgt, ob eine Auftragnehmerantwort angepasst wurde oder nicht.
+ **height** – Die Höhe des Rahmens in Pixeln.
+ **label** – Der dem Rahmen zugewiesene Text als Teil der Labeling-Aufgabe. *Dieser Text muss mit einer der Beschriftungen übereinstimmen, die im label-Attribut des < crowd-bounding-box > -Elements definiert sind.*
+ **left** – Entfernung der oberen linken Ecke des Rahmens von der linken Seite des Bildes, gemessen in Pixeln.
+ **top** – Entfernung der oberen linken Ecke des Rahmens von der Oberkante des Bildes, gemessen in Pixeln.
+ **width** – Die Breite des Rahmens in Pixeln.

  Sie können den Anfangswert des Begrenzungsrahmens aus einer Manifestdatei eines vorherigen Auftrags in einer benutzerdefinierten Vorlage mit der Templating-Sprache „Liquid“ extrahieren:

  ```
  initial-value="[
    {% for box in task.input.manifestLine.label-attribute-name-from-prior-job.annotations %}
      {% capture class_id %}{{ box.class_id }}{% endcapture %}
      {% assign label = task.input.manifestLine.label-attribute-name-from-prior-job-metadata.class-map[class_id] %}
      {
        label: {{label | to_json}},
        left: {{box.left}},
        top: {{box.top}},
        width: {{box.width}},
        height: {{box.height}},
      },
    {% endfor %}
   ]"
  ```

### labels
<a name="bounding-box-attributes-labels"></a>

Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Bezeichnung sind, die ein Worker dem Bildteil zuweisen kann, der durch ein Rechteck eingeschlossen ist. **Limit:** 10 Bezeichnungen.

### Name
<a name="bounding-box-attributes-name"></a>

Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

### src
<a name="bounding-box-attributes-src"></a>

Die URL des Bildes, auf dem Begrenzungsrahmen gezeichnet werden sollen. 

## Hierarchie der Elemente
<a name="bounding-box-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](#bounding-box-regions-full-instructions), [short-instructions](#bounding-box-regions-short-instructions)

## Regionen
<a name="bounding-box-regions"></a>

Die folgenden Regionen werden von diesem Element benötigt.

### full-instructions
<a name="bounding-box-regions-full-instructions"></a>

Allgemeine Anweisungen zum Zeichnen von Begrenzungsrahmen.

### short-instructions
<a name="bounding-box-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="bounding-box-output"></a>

Die folgende Ausgabe wird von diesem Element unterstützt.

### boundingBoxes
<a name="bounding-box-output-boundingBoxes"></a>

Ein Array von JSON-Objekten, von denen jedes einen Begrenzungsrahmen angibt, der vom Worker erstellt wurde. Jedes JSON-Objekt im Array enthält die folgenden Eigenschaften.
+ **height** – Die Höhe des Rahmens in Pixeln.
+ **label** – Der dem Rahmen zugewiesene Text als Teil der Labeling-Aufgabe. *Dieser Text muss mit einer der Beschriftungen übereinstimmen, die im labels-Attribut des < crowd-bounding-box > -Elements definiert sind.*
+ **left** – Entfernung der oberen linken Ecke des Rahmens von der linken Seite des Bildes, gemessen in Pixeln.
+ **top** – Entfernung der oberen linken Ecke des Rahmens von der Oberkante des Bildes, gemessen in Pixeln.
+ **width** – Die Breite des Rahmens in Pixeln.

### inputImageProperties
<a name="bounding-box-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

**Example : Beispielausgaben des Elements**  
Nachfolgend finden Sie Beispiele für Ausgaben von gängigen Nutzungsszenarien für dieses Element.  
**Einzelne Bezeichnung, einzelner Rahmen / Mehrere Bezeichnungen, einzelner Rahmen**  

```
[
  {
    "annotatedResult": {
      "boundingBoxes": [
        {
          "height": 401,
          "label": "Dog",
          "left": 243,
          "top": 117,
          "width": 187
        }
      ],
      "inputImageProperties": {
        "height": 533,
        "width": 800
      }
    }
  }
]
```
**Einzelne Bezeichnung, mehrere Rahmen**  

```
[
  {
    "annotatedResult": {
      "boundingBoxes": [
        {
          "height": 401,
          "label": "Dog",
          "left": 243,
          "top": 117,
          "width": 187
        },
        {
          "height": 283,
          "label": "Dog",
          "left": 684,
          "top": 120,
          "width": 116
        }
      ],
      "inputImageProperties": {
        "height": 533,
        "width": 800
      }
    }
  }
]
```
**Mehrere Bezeichnungen, mehrere Rahmen**  

```
[
  {
    "annotatedResult": {
      "boundingBoxes": [
        {
          "height": 395,
          "label": "Dog",
          "left": 241,
          "top": 125,
          "width": 158
        },
        {
          "height": 298,
          "label": "Cat",
          "left": 699,
          "top": 116,
          "width": 101
        }
      ],
      "inputImageProperties": {
        "height": 533,
        "width": 800
      }
    }
  }
]
```
Es können viele Bezeichnungen zur Verfügung stehen, jedoch werden nur diejenigen in der Ausgabe angezeigt, die verwendet werden.

## Weitere Informationen finden Sie unter:
<a name="bounding-box-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-card
<a name="sms-ui-template-crowd-card"></a>

Ein Feld mit einem erhöhten Erscheinungsbild für die Anzeige von Informationen.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/QWdwoxe).

Im Folgenden finden Sie ein Beispiel für eine Vorlage, die das `<crowd-card>`-Element verwendet und für Stimmungsanalyseaufgaben konzipiert wurde. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<style>
  h3 {
    margin-top: 0;
  }
  
  crowd-card {
    width: 100%;
  }
  
  .card {
    margin: 10px;
  }
  
  .left {
    width: 70%;
    margin-right: 10px;
    display: inline-block;
    height: 200px;
  }
  
  .right {
    width: 20%;
    height: 200px;
    display: inline-block;
  }
</style>

<crowd-form>
  <short-instructions>
    Your short instructions here.
  </short-instructions>
  
  <full-instructions>
    Your full instructions here.
  </full-instructions>
  
  <div class="left">
    <h3>What sentiment does this text convey?</h3>
    <crowd-card>
      <div class="card">
        Nothing is great.
      </div>
    </crowd-card>
  </div>
  
  <div class="right">
    <h3>Select an option</h3>
    
    <select name="sentiment1" style="font-size: large" required>
      <option value="">(Please select)</option>
      <option>Negative</option>
      <option>Neutral</option>
      <option>Positive</option>
      <option>Text is empty</option>
    </select>
  </div>
  
  <div class="left">
    <h3>What sentiment does this text convey?</h3>
    <crowd-card>
      <div class="card">
        Everything is great!
      </div>
    </crowd-card>
  </div>
  
  <div class="right">
    <h3>Select an option</h3>
    
    <select name="sentiment2" style="font-size: large" required>
      <option value="">(Please select)</option>
      <option>Negative</option>
      <option>Neutral</option>
      <option>Positive</option>
      <option>Text is empty</option>
    </select>
  </div>
</crowd-form>
```

## Attribute
<a name="card-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### heading
<a name="card-attributes-heading"></a>

Der Text, der am oberen Rand des Feldes angezeigt wird.

### Abbild
<a name="card-attributes-image"></a>

Eine URL zu einem Bild, das innerhalb des Feldes angezeigt werden soll.

## Hierarchie der Elemente
<a name="card-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="card-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-checkbox
<a name="sms-ui-template-crowd-checkbox"></a>

Eine UI-Komponente, die aktiviert oder deaktiviert werden kann, sodass der Benutzer mehrere Optionen aus einem Satz auswählen kann.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/YzNPgOL).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-checkbox>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  
  <p>Find the official website for: <strong>{{ task.input.company }}</strong></p>
  <p>Do not give Yelp pages, LinkedIn pages, etc.</p>
  <p>Include the http:// prefix from the website</p>
  <crowd-input name="website" placeholder="http://example.com"></crowd-input>

  <crowd-checkbox name="website-found">Website Found</crowd-checkbox>

</crowd-form>
```

## Attribute
<a name="checkbox-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### checked
<a name="checkbox-attributes-checked"></a>

Ein boolescher Schalter, der, falls vorhanden, das Kontrollkästchen als aktiviert anzeigt.

Im Folgenden finden Sie ein Beispiel für die Syntax, die zum standardmäßigen Aktivieren eines Kontrollkästchens verwendet wird.

```
  <crowd-checkbox name="checkedBox" value="checked" checked>This box is checked</crowd-checkbox>
```

### disabled
<a name="checkbox-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, das Kontrollkästchen als deaktiviert anzeigt und verhindert, dass es aktiviert wird.

Im Folgenden finden Sie ein Beispiel für die Syntax, die zum Deaktivieren eines Kontrollkästchens verwendet wird. 

```
  <crowd-checkbox name="disabledCheckBox" value="Disabled" disabled>Cannot be selected</crowd-checkbox>
```

### Name
<a name="checkbox-attributes-name"></a>

Eine Zeichenfolge, die verwendet wird, um die Antwort zu identifizieren, die vom Worker übermittelt wurde. Dieser Wert stimmt mit einem Schlüssel im JSON-Objekt überein, das die Antwort angibt.

### Erforderlich
<a name="checkbox-attributes-required"></a>

Ein boolescher Schalter, der, falls vorhanden, erfordert, dass der Worker die Eingabe bereitstellt.

Im Folgenden finden Sie ein Beispiel für die Syntax, die verwendet wird, um festzulegen, dass ein Kontrollkästchen ausgewählt werden muss.

```
  <crowd-checkbox name="work_verified" required>Instructions were clear</crowd-checkbox>
```

### value
<a name="checkbox-attributes-value"></a>

Eine Zeichenfolge, die als Namen für den Status des Kontrollkästchens in der Ausgabe verwendet wird. Es gilt der Standardwert "aktiviert", wenn keine Angabe gemacht wird. 

## Hierarchie der Elemente
<a name="checkbox-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Ausgabe
<a name="checkbox-element-output"></a>

Liefert ein JSON-Objekt. Die `name`-Zeichenfolge ist der Name des Objekts und die `value`-Zeichenfolge ist der Name der Eigenschaft für einen booleschen Wert basierend auf dem Status des Kontrollkästchens: "true", wenn überprüft, "false", wenn nicht überprüft.

**Example : Beispielausgaben des Elements**  
**Verwendung des gleichen `name`-Werts für mehrere Felder.**  

```
<!-- INPUT -->  
<div><crowd-checkbox name="image_attributes" value="blurry"> Blurry </crowd-checkbox></div>
<div><crowd-checkbox name="image_attributes" value="dim"> Too Dim </crowd-checkbox></div>
<div><crowd-checkbox name="image_attributes" value="exposed"> Too Bright </crowd-checkbox></div>
```

```
//Output with "blurry" and "dim" checked
[
  {
    "image_attributes": {
      "blurry": true,
      "dim": true,
      "exposed": false
    }
  }
]
```
Beachten Sie, dass alle drei Farbwerte Eigenschaften eines einzelnen Objekts sind.  
**Verwendung unterschiedlicher `name`-Werte für jedes Feld.**  

```
<!-- INPUT -->
<div><crowd-checkbox name="Stop" value="Red"> Red </crowd-checkbox></div>
<div><crowd-checkbox name="Slow" value="Yellow"> Yellow </crowd-checkbox></div>
<div><crowd-checkbox name="Go" value="Green"> Green </crowd-checkbox></div>
```

```
//Output with "Red" checked
[
  {
    "Go": {
      "Green": false
    },
    "Slow": {
      "Yellow": false
    },
    "Stop": {
      "Red": true
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="checkbox-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-classifier
<a name="sms-ui-template-crowd-classifier"></a>

Ein Widget zur Klassifizierung von Nicht-Bild-Inhalten, wie z. B. Audio, Video oder Text.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/KKawYBm).

Im Folgenden finden Sie ein Beispiel für eine HTML-Worker-Aufgabenvorlage, die mit `crowd-classifier` erstellt wurde. In diesem Beispiel wird die [Liquid-Vorlagensprache](https://shopify.github.io/liquid/basics/introduction/) verwendet, um Folgendes zu automatisieren:
+ Beschriftungskategorien im `categories`-Parameter 
+ Die Objekte, die im `classification-target`-Parameter klassifiziert werden. 

Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
    <crowd-classifier
      name="category"
      categories="{{ task.input.labels | to_json | escape }}"
      header="What type of a document is this?"
    >
      <classification-target>
        <iframe style="width: 100%; height: 600px;" src="{{ task.input.taskObject  | grant_read_access }}" type="application/pdf"></iframe>
      </classification-target>
      
      <full-instructions header="Document Classification Instructions">
        <p>Read the task carefully and inspect the document.</p>
        <p>Choose the appropriate label that best suits the document.</p>
      </full-instructions>

      <short-instructions>
        Please choose the correct category for the document
      </short-instructions>
    </crowd-classifier>
</crowd-form>
```

## Attribute
<a name="crowd-classifier-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### categories
<a name="crowd-classifier-attributes-categories"></a>

Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Kategorie sind, die ein Auftragnehmer dem Text zuweisen kann. Sie sollten "Sonstige" als eine Kategorie einschließen, andernfalls kann der Worker möglicherweise keine Antwort bereitstellen.

### header
<a name="crowd-classifier-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisungen für den Worker.

### Name
<a name="crowd-classifier-attributes-name"></a>

Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

## Hierarchie der Elemente
<a name="crowd-classifier-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [classification-target](#crowd-classifier-regions-classification-target), [full-instructions](#crowd-classifier-regions-full-instructions), [short-instructions](#crowd-classifier-regions-short-instructions)

## Regionen
<a name="crowd-classifier-regions"></a>

Die folgenden Regionen werden von diesem Element unterstützt.

### classification-target
<a name="crowd-classifier-regions-classification-target"></a>

Der Inhalt, der vom Worker klassifiziert werden soll. Dabei kann es sich um Klartext oder HTML handeln. Zu den Beispielen für die Verwendung des HTML gehören *unter anderem* das Einbetten eines Video- oder Audio-Players, das Einbetten einer PDF-Datei oder das Durchführen eines Vergleichs von zwei oder mehr Bildern.

### full-instructions
<a name="crowd-classifier-regions-full-instructions"></a>

Allgemeine Anweisungen zur Durchführung der Textklassifizierung.

### short-instructions
<a name="crowd-classifier-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="crowd-classifier-output"></a>

Die Ausgabe dieses Elements ist ein Objekt, das den angegebenen `name`-Wert als Eigenschaftenname und eine Zeichenfolge aus den `categories` als Wert der Eigenschaft verwendet.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt die Ausgabe dieses Elements.  

```
[
  {
    "<name>": {
      "label": "<value>"
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="crowd-classifier-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-classifier-multi-select
<a name="sms-ui-template-crowd-classifier-multi-select"></a>

Ein Widget zur Klassifizierung verschiedener Inhaltsformen – wie Audio, Video oder Text – in eine oder mehrere Kategorien. Der zu klassifizierende Inhalt wird als *Objekt* bezeichnet. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/ExZaMOm).

Im Folgenden finden Sie ein Beispiel für eine HTML-Arbeitsaufgabenvorlage, die mit diesem Crowd-Element erstellt wurde. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
    <crowd-classifier-multi-select
      name="category"
      categories="['Positive', 'Negative', 'Neutral']"
      header="Select the relevant categories"
      exclusion-category="{ text: 'None of the above' }"
    >
      <classification-target>
        {{ task.input.taskObject }}
      </classification-target>
      
      <full-instructions header="Text Categorization Instructions">
        <p><strong>Positive</strong> sentiment include: joy, excitement, delight</p>
        <p><strong>Negative</strong> sentiment include: anger, sarcasm, anxiety</p>
        <p><strong>Neutral</strong>: neither positive or negative, such as stating a fact</p>
        <p><strong>N/A</strong>: when the text cannot be understood</p>
        <p>When the sentiment is mixed, such as both joy and sadness, choose both labels.</p>
      </full-instructions>

      <short-instructions>
       Choose all categories that are expressed by the text. 
      </short-instructions>
    </crowd-classifier-multi-select>
</crowd-form>
```

## Attribute
<a name="crowd-classifier-multi-attributes"></a>

Die folgenden Attribute werden vom Element `crowd-classifier-multi-select` unterstützt. Jedes Attribut akzeptiert einen Zeichenfolgenwert oder Zeichenfolgenwerte. 

### categories
<a name="crowd-classifier-multi-attributes-categories"></a>

Erforderlich Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Kategorie sind, die ein Mitarbeiter dem Objekt zuweisen kann. 

### header
<a name="crowd-classifier-multi-attributes-header"></a>

Erforderlich Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für Mitarbeiter.

### Name
<a name="crowd-classifier-multi-attributes-name"></a>

Erforderlich Der Name dieses Widgets. in der Formularausgabe wird der Name als Schlüssel für die Widget-Eingabe verwendet.

### exclusion-category
<a name="crowd-classifier-multi-attributes-exclusion-category"></a>

Optional. Eine JSON-formatierte Zeichenfolge mit folgendem Format: `"{ text: 'default-value' }"`. Dieses Attribut legt einen Standardwert fest, den Mitarbeiter wählen können, wenn keine der Bezeichnungen auf das in der Benutzeroberfläche des Mitarbeiters angezeigte Objekt zutrifft.

## Hierarchie der Elemente
<a name="crowd-classifier-multi-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente:
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [classification-target](sms-ui-template-crowd-classifier.md#crowd-classifier-regions-classification-target), [full-instructions](sms-ui-template-crowd-classifier.md#crowd-classifier-regions-full-instructions), [short-instructions](sms-ui-template-crowd-classifier.md#crowd-classifier-regions-short-instructions)

## Regionen
<a name="crowd-classifier-multi-regions"></a>

Dieses Element verwendet die folgenden Regionen.

### classification-target
<a name="crowd-classifier-multi-regions-classification-target"></a>

Der Inhalt, der vom Worker klassifiziert werden soll. Inhalt kann Klartext oder ein Objekt sein, das Sie in der Vorlage mit HTML angeben. Sie können beispielsweise HTML-Elemente verwenden, um einen Video- oder Audioplayer einzuschließen, eine PDF-Datei einzubetten oder einen Vergleich von zwei oder mehr Bildern einzuschließen.

### full-instructions
<a name="crowd-classifier-multi-regions-full-instructions"></a>

Allgemeine Anweisungen zum Klassifizieren von Text.

### short-instructions
<a name="crowd-classifier-multi-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen. Diese Anweisungen werden auffallend angezeigt.

## Ausgabe
<a name="crowd-classifier-multi-output"></a>

Die Ausgabe dieses Elements ist ein Objekt, das den angegebenen `name`-Wert als Eigenschaftenname und eine Zeichenfolge aus `categories` als Wert der Eigenschaft verwendet.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt die Ausgabe dieses Elements.  

```
[
  {
    "<name>": {
        labels: ["label_a", "label_b"]
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="crowd-classifier-multi-see-also"></a>

Weitere Informationen finden Sie hier:
+ [Kategorisieren von Text anhand der Textklassifizierung (Multi-Label)](sms-text-classification-multilabel.md)
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-entity-annotation
<a name="sms-ui-template-crowd-entity-annotation"></a>

Ein Widget zum Bezeichnen von Wörtern, Phrasen oder Zeichenfolgen in einem längeren Text. Auftragnehmer wählen ein Label aus und markieren den Text, auf den sich das Label bezieht. 

**Wichtig: Eigenständiges Widget**  
Verwenden Sie das Element `<crowd-entity-annotation>` nicht mit dem Element `<crowd-form>`. Es enthält eigene Logik für die Übermittlung von Formularen und die Schaltfläche **Submit (Senden)**.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/XWpJQrR).

Im Folgenden finden Sie ein Beispiel für eine Vorlage, die das `<crowd-entity-annotation>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-entity-annotation
  name="crowd-entity-annotation"
  header="Highlight parts of the text below"
  labels="[{'label': 'person', 'shortDisplayName': 'per', 'fullDisplayName': 'Person'}, {'label': 'date', 'shortDisplayName': 'dat', 'fullDisplayName': 'Date'}, {'label': 'company', 'shortDisplayName': 'com', 'fullDisplayName': 'Company'}]"
  text="Amazon SageMaker Ground Truth helps you build highly accurate training datasets for machine learning quickly."
>
  <full-instructions header="Named entity recognition instructions">
    <ol>
      <li><strong>Read</strong> the text carefully.</li>
      <li><strong>Highlight</strong> words, phrases, or sections of the text.</li>
      <li><strong>Choose</strong> the label that best matches what you have highlighted.</li>
      <li>To <strong>change</strong> a label, choose highlighted text and select a new label.</li>
      <li>To <strong>remove</strong> a label from highlighted text, choose the X next to the abbreviated label name on the highlighted text.</li>
      <li>You can select all of a previously highlighted text, but not a portion of it.</li>
    </ol>
  </full-instructions>

  <short-instructions>
    Apply labels to words or phrases.
  </short-instructions>

    <div id="additionalQuestions" style="margin-top: 20px">
      <h3>
        What is the overall subject of this text?
      </h3>
      <crowd-radio-group>
        <crowd-radio-button name="tech" value="tech">Technology</crowd-radio-button>
        <crowd-radio-button name="politics" value="politics">Politics</crowd-radio-button>
      </crowd-radio-group>
    </div>
</crowd-entity-annotation>

<script>
  document.addEventListener('all-crowd-elements-ready', () => {
    document
      .querySelector('crowd-entity-annotation')
      .shadowRoot
      .querySelector('crowd-form')
      .form
      .appendChild(additionalQuestions);
  });
</script>
```

## Attribute
<a name="entity-annotation-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="entity-annotation-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### initial-value
<a name="entity-annotation-attributes-initial-value"></a>

Ein JSON-formatiertes Array mit Objekten, die jeweils eine Anmerkung definieren, die dem Text bei der Initialisierung zugewiesen werden soll. Objekte enthalten einen `label`-Wert, der einem Wert im `labels`-Attribut entspricht, einen `startOffset`-Ganzzahlwert für den bezeichneten Anfang des Unicode-Offset-Bereichs und einen `endOffset`-Ganzzahlwert für das Ende des Unicode-Offset-Bereichs.

**Example**  

```
[
  {
    label: 'person',
    startOffset: 0,
    endOffset: 16
  },
  ...
]
```

### labels
<a name="entity-annotation-attributes-labels"></a>

Ein JSON-formatiertes Array mit Objekten, die jeweils Folgendes enthalten:
+ `label` (erforderlich): Name zum Identifizieren von Entitys.
+ `fullDisplayName` (optional): wird für die Bezeichnungsliste im Aufgaben-Widget verwendet. Wenn kein Wert angegeben wird, wird standardmäßig der Bezeichnungswert verwendet.
+ `shortDisplayName` (optional): Abkürzung aus 3 bis 4 Buchstaben, die über den ausgewählten Entitys angezeigt wird. Wenn kein Wert angegeben wird, wird standardmäßig der Bezeichnungswert verwendet.
**`shortDisplayName` wird dringend empfohlen**  
Werte, die oberhalb der Auswahl angezeigt werden, können sich überschneiden und Schwierigkeiten bei der Verwaltung bezeichneter Entitys im Workspace verursachen. Es wird dringend empfohlen, für jede Bezeichnung einen aus 3 bis 4 Zeichen bestehenden `shortDisplayName` bereitzustellen, um Überschneidungen zu vermeiden und die Verwaltung des Workspaces durch die Auftragnehmer zu erleichtern.

**Example**  

```
[
  {
    label: 'person',
    shortDisplayName: 'per', 
    fullDisplayName: 'person'
  }
]
```

### Name
<a name="entity-annotation-attributes-name"></a>

Dient im DOM als Name des Widgets. Wird auch als Attributname der Bezeichnung in Formularausgaben und im Ausgabemanifest verwendet.

### text
<a name="entity-annotation-attributes-text"></a>

Der Text, der kommentiert werden soll. Das Vorlagensystem verwendet standardmäßig Escape-Zeichen für Anführungszeichen und HTML-Zeichenfolgen. Wenn im Code bereits – zumindest teilweise – Escape-Zeichen eingesetzt werden, siehe [Variablenfilter](sms-custom-templates-step2-automate.md#sms-custom-templates-step2-automate-filters) für weitere Methoden des Einsatzes von Escape-Zeichen.

## Hierarchie der Elemente
<a name="entity-annotation-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Untergeordnete Elemente**: [full-instructions](#entity-annotation-regions-full-instructions), [short-instructions](#entity-annotation-regions-short-instructions)

## Regionen
<a name="entity-annotation-regions"></a>

Die folgenden Regionen werden von diesem Element unterstützt.

### full-instructions
<a name="entity-annotation-regions-full-instructions"></a>

Allgemeine Anleitungen zum Arbeiten mit dem Widget.

### short-instructions
<a name="entity-annotation-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="entity-annotation-output"></a>

Die folgende Ausgabe wird von diesem Element unterstützt.

### entities
<a name="entity-annotation-output-entities"></a>

Ein JSON-Objekt, das Start, Ende und Bezeichnung einer Anmerkung angibt. Dieses Objekt enthält die folgenden Eigenschaften.
+ **label** – Die zugewiesene Beschriftung.
+ **startOffset** – Der Unicode-Offset des Anfangs des ausgewählten Textes.
+ **endOffset** – Der Unicode-Offset des ersten Zeichens nach der Auswahl.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt eine Ausgabe dieses Elements.  

```
{
  "myAnnotatedResult": {
    "entities": [
      {
        "endOffset": 54,
        "label": "person",
        "startOffset": 47
      },
      {
        "endOffset": 97,
        "label": "event",
        "startOffset": 93
      },
      {
        "endOffset": 219,
        "label": "date",
        "startOffset": 212
      },
      {
        "endOffset": 271,
        "label": "location",
        "startOffset": 260
      }
    ]
  }
}
```

## Weitere Informationen finden Sie unter:
<a name="entity-annotation-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-fab
<a name="sms-ui-template-crowd-fab"></a>

Eine schwebende Schaltfläche mit einem Bild in der Mitte. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/ExZaJaw).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-fab>`-Element verwendet und für die Bildklassifizierung konzipiert wurde. Diese Vorlage ermöglicht JavaScript es Mitarbeitern, Probleme mit der Worker-Benutzeroberfläche zu melden. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
    <crowd-image-classifier 
        src="${image_url}"
        categories="['Cat', 'Dog', 'Bird', 'None of the Above']"
        header="Choose the correct category for the image"
        name="category">


        <short-instructions>
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image.</p>
            <p>If there is an issue with the image or tools, please select
              <b>None of the Above</b>, describe the issue in the text box and click the 
              button below.</p>
            <crowd-input label="Report an Issue" name="template-issues"></crowd-input>
            <crowd-fab id="button1" icon="report-problem" title="Issue"/>
        </short-instructions>
        
        <full-instructions header="Classification Instructions">
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image. 
            Use the <b>None of the Above</b> option if none of the other labels suit the image.</p>
        </full-instructions>

    </crowd-image-classifier>
</crowd-form>

<script>
  [
    button1,
  ].forEach(function(button) {
    button.addEventListener('click', function() {
      document.querySelector('crowd-form').submit();
    });
  });
</script>
```

## Attribute
<a name="fab-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### disabled
<a name="fab-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, die schwebende Schaltfläche als deaktiviert anzeigt und Klicks verhindert.

### icon
<a name="fab-attributes-icon"></a>

Eine Zeichenfolge, die das Symbol angibt, das in der Mitte der Schaltfläche angezeigt werden soll. Die Zeichenfolge muss entweder der Name eines Symbols aus dem Open-Source-*[iron-icons](https://github.com/PolymerElements/iron-icons)*-Satz sein, der bereits geladen ist, oder die URL zu einem benutzerdefinierten Symbol.

Im Folgenden finden Sie ein Beispiel für die Syntax, mit der Sie einem `<crowd-fab>`-HTML-Element ein iron-icon hinzufügen können. Ersetzen Sie `icon-name` durch den Namen des Symbols aus diesem [Symbolsatz](https://www.webcomponents.org/element/@polymer/iron-icons/demo/demo/index.html), das Sie verwenden möchten. 

```
<crowd-fab "id="button1" icon="icon-name" title="Issue"/>
```

### Bezeichnung
<a name="fab-attributes-label"></a>

Eine Zeichenfolge bestehend aus einem einzigen Zeichen, das anstelle eines Symbols verwendet werden kann. Emojis oder mehrere Zeichen können dazu führen, dass die Schaltfläche stattdessen eine Ellipse anzeigt.

### Titel
<a name="fab-attributes-title"></a>

Eine Zeichenfolge, die als QuickInfo angezeigt wird, wenn sich der Mauszeiger über der Schaltfläche befindet.

## Hierarchie der Elemente
<a name="fab-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="fab-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-form
<a name="sms-ui-template-crowd-form"></a>

Der Formular-Wrapper für alle benutzerdefinierten Aufgaben. Legt wichtige Aktionen für die ordnungsgemäße Übermittlung Ihrer Formulardaten fest und implementiert sie.

Wenn eine [crowd-button](sms-ui-template-crowd-button.md) vom Typ "submit" nicht im `<crowd-form>`-Element enthalten ist, wird sie automatisch innerhalb des `<crowd-form>`-Elements angehängt. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/oNBgOWa).

Im Folgenden finden Sie ein Beispiel für eine Bildklassifizierungsvorlage, die das `<crowd-form>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
    <crowd-image-classifier 
        src="${image_url}"
        categories="['Cat', 'Dog', 'Bird', 'None of the Above']"
        header="Choose the correct category for the image"
        name="category">


        <short-instructions>
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image.</p>
        </short-instructions>

 
        <full-instructions header="Classification Instructions">
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image. 
            Use the <b>None of the Above</b> option if none of the other labels suit the image.</p>
        </full-instructions>

    </crowd-image-classifier>
</crowd-form>
```

## Hierarchie der Elemente
<a name="form-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: keine
+ **Untergeordnete Elemente**: Alle Elemente der [Benutzeroberflächenvorlage](sms-ui-template-reference.md)

## Elementereignisse
<a name="form-element-events"></a>

Das Element `crowd-form` erweitert das [-Standard-HTML-`form`-Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form) und übernimmt dessen Ereignisse wie `onclick` und `onsubmit`.

## Weitere Informationen finden Sie unter:
<a name="form-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-icon-button
<a name="sms-ui-template-crowd-icon-button"></a>

Eine Schaltfläche mit einem Bild, das in der Mitte platziert ist. Wenn der Benutzer die Schaltfläche berührt, geht ein Welleneffekt von der Mitte der Schaltfläche aus.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/ExZaJXE).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-icon-button>`-Element verwendet und für die Bildklassifizierung konzipiert wurde. Diese Vorlage ermöglicht JavaScript es Mitarbeitern, Probleme mit der Worker-Benutzeroberfläche zu melden. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
    <crowd-image-classifier 
        src="${image_url}"
        categories="['Cat', 'Dog', 'Bird', 'None of the Above']"
        header="Choose the correct category for the image"
        name="category">


        <short-instructions>
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image.</p>
            <p>If there is an issue with the image or tools, please select
              <b>None of the Above</b>, describe the issue in the text box and click the 
              button below.</p>
            <crowd-input label="Report an Issue" name="template-issues"/></crowd-input>
            <crowd-icon-button id="button1" icon="report-problem" title="Issue"/>
        </short-instructions>
        
        <full-instructions header="Classification Instructions">
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image. 
            Use the <b>None of the Above</b> option if none of the other labels suit the image.</p>
        </full-instructions>

    </crowd-image-classifier>
</crowd-form>

<script>
  [
    button1,
  ].forEach(function(button) {
    button.addEventListener('click', function() {
      document.querySelector('crowd-form').submit();
    });
  });
</script>
```

## Attribute
<a name="icon-button-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### disabled
<a name="icon-button-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, die Schaltfläche als deaktiviert anzeigt und Klicks verhindert.

### icon
<a name="icon-button-attributes-icon"></a>

Eine Zeichenfolge, die das Symbol angibt, das in der Mitte der Schaltfläche angezeigt werden soll. Die Zeichenfolge muss entweder der Name eines Symbols aus dem Open-Source-*[iron-icons](https://github.com/PolymerElements/iron-icons)*-Satz sein, der bereits geladen ist, oder die URL zu einem benutzerdefinierten Symbol.

Im Folgenden finden Sie ein Beispiel für die Syntax, mit der Sie einem `<crowd-icon-button>`-HTML-Element ein iron-icon hinzufügen können. Ersetzen Sie `icon-name` durch den Namen des Symbols aus diesem [Symbolsatz](https://www.webcomponents.org/element/@polymer/iron-icons/demo/demo/index.html), das Sie verwenden möchten. 

```
<crowd-icon-button id="button1" icon="icon-name" title="Issue"/>
```

## Hierarchie der Elemente
<a name="icon-button-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="icon-button-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-image-classifier
<a name="sms-ui-template-crowd-image-classifier"></a>

Ein Widget zum Klassifizieren eines Bildes. Verwenden Sie eines der folgenden unterstützten Bildformate: APNG, BMP, GIF, ICO, JPEG, PNG, SVG. Für Bilder gibt es keine Größenbeschränkung. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/vYgEvWw).

Im Folgenden finden Sie ein Beispiel für eine Bildklassifizierungsvorlage, die das `<crowd-image-classifier>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
    <crowd-image-classifier 
        src="${image_url}"
        categories="['Cat', 'Dog', 'Bird', 'None of the Above']"
        header="Choose the correct category for the image"
        name="category">


        <short-instructions>
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image.</p>
        </short-instructions>

 
        <full-instructions header="Classification Instructions">
            <p>Read the task carefully and inspect the image.</p>
            <p>Choose the appropriate label that best suits the image. 
            Use the <b>None of the Above</b> option if none of the other labels suit the image.</p>
        </full-instructions>

    </crowd-image-classifier>
</crowd-form>
```

## Attribute
<a name="image-classifier-attributes"></a>

Die folgenden Attribute werden von diesem Element benötigt.

### categories
<a name="image-classifier-attributes-categories"></a>

Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Kategorie sind, die ein Worker dem Bild zuweisen kann. Sie sollten "Sonstige" als eine Kategorie einschließen, sodass der Worker eine Antwort bereitstellen kann. Sie können bis zu 10 Kategorien angeben.

### header
<a name="image-classifier-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisungen für den Worker.

### Name
<a name="image-classifier-attributes-name"></a>

Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

### Overlay
<a name="image-classifier-attributes-overlay"></a>

Informationen, die auf dem Quellbild überlagert werden sollen. Dies gilt für Verifizierungs-Workflows von Bounding Box-, Semantik-Segmentierungs- und Instance-Segmentierungsaufgaben.

Es ist ein JSON-Objekt, das ein Objekt mit dem Namen des Aufgabentyps in camelCase als Schlüssel. Der Wert dieses Schlüssels ist ein Objekt mit den Beschriftungen und anderen notwendigen Informationen aus der vorherigen Aufgabe.

Im Folgenden finden Sie das Beispiel eines `crowd-image-classifier`-Elements mit Attributen zum Überprüfen einer Bounding Box-Aufgabe:

```
<crowd-image-classifier
    name="boundingBoxClassification"
    header="Rate the quality of the annotations based on the background section 
       in the instructions on the left hand side."
    src="https://i.imgur.com/CIPKVJo.jpg"
    categories="['good', 'bad', 'okay']"
    overlay='{
        "boundingBox": {
            labels: ["bird", "cat"], 
            value: [
                {
                  height: 284,
                  label: "bird",
                  left: 230,
                  top: 974,
                  width: 223
                },
                {
                  height: 69,
                  label: "bird",
                  left: 79,
                  top: 889,
                  width: 247
                }
            ]
        },
    }'
> ... </crowd-image-classifier>
```

Eine Aufgabe zur Überprüfung der semantischen Segmentierung würde den `overlay` Wert wie folgt verwenden:

```
<crowd-image-classifier
  name='crowd-image-classifier'
  categories='["good", "bad"]'
  src='URL of image to be classified'
  header='Please classify'
  overlay='{
    "semanticSegmentation": {
      "labels": ["Cat", "Dog", "Bird", "Cow"],
      "labelMappings": {
        "Bird": {
          "color": "#ff7f0e"
        },
        "Cat": {
          "color": "#2ca02c"
        },
        "Cow": {
          "color": "#d62728"
        },
        "Dog": {
          "color": "#2acf59"
        }
      },
      "src": "URL of overlay image",
    }
  }'
> ... </crowd-image-classifier>
```

Eine Aufgabe zur Instance-Segmentierung würde den `overlay` Wert wie folgt verwenden:

```
<crowd-image-classifier
  name='crowd-image-classifier'
  categories='["good", "bad"]'
  src='URL of image to be classified'
  header='Please classify instances of each category'
  overlay='{
    "instanceSegmentation": {
       "labels": ["Cat", "Dog", "Bird", "Cow"],
       "instances": [
        {
         "color": "#2ca02c",
         "label": "Cat"
        },
        {
         "color": "#1f77b4",
         "label": "Cat"
        },
        {
         "color": "#d62728",
         "label": "Dog"
        }
       ],
       "src": "URL of overlay image",
    }
  }'
> ... </crowd-image-classifier>
```

### src
<a name="image-classifier-attributes-src"></a>

Die URL des Bildes, das klassifiziert werden soll. 

## Hierarchie der Elemente
<a name="image-classifier-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](#image-classifier-regions-full-instructions), [short-instructions](#image-classifier-regions-short-instructions), [Auftragnehmer-Kommentar](#image-classifier-regions-worker-comment)

## Regionen
<a name="image-classifier-regions"></a>

Die folgenden Regionen werden von diesem Element verwendet.

### full-instructions
<a name="image-classifier-regions-full-instructions"></a>

Allgemeine Anweisungen für den Auftragnehmer zum Klassifizieren eines Bildes.

### short-instructions
<a name="image-classifier-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

### Auftragnehmer-Kommentar
<a name="image-classifier-regions-worker-comment"></a>

Verwenden Sie dies in Verifizierungs-Workflows, wenn Auftragnehmer erklären müssen, warum sie eine Entscheidung getroffen haben. Verwenden Sie den Text zwischen den öffnenden und schließenden Tags, um Auftragnehmern Anweisungen zu Informationen zu geben, die im Kommentar aufgenommen werden sollen.

Es verwendet die folgenden Attribute:

#### header
<a name="image-classifier-regions-worker-comment-header"></a>

Ein Text, der zum Hinterlassen eines Kommentars auffordert. Wird als Titeltext für ein modales Fenster verwendet, in dem der Kommentar hinzugefügt wird.

Optional. Standardmäßig „Kommentar hinzufügen“

#### link-text
<a name="image-classifier-regions-worker-comment-link-text"></a>

Dieser Text wird unter den Kategorien im Widget angezeigt. Wenn Sie darauf klicken, wird ein modales Fenster geöffnet, in dem der Auftragnehmer einen Kommentar hinzufügen kann.

Optional. Standardmäßig „Kommentar hinzufügen“

#### placeholder
<a name="image-classifier-regions-worker-comment-placeholder"></a>

Ein Beispieltext im Kommentartextbereich, der überschrieben wird, wenn der Auftragnehmer mit der Eingabe beginnt. Dies wird in der Ausgabe nicht angezeigt, wenn der Auftragnehmer das Feld leer lässt.

Optional. Der Standardwert ist leer.

## Ausgabe
<a name="image-classifier-output"></a>

Die Ausgabe dieses Elements ist eine Zeichenfolge, die einen der Werte angibt, die im *Categories-Attribut* des < crowd-image-classifier > -Elements definiert sind.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt die Ausgabe dieses Elements.  

```
[
  {
    "<name>": {
      "label": "<value>"
      "workerComment": "Comment - if no comment is provided, this field will not be present"
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="image-classifier-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-image-classifier-multi-wählen
<a name="sms-ui-template-crowd-image-classifier-multi"></a>

Ein Widget zur Klassifizierung eines Bilds in eine oder mehrere Kategorien. Verwenden Sie eines der folgenden unterstützten Bildformate: APNG, BMP, GIF, ICO, JPEG, PNG, SVG. Für Bilder gibt es keine Größenbeschränkung. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/WNRbWgR).

Im Folgenden finden Sie ein Beispiel für eine HTML-Arbeitsaufgabenvorlage, die mit diesem Crowd-Element erstellt wurde. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-image-classifier-multi-select
    name="animals"
    categories="['Cat', 'Dog', 'Horse', 'Pig', 'Bird']"
    src="https://images.unsplash.com/photo-1509205477838-a534e43a849f?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1998&q=80"
    header="Please identify the animals in this image"
    exclusion-category="{ text: 'None of the above' }"
  >
    <full-instructions header="Classification Instructions">
      <p>If more than one label applies to the image, select multiple labels.</p>
      <p>If no labels apply, select <b>None of the above</b></p>
    </full-instructions>

    <short-instructions>
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label(s) that best suit the image.</p>
    </short-instructions>
  </crowd-image-classifier-multi-select>
</crowd-form>
```

## Attribute
<a name="image-classifier-multi-attributes"></a>

Die folgenden Attribute werden vom Element `crowd-image-classifier-multi-select` unterstützt. Jedes Attribut akzeptiert einen Zeichenfolgenwert oder Zeichenfolgenwerte.

### categories
<a name="image-classifier-multi-attributes-categories"></a>

Erforderlich Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Kategorie sind, die ein Mitarbeiter dem Bild zuweisen kann. Ein Mitarbeiter kann alle Kategorien und muss mindestens eine Kategorie wählen. 

### header
<a name="image-classifier-multi-attributes-header"></a>

Erforderlich Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für Mitarbeiter.

### Name
<a name="image-classifier-multi-attributes-name"></a>

Erforderlich Der Name dieses Widgets. in der Formularausgabe wird der Name als Schlüssel für die Widget-Eingabe verwendet.

### src
<a name="image-classifier-multi-attributes-src"></a>

Erforderlich Die URL des Bildes, das klassifiziert werden soll. 

### exclusion-category
<a name="image-classifier-multi-attributes-exclusion-category"></a>

Optional. Eine JSON-formatierte Zeichenfolge mit folgendem Format: `"{ text: 'default-value' }"`. Dieses Attribut legt einen Standardwert fest, den Mitarbeiter wählen können, wenn keine der Bezeichnungen auf das in der Benutzeroberfläche des Mitarbeiters angezeigte Bild zutrifft.

## Hierarchie der Elemente
<a name="image-classifier-multi-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente:
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](sms-ui-template-crowd-image-classifier.md#image-classifier-regions-full-instructions), [short-instructions](sms-ui-template-crowd-image-classifier.md#image-classifier-regions-short-instructions), [Auftragnehmer-Kommentar](sms-ui-template-crowd-image-classifier.md#image-classifier-regions-worker-comment)

## Regionen
<a name="image-classifier-multi-regions"></a>

Dieses Element verwendet die folgenden Regionen.

### full-instructions
<a name="image-classifier-multi-regions-full-instructions"></a>

Allgemeine Anweisungen für den Auftragnehmer zum Klassifizieren eines Bildes.

### short-instructions
<a name="image-classifier-multi-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen. Diese Anweisungen werden auffallend angezeigt.

## Ausgabe
<a name="image-classifier-multi-output"></a>

Die Ausgabe dieses Elements ist eine Zeichenfolge, die einen oder mehrere der Werte angibt, die im `categories`-Attribut des Elements `<crowd-image-classifier-multi-select>` definiert sind.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt die Ausgabe dieses Elements.  

```
[
  {
    "<name>": {
        labels: ["label_a", "label_b"]
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="image-classifier-multi-see-also"></a>

Weitere Informationen finden Sie hier:
+ [Erstellen eines Bildklassifizierungsjobs (Multi-Label)](sms-image-classification-multilabel.md)
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-input
<a name="sms-ui-template-crowd-input"></a>

Ein Feld, das Eingabedaten akzeptiert.

**Kann nicht selbstschließend sein**  
Im Gegensatz zum `input`-Element im HTML-Standard kann dieses Element nicht selbstschließend sein, indem ein Schrägstrich vor der schließenden Klammer gesetzt wird, z. B. `<crowd-input ... />`. Es muss von einem `</crowd-input>` gefolgt werden, um das Element zu schließen.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/wvgBZYW).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-input>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <img style="max-width: 35vw; max-height: 50vh" src="{{ task.input.taskObject | grant_read_access }}">
  <crowd-input name="tag1" label="Word/phrase 1" required></crowd-input>
  <crowd-input name="tag2" label="Word/phrase 2" required></crowd-input>
  <crowd-input name="tag3" label="Word/phrase 3" required></crowd-input>

  <short-instructions>
    Your custom quick instructions and examples
  </short-instructions>

  <full-instructions>
    Your custom detailed instracutions and more examples
  </full-instructions>
</crowd-form>
```

## Attribute
<a name="input-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### allowed-pattern
<a name="input-attributes-allowed-pattern"></a>

Ein regulärer Ausdruck, der mit dem *auto-validate*-Attribut verwendet wird, um nicht übereinstimmende Zeichen während der Eingabe des Workers zu ignorieren.

### auto-focus
<a name="input-attributes-auto-focus"></a>

Wenn der Wert auf "true" gesetzt ist, setzt der Browser den Fokus nach dem Laden in den Eingabebereich. Auf diese Weise kann der Worker mit der Eingabe beginnen, ohne ihn zunächst markieren zu müssen.

### auto-validate
<a name="input-attributes-auto-validate"></a>

Ein boolescher Schalter, der, falls vorhanden, die Validierung der Eingabe aktiviert. Das Verhalten der Validierung kann durch die Attribute *error-message* und *allowed-pattern* geändert werden.

### disabled
<a name="input-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, den Eingabebereich als deaktiviert anzeigt.

### error-message
<a name="input-attributes-error-message"></a>

Der Text, der unter dem Eingabefeld auf der linken Seite angezeigt werden soll, wenn die Validierung fehlschlägt.

### Bezeichnung
<a name="input-attributes-label"></a>

Eine Zeichenfolge, die in einem Textfeld angezeigt wird.

Dieser Text verkleinert und erhebt sich über ein Textfeld, wenn der Worker mit der Eingabe im Feld beginnt oder das *value*-Attribut festgelegt ist.

### max-length
<a name="input-attributes-max-length"></a>

 Eine maximale Anzahl von Zeichen, die die Eingabe akzeptiert. Eingaben über diese Grenze hinaus werden ignoriert.

### min-length
<a name="input-attributes-min-length"></a>

Eine Mindestlänge für die Eingabe im Feld.

### Name
<a name="input-attributes-name"></a>

 Legt den Namen der Eingabe, die im DOM verwendet werden soll, und die Ausgabe des Formulars fest.

### placeholder
<a name="input-attributes-placeholder"></a>

Ein Zeichenfolgenwert, der als Platzhaltertext verwendet und angezeigt wird, bis der Worker mit der Eingabe von Daten in die Eingabe beginnt. Er wird nicht als Standardwert verwendet.

### Erforderlich
<a name="input-attributes-required"></a>

Ein boolescher Schalter, der, falls vorhanden, erfordert, dass der Worker die Eingabe bereitstellt.

### type
<a name="input-attributes-type"></a>

Benötigt eine Zeichenfolge, um das HTML5 `input-type` Verhalten für die Eingabe festzulegen. Beispiele hierfür sind `file` und `date`.

### value
<a name="input-attributes-value"></a>

Eine Voreinstellung, die zur Standardeinstellung wird, wenn der Worker keine Eingabe bereitstellt. Die Voreinstellung wird in einem Textfeld angezeigt.

## Hierarchie der Elemente
<a name="input-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Ausgabe
<a name="input-element-output"></a>

Stellt eine `name`-Zeichenfolge als Name der Eigenschaft und den Text bereit, der als Wert in das Feld eingegeben wurde.

**Example : Beispiel einer JSON-Ausgabe**  
Die Werte für mehrere Elemente werden im gleichen Objekt ausgegeben, mit dem `name`-Attributwert als Eigenschaftsnamen. Elemente ohne Eingabe werden nicht in der Ausgabe angezeigt. Verwenden wir als Beispiel drei Eingaben:  

```
<crowd-input name="tag1" label="Word/phrase 1"></crowd-input>
<crowd-input name="tag2" label="Word/phrase 2"></crowd-input>
<crowd-input name="tag3" label="Word/phrase 3"></crowd-input>
```
Dies ist die Ausgabe, wenn nur zwei Eingaben haben:  

```
[
  {
    "tag1": "blue",
    "tag2": "red"
  }
]
```
Das bedeutet, dass jeder Code, der zum Analysieren dieser Ergebnisse erstellt wurde, in der Lage sein sollte, das Vorhandensein oder Fehlen der einzelnen Eingabequellen in den Antworten zu handhaben.

## Weitere Informationen finden Sie unter:
<a name="input-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-instance-segmentation
<a name="sms-ui-template-crowd-instance-segmentation"></a>

Ein Widget zum Identifizieren einzelner Instances bestimmter Objekte innerhalb eines Abbildes und zum Erstellen einer farbigen Überblendung für jede gekennzeichnete Instance.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/PoWwvwG).

Nachfolgend ein Beispiel für eine Liquid-Vorlage, in der `<crowd-instance-segmentation>` verwendet wird. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-instance-segmentation
    name="annotatedResult"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Please label each of the requested objects in this image"
    labels="['Cat', 'Dog', 'Bird']"
  >
    <full-instructions header="Segmentation Instructions">
      <ol>
          <li><strong>Read</strong> the task carefully and inspect the image.</li>
          <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
          <li><strong>Choose</strong> the appropriate label that best suits the image.</li>
      </ol>
    </full-instructions>

    <short-instructions>
      <p>Use the tools to label all instances of the requested items in the image</p>
    </short-instructions>
  </crowd-instance-segmentation>
</crowd-form>
```

Verwenden Sie eine Vorlage, die der folgenden ähnelt, damit Auftragnehmer ihre eigenen Kategorien (Beschriftungen) hinzufügen können.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-instance-segmentation
    id="annotator"
    name="myTexts"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Click Instructions to add new labels."
    labels="['placeholder']"
  >
    <short-instructions>
      <h3>Add a label to describe each type of object in this image.</h3>
      <h3>Cover each instance of each object with a segmentation mask.</h3>
      <br>
      <h3>
        Add new label
      </h3>
      <crowd-input name="_customLabel" id="customLabel"></crowd-input>
      <crowd-button id="addLabel">Add</crowd-button>
      
      <br><br><br>
      <h3>
      Manage labels
      </h3>
      <div id="labelsSection"></div>
    </short-instructions>
    
    <full-instructions>
      Describe your task in more detail here.
    </full-instructions>
  </crowd-instance-segmentation>
</crowd-form>

<script>
  document.addEventListener('all-crowd-elements-ready', function(event) {
    document.querySelector('crowd-instance-segmentation').labels = [];  
  });
  
  function populateLabelsSection() {
    labelsSection.innerHTML = '';
    annotator.labels.forEach(function(label) {
      const labelContainer = document.createElement('div');
      labelContainer.innerHTML = label + ' <a href="javascript:void(0)">(Delete)</a>';
      labelContainer.querySelector('a').onclick = function() {
        annotator.labels = annotator.labels.filter(function(l) {
          return l !== label;
        });
        populateLabelsSection();
      };
      labelsSection.appendChild(labelContainer);
    });
  }

  addLabel.onclick = function() {
    annotator.labels = annotator.labels.concat([customLabel.value]);
    customLabel.value = null;
    
    populateLabelsSection();
  };
</script>
```

## Attribute
<a name="instance-segmentation-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="instance-segmentation-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### Beschriftungen
<a name="instance-segmentation-attributes-labels"></a>

Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Bezeichnung sind, die ein Worker einer Instance eines Objekts im Bild zuweisen kann. Worker können für jede betreffende Instance unterschiedliche Überblendungsfarben erzeugen, indem sie unter der Bezeichnung im Tool „add instance” (Instance hinzufügen) auswählen.

### Name
<a name="instance-segmentation-attributes-name"></a>

Der Name dieses Widgets. Er wird als Schlüssel für die Kennzeichnungsdaten in der Formularausgabe verwendet.

### src
<a name="instance-segmentation-attributes-src"></a>

Die URL des Bildes, das gekennzeichnet werden soll.

## initial-value
<a name="instance-segmentation-attributes-initial-value"></a>

Ein JSON-Objekt, das die Farbzuweisungen eines früheren semantischen Segmentierungsauftrags und einen Link zur Overlay-Bildausgabe des vorherigen Auftrags enthält. Schließen Sie diese Option ein, wenn ein Auftragnehmer die Ergebnisse eines vorherigen Beschriftungsauftrags überprüft und passen Sie ihn gegebenenfalls an.

Das Attribut würde wie folgt aussehen:

```
  initial-value="{
    "instances": [
      {
        "color": "#2ca02c",
        "label": "Cat"
      },
      {
        "color": "#1f77b4",
        "label": "Cat"
      },
      {
        "color": "#d62728",
        "label": "Dog"
      }
    ],
    "src": {{ "S3 file URL for image" | grant_read_access }}
  }"
```

## Hierarchie der Elemente
<a name="instance-segmentation-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](#instance-segmentation-regions-full-instructions), [short-instructions](#instance-segmentation-regions-short-instructions)

## Regionen
<a name="instance-segmentation-regions"></a>

Die folgenden Regionen werden von diesem Element unterstützt.

### full-instructions
<a name="instance-segmentation-regions-full-instructions"></a>

Allgemeine Anweisungen zur Durchführung der Bildsegmentierung.

### short-instructions
<a name="instance-segmentation-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="instance-segmentation-output"></a>

Die folgende Ausgabe wird von diesem Element unterstützt.

### labeledImage
<a name="instance-segmentation-output-labeledImage"></a>

Ein JSON-Objekt mit einem Base64-kodierten PNG der Bezeichnung.

### -Instances
<a name="instance-segmentation-output-labelMappings"></a>

Ein JSON-Array, das Objekte mit den Instance-Bezeichnungen und -Farben enthält.
+ **color** – Der hexadezimale Wert der RGB-Farbe der Bezeichnung im `labeledImage` PNG.
+ **label** – Die Bezeichnung, die die Überblendungen erhalten, die diese Farbe verwenden. Dieser Wert kann sich wiederholen, da die verschiedenen Instances der Bezeichnung durch ihre eindeutige Farbe gekennzeichnet sind.

### inputImageProperties
<a name="instance-segmentation-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt eine Ausgabe dieses Elements.  

```
[
  {
    "annotatedResult": {
      "inputImageProperties": {
        "height": 533,
        "width": 800
      },
      "instances": [
        {
          "color": "#1f77b4",
          "label": "<Label 1>": 
        },
        {
          "color": "#2ca02c",
          "label": "<Label 1>": 
        },
        {
          "color": "#ff7f0e",
          "label": "<Label 3>": 
        },
      ],
      "labeledImage": {
        "pngImageData": "<Base-64 Encoded Data>"
      }
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="instance-segmentation-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-instructions
<a name="sms-ui-template-crowd-instructions"></a>

Ein Element, das Anweisungen auf drei Registerkarten anzeigt, **Zusammenfassung**, **detaillierte Anweisungen** und **Beispiele**, wenn der Worker auf einen Link oder eine Schaltfläche klickt.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/XWpJwbx).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-instructions>`-Element verwendet hat. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  	<crowd-instructions link-text="View instructions" link-type="button">
		  <short-summary>
		    <p>Given an image, write three words or short phrases that summarize its contents.</p>
		  </short-summary>
		  <detailed-instructions>
		    <p>Imagine that you are describing an image to a friend or tagging it for a news website. Provide three specific words or short phrases that describe it.</p>
		  </detailed-instructions>
		  <positive-example>
		    <p><img src="https://s3.amazonaws.com/cv-demo-images/highway.jpg"/></p>
		    <p>
		    	<ul>
		    		<li>Highway</li>
		    		<li>Cars</li>
		    		<li>Gas station</li>
		    	</ul>
		    </p>
		  </positive-example>
		  <negative-example>
		    <p><img src="https://s3.amazonaws.com/cv-demo-images/highway.jpg"/></p>
		    <p>
		    	These are not specific enough:
		    	<ol>
		    		<li>Trees</li>
		    		<li>Outside</li>
		    		<li>Daytime</li>
		    	</ol>
		    </p>
		  </negative-example>
	</crowd-instructions>
    <p><strong>Instructions: </strong>Given an image, write three words or short phrases that summarize its contents.</p>
    <p>If someone were to see these three words or phrases, they should understand the subject and context of the image, as well as any important actions.</p>
	<p>View the instructions for detailed instructions and examples.</p>
	<p><img style="max-width: 100%; max-height: 100%" src="{{ task.input.taskObject | grant_read_access }}"></p>
  <crowd-input name="tag1" label="Word/phrase 1" required></crowd-input>
  <crowd-input name="tag2" label="Word/phrase 2" required></crowd-input>
  <crowd-input name="tag3" label="Word/phrase 3" required></crowd-input>
</crowd-form>
```

## Attribute
<a name="instructions-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### link-text
<a name="instructions-attributes-link-text"></a>

Der Text, der zum Öffnen der Anweisungen angezeigt werden soll. Der Standardwert ist **Klicken, um Anweisungen zu erhalten**.

### link-type
<a name="instructions-attributes-link-type"></a>

Eine Zeichenfolge, die den Typ des Auslösers für die Anweisungen angibt. Die möglichen Werte sind "Link" (Standard) und "Schaltfläche".

## Hierarchie der Elemente
<a name="instructions-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Regionen
<a name="instructions-regions"></a>

Die folgenden Regionen werden von diesem Element unterstützt.

### detailed-instructions
<a name="instructions-regions-detailed-instructions"></a>

Inhalte, die spezifische Anweisungen für eine Aufgabe bereitstellen. Diese werden auf der Seite der Registerkarte "Detaillierte Anweisungen" angezeigt.

### negative-example
<a name="instructions-regions-negative-examples"></a>

Inhalte, die Beispiele für unzureichende Aufgabenabschlüsse bereitstellen. Diese werden auf der Seite der Registerkarte "Beispiele" angezeigt. Mehr als ein Beispiel wird innerhalb dieses Elements ausgegeben.

### positive-example
<a name="instructions-regions-positive-examples"></a>

Inhalte, die Beispiele für ordnungsgemäße Aufgabenabschlüsse bereitstellen. Diese werden auf der Seite der Registerkarte "Beispiele" angezeigt.

### short-summary
<a name="instructions-regions-short-summary"></a>

Eine kurze Erklärung, die die abzuschließende Aufgabe zusammenfasst. Diese wird auf der Seite der Registerkarte "Zusammenfassung" angezeigt. Mehr als ein Beispiel wird innerhalb dieses Elements ausgegeben.

## Weitere Informationen finden Sie unter:
<a name="instructions-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-keypoint
<a name="sms-ui-template-crowd-keypoint"></a>

Erzeugt ein Tool für die Auswahl und Anmerkung von Schlüsselpunkten auf einem Bild.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/GRrgaWN).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-keypoint>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <div id="errorBox"></div>
   
  <crowd-keypoint
    src="{{ task.input.taskObject | grant_read_access }}"
    labels="['Item A', 'Item B', 'Item C']"        
    header="Please locate the centers of each item."
    name="annotatedResult">
    <short-instructions>
      Describe your task briefly here and give examples
    </short-instructions>
    <full-instructions>
      Give additional instructions and good/bad examples here
    </full-instructions>   
  </crowd-keypoint>
</crowd-form>

<script>
  var num_obj = 1;

  document.querySelector('crowd-form').onsubmit = function(e) {
    const keypoints = document.querySelector('crowd-keypoint').value.keypoints || document.querySelector('crowd-keypoint')._submittableValue.keypoints;
    const labels = keypoints.map(function(p) {
      return p.label;
    });

    // 1. Make sure total number of keypoints is correct.
    var original_num_labels = document.getElementsByTagName("crowd-keypoint")[0].getAttribute("labels");

    original_num_labels = original_num_labels.substring(2, original_num_labels.length - 2).split("\",\"");
    var goalNumKeypoints = num_obj*original_num_labels.length;
    if (keypoints.length != goalNumKeypoints) {
      e.preventDefault();
      errorBox.innerHTML = '<crowd-alert type="error" dismissible>You must add all keypoint annotations and use each label only once.</crowd-alert>';
      errorBox.scrollIntoView();
      return;
    }

    // 2. Make sure all labels are unique.
    labelCounts = {};
    for (var i = 0; i < labels.length; i++) {
      if (!labelCounts[labels[i]]) {
        labelCounts[labels[i]] = 0;
      }
      labelCounts[labels[i]]++;
    }
    const goalNumSingleLabel = num_obj;

    const numLabels = Object.keys(labelCounts).length;

    Object.entries(labelCounts).forEach(entry => {
      if (entry[1] != goalNumSingleLabel) {
        e.preventDefault();
        errorBox.innerHTML = '<crowd-alert type="error" dismissible>You must use each label only once.</crowd-alert>';
        errorBox.scrollIntoView();
      }
    })
  };
</script>
```

## Attribute
<a name="keypoint-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="keypoint-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### initial-value
<a name="keypoint-attributes-initial"></a>

Ein Array im JSON-Format von Keypoins zur Anwendung auf das Abbild beim Start. Beispiel:

```
initial-value="[
  {
    'label': 'Left Eye',
    'x': 1022,
    'y': 429
  },
  {
    'label': 'Beak',
    'x': 941,
    'y': 403
  }
]
```

**Anmerkung**  
Bitte beachten Sie, dass Beschriftungswerte in diesem Attribut über einen passenden Wert im `labels`-Attribut verfügen müssen, damit der Punkt gerendert wird.

### Beschriftungen
<a name="keypoint-attributes-labels"></a>

Ein Array von Zeichenfolgen im JSON-Format, die als Bezeichnungen für Keypoint-Anmerkungen verwendet werden sollen.

### Name
<a name="keypoint-attributes-name"></a>

Eine Zeichenfolge, die verwendet wird, um die Antwort zu identifizieren, die vom Worker übermittelt wurde. Dieser Wert stimmt mit einem Schlüssel im JSON-Objekt überein, das die Antwort angibt.

### src
<a name="keypoint-attributes-src"></a>

Die Quell-URI des Bildes, zu dem Anmerkungen erstellt werden sollen.

## Hierarchie der Elemente
<a name="keypoint-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](#keypoint-regions-full-instructions), [short-instructions](#keypoint-regions-short-instructions)

## Regionen
<a name="keypoint-regions"></a>

Die folgenden Regionen werden von diesem Element benötigt.

### full-instructions
<a name="keypoint-regions-full-instructions"></a>

Allgemeine Anweisungen dazu, wie das Bild mit Anmerkungen zu versehen ist.

### short-instructions
<a name="keypoint-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="keypoint-output"></a>

Die folgende Ausgabe wird von diesem Element unterstützt.

### inputImageProperties
<a name="keypoint-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

### keypoints
<a name="keypoint-output-keypoints"></a>

Ein Array von JSON-Objekten, das die Koordinaten und die Bezeichnung eines Keypoints enthält. Jedes Objekt enthält die folgenden Eigenschaften:
+ **label** – Das zugewiesene Label für den Keypoint.
+ **x** – Die X-Koordinate des Keypoints auf dem Bild in Pixel.
+ **y** – Die Y-Koordinate des Keypoints auf dem Bild in Pixel.

**Anmerkung**  
Die X- und Y-Koordinaten basieren darauf, dass 0,0 für die linke obere Ecke des Bildes steht.

**Example : Beispielausgaben des Elements**  
Im Folgenden finden Sie ein Beispiel für die Ausgabe dieses Elements.  

```
[
  {
    "crowdKeypoint": {
      "inputImageProperties": {
        "height": 1314,
        "width": 962
      },
      "keypoints": [
        {
          "label": "dog",
          "x": 155,
          "y": 275
        },
        {
          "label": "cat",
          "x": 341,
          "y": 447
        },
        {
          "label": "cat",
          "x": 491,
          "y": 513
        },
        {
          "label": "dog",
          "x": 714,
          "y": 578
        },
        {
          "label": "cat",
          "x": 712,
          "y": 763
        },
        {
          "label": "cat",
          "x": 397,
          "y": 814
        }
      ]
    }
  }
]
```
Es können viele Bezeichnungen zur Verfügung stehen, jedoch werden nur diejenigen in der Ausgabe angezeigt, die verwendet werden.

## Weitere Informationen finden Sie unter:
<a name="keypoint-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# Crowd-Line
<a name="sms-ui-template-crowd-line"></a>

Ein Widget zum Zeichnen von Linien auf einem Bild. Jede Linie ist mit einer Beschriftung verknüpft, und die Ausgabedaten geben die Start- und Endpunkte jeder Linie an. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/NWdPVgw).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-line>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. Weitere Beispiele finden Sie in diesem [GitHub Repository](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis/tree/master/images). 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-line
    name="crowdLine"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Add header here to describe the task"
    labels="['car','pedestrian','street car']"
  >
    <short-instructions>
        <p>Read the task carefully and inspect the image.</p>
        <p>Choose the appropriate label that best suits the image.</p>
        <p>Draw a line on each objects that the label applies to.</p>
    </short-instructions>

    <full-instructions>
        <p>Read the task carefully and inspect the image.</p>
        <p>Choose the appropriate label that best suits the image. 
        <p>Draw a line along each object that the image applies to.
            Make sure that the line does not extend beyond the boundaries
            of the object.
        </p>
        <p>Each line is defined by a starting and ending point. Carefully
        place the starting and ending points on the boundaries of the object.</p>
    </full-instructions>
    
  </crowd-line>
</crowd-form>
```

## Attribute
<a name="line-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="line-attributes-header"></a>

Optional. Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### initial-value
<a name="line-attributes-initialValue"></a>

Optional. Ein Array von JSON-Objekten, von denen jedes einen Begrenzungsrahmen festlegt, wenn die Komponente geladen wird. Jedes JSON-Objekt im Array enthält die folgenden Eigenschaften.
+ **label** – Der dem Rahmen zugewiesene Text als Teil der Labeling-Aufgabe. Dieser Text muss einer der Beschriftung entsprechen, die im *Beschriftung* -Attribut des `<crowd-line>` Elements definiert wurden.
+ **vertices** – die `x` und `y` Pixelkoordinaten des Start- und Endpunkts der Linie, relativ zur linken oberen Ecke des Bildes.

```
initial-value="{
    lines: [
    {
        label: 'sideline', // label of this line annotation
        vertices:[         // an array of vertices which decide the position of the line
        {
            x: 84,
            y: 110
        },
        {
            x: 60,
            y: 100
        }
        ]
    },
    {
        label: 'yardline',
        vertices:[       
        {
            x: 651,
            y: 498
        },
        {
            x: 862,
            y: 869
        }
        ]
    }
   ]
}"
```

Linien, die über die `initial-value` Eigenschaft festgelegt wurden, können angepasst werden. Ob die Antwort eines Auftragnehmers angepasst wurde oder nicht, wird über einen `initialValueModified` booleschen Wert in der Ausgabe der Antwort des Auftragnehmers erfasst.

### labels
<a name="line-attributes-labels"></a>

Erforderlich Ein JSON-formatiertes Array von Strings, die jeweils eine Beschriftung sind, die ein Worker einem Segment des Bildes zuweisen kann. 

**Limit:** 10 Beschriftungen

### label-colors
<a name="line-attributes-label-colors"></a>

Optional. Ein Array von Zeichenfolgen. Jede String ist ein Hexadezimalcode (hex) für eine Beschriftung.

### Name
<a name="line-attributes-name"></a>

Erforderlich Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

### src
<a name="line-attributes-src"></a>

Erforderlich Die URL des Bildes, auf dem Polygone gezeichnet werden sollen. 

## Regionen
<a name="line-regions"></a>

Die folgenden Regionen werden von diesem Element benötigt.

### full-instructions
<a name="line-regions-full-instructions"></a>

Allgemeine Anweisungen zum Zeichnen von Polygonen. 

### short-instructions
<a name="line-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Hierarchie der Elemente
<a name="line-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [short-instructions](#line-regions-short-instructions), [full-instructions](#line-regions-full-instructions)

## Ausgabe
<a name="line-output"></a>

### inputImageProperties
<a name="line-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

### lines
<a name="line-output-labelMappings"></a>

Ein JSON-Array, das Objekte mit den Instance-Beschriftungen und -Farben enthält.
+ **label** – Die Bezeichnung, die einer Zeile zugewiesen wurde.
+ vertices  – die `x` und die `y` Pixelkoordinaten des Start- und Endpunkts der Linie im Verhältnis zur oberen linken Ecke des Bildes.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt eine Ausgabe dieses Elements.

```
{
    "crowdLine": { //This is the name you set for the crowd-line
      "inputImageProperties": {
        "height": 1254,
        "width": 2048
      },
      "lines": [
        {
          "label": "yardline",
          "vertices": [ 
            {
              "x": 58,
              "y": 295
            },
            {
              "x": 1342,
              "y": 398
            }
          ]
        },
        {
          "label": "sideline",
          "vertices": [
            {
              "x": 472,
              "y": 910
            },
            {
              "x": 1480,
              "y": 600
            }
          ]
        }
      ]
    }
  }
```

## Weitere Informationen finden Sie unter:
<a name="line-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-modal
<a name="sms-ui-template-crowd-modal"></a>

Ein kleines Fenster, das beim Öffnen in der Anzeige angezeigt wird. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/RwKNmyK).

Im Folgenden finden Sie ein Beispiel für die Syntax, die Sie mit dem `<crowd-modal>`-Element verwenden können. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-modal
link-text = "See Examples"
link-type = "button">
Example Modal Text</crowd-modal>
```

## Attribute
<a name="modal-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### link-text
<a name="modal-attributes-link-text"></a>

Der Text, der zum Öffnen des Modals angezeigt werden soll. Der Standardwert ist "Klicken, um Modal zu öffnen".

### link-type
<a name="modal-attributes-link-type"></a>

Eine Zeichenfolge, die den Typ des Auslösers für das Modal angibt. Die möglichen Werte sind "Link" (Standard) und "Schaltfläche".

## Hierarchie der Elemente
<a name="modal-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="modal-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-polygon
<a name="sms-ui-template-crowd-polygon"></a>

Ein Widget für das Zeichnen von Polygonen auf einem Bild und das Zuweisen einer Bezeichnung zum Teil des Bildes, der in jedem Polygon eingeschlossen ist.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/eYgmajo).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-polygon>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-polygon
    name="annotatedResult"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Draw a polygon around each of the requested target(s) of interest"
    labels="['Cat', 'Dog', 'Bird']"
  >
    <full-instructions header="Polygon instructions">
      <ul>
        <li>Make the polygon tight around the object</li>
        <li>You need to select a label before starting a polygon</li>
        <li>You will need to select a label again after completing a polygon</li>
        <li>To select a polygon, you can click on its borders</li>
        <li>You can start drawing a polygon from inside another polygon</li>
        <li>You can undo and redo while you're drawing a polygon to go back and forth between points you've placed</li>
        <li>You are prevented from drawing lines that overlap other lines from the same polygon</li>
      </ul>
    </full-instructions>

    <short-instructions>
      <p>Draw a polygon around each of the requested target(s) of interest</p>
      <p>Make the polygon tight around the object</p>
    </short-instructions>
  </crowd-polygon>
</crowd-form>
```

## Attribute
<a name="polygon-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="polygon-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### Beschriftungen
<a name="polygon-attributes-labels"></a>

Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Bezeichnung sind, die ein Worker dem Bildteil zuweisen kann, der durch ein Polygon eingeschlossen ist.

### Name
<a name="polygon-attributes-name"></a>

Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

### src
<a name="polygon-attributes-src"></a>

Die URL des Bildes, auf dem Polygone gezeichnet werden sollen. 

### initial-value
<a name="polygon-attributes-initialValue"></a>

Ein Array von JSON-Objekten, von denen jedes ein Polygon definiert, das beim Laden der Komponente gezeichnet werden soll. Jedes JSON-Objekt im Array enthält die folgenden Eigenschaften.
+ **label** – Der dem Polygon zugewiesene Text als Teil der Labeling-Aufgabe. Dieser Text muss einer der Bezeichnungen entsprechen, die im *labels*-Attribut des <crowd-polygon>-Elements definiert wurden.
+ **vertices** – Ein Array von JSON-Objekten. Jedes Objekt enthält einen X- und Y-Koordinatenwert für einen Punkt im Polygon.

**Example**  
Ein `initial-value`-Attribut könnte etwa so aussehen:  

```
initial-value = 
  '[
     {
     "label": "dog",
     "vertices": 
       [
         {
            "x": 570,
            "y": 239
         },
        ... 
         {
            "x": 759,
            "y": 281
         }
       ]
     }
  ]'
```
Da dies innerhalb eines HTML-Elements geschieht, muss das JSON-Array in einfache oder doppelte Anführungszeichen gesetzt werden. Das obige Beispiel verwendet einfache Anführungszeichen, um das JSON zu kapseln und doppelte Anführungszeichen innerhalb des JSON selbst. Wenn Sie einfache und doppelte Anführungszeichen in Ihrem JSON mischen müssen, ersetzen Sie diese durch ihre HTML-Entity-Codes (`&quot;` für doppelte Anführungszeichen, `&#39;` für einfache Anführungszeichen), um sie sicher zu umgehen.

## Hierarchie der Elemente
<a name="polygon-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](#polygon-regions-full-instructions), [short-instructions](#polygon-regions-short-instructions)

## Regionen
<a name="polygon-regions"></a>

Die folgenden Regionen sind erforderlich:

### full-instructions
<a name="polygon-regions-full-instructions"></a>

Allgemeine Anweisungen zum Zeichnen von Polygonen.

### short-instructions
<a name="polygon-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="polygon-output"></a>

Die folgende Ausgabe wird von diesem Element unterstützt.

### polygons
<a name="polygon-output-boundingBoxes"></a>

Ein Array von JSON-Objekten, von denen jedes ein Polygon beschreibt, der vom Worker erstellt wurde. Jedes JSON-Objekt im Array enthält die folgenden Eigenschaften.
+ **label** – Der dem Polygon zugewiesene Text als Teil der Labeling-Aufgabe.
+ **vertices** – Ein Array von JSON-Objekten. Jedes Objekt enthält einen X- und Y-Koordinatenwert für einen Punkt im Polygon. Die linke obere Ecke des Bildes befindet sich auf Position 0,0.

### inputImageProperties
<a name="polygon-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

**Example : Beispielausgaben des Elements**  
Nachfolgend finden Sie Beispiele für Ausgaben von gängigen Nutzungsszenarien für dieses Element.  
**Einzelne Bezeichnung, einzelnes Polygon**  

```
{
    "annotatedResult": 
    {
      "inputImageProperties": {
        "height": 853,
        "width": 1280
      },
      "polygons": 
      [
        {
          "label": "dog",
          "vertices": 
          [
            {
              "x": 570,
              "y": 239
            },
            {
              "x": 603,
              "y": 513
            },
            {
              "x": 823,
              "y": 645
            },
            {
              "x": 901,
              "y": 417
            },
            {
              "x": 759,
              "y": 281
            }
          ]
        }
      ]
    }
  }
]
```
**Einzelne Bezeichnung, mehrere Polygone**  

```
[
  {
    "annotatedResult": {
      "inputImageProperties": {
        "height": 853,
        "width": 1280
      },
      "polygons": [
        {
          "label": "dog",
          "vertices": [
            {
              "x": 570,
              "y": 239
            },
            {
              "x": 603,
              "y": 513
            },
            {
              "x": 823,
              "y": 645
            },
            {
              "x": 901,
              "y": 417
            },
            {
              "x": 759,
              "y": 281
            }
          ]
        },
        {
          "label": "dog",
          "vertices": [
            {
              "x": 870,
              "y": 278
            },
            {
              "x": 908,
              "y": 446
            },
            {
              "x": 1009,
              "y": 602
            },
            {
              "x": 1116,
              "y": 519
            },
            {
              "x": 1174,
              "y": 498
            },
            {
              "x": 1227,
              "y": 479
            },
            {
              "x": 1179,
              "y": 405
            },
            {
              "x": 1179,
              "y": 337
            }
          ]
        }
      ]
    }
  }
]
```
**Mehrere Bezeichnungen, mehrere Polygone**  

```
[
  {
    "annotatedResult": {
      "inputImageProperties": {
        "height": 853,
        "width": 1280
      },
      "polygons": [
        {
          "label": "dog",
          "vertices": [
            {
              "x": 570,
              "y": 239
            },
            {
              "x": 603,
              "y": 513
            },
            {
              "x": 823,
              "y": 645
            },
            {
              "x": 901,
              "y": 417
            },
            {
              "x": 759,
              "y": 281
            }
          ]
        },
        {
          "label": "cat",
          "vertices": [
            {
              "x": 870,
              "y": 278
            },
            {
              "x": 908,
              "y": 446
            },
            {
              "x": 1009,
              "y": 602
            },
            {
              "x": 1116,
              "y": 519
            },
            {
              "x": 1174,
              "y": 498
            },
            {
              "x": 1227,
              "y": 479
            },
            {
              "x": 1179,
              "y": 405
            },
            {
              "x": 1179,
              "y": 337
            }
          ]
        }
      ]
    }
  }
]
```
Es können viele Bezeichnungen zur Verfügung stehen, jedoch werden nur diejenigen in der Ausgabe angezeigt, die verwendet werden.

## Weitere Informationen finden Sie unter:
<a name="polygon-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-polyline
<a name="sms-ui-template-crowd-polyline"></a>

Ein Widget zum Zeichnen von Polylinien oder Linien auf einem Bild. Jede Polylinie ist mit einer Beschriftung verknüpft und kann zwei oder mehr Scheitelpunkte enthalten. Eine Polylinie kann sich selbst schneiden und ihre Start- und Endpunkte können an einer beliebigen Stelle im Bild platziert werden.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/PoWwvyJ).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-polyline>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. Weitere Beispiele finden Sie in diesem [GitHub Repository](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis/tree/master/images). 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-polyline
    name="crowdPolyline"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Add header here to describe the task"
    labels="['car','pedestrian','street car']"
  >
    <full-instructions>
        <p>Read the task carefully and inspect the image.</p>
        <p>Choose the appropriate label that best suits the image.</p>
        <p>Draw a polyline around the boundaries of all objects
        that the label applies to.</p>
        <p>Use the <b>Enter</b> key to complete a polyline.</p>
        <p>Make sure that the polyline fits tightly around the boundary
        of the object.</p>
    </full-instructions>

    <short-instructions>
        <p>Read the task carefully and inspect the image.</p>
        <p>Review the tool guide to learn how to use the polyline tool.</p>
        <p>Choose the appropriate label that best suits the image.</p>
        <p>To draw a polyline, select a label that applies to an object of interest 
            and add a single point to the photo by clicking on that point. Continue to 
            draw the polyline around the object by adding additional points
            around the object boundary.</p>
        <p>After you place the final point on the polyline, press <b>Enter</b> on your
        keyboard to complete the polyline.</p>

    </short-instructions>
  </crowd-polyline>
</crowd-form>
```

## Attribute
<a name="polyline-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="polyline-attributes-header"></a>

Optional. Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### initial-value
<a name="polyline-attributes-initialValue"></a>

Optional. Ein Array von JSON-Objekten, von denen jedes eine Polylinie setzt, wenn die Komponente geladen wird. Jedes JSON-Objekt im Array enthält die folgenden Eigenschaften:
+ **label** – Der dem Polygon zugewiesene Text als Teil der Labeling-Aufgabe. Dieser Text muss einer der Beschriftungen entsprechen, die im *labels*-Attribut des `<crowd-polyline>` Elements definiert wurden.
+ **vertices** – Die `x` und `y` Pixelkoordinaten der Scheitelpunkte einer Polylinie relativ zur linken oberen Ecke des Bilds.

```
 initial-value= "{
    polylines: [
    {
        label: 'sideline', // label of this line annotation
        vertices:[         // an array of vertices which decide the position of the line
        {
            x: 84,
            y: 110
        },
        {
            x: 60,
            y: 100
        }
        ]
    },
    {
        label: 'yardline',
        vertices:[       
        {
            x: 651,
            y: 498
        },
        {
            x: 862,
            y: 869
        },
        {
            x: 1000,
            y: 869
        }
        ]
    }
   ]
}"
```

Polylinien, die über die `initial-value` Eigenschaft festgelegt wurden, können angepasst werden. Ob die Antwort eines Auftragnehmers angepasst wurde oder nicht, wird anhand eines `initialValueModified` booleschen Werts in der Antwortausgabe des Auftragnehmers erfasst.

### labels
<a name="polyline-attributes-labels"></a>

Erforderlich Ein JSON-formatiertes Array von Strings, die jeweils eine Beschriftung sind, die ein Worker einem Segment des Bildes zuweisen kann. 

**Limit:** 10 Beschriftungen

### label-colors
<a name="polyline-attributes-label-colors"></a>

Optional. Ein Array von Zeichenfolgen. Jede String ist ein Hexadezimalcode (hex) für eine Beschriftung.

### Name
<a name="polyline-attributes-name"></a>

Erforderlich Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

### src
<a name="polyline-attributes-src"></a>

Erforderlich Die URL des Bildes, auf dem Polylinien gezeichnet werden sollen.

## Regionen
<a name="polyline-regions"></a>

Die folgenden Regionen werden von diesem Element benötigt.

### full-instructions
<a name="polyline-regions-full-instructions"></a>

Allgemeine Anweisungen zum Zeichnen von Polylinien. 

### short-instructions
<a name="polyline-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Hierarchie der Elemente
<a name="polyline-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [short-instructions](#polyline-regions-short-instructions), [full-instructions](#polyline-regions-full-instructions)

## Ausgabe
<a name="polyline-output"></a>

### inputImageProperties
<a name="polyline-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

### polylines
<a name="polyline-output-labelMappings"></a>

Ein JSON-Array, das Objekte mit Beschriftungen und Scheitelpunkten von Polylinien enthält.
+ **label** – Die Beschriftung, die einer Linie zugewiesen wurde.
+ vertices – Die `x` und `y` Pixelkoordinaten der Scheitelpunkte einer Polylinie relativ zur linken oberen Ecke des Bilds.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt eine Ausgabe dieses Elements.

```
 {
    "crowdPolyline": { //This is the name you set for the crowd-polyline
      "inputImageProperties": {
        "height": 1254,
        "width": 2048
      },
      "polylines": [
        {
          "label": "sideline",
          "vertices": [
            {
              "x": 651,
              "y": 498
            },
            {
              "x": 862,
              "y": 869
            },
            {
              "x": 1449,
              "y": 611
            }
          ]
        },
        {
          "label": "yardline",
          "vertices": [
            {
              "x": 1148,
              "y": 322
            },
            {
              "x": 1705,
              "y": 474
            },
            ,
            {
              "x": 1755,
              "y": 474
            }
          ]
        }
      ]
    }
  }
```

## Weitere Informationen finden Sie unter:
<a name="polyline-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-radio-button
<a name="sms-ui-template-crowd-radio-button"></a>

Eine Schaltfläche, die entweder aktiviert oder deaktiviert werden kann. Wenn Optionsfelder innerhalb einer Optionsfeldgruppe sind, kann genau ein Optionsfeld in der Gruppe jederzeit geprüft werden. Im Folgenden finden Sie ein Beispiel für die Konfiguration eines `crowd-radio-button`-Elements innerhalb eines `crowd-radio-group`-Elements.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/yLgyWGZ).

Im Folgenden finden Sie ein Beispiel für die Syntax, die Sie mit dem `<crowd-radio-button>`-Element verwenden können. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
<crowd-radio-group>
    <crowd-radio-button name="tech" value="tech">Technology</crowd-radio-button>
    <crowd-radio-button name="politics" value="politics">Politics</crowd-radio-button>
</crowd-radio-group>
</crowd-form>
```

Das vorherige Beispiel ist in einer benutzerdefinierten Worker-Aufgabenvorlage zu sehen. In diesem GitHub Beispiel finden Sie eine [benutzerdefinierte Vorlage für einen Job zur Kennzeichnung von Entitäten](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis/blob/master/text/named-entity-recognition-with-additional-classification.liquid.html).

Die Optionsfelder des Crowd-HTML-Elements unterstützen das HTML-Tag nicht, `required`. Um die Auswahl eines Optionsfeldes erforderlich zu machen, verwenden Sie `<input type="radio">` Elemente, um Optionsfelder zu erstellen und das `required` Tag hinzuzufügen. Das `name` Attribut für alle `<input>` Elemente, die zu derselben Gruppe von Optionsfeldern gehören, muss identisch sein. Bei der folgenden Vorlage muss der Benutzer beispielsweise vor dem Absenden ein Optionsfeld in der `animal-type` Gruppe auswählen.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <p>Select an animal type:</p>
<img src="https://images.unsplash.com/photo-1537151608828-ea2b11777ee8?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1539&q=80" style="height: 500; width: 400;"/>
<br><br>
<div>
  <input type="radio" id="cat" name="animal-type" value="cat" required>
  <label for="cat">Cat</label>
</div>
<div>
  <input type="radio" id="dog" name="animal-type" value="dog">
  <label for="dog">Dog</label>
</div>
<div>
  <input type="radio" id="unknown" name="animal-type" value="unknown">
  <label for="unknown">Unknown</label>
</div>
    <full-instructions header="Classification Instructions">
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label that best suits the image.</p>
    </full-instructions>
    <short-instructions>
      <p>Read the task carefully and inspect the image.</p>
      <p>Choose the appropriate label that best suits the image.</p>
    </short-instructions>
</crowd-form>
```

## Attribute
<a name="radio-button-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### checked
<a name="radio-button-attributes-checked"></a>

Ein boolescher Schalter, der, falls vorhanden, das Optionsfeld als aktiviert anzeigt.

### disabled
<a name="radio-button-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, die Schaltfläche als deaktiviert anzeigt und verhindert, dass sie aktiviert wird.

### Name
<a name="radio-button-attributes-name"></a>

Eine Zeichenfolge, die verwendet wird, um die Antwort zu identifizieren, die vom Worker übermittelt wurde. Dieser Wert stimmt mit einem Schlüssel im JSON-Objekt überein, das die Antwort angibt.

**Anmerkung**  
Wenn Sie die Schaltflächen außerhalb eines [crowd-radio-group](sms-ui-template-crowd-radio-group.md)-Elements verwenden, jedoch mit derselben `name`-Zeichenfolge und unterschiedlichen `value`-Zeichenfolgen, enthält das `name`-Objekt in der Ausgabe einen booleschen Wert für jede `value`-Zeichenfolge. Um sicherzustellen, dass jeweils nur eine Schaltfläche in einer Gruppe von Schaltflächen ausgewählt ist, machen Sie sie zu untergeordneten Elementen eines [crowd-radio-group](sms-ui-template-crowd-radio-group.md)-Elements und verwenden Sie unterschiedliche name-Werte.

### value
<a name="radio-button-attributes-value"></a>

Ein Eigenschaftenname für den booleschen Wert des Elements. Wenn Sie nichts angeben, wird standardmäßig "aktiviert" verwendet, z. B. `{ "<name>": { "<value>": <true or false> } }`.

## Hierarchie der Elemente
<a name="radio-button-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-radio-group](sms-ui-template-crowd-radio-group.md)
+ **Untergeordnete Elemente**: keine

## Ausgabe
<a name="radio-button-output"></a>

Gibt ein Objekt mit folgendem Muster aus: `{ "<name>": { "<value>": <true or false> } }`. Wenn Sie die Schaltflächen außerhalb eines [crowd-radio-group](sms-ui-template-crowd-radio-group.md)-Elements verwenden, jedoch mit derselben `name`-Zeichenfolge und unterschiedlichen `value`-Zeichenfolgen, enthält das name-Objekt einen booleschen Wert für jede `value`-Zeichenfolge. Um sicherzustellen, dass jeweils nur eine in einer Gruppe von Schaltflächen ausgewählt ist, machen Sie sie zu untergeordneten Elementen eines [crowd-radio-group](sms-ui-template-crowd-radio-group.md)-Elements und verwenden Sie unterschiedliche name-Werte.

**Example Beispielausgabe dieses Elements**  

```
[
  {
    "btn1": {
      "yes": true
    },
    "btn2": {
      "no": false
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="radio-button-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-radio-group
<a name="sms-ui-template-crowd-radio-group"></a>

Eine Gruppe von Optionsfeldern. Nur ein Optionsfeld innerhalb der Gruppe kann ausgewählt werden. Wenn Sie ein Optionsfeld auswählen, werden alle zuvor ausgewählten Optionsfelder innerhalb derselben Gruppe gelöscht. Ein Beispiel für eine benutzerdefinierte Benutzeroberflächenvorlage, die das `crowd-radio-group`-Element verwendet, finden Sie in dieser [benutzerdefinierten Vorlage für den Kennzeichnungsauftrag zur Entitätenerkennung](https://github.com/aws-samples/amazon-sagemaker-ground-truth-task-uis/blob/master/text/named-entity-recognition-with-additional-classification.liquid.html)

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/KKawjPJ).

Im Folgenden finden Sie ein Beispiel für die Syntax, die Sie mit dem `<crowd-radio-group>`-Element verwenden können. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
  
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<style>
	body {
		padding-left: 20px;
		margin-bottom: 20px;
	}
	#outer-container {
	    display: flex;
	    justify-content: space-around;
	    max-width: 900px;
	    margin-left: 100px;
	}
	.left-container {
    	margin-right: auto;
    	padding-right: 50px;
	}
	.right-container {
    	margin-left: auto;
    	padding-left: 50px;
	}
	#vertical-separator {
	    border: solid 1px #d5dbdb;
	}
</style>

<crowd-form>
    <div>
        <h1>Instructions</h1>
	Lorem ipsum...
    </div>
    <div>
        <h2>Background</h2>
    	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
    </div>
    <div id="outer-container">
	<span class="left-container">
	    <h2>Option 1</h2>
	    <p>Nulla facilisi morbi tempus iaculis urna. Orci dapibus ultrices in iaculis nunc sed augue lacus.</p>
	</span>
	<span id="vertical-separator"></span>
	<span class="right-container">
	    <h2>Option 2</h2>
	    <p>Ultrices vitae auctor eu augue ut. Pellentesque massa placerat duis ultricies lacus sed turpis tincidunt id.</p>
	</span>
    </div>
    <div>
        <h2>Question</h2>
    	<p>Which do you agree with?</p>
	<crowd-radio-group>
	    <crowd-radio-button name="option1" value="Option 1">Option 1</crowd-radio-button>
	    <crowd-radio-button name="option2" value="Option 2">Option 2</crowd-radio-button>
	</crowd-radio-group>

    	<p>Why did you choose this answer?</p>
	<crowd-text-area name="explanation" placeholder="Explain how you reached your conclusion..."></crowd-text-area>
    </div>
</crowd-form>
```

## Attribute
<a name="radio-group-attributes"></a>

Von diesem Element werden keine speziellen Attribute unterstützt.

## Hierarchie der Elemente
<a name="radio-group-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [crowd-radio-button](sms-ui-template-crowd-radio-button.md)

## Ausgabe
<a name="radio-group-output"></a>

Gibt ein Array von Objekten aus, die die darin enthaltenen [crowd-radio-button](sms-ui-template-crowd-radio-button.md)-Elemente darstellen.

**Example Beispiel einer Elementausgabe**  

```
[
  {
    "btn1": {
      "yes": true
    },
    "btn2": {
      "no": false
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="radio-group-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-semantic-segmentation
<a name="sms-ui-template-crowd-semantic-segmentation"></a>

Ein Widget zur Segmentierung eines Bildes und zur Zuweisung einer Bezeichnung zu jedem Bildsegment.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/LYxEKEb).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-semantic-segmentation>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-semantic-segmentation
    name="annotatedResult"
    src="{{ task.input.taskObject | grant_read_access }}"
    header="Please label each of the requested objects in this image"
    labels="['Cat', 'Dog', 'Bird']"
  >
    <full-instructions header="Segmentation Instructions">
      <ol>
          <li><strong>Read</strong> the task carefully and inspect the image.</li>
          <li><strong>Read</strong> the options and review the examples provided to understand more about the labels.</li>
          <li><strong>Choose</strong> the appropriate label that best suits the image.</li>
      </ol>
    </full-instructions>

    <short-instructions>
      <p>Use the tools to label the requested items in the image</p>
    </short-instructions>
  </crowd-semantic-segmentation>
</crowd-form>
```

## Attribute
<a name="semantic-segmentation-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="semantic-segmentation-attributes-header"></a>

Der Text, der über dem Bild angezeigt werden soll. Dies ist in der Regel eine Frage oder einfache Anweisung für den Worker.

### initial-value
<a name="semantic-segmentation-attributes-initial-value"></a>

Ein JSON-Objekt, das die Farbzuweisungen eines früheren semantischen Segmentierungsauftrags und einen Link zur Overlay-Bildausgabe des vorherigen Auftrags enthält. Schließen Sie diese Option ein, wenn ein Auftragnehmer die Ergebnisse eines vorherigen Beschriftungsauftrags überprüft und passen Sie ihn gegebenenfalls an.

Das Attribut würde wie folgt aussehen:

```
  initial-value='{
    "labelMappings": {
        "Bird": {
          "color": "#ff7f0e"
        },
        "Cat": {
          "color": "#2ca02c"
        },
        "Cow": {
          "color": "#d62728"
        },
        "Dog": {
          "color": "#1f77b4"
        }
      },
    "src": {{ "S3 file URL for image" | grant_read_access }}
  }'
```

Bei Verwendung der [Ground Truth integrierten Aufgabentypen](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html) mit [Annotationskonsolidierung](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-annotation-consolidation.html) (bei der mehr als ein Auftragnehmer ein einzelnes Bild beschriftet), sind Beschriftungszuordnungen in den einzelnen Auftragnehmer-Ausgabedatensätzen enthalten, das Gesamtergebnis wird jedoch als das `internal-color-map` in den konsolidierten Ergebnissen dargestellt.

Sie können `internal-color-map` mit der Templating-Sprache „Liquid“ in einer benutzerdefinierten Vorlage in `label-mappings` konvertieren:

```
initial-value="{
  'src' : '{{ task.input.manifestLine.label-attribute-name-from-prior-job| grant_read_access }}',
  'labelMappings': {
     {% for box in task.input.manifestLine.label-attribute-name-from-prior-job-metadata.internal-color-map %}
       {% if box[1]['class-name'] != 'BACKGROUND' %}
         {{ box[1]['class-name'] | to_json }}: {
           'color': {{ box[1]['hex-color'] | to_json }}
         },
       {% endif %} 
     {% endfor %}
   } 
}"
```

### Beschriftungen
<a name="semantic-segmentation-attributes-labels"></a>

Ein JSON-formatiertes Array von Zeichenfolgen, die jeweils eine Bezeichnung sind, die ein Worker einem Segment des Bildes zuweisen kann.

### Name
<a name="semantic-segmentation-attributes-name"></a>

Der Name dieses Widgets. Er wird als Schlüssel für die Widget-Eingabe in der Formularausgabe verwendet.

### src
<a name="semantic-segmentation-attributes-src"></a>

Die URL des Bildes, das segmentiert werden soll.

## Hierarchie der Elemente
<a name="semantic-segmentation-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: [full-instructions](#semantic-segmentation-regions-full-instructions), [short-instructions](#semantic-segmentation-regions-short-instructions)

## Regionen
<a name="semantic-segmentation-regions"></a>

Die folgenden Regionen werden von diesem Element unterstützt.

### full-instructions
<a name="semantic-segmentation-regions-full-instructions"></a>

Allgemeine Anweisungen zur Durchführung der Bildsegmentierung.

### short-instructions
<a name="semantic-segmentation-regions-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Ausgabe
<a name="semantic-segmentation-output"></a>

Die folgende Ausgabe wird von diesem Element unterstützt.

### labeledImage
<a name="semantic-segmentation-output-labeledImage"></a>

Ein JSON-Objekt mit einem Base64-kodierten PNG der Bezeichnung.

### labelMappings
<a name="semantic-segmentation-output-labelMappings"></a>

Ein JSON-Objekt mit Objekten mit benannten Segmentierungsbezeichnungen.
+ **color** – Der hexadezimale Wert der RGB-Farbe der Bezeichnung im `labeledImage` PNG.

### initialValueModified
<a name="semantic-segmentation-output-initialValueModified"></a>

Ein boolescher Wert, der angibt, ob die Anfangswerte geändert wurden. Dies ist nur enthalten, wenn die Ausgabe von einem Anpassungsvorgang stammt.

### inputImageProperties
<a name="semantic-segmentation-output-inputImageProperties"></a>

Ein JSON-Objekt, in dem die Dimensionen des Bildes angegeben werden, das durch den Worker kommentiert wird. Dieses Objekt enthält die folgenden Eigenschaften.
+ **height** – Die Höhe, in Pixeln, des Bildes.
+ **width** – Die Breite, in Pixeln, des Bildes.

**Example : Beispielausgaben des Elements**  
Das folgende Beispiel zeigt die Ausgabe dieses Elements.  

```
[
  {
    "annotatedResult": {
      "inputImageProperties": {
        "height": 533,
        "width": 800
      },
      "labelMappings": {
        "<Label 2>": {
          "color": "#ff7f0e"
        },
        "<label 3>": {
          "color": "#2ca02c"
        },
        "<label 1>": {
          "color": "#1f77b4"
        }
      },
      "labeledImage": {
        "pngImageData": "<Base-64 Encoded Data>"
      }
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="semantic-segmentation-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-slider
<a name="sms-ui-template-crowd-slider"></a>

Eine Leiste mit einem Schiebeknopf, mit dem ein Worker durch Verschieben des Knopfes aus einer Reihe von Werten einen Wert auswählen kann. Der Schieberegler ist ideal für Einstellungen geeignet, die Intensitätsstufen widerspiegeln, wie z. B. Lautstärke, Helligkeit oder Farbsättigung.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/RwKNzWL).

Im Folgenden finden Sie ein Beispiel für eine Umfragevorlage, die das `<crowd-slider>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
<crowd-instructions link-text="View instructions" link-type="button">
  <short-summary>
    <p>Provide a brief instruction here</p>
  </short-summary>

  <detailed-instructions>
    <h3>Provide more detailed instructions here</h3>
    <p>Include additional information</p>
  </detailed-instructions>

  <positive-example>
    <p>Provide an example of a good answer here</p>
    <p>Explain why it's a good answer</p>
  </positive-example>

  <negative-example>
    <p>Provide an example of a bad answer here</p>
    <p>Explain why it's a bad answer</p>
  </negative-example>
</crowd-instructions>

<div>
  <p>What is your favorite color for a bird?</p>
  <crowd-input name="favoriteColor" placeholder="example: pink" required></crowd-input>
</div>

<div>
  <p>Check this box if you like birds</p>
  <crowd-checkbox name="likeBirds" checked="true" required></crowd-checkbox>
</div>

<div>
  <p>On a scale of 1-10, how much do you like birds?</p>
  <crowd-slider name="howMuch" min="1" max="10" step="1" pin="true" required></crowd-slider>
</div>

<div>
  <p>Write a short essay describing your favorite bird</p>
  <crowd-text-area name="essay" rows="4" placeholder="Lorem ipsum..." required></crowd-text-area>
</div>
</crowd-form>
```

## Attribute
<a name="slider-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### disabled
<a name="slider-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, den Schieberegler als deaktiviert anzeigt.

### editable
<a name="slider-attributes-editable"></a>

Ein boolescher Schalter, der, falls vorhanden, eine up/down Schaltfläche anzeigt, mit der der Wert ausgewählt werden kann.

Die Auswahl des Werts über die up/down Taste ist eine Alternative zur Auswahl des Werts durch Bewegen des Reglers am Schieberegler. Der Knopf auf dem Schieberegler bewegt sich synchron mit der Auswahl der Auf/Ab-Schaltfläche.

### max
<a name="slider-attributes-max"></a>

Eine Zahl, die den maximalen Wert auf dem Schieberegler angibt.

### min
<a name="slider-attributes-min"></a>

Eine Zahl, die den minimalen Wert auf dem Schieberegler angibt.

### Name
<a name="slider-attributes-name"></a>

Eine Zeichenfolge, die verwendet wird, um die Antwort zu identifizieren, die vom Worker übermittelt wurde. Dieser Wert stimmt mit einem Schlüssel im JSON-Objekt überein, das die Antwort angibt.

### pin
<a name="slider-attributes-pin"></a>

Ein boolescher Schalter, der, sofern vorhanden, den aktuellen Wert oberhalb des Knopfes anzeigt, wenn er verschoben wird.

### Erforderlich
<a name="slider-attributes-required"></a>

Ein boolescher Schalter, der, falls vorhanden, erfordert, dass der Worker die Eingabe bereitstellt.

### secondary-progress
<a name="slider-attributes-secondary-progress"></a>

Bei Verwendung mit einem `crowd-slider-secondary-color`-CSS-Attribut wird der Fortschrittsbalken bis zu dem Zeitpunkt farbig dargestellt, der durch den `secondary-progress` repräsentiert wird. Beispiel: Wenn dies den Fortschritt in einem Streaming-Video darstellt, repräsentiert der `value` den Zeitpunkt, an dem der Betrachter sich in der Video-Zeitleiste befand. Der `secondary-progress`-Wert repräsentiert den Zeitpunkt auf der Zeitleiste, an dem das Video gepuffert hatte.

### Schritt
<a name="slider-attributes-step"></a>

Eine Zahl, die die Differenz zwischen auswählbaren Werten auf dem Schieberegler angibt.

### value
<a name="slider-attributes-value"></a>

Eine Voreinstellung, die zur Standardeinstellung wird, wenn der Worker keine Eingabe bereitstellt.

## Hierarchie der Elemente
<a name="slider-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="slider-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-tab
<a name="sms-ui-template-crowd-tab"></a>

Eine Komponente, die dem Aussehen einer Registerkarte mit untenstehenden Informationen nachempfunden wurde.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/dyNPBGW).

Im Folgenden finden Sie eine Beispielvorlage, die das `<crowd-tab>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-tabs>
    <crowd-tab header="Tab 1">
      <h2>Image</h2>

      <img
        src="https://images.unsplash.com/photo-1478382188900-5bb598fe27d3?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1351&q=80"
        style="max-width: 40%"
      >

      <h2>Text</h2>
      <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
      </p>
      <p>
      Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Tempus egestas sed sed risus.
      </p>
    </crowd-tab>

    <crowd-tab header="Tab 2">
      <h2>Description</h2>
      <p>
      Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Tempus egestas sed sed risus.
      </p>
    </crowd-tab>

    <crowd-tab header="Tab 3">
      <div style="width: 40%; display: inline-block">
        <img
          src="https://images.unsplash.com/photo-1472747459646-91fd6f13995f?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1350&q=80"
          style="max-width: 80%"
        >
        <crowd-input label="Input inside tab" name="inputInsideTab"></crowd-input>
        <input type="checkbox" name="checkbox" value="foo">Foo
        <input type="checkbox" name="checkbox" value="bar">Bar
        <crowd-button>Some button</crowd-button>
      </div>

      <div style="width: 40%; display: inline-block; vertical-align: top">
        Lorem ipsum dolor sit amet, lorem a wisi nibh, in pulvinar, consequat praesent vestibulum tellus ante felis auctor, vitae lobortis dictumst mauris. 
        Pellentesque nulla ipsum ante quisque quam augue. 
        Class lacus id euismod, blandit tempor mauris quisque tortor mauris, urna gravida nullam pede libero, ut suscipit orci faucibus lacus varius ornare, pellentesque ipsum. 
        At etiam suspendisse est elementum luctus netus, vel sem nulla sodales, potenti magna enim ipsum diam tortor rutrum, 
        quam donec massa elit ac, nam adipiscing sed at leo ipsum consectetuer. Ac turpis amet wisi, porttitor sint lacus ante, turpis accusantium, ac maecenas deleniti, 
        nisl leo sem integer ac dignissim. Lobortis etiam luctus lectus odio auctor. Justo vitae, felis integer id, bibendum accumsan turpis eu est mus eros, ante id eros. 
      </div>
    </crowd-tab>

  </crowd-tabs>

  <crowd-input label="Input outside tabs" name="inputOutsideTab"></crowd-input>

  <short-instructions>
    <p>Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Tempus egestas sed sed risus.</p>
</short-instructions>

<full-instructions header="Classification Instructions">
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
    <p> Tempus egestas sed sed risus.</p>
</full-instructions>

</crowd-form>
```

## Attribute
<a name="tab-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="tab-attributes-header"></a>

Der Text, der auf der Registerkarte angezeigt wird. Dies ist in der Regel ein kurzer aussagekräftiger Name der auf die Informationen hinweist, die unterhalb der Registerkarte enthalten sind.

## Hierarchie der Elemente
<a name="tab-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-tabs](sms-ui-template-crowd-tabs.md)
+ **Untergeordnete Elemente**: keine 

## Weitere Informationen finden Sie unter:
<a name="tab-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-tabs
<a name="sms-ui-template-crowd-tabs"></a>

Ein Container für Registerkarteninformationen.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/ZELYdWz).

Im Folgenden finden Sie eine Beispielvorlage, die das `<crowd-tabs>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <crowd-tabs>
    <crowd-tab header="Tab 1">
      <h2>Image</h2>

      <img
        src="https://images.unsplash.com/photo-1478382188900-5bb598fe27d3?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1351&q=80"
        style="max-width: 40%"
      >

      <h2>Text</h2>
      <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
      </p>
      <p>
      Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Tempus egestas sed sed risus.
      </p>
    </crowd-tab>

    <crowd-tab header="Tab 2">
      <h2>Description</h2>
      <p>
      Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Tempus egestas sed sed risus.
      </p>
    </crowd-tab>

    <crowd-tab header="Tab 3">
      <div style="width: 40%; display: inline-block">
        <img
          src="https://images.unsplash.com/photo-1472747459646-91fd6f13995f?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1350&q=80"
          style="max-width: 80%"
        >
        <crowd-input label="Input inside tab" name="inputInsideTab"></crowd-input>
        <input type="checkbox" name="checkbox" value="foo">Foo
        <input type="checkbox" name="checkbox" value="bar">Bar
        <crowd-button>Some button</crowd-button>
      </div>

      <div style="width: 40%; display: inline-block; vertical-align: top">
        Lorem ipsum dolor sit amet, lorem a wisi nibh, in pulvinar, consequat praesent vestibulum tellus ante felis auctor, vitae lobortis dictumst mauris. 
        Pellentesque nulla ipsum ante quisque quam augue. 
        Class lacus id euismod, blandit tempor mauris quisque tortor mauris, urna gravida nullam pede libero, ut suscipit orci faucibus lacus varius ornare, pellentesque ipsum. 
        At etiam suspendisse est elementum luctus netus, vel sem nulla sodales, potenti magna enim ipsum diam tortor rutrum, 
        quam donec massa elit ac, nam adipiscing sed at leo ipsum consectetuer. Ac turpis amet wisi, porttitor sint lacus ante, turpis accusantium, ac maecenas deleniti, 
        nisl leo sem integer ac dignissim. Lobortis etiam luctus lectus odio auctor. Justo vitae, felis integer id, bibendum accumsan turpis eu est mus eros, ante id eros. 
      </div>
    </crowd-tab>

  </crowd-tabs>

  <crowd-input label="Input outside tabs" name="inputOutsideTab"></crowd-input>

  <short-instructions>
    <p>Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Tempus egestas sed sed risus.</p>
</short-instructions>

<full-instructions header="Classification Instructions">
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
    <p> Tempus egestas sed sed risus.</p>
</full-instructions>

</crowd-form>
```

## Attribute
<a name="tabs-attributes"></a>

Dieses Element verfügt über keine Attribute.

## Hierarchie der Elemente
<a name="tabs-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md) 
+ **Untergeordnete Elemente**: [crowd-tab](sms-ui-template-crowd-tab.md)

## Weitere Informationen finden Sie unter:
<a name="tabs-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-text-area
<a name="sms-ui-template-crowd-text-area"></a>

Ein Feld für die Texteingabe.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/ZELYdOz).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-text-area>`-Element verwendet und für die Transkription von Audioclips konzipiert wurde. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <audio controls>
      <source src="{{ task.input.taskObject | grant_read_access }}" type="audio/mpeg">
      Your browser does not support the audio element.
  </audio>
  <h3>Instructions</h3>
  <p>Transcribe the audio</p>
  <p>Ignore "umms", "hmms", "uhs" and other non-textual phrases</p>
  <crowd-text-area name="transcription" rows="4"></crowd-text-area>
</crowd-form>
```

## Attribute
<a name="text-area-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### allowed-pattern
<a name="text-area-attributes-allowed-pattern"></a>

Ein regulärer Ausdruck, der mit dem *auto-validate*-Attribut verwendet wird, um nicht übereinstimmende Zeichen während der Eingabe des Workers zu ignorieren.

### auto-focus
<a name="text-area-attributes-auto-focus"></a>

Ein boolescher Schalter, der, falls vorhanden, den Cursor in diesem Element unter Last setzt, damit die Benutzer sofort mit der Eingabe beginnen können, ohne auf das Element klicken zu müssen.

### auto-validate
<a name="text-area-attributes-auto-validate"></a>

Ein boolescher Schalter, der, falls vorhanden, die Validierung der Eingabe aktiviert. Das Verhalten der Validierung kann durch die Attribute *error-message* und *allowed-pattern* geändert werden.

### char-counter
<a name="text-area-attributes-char-counter"></a>

Ein boolescher Schalter, der, falls vorhanden, ein kleines Textfeld unterhalb der unteren rechten Ecke des Elements setzt, das die Anzahl der Zeichen im Element anzeigt.

### disabled
<a name="text-area-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, den Eingabebereich als deaktiviert anzeigt.

### error-message
<a name="text-area-attributes-error-message"></a>

Der Text, der unter dem Eingabefeld auf der linken Seite angezeigt werden soll, wenn die Validierung fehlschlägt.

### Bezeichnung
<a name="text-area-attributes-label"></a>

Eine Zeichenfolge, die in einem Textfeld angezeigt wird.

Dieser Text verkleinert und erhebt sich über ein Textfeld, wenn der Worker mit der Eingabe im Feld beginnt oder das *value*-Attribut festgelegt ist.

### max-length
<a name="text-area-attributes-max-length"></a>

Eine Ganzzahl, die die maximale Anzahl an Zeichen angibt, die vom Element zugelassen werden. Darüber hinaus eingegebene oder eingefügte Zeichen werden ignoriert.

### max-rows
<a name="text-area-attributes-max-rows"></a>

Eine Ganzzahl, die die maximale Anzahl von Textzeilen angibt, die innerhalb von a zulässig sind crowd-text-area. Normalerweise wird das Element erweitert, um neue Zeilen zu bewältigen. Wenn dies festgelegt wird, nachdem die Anzahl der Zeilen diese überschreiten, werden Inhalte aus der Ansicht nach oben verschoben und eine Bildlaufleiste wird angezeigt.

### Name
<a name="text-area-attributes-name"></a>

Eine Zeichenfolge zur Darstellung der Daten des Elements in der Ausgabe.

### placeholder
<a name="text-area-attributes-placeholder"></a>

Eine Zeichenfolge, die dem Benutzer als Platzhaltertext dargestellt wird. Sie wird ausgeblendet, nachdem der Benutzer etwas in den Eingabebereich setzt.

### rows
<a name="text-area-attributes-rows"></a>

Eine Ganzzahl, die die Höhe des Elements in Textzeilen angibt.

### value
<a name="text-area-attributes-value"></a>

Eine Voreinstellung, die zur Standardeinstellung wird, wenn der Worker keine Eingabe bereitstellt. Die Voreinstellung wird in einem Textfeld angezeigt.

## Hierarchie der Elemente
<a name="text-area-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Ausgabe
<a name="text-area-output"></a>

Dieses Element gibt den `name` als Eigenschaftsnamen und die Elementtextinhalte als Wert aus. Zeilenumbrüche im Text werden als `\n` dargestellt.

**Example Beispielausgabe für dieses Element**  

```
[
  {
    "textInput1": "This is the text; the text that\nmakes the crowd go wild."
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="text-area-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-toast
<a name="sms-ui-template-crowd-toast"></a>

Eine subtile Benachrichtigung, die vorübergehend auf der Anzeige erscheint. Nur ein crowd-toast ist sichtbar.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/ExZaBgK).

Im Folgenden finden Sie ein Beispiel für eine Liquid-Vorlage, die das `<crowd-toast>`-Element verwendet. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <p>Find the official website for: <strong>{{ task.input.company }}</strong></p>
  <p>Do not give Yelp pages, LinkedIn pages, etc.</p>
  <p>Include the http:// prefix from the website</p>
  <crowd-input name="website" placeholder="http://example.com"></crowd-input>

  <crowd-toast duration="10000" opened>
    This is a message that you want users to see when opening the template. This message will disappear in 10 seconds. 
   </crowd-toast>

</crowd-form>
```

## Attribute
<a name="toast-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### duration
<a name="toast-attributes-duration"></a>

Eine Zahl, die die Dauer in Millisekunden angibt, die die Benachrichtigung auf dem Bildschirm angezeigt wird.

### text
<a name="toast-attributes-text"></a>

Der Text, der in der Benachrichtigung angezeigt werden soll.

## Hierarchie der Elemente
<a name="toast-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Weitere Informationen finden Sie unter:
<a name="toast-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+  [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md) 
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# crowd-toggle-button
<a name="sms-ui-template-crowd-toggle-button"></a>

Eine Schaltfläche, die als ON/OFF Schalter fungiert und einen Status umschaltet. 

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements/pen/XWpJLNm).

Im folgenden Beispiel werden verschiedene Möglichkeiten gezeigt, wie das HTML-Element `<crowd-toggle-button>` verwendet werden kann. Kopieren Sie den folgenden Code und speichern Sie ihn in einer Datei mit der Erweiterung `.html`. Öffnen Sie die Datei in einem beliebigen Browser, um eine Vorschau anzuzeigen und mit dieser Vorlage zu interagieren. 

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
  <!--Toggle button without value-->
  <crowd-toggle-button name="toggleButtonWithoutValue"></crowd-toggle-button>

  <!--Toggle button with value-->
  <crowd-toggle-button name="toggleButtonWithValue" value="someValue"></crowd-toggle-button>

  <!--Toggle button disabled-->
  <crowd-toggle-button name="toggleButtonDisabled" disabled></crowd-toggle-button>

  <!--Toggle button marked invalid-->
  <crowd-toggle-button name="toggleButtonInvalid" invalid></crowd-toggle-button>

  <!--Toggle button marked required-->
  <crowd-toggle-button name="toggleButtonRequired" required></crowd-toggle-button>
</crowd-form>
```

## Attribute
<a name="toggle-button-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### checked
<a name="toggle-button-attributes-checked"></a>

Ein boolescher Schalter, der, falls vorhanden, die Schaltfläche in der AN-Stellung anzeigt.

### disabled
<a name="toggle-button-attributes-disabled"></a>

Ein boolescher Schalter, der, falls vorhanden, die Schaltfläche als deaktiviert anzeigt und ein Umschalten verhindert.

### invalid
<a name="toggle-button-attributes-invalid"></a>

Wenn in einer ausgeschalteten Position wird eine Schaltfläche mit diesem Attribut in einer Warnfarbe angezeigt. Der Standard ist rot, kann jedoch in CSS geändert werden. Wenn aktiviert, wird die Schaltfläche in der gleichen Farbe wie andere Schaltflächen in der eingeschalteten Position angezeigt.

### Name
<a name="toggle-button-attributes-name"></a>

Eine Zeichenfolge, die verwendet wird, um die Antwort zu identifizieren, die vom Worker übermittelt wurde. Dieser Wert stimmt mit einem Schlüssel im JSON-Objekt überein, das die Antwort angibt.

### Erforderlich
<a name="toggle-button-attributes-required"></a>

Ein boolescher Schalter, der, falls vorhanden, erfordert, dass der Worker die Eingabe bereitstellt.

### value
<a name="toggle-button-attributes-value"></a>

Ein Wert, der in der Ausgabe als Eigenschaftsname für den booleschen Status des Elements verwendet wird. Es gilt der Standardwert "aktiviert", falls nicht vorhanden.

## Hierarchie der Elemente
<a name="toggle-button-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ **Übergeordnete Elemente**: [crowd-form](sms-ui-template-crowd-form.md)
+ **Untergeordnete Elemente**: keine

## Ausgabe
<a name="toggle-button-output"></a>

Dieses Element gibt den `name` als den Namen eines Objekts aus, das den `value` als Eigenschaftsnamen und den Status des Elements als booleschen Wert für die Eigenschaft enthält. Wenn kein Wert für das Element angegeben wird, ist der Eigenschaftsname standardmäßig auf "aktiviert" gesetzt.

**Example Beispielausgabe für dieses Element**  

```
[
  {
    "theToggler": {
      "on": true
    }
  }
]
```

## Weitere Informationen finden Sie unter:
<a name="toggle-button-see-also"></a>

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

## Crowd-HTML-Elemente V2
<a name="elements-v2"></a>

Crowd-HTML-Elemente V2 bieten erweiterte Kennzeichnungsfunktionen, um Auftragnehmer mit neuen Features zu unterstützen, die auf Anwendungsfälle des GenAI-Modelltrainings zugeschnitten sind. Diese V2-Elemente sind kompatibel mit den Crowd-HTML-Elementen crowd-form, short-instructions, crowd-button, crowd-tabs und crowd-tab. Wenn Sie andere Elemente mit V2-Elementen verwenden, funktioniert die Anmerkungsanwendung nicht richtig.

### crowd-text-ranking
<a name="sms-ui-template-crowd-text-ranking"></a>

Ein Widget, mit dem Auftragnehmer verschiedene Texteingaben auf der Grundlage der von Ihnen angegebenen Dimensionen verschieben und ordnen können.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements_2/pen/ZYGqBPQ).

```
<script src="https://assets.crowd.aws/crowd-html-elements-v2.js"></script>

<crowd-form>
  <crowd-text-ranking
    name="textRanking"
    ordinal-ranking-dimensions='[{"name":"Clarity","allowTie":true},{"name":"Inclusivity","allowTie":false}]'
    text="Explain why you can see yourself in a mirror at a level that a 16 year old can understand."
    responses='["When light is emitted from light source like a light bulb, some of it travels toward your body, where it may be reflected toward the mirror with some probability or it may be absorbed. If it were reflected off your body, then some of it could travel toward the mirror, where it could be reflected again. If it is the case where light strikes the mirror, the light is then again redirected as a reflection. If that light is pointed in the direction of your eyes, then the light will enter your eyes. Then, your brain processes the electrical signal made by your eyes and sees it as an image.","You can see yourself because of a series of light reflections. Light travels from the light source, hits and reflects off of your body and travels toward the mirror. Then, it reflects off of the mirror and travels to your eyes, where your brain registers it as a picture of yourself.","Light travels in various directions from a light source like a light bulb. Some of the light reflects off of your body with some probability, after which some of it travels to the mirror. Upon striking the mirror, the some of the light again reflects off the mirror and travels toward your eyes, wherein your eyes detect the light after absorbing it. After this process, your brain processes the signal as an image of yourself.","The phenomenon of self-visual perception via a mirror at an ontological plane derives from the intricate interplay of photons within the electromagnetic spectrum, quantum mechanical principles, and the neurocognitive processes underpinning self-recognition. In essence, the mirror serves as an interface wherein incident photons, emitted from an external object, interact with the reflective surface at a specific angle of incidence governed by the laws of geometric optics. This interaction culminates in the process of specular reflection, leading to the formation of a virtual image."]'
  >
    <short-instructions>
      <h1>Hello these are my instructions 1</h1>
      <p>Hello these are my instructions 2</p>
      <p>Hello these are my instructions 3</p>
    </short-instructions>
  </crowd-text-ranking>
</crowd-form>
```

#### Attribute
<a name="crowd-text-ranking-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

##### text
<a name="crowd-text-ranking-attributes-text"></a>

Dies ist der Text oder S3-Verweis auf den Text, auf den bei der Rangfestlegung der Antworten verwiesen werden soll.

##### ordinal-ranking-dimensions
<a name="crowd-text-ranking-attributes-ordinal-ranking"></a>

Dies ist ein erforderliches Array des Objekts `ordinal-ranking-dimensions`, das die Dimension angibt, nach der die Antworten geordnet werden sollen. Diese Dimension enthält einen **Namen** und eine Eigenschaft namens **allowTie**, die bestimmt, ob ein Auftragnehmer Antworten denselben Rang geben kann.

##### responses
<a name="crowd-text-ranking-attributes-responses"></a>

Dies ist ein erforderliches Array des Objekts `ordinal-ranking-dimensions`, das die Dimension angibt, nach der die Antworten geordnet werden sollen. Diese Dimension enthält einen **Namen** und eine Eigenschaft namens **allowTie**, die bestimmt, ob ein Auftragnehmer Antworten denselben Rang geben kann.

##### Name
<a name="crowd-text-ranking-attributes-name"></a>

Die ist ein erforderliches Zeichenfolgenfeld, das die vom Auftragnehmer eingereichte Antwort identifiziert. Es entspricht einem Schlüssel im Ausgabedatenvertrag für die Einreichung des Auftragnehmers.

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

### crowd-question-answer-generation
<a name="sms-ui-template-crowd-question-answer-generation"></a>

Dies ist ein Widget, mit dem Auftragnehmer Textabschnitte hervorheben und gemäß Ihren Anweisungen Fragen- und Antwortpaare zuweisen können.

Ein interaktives Beispiel für eine HTML-Vorlage, die dieses Crowd-HTML-Element verwendet, finden Sie unter [CodePen](https://codepen.io/sagemaker_crowd_html_elements_2/pen/zxGmobo).

```
<script src="https://assets.crowd.aws/crowd-html-elements-v2.js"></script>

<crowd-form>
  <crowd-question-answer-generation
    name="questionAnswerGeneration"
    text='The Amazon rainforest (Portuguese: Floresta Amazônica or Amazônia; Spanish: Selva Amazónica, Amazonía or usually Amazonia; French: Forêt amazonienne; Dutch: Amazoneregenwoud), also known in English as Amazonia or the Amazon Jungle, is a moist broadleaf forest that covers most of the Amazon basin of South America. This basin encompasses 7,000,000 square kilometres (2,700,000 sq mi), of which 5,500,000 square kilometres (2,100,000 sq mi) are covered by the rainforest. This region includes territory belonging to nine nations. The majority of the forest is contained within Brazil, with 60% of the rainforest, followed by Peru with 13%, Colombia with 10%, and with minor amounts in Venezuela, Ecuador, Bolivia, Guyana, Suriname and French Guiana. States or departments in four nations contain "Amazonas" in their names. The Amazon represents over half of the planet's remaining rainforests, and comprises the largest and most biodiverse tract of tropical rainforest 
    in the world, with an estimated 390 billion individual trees divided into 16,000 species. For a long time, it was thought that the 
    Amazon rainforest was only ever sparsely populated, as it was impossible to sustain a large population through agriculture given the poor soil. 
    Archeologist Betty Meggers was a prominent proponent of this idea, as described in her book Amazonia: Man and Culture in a Counterfeit Paradise. 
    She claimed that a population density of 0.2 inhabitants per square kilometre (0.52/sq mi) is the maximum that can be sustained in the rainforest 
    through hunting, with agriculture needed to host a larger population. However, recent anthropological findings have suggested that the region was 
    actually densely populated. Some 5 million people may have lived in the Amazon region in AD 1500, divided between dense coastal settlements, such as that at
    Marajó, and inland dwellers. By 1900 the population had fallen to 1 million and by the early 1980s it was less than 200,000.'
    min-questions="1"
    max-questions="10"
    question-min-words="1"
    question-max-words="100"
    answer-min-words="1"
    answer-max-words="100"
    question-tags='[
      "tag1",
      "tag2",
      "tag3"
    ]'
    allow-custom-question-tags="true"
  >
    <short-instructions>
      <p>User instructions will be displayed here.</p>
    </short-instructions>
  </crowd-question-answer-generation>
</crowd-form>
```

#### Attribute
<a name="crowd-question-answer-generation-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

##### text
<a name="crowd-question-answer-generation-attributes-text"></a>

Dies ist der Text oder S3-Verweis auf den Text, auf den bei der Rangfestlegung der Antworten verwiesen werden soll.

##### min-questions
<a name="crowd-question-answer-generation-attributes-min-questions"></a>

Diese optionale Ganzzahl gibt die Mindestanzahl an Fragen an, die ein Auftragnehmer bei der Aufgabe erstellen muss. Wenn dieser Wert nicht angegeben wird, werden Sie aufgefordert, mindestens ein Frage-Antwort-Paar zu schreiben.

##### max-questions
<a name="crowd-question-answer-generation-attributes-max-questions"></a>

Diese optionale Ganzzahl gibt die Höchstzahl an Fragen an, die ein Auftragnehmer bei der Aufgabe erstellen kann.

##### question-min-words
<a name="crowd-question-answer-generation-attributes-question-min-words"></a>

Diese optionale Ganzzahl gibt die Mindestanzahl an Wörtern an, die in einer Frage erforderlich sind. Wenn dieser Wert nicht angegeben wird, werden Sie aufgefordert, mindestens ein Wort in der Frage anzugeben.

##### question-max-words
<a name="crowd-question-answer-generation-attributes-question-max-words"></a>

Diese optionale Ganzzahl gibt die Höchstzahl an Wörtern an, die in einer Frage erlaubt sind.

##### answer-min-words
<a name="crowd-question-answer-generation-attributes-answer-min-words"></a>

Diese optionale Ganzzahl gibt die Mindestanzahl an Wörtern an, die in einer Antwort erforderlich sind. Wenn dieser Wert nicht angegeben wird, werden Sie aufgefordert, mindestens ein Wort in der Antwort zu schreiben.

##### answer-max-words
<a name="crowd-question-answer-generation-attributes-answer-max-words"></a>

Diese optionale Ganzzahl gibt die Höchstzahl an Wörtern an, die in einer Antwort erlaubt sind.

##### question-tags
<a name="crowd-question-answer-generation-attributes-question-tags"></a>

Dies ist ein erforderliches Array von Zeichenketten, das die möglichen Tags angibt, die ein Auftragnehmer einem Frage-Antwort-Paar zuweisen kann. Wenn dieses Array leer ist, ist das Feld der Frage-Tags nicht sichtbar.

##### allow-custom-question-tags
<a name="crowd-question-answer-generation-attributes-allow-custom-question-tags"></a>

Erforderliches boolesches Feld, das angibt, ob ein Auftragnehmer ein benutzerdefiniertes Fragen-Tag angeben kann.

##### Name
<a name="crowd-question-answer-generation-attributes-name"></a>

Die ist ein erforderliches Zeichenfolgenfeld, das die vom Auftragnehmer eingereichte Antwort identifiziert. Es entspricht einem Schlüssel im Ausgabedatenvertrag für die Einreichung des Auftragnehmers.

Weitere Informationen finden Sie unter den folgenden Topics.
+ [Kennzeichnung von Trainingsdaten mithilfe von Menschen mit Amazon SageMaker Ground Truth](sms.md)
+ [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md)

# Augmented AI-Crowd-HTML-Elemente
<a name="crowd-elements-a2i-list"></a>

Die folgenden Crowd-HTML-Elemente stehen nur für Aufgaben des manuellen Amazon Augmented AI-Workflows zur Verfügung.

# crowd-textract-analyze-document
<a name="a2i-crowd-textract-detection"></a>

Ein Widget, das die menschliche Überprüfung eines Amazon-Textract-Dokumentenanalyseergebnisses ermöglicht.

## Attribute
<a name="a2i-textract-crowd-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="textract-attributes-header"></a>

Dies ist der Text, der als Kopfzeile angezeigt wird.

### src
<a name="textract-attributes-src"></a>

Dies ist ein Link zu dem Bild, das vom Auftragnehmer analysiert werden soll. 

### initialValue
<a name="textract-attributes-initialValue"></a>

Dadurch werden die Anfangswerte für die Attribute in der Auftragnehmer-UI festgelegt.

Es folgt ein Beispiel für eine `initialValue`-Eingabe: 

```
[
            {
                "blockType": "KEY_VALUE_SET",
                "confidence": 38.43309020996094,
                "geometry": {
                    "boundingBox": {
                        "width": 0.32613086700439453,
                        "weight": 0.0942094624042511,
                        "left": 0.4833833575248718,
                        "top": 0.5227988958358765
                    },
                    "polygon": [
                        {"x": 0.123, "y": 0.345}, ...
                    ]
                }
                "id": "8c97b240-0969-4678-834a-646c95da9cf4",
                "relationships": [
                    {
                        "type": "CHILD",
                        "ids": [
                            "7ee7b7da-ee1b-428d-a567-55a3e3affa56",
                            "4d6da730-ba43-467c-a9a5-c6137ba0c472"
                        ]
                    },
                    {
                        "type": "VALUE",
                        "ids": [
                            "6ee7b7da-ee1b-428d-a567-55a3e3affa54"
                        ]
                    }
                ],
                "entityTypes": [
                    "KEY"
                ],
                "text": "Foo bar"
            },
]
```

### blockTypes
<a name="textract-attributes-blockTypes"></a>

Dies bestimmt die Art der Analyse, die die Auftragnehmer durchführen können. Derzeit wird nur `KEY_VALUE_SET` unterstützt. 

### keys
<a name="textract-attributes-keys"></a>

Dadurch werden neue Schlüssel und der zugehörige Textwert angegeben, den der Auftragnehmer hinzufügen kann. Die Eingabewerte für `keys` können die folgenden Elemente enthalten: 
+ `importantFormKey` akzeptiert Zeichenfolgen und wird verwendet, um einen einzelnen Schlüssel anzugeben. 
+ `importantFormKeyAliases` kann verwendet werden, um Aliase anzugeben, die akzeptable Alternativen zu den angegebenen Schlüsseln sind. Verwenden Sie dieses Element, um alternative Schreibweisen oder Präsentationen Ihrer Schlüssel zu identifizieren. Dieser Parameter akzeptiert eine Liste mit einer oder mehreren Zeichenfolgen. 

Es folgt ein Beispiel für eine Eingabe für `keys`.

```
[
      {
        importantFormKey: 'Address',
        importantFormKeyAliases: [
          'address',
          'Addr.',
          'Add.',
        ]
      },
      {
        importantFormKey: 'Last name',
        importantFormKeyAliases: ['Surname']
      }
]
```

### no-key-edit
<a name="textract-attributes-no-key-edit"></a>

Dadurch werden die Auftragnehmer am Bearbeiten der Schlüssel von Anmerkungen gehindert, die durch `initialValue` übergeben werden. Wenn Sie Auftragnehmer am Bearbeiten der Schlüssel hindern möchten, die für Ihre Dokumente erkannt wurden, sollten Sie dieses Attribut nicht einschließen. Das ist erforderlich. 

### no-geometry-edit
<a name="textract-attributes-no-geometry-edit"></a>

Dadurch werden Auftragnehmer am Bearbeiten der Polygone von Anmerkungen gehindert, die durch `initialValue` übergeben werden. Dies würde beispielsweise einen Auftragnehmer am Bearbeiten des Begrenzungsrahmens um einen bestimmten Schlüssel hindern. Das ist erforderlich. 

## Hierarchie der Elemente
<a name="textract-crowd-element-hierarchy"></a>

 Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente. 
+ Übergeordnete Elemente – crowd-form
+ Untergeordnete Elemente – [full-instructions](#textract-full-instructions), [short-instructions](#textract-short-instructions) 

## Regionen
<a name="textract-crowd-regions"></a>

Die folgenden Regionen werden von diesem Element unterstützt. Sie können benutzerdefinierten HTML- und CSS-Code innerhalb dieser Regionen verwenden, um Ihre Anweisungen an Auftragnehmer zu formatieren. Verwenden Sie den Abschnitt `short-instructions` beispielsweise, um Beispiele für gute und schlechte Vorgehensweisen beim Durchführe einer Aufgabe bereitzustellen. 

### full-instructions
<a name="textract-full-instructions"></a>

Allgemeine Anleitungen zum Arbeiten mit dem Widget. 

### short-instructions
<a name="textract-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden.

## Beispiel einer Auftragnehmervorlage mit dem crowd-Element
<a name="textract-example-crowd-elements"></a>

Ein Beispiel einer Auftragnehmervorlage, das dieses crowd-Elements verwendet, würde wie folgt aussehen.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
{% capture s3_uri %}http://s3.amazonaws.com/{{ task.input.aiServiceRequest.document.s3Object.bucket }}/{{ task.input.aiServiceRequest.document.s3Object.name }}{% endcapture %}

<crowd-form>
  <crowd-textract-analyze-document
    src="{{ s3_uri | grant_read_access }}"
    initial-value="{{ task.input.selectedAiServiceResponse.blocks }}"
    header="Review the key-value pairs listed on the right and correct them if they don't match the following document."
    no-key-edit
    no-geometry-edit
    keys="{{ task.input.humanLoopContext.importantFormKeys }}"
    block-types="['KEY_VALUE_SET']"
  >
    <short-instructions header="Instructions">
      <style>
        .instructions {
          white-space: pre-wrap;
        }
        .instructionsImage {
          display: inline-block;
          max-width: 100%;
        }
      </style>
      <p class='instructions'>Click on a key-value block to highlight the corresponding key-value pair in the document.

If it is a valid key-value pair, review the content for the value. If the content is incorrect, correct it.

The text of the value is incorrect, correct it.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/correct-value-text.png" />

A wrong value is identified, correct it.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/correct-value.png" />

If it is not a valid key-value relationship, choose No.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/not-a-key-value-pair.png" />

If you can’t find the key in the document, choose Key not found.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/key-is-not-found.png" />

If the content of a field is empty, choose Value is blank.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/value-is-blank.png" />

<b>Examples</b>
Key and value are often displayed next or below to each other.

Key and value displayed in one line.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/sample-key-value-pair-1.png" />

Key and value displayed in two lines.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/sample-key-value-pair-2.png" />

If the content of the value has multiple lines, enter all the text without line break. Include all value text even if it extends beyond the highlight box.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/multiple-lines.png" /></p>
    </short-instructions>

    <full-instructions header="Instructions"></full-instructions>
  </crowd-textract-analyze-document>
</crowd-form>
```

## Ausgabe
<a name="textract-crowd-element-output"></a>

Das folgende Beispiel zeigt eine Ausgabe dieses Elements. Eine ausführliche Erklärung dieser Ausgabe finden Sie in der Amazon Textract [AnalyzeDocument](https://docs.aws.amazon.com/textract/latest/dg/API_AnalyzeDocument.html)Textract-API-Dokumentation.

```
{
  "AWS/Textract/AnalyzeDocument/Forms/V1": {
    blocks: [
      {
        "blockType": "KEY_VALUE_SET",
        "id": "8c97b240-0969-4678-834a-646c95da9cf4",
        "relationships": [
          {
            "type": "CHILD",
            "ids": ["7ee7b7da-ee1b-428d-a567-55a3e3affa56", "4d6da730-ba43-467c-a9a5-c6137ba0c472"]
          },
          {
            "type": "VALUE",
            "ids": ["6ee7b7da-ee1b-428d-a567-55a3e3affa54"]
          }
        ],
        "entityTypes": ["KEY"],
        "text": "Foo bar baz"
      }
    ]
  }
}
```

# crowd-rekognition-detect-moderation-Beschriftungen
<a name="a2i-crowd-rekognition-detection"></a>

Ein Widget, um eine menschliche Überprüfung eines Amazon Rekognition Image-Moderationsergebnisses zu ermöglichen.

## Attribute
<a name="rekognition-attributes"></a>

Die folgenden Attribute werden von diesem Element unterstützt.

### header
<a name="rekognition-attributes-header"></a>

Dies ist der Text, der als Kopfzeile angezeigt wird.

### src
<a name="rekognition-attributes-src"></a>

Dies ist ein Link zu dem Bild, das vom Auftragnehmer analysiert werden soll. 

### categories
<a name="rekognition-attributes-categories"></a>

Dies unterstützt `categories` als Array von Zeichenfolgen **oder** ein Array von Objekten, bei dem jedes Objekt über ein `name`-Feld verfügt.

Wenn die Kategorien als Objekte eingestuft werden, gilt Folgendes:
+ Die angezeigten Kategorien sind der Wert des Feldes `name`.
+ Die zurückgegebene Antwort enthält die **vollständigen** Objekte aller ausgewählten Kategorien.

Wenn die Kategorien als Zeichenfolgen eingestuft werden, gilt Folgendes:
+ Die zurückgegebene Antwort ist ein Array aller Zeichenfolgen, die ausgewählt wurden.

### exclusion-category
<a name="rekognition-attributes-exclusion-category"></a>

Durch Festlegen dieses Attributs erstellen Sie eine Schaltfläche unterhalb der Kategorien in der Benutzeroberfläche. 
+ Wenn ein Benutzer die Schaltfläche wählt, werden alle Kategorien deaktiviert und deaktiviert.
+ Durch erneutes Auswählen der Schaltfläche werden die Kategorien wieder aktiviert, sodass Benutzer diese auswählen können.
+ Wenn Sie nach Auswahl der Schaltfläche senden, gibt es ein leeres Array zurück.

## Hierarchie der Elemente
<a name="rekognition-crowd-element-hierarchy"></a>

Dieses Element verfügt über folgende übergeordnete und untergeordnete Elemente.
+ Übergeordnete Elemente – crowd-form
+ Untergeordnete Elemente – [full-instructions](#rek-full-instructions), [short-instructions](#rek-short-instructions) 

## AWS Regionen
<a name="rek-crowd-regions"></a>

Die folgenden AWS Regionen werden von diesem Element unterstützt. Sie können benutzerdefinierten HTML- und CSS-Code innerhalb dieser Regionen verwenden, um Ihre Anweisungen an Auftragnehmer zu formatieren. Verwenden Sie den Abschnitt `short-instructions` beispielsweise, um Beispiele für gute und schlechte Vorgehensweisen beim Durchführe einer Aufgabe bereitzustellen. 

### full-instructions
<a name="rek-full-instructions"></a>

Allgemeine Anleitungen zum Arbeiten mit dem Widget. 

### short-instructions
<a name="rek-short-instructions"></a>

Wichtige aufgabenspezifische Anweisungen, die an exponierter Stelle angezeigt werden. 

## Auftragnehmer-Beispielvorlage mit dem Crowd-Element
<a name="rek-crowd-element-example"></a>

Ein Beispiel für eine Auftragnehmervorlage, die das crowd-Element verwendet, würde wie folgt aussehen.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
{% capture s3_uri %}http://s3.amazonaws.com/{{ task.input.aiServiceRequest.image.s3Object.bucket }}/{{ task.input.aiServiceRequest.image.s3Object.name }}{% endcapture %}

<crowd-form>
  <crowd-rekognition-detect-moderation-labels
    categories='[
      {% for label in task.input.selectedAiServiceResponse.moderationLabels %}
        {
          name: "{{ label.name }}",
          parentName: "{{ label.parentName }}",
        },
      {% endfor %}
    ]'
    src="{{ s3_uri | grant_read_access }}"
    header="Review the image and choose all applicable categories."
  >
    <short-instructions header="Instructions">
      <style>
        .instructions {
          white-space: pre-wrap;
        }
      </style>
      <p class='instructions'>Review the image and choose all applicable categories.
If no categories apply, choose None.

<b>Nudity</b>
Visuals depicting nude male or female person or persons

<b>Graphic Male Nudity</b>
Visuals depicting full frontal male nudity, often close ups

<b>Graphic Female Nudity</b>
Visuals depicting full frontal female nudity, often close ups

<b>Sexual Activity</b>
Visuals depicting various types of explicit sexual activities and pornography

<b>Illustrated Nudity or Sexual Activity</b>
Visuals depicting animated or drawn sexual activity, nudity or pornography

<b>Adult Toys</b>
Visuals depicting adult toys, often in a marketing context

<b>Female Swimwear or Underwear</b>
Visuals depicting female person wearing only swimwear or underwear

<b>Male Swimwear Or Underwear</b>
Visuals depicting male person wearing only swimwear or underwear

<b>Partial Nudity</b>
Visuals depicting covered up nudity, for example using hands or pose

<b>Revealing Clothes</b>
Visuals depicting revealing clothes and poses, such as deep cut dresses

<b>Graphic Violence or Gore</b>
Visuals depicting prominent blood or bloody injuries

<b>Physical Violence</b>
Visuals depicting violent physical assault, such as kicking or punching

<b>Weapon Violence</b>
Visuals depicting violence using weapons like firearms or blades, such as shooting

<b>Weapons</b>
Visuals depicting weapons like firearms and blades

<b>Self Injury</b>
Visuals depicting self-inflicted cutting on the body, typically in distinctive patterns using sharp objects

<b>Emaciated Bodies</b>
Visuals depicting extremely malnourished human bodies

<b>Corpses</b>
Visuals depicting human dead bodies

<b>Hanging</b>
Visuals depicting death by hanging</p>
    </short-instructions>

    <full-instructions header="Instructions"></full-instructions>
  </crowd-rekognition-detect-moderation-labels>
</crowd-form>
```

## Ausgabe
<a name="rek-crowd-element-output"></a>

Das folgende Beispiel zeigt eine Ausgabe dieses Elements. Einzelheiten zu dieser Ausgabe finden Sie in der Amazon Rekognition [DetectModerationLabels](https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectModerationLabels.html)API-Dokumentation. 

```
{
  "AWS/Rekognition/DetectModerationLabels/Image/V3": {
    "ModerationLabels": [
        { name: 'Gore', parentName: 'Violence' },
        { name: 'Corpses', parentName: 'Violence' },
    ]
  }
}
```

# Verwendung von Amazon Erweiterte KI für Human Review
<a name="a2i-use-augmented-ai-a2i-human-review-loops"></a>

Wenn Sie KI-Anwendungen wie Amazon Rekognition, Amazon Textract oder Ihre benutzerdefinierten Machine Learning (ML)-Modelle verwenden, können Sie mit Amazon Erweiterte KI die menschliche Überprüfung mit niedrigem Konfidenzwert oder eine zufällige Stichprobe von Vorhersagen abrufen.
<a name="what-is-amazon-augmented-ai-a2i"></a>
**Was ist Amazon Erweiterte KI?**  
Amazon Erweiterte KI (Amazon A2I) ist ein Service, der allen Entwicklern die menschliche Überprüfung von ML-Prognosen ermöglicht, indem er die aufwändige Arbeit abnimmt, die mit dem Aufbau menschlicher Überprüfungssysteme oder der Verwaltung einer großen Anzahl von menschlichen Prüfern verbunden ist. 

Bei vielen ML-Anwendungen müssen die Ergebnisse von Vorhersagen mit niedrigem Konfidenzwert von Menschen auf Richtigkeit überprüft werden. Zum Beispiel kann eine menschliche Überprüfung bei Anträgen auf Hypotheken nötig sein, wenn schlechte Scans oder eine nur schwer leserliche Handschrift das Extrahieren von Informationen erschweren. Systeme für die menschliche Prüfung aufzubauen kann jedoch sehr aufwendig und kostspielig sein, da komplexe Prozesse oder *Workflows* zu implementieren, eigene Software zur Verwaltung von Prüfungen und Ergebnissen zu entwickeln und oftmals große Gruppen an Prüfern zu verwalten sind.

Amazon A2I optimiert die Erstellung und Verwaltung menschlicher Überprüfungen für ML-Anwendungen. Amazon A2I bietet integrierte Workflows zur menschlichen Überprüfung für gängige ML-Anwendungsfälle, wie z. B. die Moderation von Inhalten und die Textextraktion aus Dokumenten. Sie können auch Ihre eigenen Workflows für ML-Modelle erstellen, die auf SageMaker KI oder anderen Tools basieren. Bei Amazon A2I können menschliche Prüfer eingreifen, wenn ein Modell keine Vorhersagen mit hohem Konfidenzwert machen kann oder die Vorhersagen kontinuierlich überprüft werden sollen. 
<a name="a2i-use-cases-intro"></a>
**Beispiele für Amazon-A2I-Anwendungsfälle**  
Die folgenden Beispiele zeigen, wie Sie Amazon A2I verwenden können, um eine Human-Loop-Überprüfung in Ihre ML-Anwendung zu integrieren. Für jedes dieser Beispiele finden Sie ein Jupyter Notebook, das diesen Workflow in [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md)demonstriert. 
+ **Amazon A2I mit Amazon Textract verwenden** – Lassen Sie Menschen wichtige Schlüssel-Wert-Paare in einseitigen Dokumenten überprüfen, oder lassen Sie Amazon Textract nach dem Zufallsprinzip Dokumente aus Ihrem Datensatz auswählen und zur Überprüfung an Menschen senden. 
+ **Amazon A2I mit Amazon Rekognition verwenden** – Lassen Sie Menschen unsichere Bilder auf explizite Inhalte für Erwachsene oder gewalttätige Inhalte überprüfen, wenn Amazon Rekognition einen niedrigen Vertrauenswert zurückgibt, oder lassen Sie Amazon Rekognition nach dem Zufallsprinzip Bilder aus Ihrem Datensatz auswählen und zur menschlichen Überprüfung senden.
+ **Verwenden Sie Amazon A2I, um ML-Inferenzen in Echtzeit zu überprüfen** — Verwenden Sie Amazon A2I, um Schlussfolgerungen mit geringer Zuverlässigkeit in Echtzeit zu überprüfen, die von einem auf SageMaker KI gehosteten Endpunkt bereitgestellt wurden, und trainieren Sie Ihr Modell inkrementell mit Amazon A2I-Ausgabedaten.
+ **Amazon A2I mit Amazon Comprehend verwenden** – Lassen Sie Menschen Amazon Comprehend-Schlussfolgerungen zu Textdaten wie Stimmungsanalyse, Textsyntax und Entitätserkennung überprüfen.
+ **Amazon A2I mit Amazon Transcribe verwenden** – Lassen Sie Menschen Amazon Transcribe-Transkriptionen von Video- oder Audiodateien überprüfen. Verwenden Sie die Ergebnisse von Human-Loop-Transkriptionsüberprüfungen durch Menschen, um ein benutzerdefiniertes Vokabular zu erstellen und zukünftige Transkriptionen ähnlicher Video- oder Audioinhalte zu verbessern.
+ **Amazon A2I mit Amazon Translate verwenden** – Lassen Sie Menschen Übersetzungen überprüfen, die von Amazon Translate zurückgesendet wurden, mit geringer Zuverlässigkeit.
+ **Amazon A2I verwenden, um tabellarische Daten zu prüfen** – Verwenden Sie Amazon A2I, um eine Human-Loop-Überprüfung in eine ML-Anwendung zu integrieren, die Tabellendaten verwendet.

![\[Amazon Erweiterte KI – So funktioniert's\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/amazon-augmented-ai-how-it-works.png)


**Topics**
+ [Erste Schritte mit Amazon Augmented AI](a2i-getting-started.md)
+ [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md)
+ [Erstellen eines Arbeitsablaufs für die menschliche Überprüfung](a2i-create-flow-definition.md)
+ [Workflow für die menschliche Überprüfung löschen](a2i-delete-flow-definition.md)
+ [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md)
+ [Eine Human Loop löschen](a2i-delete-human-loop.md)
+ [Worker-Aufgabenvorlagen erstellen und verwalten](a2i-instructions-overview.md)
+ [Überwachen und verwalten Ihrer menschlichen Schleife](a2i-monitor-humanloop-results.md)
+ [Amazon A2I Ausgabedaten](a2i-output-data.md)
+ [Berechtigungen und Sicherheit in Amazon Augmented AI](a2i-permissions-security.md)
+ [Verwendung Amazon CloudWatch Events in Amazon Augmented AI](a2i-cloudwatch-events.md)
+ [Verwendung von APIs in Amazon Augmented AI](a2i-api-references.md)

# Erste Schritte mit Amazon Augmented AI
<a name="a2i-getting-started"></a>

Um mit der Verwendung von Amazon Augmented AI zu beginnen, lesen Sie sich das [Kernkomponenten von Amazon A2I](a2i-getting-started-core-components.md) und [Voraussetzungen für den Einsatz von Augmented AI](a2i-getting-started-prerequisites.md) durch. Verwenden Sie dann die folgende Dokumentation, um zu erfahren, wie Sie die Amazon-A2I-Konsole und die API verwenden. 
+ [Tutorial: Erste Schritte in der Amazon-A2I-Konsole](a2i-get-started-console.md)
+ [Tutorial: Erste Schritte in der Amazon-A2I-API](a2i-get-started-api.md)

Sie können auch mit der Verwendung der Amazon-A2I-API beginnen, indem Sie einem Jupyter-Notebook-Tutorial folgen. Eine Liste von Notebooks und Anwendungsfällen finden Sie unter [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md). 

# Kernkomponenten von Amazon A2I
<a name="a2i-getting-started-core-components"></a>

Lesen Sie die folgenden Bedingungen, um sich mit den Kernkomponenten von Amazon A2I vertraut zu machen. 

## Aufgabentypen
<a name="a2i-task-type-get-started"></a>

Der AI/ML Workflow, in den Sie Amazon A2I integrieren, definiert einen Amazon *A2I-Aufgabentyp*. 

Amazon A2I unterstützt:
+ Zwei *integrierte Aufgabentypen*: [Amazon Textract Schlüssel-Wert-Paar-Extraktion](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-textract-task-type.html) und [Amazon Rekognition Image-Moderation](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-rekognition-task-type.html).
+ *Ein [benutzerdefinierter Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-task-types-custom.html): Verwenden Sie einen benutzerdefinierten Aufgabentyp, um eine Schleife für die Überprüfung durch einen Menschen in jeden* Machine-Learning-Workflow zu integrieren. Sie können einen benutzerdefinierten Aufgabentyp verwenden, um Amazon A2I mit anderen AWS Diensten wie Amazon Comprehend, Amazon Transcribe und Amazon Translate sowie mit Ihren eigenen benutzerdefinierten Workflows für maschinelles Lernen zu integrieren. Weitere Informationen hierzu finden Sie unter [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md).

Wählen Sie in der folgenden Tabelle eine Registerkarte aus, um Diagramme zu sehen, die veranschaulichen, wie Amazon A2I mit den einzelnen Aufgabentypen funktioniert. Wählen Sie mithilfe der Links in der vorherigen Liste die Seite mit dem Aufgabentyp aus, um mehr über diesen Aufgabentyp zu erfahren.

------
#### [ Amazon Textract – Key-value pair extraction ]

Dieses Bild zeigt den integrierten Amazon-A2I-Workflow mit Amazon Textract. Auf der linken Seite sind die Ressourcen dargestellt, die für die Erstellung eines Amazon-Textract-Workflows zur Überprüfung durch einen Menschen erforderlich sind: ein Amazon-S3-Bucket, Aktivierungsbedingungen, eine Worker-Task-Vorlage und ein Arbeitsteam. Diese Ressourcen werden verwendet, um einen Workflow oder eine Flow-Definition für die Überprüfung durch einen Menschen zu erstellen. Ein Pfeil zeigt nach rechts auf den nächsten Schritt im Workflow: die Verwendung von Amazon Textract zur Konfiguration einer menschlichen Schleife mit dem Workflow zur Überprüfung durch einen Menschen. Ein zweiter Pfeil zeigt von diesem Schritt nach rechts zu dem Schritt, in dem die Aktivierungsbedingungen erfüllt sind, die im Workflow zur Überprüfung durch einen Menschen festgelegt sind. Dadurch wird die Entstehung einer Human Loop eingeleitet. Auf der rechten Seite des Bildes wird die Human Loop in drei Schritten dargestellt: 1) Die Worker-Benutzeroberfläche und die Tools werden generiert und die Aufgabe wird den Mitarbeitern zur Verfügung gestellt, 2) die Mitarbeiter überprüfen die Eingabedaten und schließlich 3) werden die Ergebnisse in Amazon S3 gespeichert.

![\[Integrierter Amazon-A2I-Workflow mit Amazon Textract\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/diagrams/product-page-diagram_A21-Components_Textract@2x.png)


------
#### [ Amazon Rekognition – Image moderation ]

Dieses Bild zeigt den integrierten Amazon-A2I-Workflow mit Amazon Rekognition. Auf der linken Seite sind die Ressourcen dargestellt, die für die Erstellung eines Amazon-Rekognition-Workflows zur Überprüfung durch einen Menschen erforderlich sind: ein Amazon-S3-Bucket, Aktivierungsbedingungen, eine Worker-Task-Vorlage und ein Arbeitsteam. Diese Ressourcen werden verwendet, um einen Workflow oder eine Flow-Definition für die Überprüfung durch einen Menschen zu erstellen. Ein Pfeil zeigt nach rechts auf den nächsten Schritt im Workflow: die Verwendung von Amazon Rekognition, um einen Human Loop mit dem menschlichen Überprüfungs-Workflow zu konfigurieren. Ein zweiter Pfeil zeigt von diesem Schritt nach rechts zu dem Schritt, in dem die Aktivierungsbedingungen erfüllt sind, die im Workflow zur menschlichen Überprüfung festgelegt wurden. Dadurch wird die Entstehung einer Human Loop eingeleitet. Auf der rechten Seite des Bildes wird die Human Loop in drei Schritten dargestellt: 1) Die Worker-Benutzeroberfläche und die Tools werden generiert und die Aufgabe wird den Mitarbeitern zur Verfügung gestellt, 2) die Mitarbeiter überprüfen die Eingabedaten und schließlich 3) werden die Ergebnisse in Amazon S3 gespeichert.

![\[Integrierter Amazon-A2I-Workflow mit Amazon Rekognition\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/diagrams/product-page-diagram_A2I-Components_Rekognition@2x.png)


------
#### [ Custom Task Type ]

Das folgende Bild zeigt den benutzerdefinierten Amazon-A2I-Workflow. Ein benutzerdefiniertes ML-Modell wird verwendet, um Vorhersagen zu generieren. Die Client-Anwendung filtert diese Vorhersagen anhand benutzerdefinierter Kriterien und bestimmt, ob eine menschliche Überprüfung erforderlich ist. Wenn ja, werden diese Vorhersagen zur Überprüfung durch einen Menschen an Amazon A2I gesendet. Amazon A2I sammelt die Ergebnisse der Überprüfung durch einen Menschen in Amazon S3, auf die die Client-Anwendung zugreifen kann. Wenn der Filter feststellt, dass keine menschliche Überprüfung erforderlich ist, können Prognosen direkt an die Client-Anwendung übermittelt werden. 

![\[Benutzerdefinierter Amazon-A2I-Workflow\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/diagrams/product-page-diagram_A2I-Components_Custom@2x.png)


------

## Workflow zur Überprüfung durch einen Mitarbeiter (Ablaufdefinition)
<a name="a2i-getting-started-human-review-workflow"></a>

Sie verwenden einen Workflow zur Überprüfung durch einen Menschen, um Ihr menschliches *Arbeitsteam* zu spezifizieren, Ihre Worker-Benutzeroberfläche mithilfe einer *Worker-Task-Vorlage* einzurichten und Informationen darüber bereitzustellen, wie Mitarbeiter die Prüfungsaufgabe erledigen sollen. 

Bei integrierten Aufgabentypen verwenden Sie auch den Workflow zur Überprüfung durch einen Menschen, um die Bedingungen zu ermitteln, unter denen eine Human Loop initiiert wird. Amazon Rekognition kann beispielsweise eine Bildinhaltsmoderation mithilfe von Machine Learning durchführen. Sie können den Workflow zur Überprüfung durch einen Menschen verwenden, um anzugeben, dass ein Bild zur Überprüfung der Inhaltsmoderation an einen Menschen gesendet wird, wenn die Konfidenz von Amazon Rekognition zu niedrig ist.

Sie können einen Workflow zur Überprüfung durch einen Menschen verwenden, um mehrere Human Loops zu erstellen.

Sie können eine Flow-Definition in der SageMaker AI-Konsole oder mit der API erstellen. SageMaker Weitere Informationen zu diesen beiden Optionen finden Sie unter [Erstellen eines Arbeitsablaufs für die menschliche Überprüfung](a2i-create-flow-definition.md).

**Arbeitsteam**  
Ein *Arbeitsteam* ist eine Gruppe menschlicher Mitarbeiter, an die Sie Ihre Aufgaben für die Prüfung durch Menschen senden.

Wenn Sie einen Workflow zur Überprüfung durch einen Menschen erstellen, geben Sie ein einzelnes Arbeitsteam an. 

Ihr Arbeitsteam kann aus der [Belegschaft von Amazon Mechanical Turk](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-public.html), einer [vom Anbieter verwalteten Belegschaft](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management-vendor.html) oder Ihrer eigenen [privaten Belegschaft](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private.html) stammen. Wenn Sie private Arbeitskräfte einsetzen, können Sie mehrere Arbeitsteams zusammenstellen. Jedes Arbeitsteam kann in mehreren Workflows zur Überprüfung durch einen Menschen eingesetzt werden. Informationen zum Erstellen einer Belegschaft und eines Arbeitsteams finden Sie unter [Arbeitskräfte](sms-workforce-management.md).

**Worker-Task-Vorlage und Benutzeroberfläche für menschliche Aufgaben**  
Sie verwenden eine *Worker-Task-Vorlage*, um eine Worker-Benutzeroberfläche (eine *Benutzeroberfläche für menschliche Aufgaben*) für Ihre Aufgaben zur Überprüfung durch einen Menschen zu erstellen.

In der Benutzeroberfläche für menschliche Aufgaben werden Ihre Eingabedaten, z. B. Dokumente oder Bilder sowie Anweisungen für Mitarbeiter angezeigt. Sie bietet auch interaktive Tools, die die Auftragnehmer zur Ausführung Ihrer Aufgaben verwenden. 

Für integrierte Aufgabentypen müssen Sie die Amazon-A2I-Worker-Task-Vorlage verwenden, die für diesen Aufgabentyp bereitgestellt wird.

## Human Loops
<a name="a2i-getting-started-human-loop"></a>

Eine *Human Loop* wird verwendet, um einen einzelnen Auftrag für die Überprüfung durch einen Menschen zu erstellen. Für jeden Auftrag für die Überprüfung durch einen Menschen können Sie die Anzahl der Mitarbeiter wählen, denen eine *Aufgabe* zur Prüfung eines einzelnen Datenobjekts zugewiesen wird. Wenn Sie beispielsweise für einen Auftrag zur Bildklassifizierung die Anzahl der Mitarbeiter pro Objekt auf `3` festlegen, klassifizieren drei Mitarbeiter jedes Eingabebild. Eine Erhöhung der Anzahl von Mitarbeitern pro Objekt kann die Kennzeichnungsgenauigkeit verbessern.

Eine Human Loop wird mithilfe eines Workflows zur Überprüfung durch einen Menschen wie folgt erstellt:
+ Bei integrierten Aufgabentypen bestimmen die im Workflow zur Überprüfung durch einen Menschen angegebenen Bedingungen, wann die Human Loop erstellt wird.
+ Aufgaben zur Überprüfung durch einen Menschen werden an das Arbeitsteam gesendet, das im Workflow zur Überprüfung durch einen Menschen angegeben ist. 
+ Die im Workflow zur Überprüfung durch einen Menschen angegebene Worker-Task-Vorlage wird verwendet, um die Benutzeroberfläche für menschliche Aufgaben zu rendern. 

**Wann werden Human Loops erstellt?**

Wenn Sie einen der *integrierten Aufgabentypen* verwenden, erstellt und startet der entsprechende AWS Service in Ihrem Namen eine menschliche Schleife, wenn die in Ihrem Workflow für die Überprüfung durch Menschen festgelegten Bedingungen erfüllt sind. Zum Beispiel:
+ Wenn Sie Augmented AI mit Amazon Textract verwenden, können Sie Amazon A2I mithilfe der API-Operation `AnalyzeDocument` in eine Aufgabe zur Dokumentenüberprüfung integrieren. Jedes Mal, wenn Amazon Textract Rückschlüsse auf Schlüssel-Wert-Paare zurückgibt, die die Bedingungen erfüllen, die Sie in Ihrem Workflow zur Überprüfung durch einen Menschen angeben, wird eine Human Loop erstellt. 
+ Wenn Sie Augmented AI mit Amazon Rekognition verwenden, können Sie Amazon A2I mithilfe der API-Operation `DetectModerationLabels` in eine Aufgabe zur Bildmoderation integrieren. Jedes Mal, wenn Amazon Rekognition Rückschlüsse auf den Bildinhalt zurückgibt, der die Bedingungen erfüllt, die Sie in Ihrem Workflow zur Überprüfung durch einen Menschen angeben, wird eine Human Loop erstellt.

Wenn Sie einen *benutzerdefinierten Aufgabentyp* verwenden, starten Sie eine Human Loop über die [Amazon Augmented AI Runtime API](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/Welcome.html). Wenn Sie `StartHumanLoop`in Ihrer benutzerdefinierten Anwendung aufrufen, wird eine Aufgabe an menschliche Prüfer gesendet. 

Informationen zum Erstellen und Starten einer Schleife für die Prüfung durch Menschen finden Sie unter [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md).

Um diese Ressourcen zu generieren und einen menschlichen Überprüfungs-Workflow zu erstellen, integriert Amazon A2I mehrere APIs, darunter das Amazon Augmented AI Runtime Model, das und SageMaker APIs, das mit Ihrem Aufgabentyp APIs verknüpft ist. Weitere Informationen hierzu finden Sie unter [Verwendung von APIs in Amazon Augmented AI](a2i-api-references.md).

**Anmerkung**  
AWS Die regionale Verfügbarkeit kann unterschiedlich sein, wenn Sie Augmented AI mit anderen AWS Diensten wie Amazon Textract verwenden. Erstellen Sie Augmented AI-Ressourcen in derselben AWS Region, die Sie für die Interaktion mit diesen AWS Diensten verwenden. Informationen zur AWS regionalen Verfügbarkeit für alle Dienste finden Sie [in der Regionstabelle](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/).

# Voraussetzungen für den Einsatz von Augmented AI
<a name="a2i-getting-started-prerequisites"></a>

Amazon A2I verwendet Ressourcen in IAM, SageMaker KI und Amazon S3, um Ihre Workflows zur Überprüfung durch Mitarbeiter zu erstellen und auszuführen. Sie können einige dieser Ressourcen in der Amazon-A2I-Konsole erstellen, wenn Sie einen Workflow zur Überprüfung durch einen Menschen erstellen. Um zu erfahren wie dies geht, vgl. [Tutorial: Erste Schritte in der Amazon-A2I-Konsole](a2i-get-started-console.md).

Um Amazon A2I verwenden zu können, benötigen Sie folgende Ressourcen:
+ Ein oder mehrere Amazon S3 S3-Buckets in derselben AWS Region wie der Workflow für Ihre Eingabe- und Ausgabedaten. Um einen Bucket zu erstellen, befolgen Sie die Anweisungen unter [Erstellen eines Buckets](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html) im *Amazon Simple Storage Service Console Benutzerhandbuch*. 
+ Eine IAM-Rolle mit den erforderlichen Berechtigungen zum Erstellen eines Workflows für die Prüfung durch Menschen und einen IAM-Benutzer oder eine Rolle mit der Berechtigung zum Zugriff auf Augmented AI. Weitere Informationen finden Sie unter [Berechtigungen und Sicherheit in Amazon Augmented AI](a2i-permissions-security.md).
+ Öffentliche Arbeitskräfte, private Arbeitskräfte oder Arbeitskräfte von Anbietern für die Workflows zur Überprüfung durch einen Menschen auszuwählen. Wenn Sie planen, private Mitarbeiter einzusetzen, müssen Sie im Voraus eine solche in derselben AWS Region einrichten, in der sich Ihr Amazon A2I-Workflow befindet. Weitere Informationen zu diesen Arbeitskräftetypen finden Sie unter [Arbeitskräfte](sms-workforce-management.md).
**Wichtig**  
Informationen zu den Compliance-Programmen, die für Amazon Augmented AI derzeit gelten, finden Sie unter [AWS -Services im Geltungsbereich nach Compliance-Programm](https://aws.amazon.com/compliance/services-in-scope/). Wenn Sie Amazon Augmented AI in Verbindung mit anderen AWS Diensten (wie Amazon Rekognition und Amazon Textract) verwenden, beachten Sie, dass Amazon Augmented AI möglicherweise nicht für dieselben Compliance-Programme wie diese anderen Services gilt. Sie sind dafür verantwortlich, wie Sie Amazon Augmented AI verwenden, einschließlich des Verständnisses, wie der Service Kundendaten verarbeitet oder speichert und welche Auswirkungen dies auf die Compliance Ihrer Datenumgebung hat. Sie sollten Ihre Workload-Ziele mit Ihrem AWS Account-Team besprechen. Dieses kann Ihnen dabei helfen, zu beurteilen, ob der Service für Ihren vorgeschlagenen Anwendungsfall und Ihre vorgeschlagene Architektur geeignet ist.

# Tutorial: Erste Schritte in der Amazon-A2I-Konsole
<a name="a2i-get-started-console"></a>

Das folgende Tutorial zeigt Ihnen, wie Sie mit der Verwendung von Amazon A2I in der Amazon-A2I-Konsole beginnen:

Das Tutorial bietet Ihnen die Möglichkeit, Augmented AI mit Amazon Textract für die Überprüfung von Dokumenten oder Amazon Rekognition für die Überprüfung von Bildinhalten zu verwenden.

## Voraussetzungen
<a name="a2i-getting-started-console-prerequisites"></a>

Stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind, um mit der Verwendung von Amazon A2I zu beginnen. 
+ Erstellen Sie einen Amazon S3 S3-Bucket in derselben AWS Region wie der Workflow für Ihre Eingabe- und Ausgabedaten. Wenn Sie beispielsweise Amazon A2I mit Amazon Textract in us-east-1 verwenden, erstellen Sie Ihren Bucket in us-east-1. Um einen Bucket zu erstellen, befolgen Sie die Anweisungen unter [Erstellen eines Buckets](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html) im *Amazon Simple Storage Service Console Benutzerhandbuch*. 
+ Führen Sie eine der folgenden Aktionen aus:
  + Wenn Sie das Tutorial mit Amazon Textract abschließen möchten, laden Sie das folgende Bild herunter und platzieren Sie es in Ihrem Amazon-S3-Bucket.  
![\[Kurze Bewerbung\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/getting-started/sample-document-final.png)
  + Wenn Sie das Tutorial mit Amazon Rekognition abschließen möchten, laden Sie das folgende Bild herunter und platzieren Sie es in Ihrem Amazon-S3-Bucket.  
![\[Frau im Bikini macht Yoga am Strand\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/getting-started/yoga_swimwear_resized.jpg)

**Anmerkung**  
Die Amazon A2I-Konsole ist in die SageMaker AI-Konsole eingebettet. 

## Schritt 1: Erstellen eines Arbeitsteams
<a name="a2i-get-started-console-step-1"></a>

Erstellen Sie zunächst ein Arbeitsteam in der Amazon-A2I-Konsole und fügen Sie sich selbst als Mitarbeiter hinzu, sodass Sie eine Vorschau der Aufgabe zur Überprüfung durch einen Mitarbeiter anzeigen können.

**Wichtig**  
In diesem Tutorial wird ein privates Arbeitsteam verwendet. Die private Belegschaft von Amazon A2I wird im Ground Truth-Bereich der SageMaker KI-Konsole konfiguriert und von Amazon A2I und Ground Truth gemeinsam genutzt. 

**So erstellen Sie private Arbeitskräfte mit Auftragnehmer-E-Mails**

1. Öffnen Sie die SageMaker AI-Konsole unter. [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/) 

1. Wählen Sie im Navigationsbereich die Option **Arbeitskräfte für das Labeling** unter **Ground Truth** aus.

1. Wählen Sie **Private (Privat)** und anschließend **Create private team (Privatteam erstellen)** aus.

1. Wählen Sie **Invite new workers by email (Neue Auftragnehmer per E-Mail einladen)**.

1. Geben Sie für dieses Tutorial Ihre E-Mail-Adresse und alle anderen ein, damit Sie eine Vorschau der Benutzeroberfläche für menschliche Aufgaben sehen können. Sie können eine Liste von bis zu 50 E-Mail-Adressen, getrennt durch Kommas, in das Feld für E-Mail-Adressen einfügen oder die Adressen eingeben.

1. Geben Sie einen Organisationsnamen und eine E-Mail-Kontaktadresse ein.

1. Wählen Sie optional ein Amazon SNS-Thema aus, das für das Team abonniert werden soll, damit die Auftragnehmer per E-Mail benachrichtigt werden, wenn neue Ground-Truth Labeling-Aufträge verfügbar werden. Amazon SNS-Benachrichtigungen werden von Ground Truth unterstützt und nicht von Augmented AI. Wenn Sie Amazon SNS-Benachrichtigungen für Auftragnehmer abonnieren, erhalten diese nur Benachrichtigungen über Ground-Truth-Labeling-Aufträge. Sie erhalten keine Benachrichtigungen über Augmented AI-Aufgaben. 

1.  Wählen Sie **Create private team (Privatteam erstellen)**. 

Wenn Sie sich einem privaten Arbeitsteam hinzufügen, erhalten Sie eine E-Mail von `no-reply@verificationemail.com` mit Anmeldeinformationen. Verwenden Sie den Link in dieser E-Mail, um Ihr Passwort zurückzusetzen und sich bei Ihrem Worker-Portal anzumelden. Hier werden Ihre Aufgaben zur Überprüfung durch Menschen angezeigt, wenn Sie eine Human Loop erstellen.

## Schritt 2: Erstellen eines Workflows für die Prüfung durch Menschen
<a name="a2i-get-started-console-step-2"></a>

In diesem Schritt erstellen Sie einen Workflow zur Überprüfung durch einen Menschen. Jeder Workflow zur Überprüfung durch einen Menschen wird für einen bestimmten [Aufgabentyp](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-task-types-general.html) erstellt. In diesem Tutorial können Sie zwischen den integrierten Aufgabentypen wählen: Amazon Rekognition und Amazon Textract. 

**So erstellen Sie einen Workflow zur Überprüfung durch einen Menschen:**

1. Öffnen Sie die Augmented AI-Konsole unter [https://console.aws.amazon.com/a2i](https://console.aws.amazon.com/a2i/), um auf die Seite **Human Review Workflows** zuzugreifen. 

1. Wählen Sie **Workflow zur Überprüfung durch einen Menschen erstellen** aus.

1. Geben Sie in den **Workflow-Einstellungen** einen **Workflow-Namen**, einen **S3-Bucket** und die **IAM-Rolle** ein, die Sie für dieses Tutorial erstellt haben, mit der angehängten AWS verwalteten Richtlinie. `AmazonAugmentedAIIntegratedAPIAccess`

1. Wählen Sie als **Aufgabentyp** **Textract – Extraktion von Schlüssel-Wert-Paaren** oder **Rekognition – Bildmoderation** aus.

1. Wählen Sie den Aufgabentyp aus, den Sie aus der folgenden Tabelle ausgewählt haben, um Anweisungen für diesen Aufgabentyp zu erhalten. 

------
#### [ Amazon Textract – Key-value pair extraction ]

   1. Wählen Sie **Eine Prüfung durch Menschen für bestimmte Formularschlüssel basierend auf dem Konfidenzwert des Formulars auslösen oder wenn bestimmte Formularschlüssel fehlen** aus. 

   2. Geben Sie für **Schlüsselname** `Mail Address` ein. 

   3. Legen Sie den Schwellenwert für die Erkennungssicherheit zwischen `0` und `99` fest. 

   4. Legen Sie den Schwellenwert für die Qualifizierungskonfidenz zwischen `0` und `99` fest.

   5. Wählen Sie **Eine Prüfung durch Menschen für alle von Amazon Textract identifizierten Formularschlüssel mit Konfidenzwerten in einem bestimmten Bereich auslösen** aus.

   6. Legen Sie den Schwellenwert für die Erkennungssicherheit zwischen `0` und `90` fest. 

   7. Legen Sie den Schwellenwert für die Qualifizierungskonfidenz zwischen `0` und `90` fest.

   Dadurch wird eine menschliche Überprüfung eingeleitet, wenn Amazon Textract einen Konfidenzwert zurückgibt, der niedriger ist als `99` für `Mail Address` und seinen Schlüssel, oder wenn ein Konfidenzwert zurückgegeben wird, der niedriger ist als `90` für jedes Schlüssel-Wert-Paar, das im Dokument erkannt wurde.

   Die folgende Abbildung zeigt den Abschnitt Amazon-Textract-Formularextraktion – Bedingungen für das Aufrufen der menschlichen Überprüfung in der Amazon-A2I-Konsole. In der Abbildung sind die Kontrollkästchen für die beiden im vorherigen Absatz erläuterten Triggertypen aktiviert. Und `Mail Address` wird als **Schlüsselname** für den ersten Auslöser verwendet. Der Schwellenwert für die Erkennungssicherheit wird anhand von Konfidenzwerten für die Erkennung von Schlüssel-Wert-Paaren innerhalb des Formulars definiert und liegt zwischen 0 und 99. Der Schwellenwert für die Qualifizierungskonfidenz wird anhand von Konfidenzwerten für die Erkennung von Text innerhalb der Schlüssel und Werte in einem Formular definiert und liegt zwischen 0 und 99. 

![\[Amazon-A2I-Konsole mit den Bedingungen, um den Abschnitt zur menschlichen Überprüfung aufzurufen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/getting-started/Textract-conditions.png)


------
#### [ Amazon Rekognition – Image moderation ]

   1. Wählen Sie **Eine Prüfung durch Menschen für durch Amazon Rekognition identifizierte Bezeichnungen basierend auf dem Konfidenzwert der Bezeichnung auslösen** aus.

   2. Legen Sie den **Schwellenwert** zwischen `0` und `98` fest. 

   Dadurch wird eine menschliche Überprüfung eingeleitet, wenn Amazon Rekognition einen Konfidenzwert zurückgibt, der niedriger ist als `98` bei einem Image-Moderationsauftrag. 

   Die folgende Abbildung zeigt, wie Sie die Option **Eine Prüfung durch Menschen für durch Amazon Rekognition identifizierte Bezeichnungen basierend auf dem Konfidenzwert der Bezeichnung auslösen** und in der Amazon-A2I-Konsole einen **Schwellenwert** zwischen 0 und 98 eingeben können.

![\[Amazon-A2I-Konsole mit den Bedingungen, um den Abschnitt zur menschlichen Überprüfung aufzurufen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/getting-started/Rek-conditions.png)


------

1. Wählen Sie unter **Erstellung von Worker-Task-Vorlage** die Option **Aus einer Standardvorlage erstellen aus**.

1. Geben Sie einen **Namen für die Vorlage** ein.

1. Geben Sie im Feld **Aufgabenbeschreibung** den folgenden Text ein:

   `Read the instructions carefully and complete the task.`

1. Wählen Sie unter **Mitarbeiter** die Option **Privat** aus.

1. Wählen Sie das private Team aus, das Sie erstellt haben.

1. Wählen Sie **Erstellen** aus.

Sobald Ihr Workflow zur Überprüfung durch einen Menschen erstellt wurde, wird er in der Tabelle auf der Seite **Workflows zur Überprüfung durch einen Menschen** angezeigt. Wenn der **Status** `Active` lautet, kopieren und speichern Sie den Workflow-ARN. Sie benötigen sie für den nächsten Schritt. 

## Schritt 3: Starten einer menschlichen Schleife
<a name="a2i-get-started-console-step-3"></a>

Sie müssen eine API-Operation verwenden, um eine Human Loop zu starten. Es gibt eine Vielzahl von sprachspezifischen Funktionen, mit SDKs denen Sie mit diesen API-Vorgängen interagieren können. Die Dokumentation zu den einzelnen Optionen finden Sie im Abschnitt „**Siehe auch**“ in der API-Dokumentation, wie in der folgenden Abbildung dargestellt. SDKs

![\[Screenshot des Abschnitts „Siehe auch“ der Dokumentation zur Amazon Textract API\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/getting-started/see-also.png)


Für dieses Tutorial verwenden Sie eine der folgenden Optionen APIs:
+ Wenn Sie den Amazon-Textract-Aufgabentyp ausgewählt haben, verwenden Sie die `[AnalyzeDocument](https://docs.aws.amazon.com/textract/latest/dg/API_AnalyzeDocument.html)`-Operation.
+ Wenn Sie den Amazon-Rekognition-Aufgabentyp ausgewählt haben, verwenden Sie die `[DetectModerationLabels](https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectModerationLabels.html)`-Operation.

Sie können mit ihnen interagieren, APIs indem Sie eine SageMaker Notebook-Instanz (empfohlen für neue Benutzer) oder die AWS Command Line Interface (AWS CLI) verwenden. In den folgenden Abschnitten erfahren Sie mehr über diese Optionen.
+ Weitere Informationen über eine Notebook-Instance und deren Einrichtung finden Sie unter [SageMaker Amazon-Notebook-Instanzen](nbi.md).
+ Weitere Informationen zu und erste Schritte mit der AWS CLI Verwendung von finden Sie unter [Was ist die AWS Befehlszeilenschnittstelle?](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) im *AWS Command Line Interface Benutzerhandbuch*.

Wählen Sie in der folgenden Tabelle Ihren Aufgabentyp aus, um Beispielanfragen für Amazon Textract und Amazon Rekognition mit dem AWS SDK für Python (Boto3) zu sehen. 

------
#### [ Amazon Textract – Key-value pair extraction ]

Im folgenden Beispiel wird der AWS SDK für Python (Boto3) to-Aufruf `analyze_document` in us-west-2 verwendet. Ersetzen Sie den kursiv geschriebenen roten Text durch Ihre Ressourcen. Geben Sie den [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html) Parameter an, wenn Sie die Belegschaft von Amazon Mechanical Turk verwenden. Weitere Informationen finden Sie in der Dokumentation `[analyze\$1document](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/textract.html#Textract.Client.analyze_document)` unter *AWS SDK für Python (Boto) API-Referenz*.

```
   response = client.analyze_document(
         Document={
                "S3Object": {
                    "Bucket": "amzn-s3-demo-bucket", 
                    "Name": "document-name.pdf"
                }
         },
         HumanLoopConfig={
            "FlowDefinitionArn":"arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
            "HumanLoopName":"human-loop-name",
            "DataAttributes" : {
                "ContentClassifiers":["FreeOfPersonallyIdentifiableInformation","FreeOfAdultContent"]
            }
         },
         FeatureTypes=["TABLES", "FORMS"])
```

------
#### [ Amazon Rekognition – Image moderation ]

Im folgenden Beispiel wird der AWS SDK für Python (Boto3) to-Aufruf `detect_moderation_labels` in us-west-2 verwendet. Ersetzen Sie den kursiv geschriebenen roten Text durch Ihre Ressourcen. Geben Sie den [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html)-Parameter an, wenn Sie die Belegschaft von Amazon Mechanical Turk verwenden. Weitere Informationen finden Sie in der Dokumentation `[detect\$1moderation\$1labels](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rekognition.html#Rekognition.Client.detect_moderation_labels)` unter *AWS SDK für Python (Boto) API-Referenz*.

```
   response = client.detect_moderation_labels(
            Image={
                "S3Object":{
                    "Bucket": "amzn-s3-demo-bucket", 
                    "Name": "image-name.png"
                }
            },
            HumanLoopConfig={
               "FlowDefinitionArn":"arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
               "HumanLoopName":"human-loop-name",
               "DataAttributes":{
                    ContentClassifiers:["FreeOfPersonallyIdentifiableInformation"|"FreeOfAdultContent"]
                }
             })
```

------

## Schritt 4: Anzeigen des Human-Loop-Status in der Konsole
<a name="a2i-get-started-console-step-4"></a>

Wenn Sie eine Human Loop starten, können Sie ihren Status in der Amazon-A2I-Konsole einsehen. 

**So zeigen Sie Ihren Human-Loop-Status an**

1. Öffnen Sie die Augmented AI-Konsole unter [https://console.aws.amazon.com/a2i](https://console.aws.amazon.com/a2i/), um auf die Seite **Human Review Workflows** zuzugreifen. 

1. Wählen Sie den Workflow zur Überprüfung durch einen Menschen aus, mit dem Sie Ihre Human Loop gestartet haben.

1. Im Bereich **Human Loops** können Sie Ihre Human Loop sehen. Sehen Sie sich seinen Status in der Spalte **Status** an.

## Schritt 5: Herunterladen von Ausgabedaten
<a name="a2i-get-started-console-step-5"></a>

Ihre Ausgabedaten werden in dem Amazon-S3-Bucket gespeichert, den Sie bei der Erstellung eines Workflows zur Überprüfung durch einen Menschen angegeben haben.

**So zeigen Sie Ihre Amazon-A2I-Ausgabedaten an**

1. Öffnen Sie die [Amazon S3-Konsole](https://console.aws.amazon.com/s3/).

1. Wählen Sie den Amazon-S3-Bucket aus, den Sie bei der Erstellung Ihres Workflows zur Überprüfung durch einen Menschen in Schritt 2 dieses Beispiels angegeben haben. 

1. Beginnen Sie mit dem Ordner, der nach Ihrem Workflow zur Überprüfung durch einen Menschen benannt ist, und navigieren Sie zu Ihren Ausgabedaten, indem Sie den Ordner mit der folgenden Benennungskonvention auswählen:

   ```
   s3://output-bucket-specified-in-human-review-workflow/human-review-workflow-name/YYYY/MM/DD/hh/mm/ss/human-loop-name/output.json
   ```

1. Wählen Sie `output.json` aus und klicken Sie auf **Herunterladen**. 

# Tutorial: Erste Schritte in der Amazon-A2I-API
<a name="a2i-get-started-api"></a>

In diesem Tutorial werden die API-Operationen erklärt, die Sie für den Einstieg in die Nutzung von Amazon A2I verwenden können. 

Um diese Operationen mit einem Jupyter Notebook auszuführen, wählen Sie ein Jupyter Notebook aus [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md) und verwenden Sie es, [Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook](a2i-task-types-general.md#a2i-task-types-notebook-demo) um zu erfahren, wie Sie es in einer KI-Notebook-Instanz verwenden. SageMaker 

Weitere Informationen zu den API-Operationen, die Sie mit Amazon A2I verwenden können, finden Sie unter [Verwendung von APIs in Amazon Augmented AI](a2i-api-references.md).

## Erstellen eines privaten Arbeitsteams
<a name="a2i-get-started-api-create-work-team"></a>

Sie können ein privates Arbeitsteam erstellen und sich selbst als Mitarbeiter hinzufügen, sodass Sie sich eine Vorschau von Amazon A2I ansehen können. 

Wenn Sie mit Amazon Cognito nicht vertraut sind, empfehlen wir Ihnen, die SageMaker KI-Konsole zu verwenden, um eine private Belegschaft zu erstellen und sich selbst als Privatperson hinzuzufügen. Detaillierte Anweisungen finden Sie unter [Schritt 1: Erstellen eines Arbeitsteams](a2i-get-started-console.md#a2i-get-started-console-step-1).

Wenn Sie mit Amazon Cognito vertraut sind, können Sie die folgenden Anweisungen verwenden, um mithilfe der SageMaker API ein privates Arbeitsteam zu erstellen. Nachdem Sie ein Arbeitsteam erstellt haben, notieren Sie sich die ARN (`WorkteamArn`) des Arbeitsteams.

Weitere Informationen zu den privaten Arbeitskräften und anderen verfügbaren Konfigurationen finden Sie unter [Private Arbeitskräfte](sms-workforce-private.md).

**Erstellen von privaten Arbeitskräften**  
Wenn Sie keine privaten Arbeitskräfte eingerichtet haben, können Sie dies mithilfe eines [Amazon Cognito-Benutzerpools](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html) tun. Stellen Sie sicher, dass Sie sich selbst diesem Benutzerpool hinzugefügt haben. Mit der AWS SDK für Python (Boto3) `[create\$1workforce](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_workforce)` Funktion können Sie ein privates Arbeitsteam erstellen. Weitere sprachspezifische SDKs Informationen finden Sie in der Liste unter. [CreateWorkforce](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkforce.html#API_CreateWorkforce_SeeAlso)

```
    
    response = client.create_workforce(
        CognitoConfig={
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        WorkforceName="workforce-name"
    )
```

**Erstellen eines privaten Arbeitsteams**  
Nachdem Sie in der AWS Region eine private Belegschaft eingerichtet haben, um Ihren Personalkreislauf zu konfigurieren und zu starten, können Sie mithilfe dieser Funktion ein privates Arbeitsteam zusammenstellen. AWS SDK für Python (Boto3) `[create\$1workteam](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_workteam)` Weitere sprachspezifische SDKs Informationen finden Sie in der Liste unter. `[CreateWorkteam](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateWorkteam.html#API_CreateWorkteam_SeeAlso)`

```
    response = client.create_workteam(
        WorkteamName="work-team-name",
        WorkforceName= "workforce-name",
        MemberDefinitions=[
            {
                "CognitoMemberDefinition": {
                    "UserPool": "<aws-region>_ID",
                    "UserGroup": "user-group",
                    "ClientId": "app-client-id"
                },
            }
        ]
    )
```

Greifen Sie wie folgt auf die ARN Ihres Arbeitsteams zu:

```
    workteamArn = response["WorkteamArn"]
```

**Listen Sie private Arbeitsteams in Ihrem Konto auf**  
Wenn Sie bereits ein privates Arbeitsteam erstellt haben, können Sie mithilfe der Funktion alle Arbeitsteams in einer bestimmten AWS Region in Ihrem Konto auflisten. AWS SDK für Python (Boto3) `[list\$1workteams](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.list_workteams)` Weitere sprachspezifische SDKs Informationen finden Sie in der Liste unter. `[ListWorkteams](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListWorkteams.html#API_ListWorkteams_SeeAlso)` 

```
    response = client.list_workteams()
```

Wenn Sie mehrere Arbeitsteams in Ihrem Konto haben, möchten Sie vielleicht `MaxResults`, `SortBy` und `NameContains` verwenden, um Ihre Ergebnisse zu filtern.

## Erstellen Sie einen Workflow zur Überprüfung durch einen Menschen
<a name="a2i-get-started-api-create-human-review-workflow"></a>

Mithilfe der Amazon `[CreateFlowDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)`-A2I-Operation können Sie einen Workflow zur Überprüfung durch einen Menschen erstellen. Stellen Sie sicher, dass eine Benutzeroberfläche für menschliche Aufgaben erstellt wird, bevor Sie Ihren Workflow zur Überprüfung durch einen Menschen erstellen. Sie können dies mit der `[CreateHumanTaskUi](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html)`-Operation tun.

Wenn Sie Amazon A2I mit den Amazon-Textract- oder Amazon-Rekognition-Integrationen verwenden, können Sie die Aktivierungsbedingungen mithilfe eines JSON-Codes angeben. 

### Erstellen einer Benutzeroberfläche für menschliche Aufgaben
<a name="a2i-get-started-api-worker-task-template"></a>

Wenn Sie einen Workflow zur Überprüfung durch einen Menschen erstellen, der mit Amazon-Textract- oder Amazon-Rekognition-Integrationen verwendet werden soll, müssen Sie die vorgefertigte Worker-Task-Vorlage verwenden und ändern. Für alle benutzerdefinierten Integrationen können Sie Ihre eigene benutzerdefinierte Worker-Task-Vorlage verwenden. In der folgenden Tabelle erfahren Sie, wie Sie mithilfe einer Worker-Task-Vorlage für die beiden integrierten Integrationen eine Benutzeroberfläche für menschliche Aufgaben erstellen. Ersetzen Sie die Vorlage durch Ihre eigene, um diese Anfrage anzupassen. 

------
#### [ Amazon Textract – Key-value pair extraction ]

Weitere Informationen zu Vorlage finden Sie unter [Beispiel für eine benutzerdefinierte Vorlage für Amazon Textract](a2i-custom-templates.md#a2i-custom-templates-textract-sample).

```
template = r"""
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
{% capture s3_uri %}http://s3.amazonaws.com/{{ task.input.aiServiceRequest.document.s3Object.bucket }}/{{ task.input.aiServiceRequest.document.s3Object.name }}{% endcapture %}
<crowd-form>
  <crowd-textract-analyze-document 
      src="{{ s3_uri | grant_read_access }}" 
      initial-value="{{ task.input.selectedAiServiceResponse.blocks }}" 
      header="Review the key-value pairs listed on the right and correct them if they don"t match the following document." 
      no-key-edit="" 
      no-geometry-edit="" 
      keys="{{ task.input.humanLoopContext.importantFormKeys }}" 
      block-types='["KEY_VALUE_SET"]'>
    <short-instructions header="Instructions">
        <p>Click on a key-value block to highlight the corresponding key-value pair in the document.
        </p><p><br></p>
        <p>If it is a valid key-value pair, review the content for the value. If the content is incorrect, correct it.
        </p><p><br></p>
        <p>The text of the value is incorrect, correct it.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/correct-value-text.png">
        </p><p><br></p>
        <p>A wrong value is identified, correct it.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/correct-value.png">
        </p><p><br></p>
        <p>If it is not a valid key-value relationship, choose No.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/not-a-key-value-pair.png">
        </p><p><br></p>
        <p>If you can’t find the key in the document, choose Key not found.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/key-is-not-found.png">
        </p><p><br></p>
        <p>If the content of a field is empty, choose Value is blank.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/value-is-blank.png">
        </p><p><br></p>
        <p><strong>Examples</strong></p>
        <p>Key and value are often displayed next or below to each other.
        </p><p><br></p>
        <p>Key and value displayed in one line.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/sample-key-value-pair-1.png">
        </p><p><br></p>
        <p>Key and value displayed in two lines.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/sample-key-value-pair-2.png">
        </p><p><br></p>
        <p>If the content of the value has multiple lines, enter all the text without line break. 
        Include all value text even if it extends beyond the highlight box.</p>
        <p><img src="https://assets.crowd.aws/images/a2i-console/multiple-lines.png"></p>
    </short-instructions>
    <full-instructions header="Instructions"></full-instructions>
  </crowd-textract-analyze-document>
</crowd-form>
"""
```

------
#### [ Amazon Rekognition – Image moderation ]

Weitere Informationen zu Vorlage finden Sie unter [Beispiel für eine benutzerdefinierte Vorlage für Amazon Rekognition](a2i-custom-templates.md#a2i-custom-templates-rekognition-sample).

```
template = r"""
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
{% capture s3_uri %}http://s3.amazonaws.com/{{ task.input.aiServiceRequest.image.s3Object.bucket }}/{{ task.input.aiServiceRequest.image.s3Object.name }}{% endcapture %}

<crowd-form>
  <crowd-rekognition-detect-moderation-labels
    categories='[
      {% for label in task.input.selectedAiServiceResponse.moderationLabels %}
        {
          name: "{{ label.name }}",
          parentName: "{{ label.parentName }}",
        },
      {% endfor %}
    ]'
    src="{{ s3_uri | grant_read_access }}"
    header="Review the image and choose all applicable categories."
  >
    <short-instructions header="Instructions">
      <style>
        .instructions {
          white-space: pre-wrap;
        }
      </style>
      <p class="instructions">Review the image and choose all applicable categories.
If no categories apply, choose None.

<b>Nudity</b>
Visuals depicting nude male or female person or persons

<b>Partial Nudity</b>
Visuals depicting covered up nudity, for example using hands or pose

<b>Revealing Clothes</b>
Visuals depicting revealing clothes and poses

<b>Physical Violence</b>
Visuals depicting violent physical assault, such as kicking or punching

<b>Weapon Violence</b>
Visuals depicting violence using weapons like firearms or blades, such as shooting

<b>Weapons</b>
Visuals depicting weapons like firearms and blades
    </short-instructions>

    <full-instructions header="Instructions"></full-instructions>
  </crowd-rekognition-detect-moderation-labels>
</crowd-form>"""
```

------
#### [ Custom Integration ]

Im Folgenden finden Sie eine Beispielvorlage, die in einer benutzerdefinierten Integration verwendet werden kann. Diese Vorlage wird in diesem [Notebook](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Comprehend%20DetectSentiment.ipynb) verwendet und demonstriert eine benutzerdefinierte Integration mit Amazon Comprehend.

```
template = r"""
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>

<crowd-form>
    <crowd-classifier
      name="sentiment"
      categories='["Positive", "Negative", "Neutral", "Mixed"]'
      initial-value="{{ task.input.initialValue }}"
      header="What sentiment does this text convey?"
    >
      <classification-target>
        {{ task.input.taskObject }}
      </classification-target>
      
      <full-instructions header="Sentiment Analysis Instructions">
        <p><strong>Positive</strong> sentiment include: joy, excitement, delight</p>
        <p><strong>Negative</strong> sentiment include: anger, sarcasm, anxiety</p>
        <p><strong>Neutral</strong>: neither positive or negative, such as stating a fact</p>
        <p><strong>Mixed</strong>: when the sentiment is mixed</p>
      </full-instructions>

      <short-instructions>
       Choose the primary sentiment that is expressed by the text. 
      </short-instructions>
    </crowd-classifier>
</crowd-form>
"""
```

------

Mithilfe der oben angegebenen Vorlage können Sie mithilfe der Funktion eine Vorlage erstellen. AWS SDK für Python (Boto3) `[create\$1human\$1task\$1ui](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_human_task_ui)` Weitere sprachspezifische SDKs Informationen finden Sie in der Liste unter. `[CreateHumanTaskUi](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html#API_CreateHumanTaskUi_SeeAlso)` 

```
    
    response = client.create_human_task_ui(
        HumanTaskUiName="human-task-ui-name",
        UiTemplate={
            "Content": template
        }
    )
```

Dieses Antwortelement enthält die ARN der Benutzeroberfläche für menschliche Aufgaben. Speichern Sie dies wie folgt:

```
    humanTaskUiArn = response["HumanTaskUiArn"]
```

### Erstellen Sie JSON, um die Aktivierungsbedingungen anzugeben
<a name="a2i-get-started-api-activation-conditions"></a>

Für die integrierten Integrationen von Amazon Textract und Amazon Rekognition können Sie Aktivierungsbedingungen in einem JSON-Objekt speichern und dieses in Ihrer `CreateFlowDefinition`-Anfrage verwenden. 

Wählen Sie als Nächstes eine Registerkarte aus, um sich Beispiele für Aktivierungsbedingungen anzusehen, die Sie für diese integrierten Integrationen verwenden können. Zusätzliche Hinweise zu den Aktivierungsbedingungen finden Sie unter [JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md).

------
#### [ Amazon Textract – Key-value pair extraction ]

In diesem Beispiel werden Bedingungen für bestimmte Schlüssel (z. B. `Mail address`) im Dokument angegeben. Wenn die Vertrauenswürdigkeit von Amazon Textract die hier festgelegten Schwellenwerte überschreitet, wird das Dokument zur Überprüfung an einen Mitarbeiter gesendet. Dabei werden die spezifischen Schlüssel, die den Vorgang ausgelöst haben, an den Mitarbeiter weitergeleitet.

```
      import json  

      humanLoopActivationConditions = json.dumps(
        {
            "Conditions": [
                {
                  "Or": [
                    
                    {
                        "ConditionType": "ImportantFormKeyConfidenceCheck",
                        "ConditionParameters": {
                            "ImportantFormKey": "Mail address",
                            "ImportantFormKeyAliases": ["Mail Address:","Mail address:", "Mailing Add:","Mailing Addresses"],
                            "KeyValueBlockConfidenceLessThan": 100,
                            "WordBlockConfidenceLessThan": 100
                        }
                    },
                    {
                        "ConditionType": "MissingImportantFormKey",
                        "ConditionParameters": {
                            "ImportantFormKey": "Mail address",
                            "ImportantFormKeyAliases": ["Mail Address:","Mail address:","Mailing Add:","Mailing Addresses"]
                        }
                    },
                    {
                        "ConditionType": "ImportantFormKeyConfidenceCheck",
                        "ConditionParameters": {
                            "ImportantFormKey": "Phone Number",
                            "ImportantFormKeyAliases": ["Phone number:", "Phone No.:", "Number:"],
                            "KeyValueBlockConfidenceLessThan": 100,
                            "WordBlockConfidenceLessThan": 100
                        }
                    },
                    {
                      "ConditionType": "ImportantFormKeyConfidenceCheck",
                      "ConditionParameters": {
                        "ImportantFormKey": "*",
                        "KeyValueBlockConfidenceLessThan": 100,
                        "WordBlockConfidenceLessThan": 100
                      }
                    },
                    {
                      "ConditionType": "ImportantFormKeyConfidenceCheck",
                      "ConditionParameters": {
                        "ImportantFormKey": "*",
                        "KeyValueBlockConfidenceGreaterThan": 0,
                        "WordBlockConfidenceGreaterThan": 0
                      }
                    }
            ]
        }
            ]
        }
    )
```

------
#### [ Amazon Rekognition – Image moderation ]

Die hier verwendeten Human-Loop-Aktivierungsbedingungen sind auf die Inhaltsmoderation von Amazon Rekognition zugeschnitten. Sie basieren auf den Konfidenzschwellenwerten für die Moderationsmarkierungen `Suggestive` und `Female Swimwear Or Underwear`.

```
        import json  

        humanLoopActivationConditions = json.dumps(
        {
            "Conditions": [
                {
                  "Or": [
                    {
                        "ConditionType": "ModerationLabelConfidenceCheck",
                        "ConditionParameters": {
                            "ModerationLabelName": "Suggestive",
                            "ConfidenceLessThan": 98
                        }
                    },
                    {
                        "ConditionType": "ModerationLabelConfidenceCheck",
                        "ConditionParameters": {
                            "ModerationLabelName": "Female Swimwear Or Underwear",
                            "ConfidenceGreaterThan": 98
                        }
                    }
                  ]
               }
            ]
        }
    )
```

------

### Einen Workflow zur Überprüfung durch einen Menschen erstellen
<a name="a2i-get-started-api-flow-definition"></a>

Dieser Abschnitt enthält ein Beispiel für die `CreateFlowDefinition` AWS SDK für Python (Boto3) Anfrage, bei der die in den vorherigen Abschnitten erstellten Ressourcen verwendet wurden. Weitere sprachspezifische SDKs Informationen finden Sie in der Liste unter. [CreateFlowDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html#API_CreateFlowDefinition_SeeAlso) Verwenden Sie die Tabs in der folgenden Tabelle, um die Anfragen zur Erstellung eines Workflows zur Überprüfung durch einen Menschen für die integrierten Integrationen von Amazon Textract und Amazon Rekognition zu sehen.

------
#### [ Amazon Textract – Key-value pair extraction ]

Wenn Sie die integrierte Integration mit Amazon Textract verwenden, müssen Sie `"AWS/Textract/AnalyzeDocument/Forms/V1"` für `"AwsManagedHumanLoopRequestSource"` in `HumanLoopRequestSource` angeben. 

```
    response = client.create_flow_definition(
        FlowDefinitionName="human-review-workflow-name",
        HumanLoopRequestSource={
            "AwsManagedHumanLoopRequestSource": "AWS/Textract/AnalyzeDocument/Forms/V1"
        }, 
        HumanLoopActivationConfig={
            "HumanLoopActivationConditionsConfig": {
                "HumanLoopActivationConditions": humanLoopActivationConditions
            }
        },
        HumanLoopConfig={
            "WorkteamArn": workteamArn,
            "HumanTaskUiArn": humanTaskUiArn,
            "TaskTitle": "Document entry review",
            "TaskDescription": "Review the document and instructions. Complete the task",
            "TaskCount": 1,
            "TaskAvailabilityLifetimeInSeconds": 43200,
            "TaskTimeLimitInSeconds": 3600,
            "TaskKeywords": [
                "document review",
            ],
        },
        OutputConfig={
            "S3OutputPath": "s3://amzn-s3-demo-bucket/prefix/",
        },
        RoleArn="arn:aws:iam::<account-number>:role/<role-name>",
        Tags=[
            {
                "Key": "string",
                "Value": "string"
            },
        ]
    )
```

------
#### [ Amazon Rekognition – Image moderation ]

Wenn Sie die integrierte Integration mit Amazon Rekognition verwenden, müssen Sie `"AWS/Rekognition/DetectModerationLabels/Image/V3"` für `"AwsManagedHumanLoopRequestSource"` in `HumanLoopRequestSource` angeben.

```
    response = client.create_flow_definition(
        FlowDefinitionName="human-review-workflow-name",
        HumanLoopRequestSource={
            "AwsManagedHumanLoopRequestSource": "AWS/Rekognition/DetectModerationLabels/Image/V3"
        }, 
        HumanLoopActivationConfig={
            "HumanLoopActivationConditionsConfig": {
                "HumanLoopActivationConditions": humanLoopActivationConditions
            }
        },
        HumanLoopConfig={
            "WorkteamArn": workteamArn,
            "HumanTaskUiArn": humanTaskUiArn,
            "TaskTitle": "Image content moderation",
            "TaskDescription": "Review the image and instructions. Complete the task",
            "TaskCount": 1,
            "TaskAvailabilityLifetimeInSeconds": 43200,
            "TaskTimeLimitInSeconds": 3600,
            "TaskKeywords": [
                "content moderation",
            ],
        },
        OutputConfig={
            "S3OutputPath": "s3://amzn-s3-demo-bucket/prefix/",
        },
        RoleArn="arn:aws:iam::<account-number>:role/<role-name>",
        Tags=[
            {
                "Key": "string",
                "Value": "string"
            },
        ]
    )
```

------
#### [ Custom Integration ]

Wenn Sie eine benutzerdefinierte Integration verwenden, schließen Sie die folgenden Parameter aus: `HumanLoopRequestSource`, `HumanLoopActivationConfig`.

```
    response = client.create_flow_definition(
        FlowDefinitionName="human-review-workflow-name",
        HumanLoopConfig={
            "WorkteamArn": workteamArn,
            "HumanTaskUiArn": humanTaskUiArn,
            "TaskTitle": "Image content moderation",
            "TaskDescription": "Review the image and instructions. Complete the task",
            "TaskCount": 1,
            "TaskAvailabilityLifetimeInSeconds": 43200,
            "TaskTimeLimitInSeconds": 3600,
            "TaskKeywords": [
                "content moderation",
            ],
        },
        OutputConfig={
            "S3OutputPath": "s3://amzn-s3-demo-bucket/prefix/",
        },
        RoleArn="arn:aws:iam::<account-number>:role/<role-name>",
        Tags=[
            {
                "Key": "string",
                "Value": "string"
            },
        ]
    )
```

------

Nachdem Sie einen Workflow zur Überprüfung durch einen Menschen erstellt haben, können Sie die ARN der Flow-Definition aus der Antwort abrufen:

```
    humanReviewWorkflowArn = response["FlowDefinitionArn"]    
```

## Erstellen einer Human Loop
<a name="a2i-get-started-api-create-human-loop"></a>

Die API-Operation, die Sie verwenden, um eine Human Loop zu starten, hängt von der Amazon-A2I-Integration ab, die Sie verwenden. 
+ Wenn Sie die integrierte Amazon Textract Textract-Integration verwenden, verwenden Sie den [AnalyzeDocument](https://docs.aws.amazon.com/textract/latest/dg/API_AnalyzeDocument.html)Vorgang.
+ Wenn Sie die integrierte Amazon Rekognition Rekognition-Integration verwenden, verwenden Sie den [DetectModerationLabels](https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectModerationLabels.html)Vorgang.
+ Wenn Sie eine benutzerdefinierte Integration verwenden, verwenden Sie den [StartHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StartHumanLoop.html)Vorgang. 

Wählen Sie in der folgenden Tabelle Ihren Aufgabentyp aus, um Beispielanfragen für Amazon Textract und Amazon Rekognition mit dem AWS SDK für Python (Boto3) zu sehen. 

------
#### [ Amazon Textract – Key-value pair extraction ]

Im folgenden Beispiel wird der AWS SDK für Python (Boto3) to-Aufruf `analyze_document` in us-west-2 verwendet. Ersetzen Sie den kursiv geschriebenen roten Text durch Ihre Ressourcen. Geben Sie den [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html)-Parameter an, wenn Sie die Belegschaft von Amazon Mechanical Turk verwenden. Weitere Informationen finden Sie in der Dokumentation [analyze\$1document](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/textract.html#Textract.Client.analyze_document) in der *AWS SDK für Python (Boto) API-Referenz*.

```
   response = client.analyze_document(
         Document={"S3Object": {"Bucket": "amzn-s3-demo-bucket", "Name": "document-name.pdf"},
         HumanLoopConfig={
            "FlowDefinitionArn":"arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
            "HumanLoopName":"human-loop-name",
            "DataAttributes" : {ContentClassifiers:["FreeOfPersonallyIdentifiableInformation"|"FreeOfAdultContent"]}
         }
         FeatureTypes=["FORMS"]
    )
```

Human Loops werden nur erstellt, wenn die Konfidenz in die Dokumentenanalyseaufgabe von Amazon Textract die Aktivierungsbedingungen erfüllt, die Sie in Ihrem Workflow zur Überprüfung durch einen Menschen festgelegt haben. Sie können das `response`-Element überprüfen, um festzustellen, ob eine Human Loop erstellt wurde. Alles, was in dieser Antwort enthalten ist, finden Sie unter [https://docs.aws.amazon.com/textract/latest/dg/API_HumanLoopActivationOutput.html](https://docs.aws.amazon.com/textract/latest/dg/API_HumanLoopActivationOutput.html).

```
    if "HumanLoopArn" in analyzeDocumentResponse["HumanLoopActivationOutput"]:
        # A human loop has been started!
        print(f"A human loop has been started with ARN: {analyzeDocumentResponse["HumanLoopActivationOutput"]["HumanLoopArn"]}"
```

------
#### [ Amazon Rekognition – Image moderation ]

Im folgenden Beispiel wird der AWS SDK für Python (Boto3) to-Aufruf `detect_moderation_labels` in us-west-2 verwendet. Ersetzen Sie den kursiv geschriebenen roten Text durch Ihre Ressourcen. Geben Sie den [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html)-Parameter an, wenn Sie die Belegschaft von Amazon Mechanical Turk verwenden. Weitere Informationen finden Sie in der Dokumentation zu [detect\$1moderation\$1labels](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rekognition.html#Rekognition.Client.detect_moderation_labels) in der *AWS SDK für Python (Boto) API-Referenz*.

```
   response = client.detect_moderation_labels(
            Image={"S3Object":{"Bucket": "amzn-s3-demo-bucket", "Name": "image-name.png"}},
            HumanLoopConfig={
               "FlowDefinitionArn":"arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
               "HumanLoopName":"human-loop-name",
               "DataAttributes":{ContentClassifiers:["FreeOfPersonallyIdentifiableInformation"|"FreeOfAdultContent"]}
             }
    )
```

Human Loops werden nur erstellt, wenn die Konfidenz in die Bildmoderationsaufgabe von Amazon Rekognition die Aktivierungsbedingungen erfüllt, die Sie in Ihrem Workflow zur Überprüfung durch einen Menschen festgelegt haben. Sie können das `response`-Element überprüfen, um festzustellen, ob eine Human Loop erstellt wurde. Alles, was in dieser Antwort enthalten ist, finden Sie unter [https://docs.aws.amazon.com/rekognition/latest/dg/API_HumanLoopActivationOutput.html](https://docs.aws.amazon.com/rekognition/latest/dg/API_HumanLoopActivationOutput.html).

```
    if "HumanLoopArn" in response["HumanLoopActivationOutput"]:
        # A human loop has been started!
        print(f"A human loop has been started with ARN: {response["HumanLoopActivationOutput"]["HumanLoopArn"]}")
```

------
#### [ Custom Integration ]

Im folgenden Beispiel wird der AWS SDK für Python (Boto3) to-Aufruf `start_human_loop` in us-west-2 verwendet. Ersetzen Sie den kursiv geschriebenen roten Text durch Ihre Ressourcen. Geben Sie den [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopDataAttributes.html)-Parameter an, wenn Sie die Belegschaft von Amazon Mechanical Turk verwenden. Weitere Informationen finden Sie in der Dokumentation [start\$1human\$1loop](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.start_human_loop) in der *AWS SDK für Python (Boto) API-Referenz*.

```
   response = client.start_human_loop(
        HumanLoopName= "human-loop-name",
        FlowDefinitionArn= "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
        HumanLoopInput={"InputContent": inputContentJson},
        DataAttributes={"ContentClassifiers":["FreeOfPersonallyIdentifiableInformation"|"FreeOfAdultContent"]}
   )
```

In diesem Beispiel wird der Eingabeinhalt in der Variablen *`inputContentJson`* gespeichert. Gehen Sie davon aus, dass der Eingabeinhalt zwei Elemente enthält: einen Begleittext und eine Stimmung (wie `Positive`, `Negative` oder `Neutral`). Er ist wie folgt formatiert:

```
    inputContent = {
        "initialValue": sentiment,
         "taskObject": blurb
     }
```

Die Schlüssel `initialValue` und `taskObject` müssen den Schlüsseln entsprechen, die in den Liquid-Elementen der Worker-Task-Vorlage verwendet werden. Ein Beispiel finden Sie in der benutzerdefinierten Vorlage unter [Erstellen einer Benutzeroberfläche für menschliche Aufgaben](#a2i-get-started-api-worker-task-template). 

Gehen Sie wie folgt vor, um ein `inputContentJson` zu erstellen: 

```
    import json
    
    inputContentJson = json.dumps(inputContent)
```

Eine Human Loop bei jedem Aufruf von `start_human_loop`. Um den Status Ihrer menschlichen Schleife zu überprüfen, verwenden Sie [describe\$1human\$1loop](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.describe_human_loop): 

```
    human_loop_info = a2i.describe_human_loop(HumanLoopName="human_loop_name")
    print(f"HumanLoop Status: {resp["HumanLoopStatus"]}")
    print(f"HumanLoop Output Destination: {resp["HumanLoopOutput"]}")
```

------

# Anwendungsfälle und Beispiele mit Amazon A2I
<a name="a2i-task-types-general"></a>

Sie können Amazon Erweiterte KI verwenden, um eine menschliche Überprüfung in Ihren Workflow für *integrierte Aufgabentypen*, Amazon Textract und Amazon Rekognition, oder Ihre eigenen benutzerdefinierten Aufgaben mit einem *benutzerdefinierten Aufgabentyp* zu integrieren. 

Wenn Sie mit einem der integrierten Aufgabentypen einen Workflow für die menschliche Überprüfung erstellen, können Sie Bedingungen, wie z. B. Vertrauensschwellen, angeben, die eine menschliche Überprüfung auslösen. Der Service (Amazon Rekognition oder Amazon Textract) erstellt in Ihrem Namen ein Human Loop, wenn diese Bedingungen erfüllt sind, und leitet Ihre Eingabedaten direkt an Amazon A2I weiter, um sie an menschliche Prüfer zu senden. Um mehr über die integrierten Aufgabentypen zu erfahren, gehen Sie wie folgt vor:
+ [Verwenden Sie die erweiterte KI von Amazon mit Amazon Textract](a2i-textract-task-type.md)
+ [Verwenden Sie Amazon Augmented AI mit Amazon Rekognition](a2i-rekognition-task-type.md)

Wenn Sie einen benutzerdefinierten Aufgabentyp verwenden, erstellen und starten Sie einen Human Loop mit der Amazon-A2I-Laufzeit-API. Verwenden Sie den benutzerdefinierten Aufgabentyp, um einen Workflow für die menschliche Überprüfung in einen anderen AWS -Service oder eine eigene benutzerdefinierte ML-Anwendung zu integrieren.
+ Weitere Details finden Sie unter [Verwenden von Amazon Augmented AI mit benutzerdefinierten Aufgabentypen](a2i-task-types-custom.md).

In der folgenden Tabelle werden verschiedene Amazon A2I-Anwendungsfälle beschrieben, die Sie mithilfe von SageMaker AI Jupyter Notebooks untersuchen können. Um mit einem Jupyter Notebook zu beginnen, folgen Sie den Anweisungen in [Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook](#a2i-task-types-notebook-demo). [Weitere Beispiele finden Sie in diesem Repository. GitHub](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks) 


****  

| **Anwendungsfall** | **Beschreibung** | **Aufgabentyp** | 
| --- | --- | --- | 
|  [Amazon A2I mit Amazon Textract verwenden](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Textract%20AnalyzeDocument.ipynb)  |  Lassen Sie Dokumente mit einer Seite prüfen, um wichtige Form-Schlüssel-Wert-Paare zu überprüfen, oder lassen Sie Amazon Textract nach dem Zufallsprinzip Dokumente aus Ihrem Datensatz auswählen und zur Überprüfung an Menschen senden.   | Integriert | 
| [Amazon A2I mit Amazon Rekognition verwenden](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Rekognition%20DetectModerationLabels.ipynb) |  Lassen Sie Menschen unsichere Bilder auf explizite Inhalte für Erwachsene oder gewalttätige Inhalte prüfen, wenn Amazon Rekognition eine niedrige Vertrauensbewertung zurückgibt, oder lassen Sie Amazon Rekognition nach dem Zufallsprinzip Bilder aus Ihrem Datensatz auswählen und zur Überprüfung an Menschen senden.  |  Integriert  | 
| [Amazon A2I mit Amazon Comprehend verwenden](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Comprehend%20DetectSentiment.ipynb) |  Lassen Sie Menschen die Inferenzen von Amazon Comprehend zu Textdaten wie Stimmungsanalyse, Textsyntax und Entitätserkennung prüfen.  |  Benutzerdefiniert  | 
| [Amazon A2I mit Amazon Transcribe verwenden](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/A2I-Video-Transcription-with-Amazon-Transcribe.ipynb) |  Lassen Sie Menschen Amazon Transcribe-Transkriptionen von Video- oder Audiodateien prüfen. Verwenden Sie die Ergebnisse von „menschliche Transkriptionsüberprüfung“-Loops, um ein benutzerdefiniertes Vokabular zu erstellen und zukünftige Transkriptionen ähnlicher Video- oder Audioinhalte zu verbessern.  | Benutzerdefiniert | 
| [Amazon A2I mit Amazon Translate verwenden](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Amazon%20Translate.ipynb) |  Lassen Sie Menschen Übersetzungen mit geringer Vertrauensbewertung prüfen, die von Amazon Translate zurückgegeben wurden.  |  Benutzerdefiniert  | 
| [Amazon A2I verwenden, um ML-Inferenzen in Echtzeit zu prüfen](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20A2I%20with%20Amazon%20SageMaker%20for%20object%20detection%20and%20model%20retraining.ipynb)  |  Verwenden Sie Amazon A2I, um Schlussfolgerungen mit geringer Zuverlässigkeit in Echtzeit zu überprüfen, die von einem Modell gezogen wurden, das auf einem SageMaker KI-gehosteten Endpunkt bereitgestellt wurde, und Ihr Modell schrittweise mit Amazon A2I-Ausgabedaten zu trainieren.  |  Benutzerdefiniert  | 
| [Amazon A2I verwenden, um tabellarische Daten zu prüfen](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(Amazon%20A2I)%20Integration%20with%20tabular%20data.ipynb) |  Verwenden Sie Amazon A2I, um ein „menschliche Überprüfung“-Loop in eine ML-Anwendung zu integrieren, die tabellarische Daten verwendet.  |  Benutzerdefiniert  | 

**Topics**
+ [Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook](#a2i-task-types-notebook-demo)
+ [Verwenden Sie die erweiterte KI von Amazon mit Amazon Textract](a2i-textract-task-type.md)
+ [Verwenden Sie Amazon Augmented AI mit Amazon Rekognition](a2i-rekognition-task-type.md)
+ [Verwenden von Amazon Augmented AI mit benutzerdefinierten Aufgabentypen](a2i-task-types-custom.md)

## Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook
<a name="a2i-task-types-notebook-demo"></a>

Ein end-to-end Beispiel, das zeigt, wie eine menschliche Amazon A2I-Überprüfungsschleife in einen Workflow für maschinelles Lernen integriert wird, können Sie ein Jupyter-Notebook aus diesem [GitHub Repository](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks) in einer Notebook-Instance verwenden. SageMaker 

**So verwenden Sie ein Amazon A2I-Beispielnotizbuch mit benutzerdefiniertem Aufgabentyp in einer SageMaker Amazon-Notebook-Instance:**

1. Wenn Sie keine aktive SageMaker Notebook-Instance haben, erstellen Sie eine, indem Sie den Anweisungen unter folgen. [Erstellen Sie eine Amazon SageMaker Notebook-Instance für das Tutorial](gs-setup-working-env.md)

1. Wenn Ihre Notebook-Instanz aktiv ist, wählen Sie rechts JupyterLab neben dem Namen der Notebook-Instanz **Öffnen** aus. Das Laden kann einen Moment JupyterLab dauern. 

1. Wählen Sie das Symbol „Github-Repository hinzufügen“ (![\[Diagonal arrow icon with N and 1 symbols, representing a one-to-many relationship.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/icons/Git_squip_add_repo.png)), um ein GitHub Repository in Ihren Workspace zu klonen. 

1. Geben Sie die HTTPS-URL des [i-sample-jupyter-notebooksAmazon-A2-Repositorys](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks) ein. 

1. Wählen Sie **KLONEN** aus.

1. Öffnen Sie das Notebook, das Sie ausführen möchten. 

1. Folgen Sie den Anweisungen im Notebook, um Ihren Workflow für die menschliche Überprüfung und den Human Loop zu konfigurieren und die Zellen auszuführen. 

1. Um unnötige Gebühren zu vermeiden, beenden und löschen Sie nach Abschluss der Demo Ihre Notebook-Instance sowie alle Amazon S3 S3-Buckets, IAM-Rollen und CloudWatch Events-Ressourcen, die während der Komplettlösung erstellt wurden.

# Verwenden Sie die erweiterte KI von Amazon mit Amazon Textract
<a name="a2i-textract-task-type"></a>

Amazon Textract ermöglicht es Ihnen, Ihre Anwendungen um die Erkennung und Analyse von Dokumententext zu erweitern. Amazon Augmented AI (Amazon A2I) lässt sich direkt in den `AnalyzeDocument` API-Betrieb von Amazon Textract integrieren. Sie können ein Dokument mithilfe von `AnalyzeDocument` auf Beziehungen zwischen erkannten Elementen untersuchen. Wenn Sie eine Amazon-A2I-Überprüfungsschleife zu einer `AnalyzeDocument`-Anfrage hinzufügen, überwacht Amazon A2I die Amazon-Textract-Ergebnisse und sendet ein Dokument zur Überprüfung an einen oder mehrere menschliche Auftragnehmer, wenn die in Ihrer Ablaufdefinition angegebenen Bedingungen erfüllt sind. Wenn Sie beispielsweise möchten, dass ein Mensch einen bestimmten Schlüssel wie `Full name:` und die zugehörigen Eingabewerte überprüft, können Sie eine Aktivierungsbedingung erstellen, die eine Überprüfung durch einen Menschen immer dann startet, wenn der Schlüssel `Full name:` erkannt wird oder wenn die Ableitungssicherheit für diesen Schlüssel in einen von Ihnen festgelegten Bereich fällt. 

Die folgende Abbildung zeigt den integrierten Amazon-A2I-Workflow mit Amazon Textract. Auf der linken Seite sind die Ressourcen dargestellt, die für die Erstellung eines Amazon-Textract-Workflows für die menschliche Überprüfung erforderlich sind: ein Amazon-S3-Bucket, Aktivierungsbedingungen, eine Worker-Aufgabenvorlage und ein Arbeitsteam. Diese Ressourcen werden verwendet, um einen Workflow oder eine Flow-Definition für die menschliche Überprüfung zu erstellen. Ein Pfeil zeigt nach rechts auf den nächsten Schritt im Workflow: die Verwendung von Amazon Textract zur Konfiguration einer menschlichen Schleife mit dem Workflow zur Überprüfung durch einen Menschen. Ein zweiter Pfeil zeigt von diesem Schritt nach rechts zu dem Schritt, in dem die Aktivierungsbedingungen erfüllt sind, die im Workflow zur Überprüfung durch einen Menschen festgelegt sind. Dadurch wird die Entstehung einer menschlichen Schleife eingeleitet. Rechts im Bild wird der menschliche Kreislauf in drei Schritten dargestellt: 1) Die Worker-Benutzeroberfläche und die Tools werden generiert und die Aufgabe wird den Auftragnehmern zur Verfügung gestellt, 2) die Mitarbeiter überprüfen die Eingabedaten und schließlich 3) werden die Ergebnisse in Amazon S3 gespeichert.

![\[Verwenden Sie die erweiterte KI von Amazon mit Amazon Textract\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/diagrams/product-page-diagram_A21-Components_Textract@2x.png)


Sie können festlegen, wann Amazon Textract eine Aufgabe zur Überprüfung an einen menschlichen Auftragnehmer sendet, wenn Sie einen Workflow oder eine Ablaufdefinition für die menschliche Überprüfung erstellen, indem Sie *Aktivierungsbedingungen* festlegen. 

Sie können die folgenden Aktivierungsbedingungen festlegen, wenn Sie den Aufgabentyp Amazon Textract verwenden:
+ Initiieren Sie eine menschliche Überprüfung für bestimmte Formularschlüssel auf der Grundlage der Vertrauensbewertung für Formularschlüssel. 
+ Veranlassen Sie eine menschliche Überprüfung, wenn bestimmte Formularschlüssel fehlen. 
+ Initiieren Sie eine menschliche Überprüfung für alle von Amazon Textract identifizierten Formularschlüssel mit Vertrauensbewertungen in einem bestimmten Bereich.
+ Senden Sie eine Stichprobe von Formularen nach dem Zufallsprinzip an Personen für die Überprüfung durch Menschen.

Wenn Ihre Aktivierungsbedingung von den Vertrauensbewertungen der Formularschlüssel abhängt, können Sie zwei Arten des Voraussagevertrauens verwenden, um Human Loops zu initiieren:
+ **Identifizierungsvertrauen** – Die Vertrauensbewertung für Schlüssel-Wert-Paare, die in einem Formular erkannt werden.
+ **Qualifikationsvertrauen** – Die Vertrauensbewertungen für Text, der in Schlüssel und Wert in einem Formular enthalten ist.

In der Abbildung im folgenden Abschnitt ist **Vollständiger Name: Jane Doe** das Schlüssel-Wert-Paar, **Full Name** ist der Schlüssel und **Jane Doe** ist der Wert.

Sie können diese Aktivierungsbedingungen mithilfe der Amazon SageMaker AI-Konsole festlegen, wenn Sie einen Workflow für die Überprüfung durch Menschen erstellen, oder indem Sie eine JSON-Datei für Aktivierungsbedingungen in menschlicher Schleife erstellen und diese als Eingabe im `HumanLoopActivationConditions` Parameter des `CreateFlowDefinition` API-Vorgangs angeben. Informationen zum Festlegen von Aktivierungsbedingungen im JSON-Format finden Sie unter [JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md) und [Verwenden eines JSON-Schemas für Bedingungen zur Aktivierung eines Human Loops mit Amazon Textract](a2i-json-humantaskactivationconditions-textract-example.md).

**Anmerkung**  
Wenn Sie Augmented AI mit Amazon Textract verwenden, erstellen Sie Augmented AI-Ressourcen in derselben AWS Region, die Sie für Anrufe `AnalyzeDocument` verwenden. 

## Erste Schritte: Integrieren Sie eine menschliche Überprüfung in einen Amazon Textract Dokument Analyse-Auftrag
<a name="a2i-create-textract-human-review"></a>

Um eine menschliche Überprüfung in einen Amazon Textract Texterkennungs- und Analyseauftrag zu integrieren, müssen Sie eine Ablaufdefinition erstellen und dann die Amazon Textract API verwenden, um diese Ablaufdefinition in Ihren Workflow zu integrieren. Informationen zum Erstellen einer Flow-Definition mithilfe der SageMaker AI-Konsole oder der Augmented AI-API finden Sie in den folgenden Themen:
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)](a2i-create-flow-definition.md#a2i-create-human-review-console)
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)](a2i-create-flow-definition.md#a2i-create-human-review-api)

Nachdem Sie Ihre Ablaufdefinition erstellt haben, lesen Sie bitte den Abschnitt [erweiterte KI mit Amazon Textract](https://docs.aws.amazon.com/textract/latest/dg/a2i-textract.html) verwenden, um zu erfahren, wie Sie Ihre Ablaufdefinition in Ihre Amazon-Textract-Aufgabe integrieren können. 

## End-to-End Beispiel für die Verwendung von Amazon Textract und Amazon A2I
<a name="a2i-task-types-textract-notebook-demo"></a>

Ein end-to-end Beispiel, das zeigt, wie Amazon Textract mit Amazon A2I über die Konsole verwendet wird, finden Sie unter. [Tutorial: Erste Schritte in der Amazon-A2I-Konsole](a2i-get-started-console.md)

Um zu erfahren, wie Sie die Amazon A2I-API verwenden, um eine menschliche Überprüfung zu erstellen und zu starten, können Sie die [Amazon Augmented AI (Amazon A2I) -Integration mit Analyze Document [Beispiel] von Amazon Textract](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Textract%20AnalyzeDocument.ipynb) in einer SageMaker Notebook-Instance verwenden. Um zu beginnen, sehen Sie sich [Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook](a2i-task-types-general.md#a2i-task-types-notebook-demo) an.

## Vorschau der A2I Textract-Auftragnehmer-Konsole
<a name="a2i-textract-console-preview"></a>

Wenn sie eine Überprüfungsaufgabe in einem Amazon-Textract-Workflow zugewiesen bekommen, sehen die Auftragnehmer möglicherweise eine Benutzeroberfläche ähnlich der folgenden:

![\[Beispiel für eine Überprüfungsaufgabe in der A2I-Textract-Worker-Konsole.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i-textract-example.png)


Sie können diese Oberfläche in der SageMaker KI-Konsole anpassen, wenn Sie Ihre menschliche Bewertungsdefinition erstellen, oder indem Sie eine benutzerdefinierte Vorlage erstellen und verwenden. Weitere Informationen hierzu finden Sie unter [Worker-Aufgabenvorlagen erstellen und verwalten](a2i-instructions-overview.md).

# Verwenden Sie Amazon Augmented AI mit Amazon Rekognition
<a name="a2i-rekognition-task-type"></a>

Mit Amazon Rekognition ist es einfach, Bildanalysen zu Ihren Anwendungen hinzuzufügen. Die Amazon Rekognition `DetectModerationLabels`-API-Operation ist direkt in Amazon A2I integriert, sodass Sie leicht eine Human Loop erstellen können, um unsichere Bilder wie z. B. nicht jugendfreie oder gewalttätige Inhalte zu überprüfen. Sie können `DetectModerationLabels` nutzen, um eine Human Loop mithilfe eines Flow-Definition-ARN zu konfigurieren. Dies ermöglicht es Amazon A2I, von Amazon Rekognition erstellte Vorhersagen zu analysieren und Ergebnisse an eine Person zur menschlichen Prüfung zu senden, wenn sie die Bedingungen in Ihrer Flow-Definition erfüllen.

Die folgende Abbildung zeigt den integrierten Amazon-A2I-Workflow mit Amazon Rekognition. Auf der linken Seite sind die Ressourcen dargestellt, die für die Erstellung eines Amazon-Rekognition-Workflows zur Überprüfung durch Auftragnehmer erforderlich sind: ein Amazon-S3-Bucket, Aktivierungsbedingungen, eine Worker-Aufgabenvorlagen und ein Arbeitsteam. Diese Ressourcen werden verwendet, um einen Workflow oder eine Flow-Definition für die menschliche Überprüfung zu erstellen. Ein Pfeil zeigt nach rechts auf den nächsten Schritt im Workflow: die Verwendung von Amazon Rekognition, um einen Human Loop mit dem menschlichen Überprüfungs-Workflow zu konfigurieren. Ein zweiter Pfeil zeigt von diesem Schritt nach rechts zu dem Schritt, in dem die Aktivierungsbedingungen erfüllt sind, die im Workflow zur menschlichen Überprüfung festgelegt wurden. Dadurch wird die Entstehung einer Human Loop eingeleitet. Auf der rechten Seite des Bildes wird der Human Loop in drei Schritten dargestellt: 1) Die Worker-Benutzeroberfläche und die Tools werden generiert und die Aufgabe wird den Auftragnehmern zur Verfügung gestellt, 2) die Auftragnehmer überprüfen die Eingabedaten und schließlich 3) werden die Ergebnisse in Amazon S3 gespeichert.

![\[Verwenden Sie Amazon Augmented AI mit Amazon Rekognition\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/diagrams/product-page-diagram_A2I-Components_Rekognition@2x.png)


Sie können die folgenden Aktivierungsbedingungen festlegen, wenn Sie den Amazon Rekognition Aufgabentyp verwenden:
+ Eine menschliche Prüfung für durch Amazon Rekognition identifizierte Beschriftungen basierend auf dem Konfidenzwert der Beschriftung auslösen.
+ Senden Sie eine Probe von Bildern nach dem Zufallsprinzip an Personen für die Prüfung durch Menschen.

Sie können diese Aktivierungsbedingungen mithilfe der Amazon SageMaker AI-Konsole festlegen, wenn Sie einen Workflow zur Überprüfung durch Menschen erstellen, oder indem Sie eine JSON-Datei für Aktivierungsbedingungen in menschlicher Schleife erstellen und diese als Eingabe im `HumanLoopActivationConditions` Parameter des `CreateFlowDefinition` API-Vorgangs angeben. Informationen zum Festlegen von Aktivierungsbedingungen im JSON-Format finden Sie unter [JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md) und [Verwenden eines JSON-Schemas für Bedingungen zur Aktivierung eines Human Loops mit Amazon Rekognition](a2i-json-humantaskactivationconditions-rekognition-example.md).

**Anmerkung**  
Wenn Sie Augmented AI mit Amazon Rekognition verwenden, erstellen Sie Augmented AI-Ressourcen in derselben AWS Region, in der Sie anrufen. `DetectModerationLabels` 

## Erste Schritte: Integrieren einer menschlichen Prüfung in einen Amazon Rekognition Image-Moderationsauftrag
<a name="a2i-create-rekognition-human-review"></a>

Informationen zur Integration einer menschlichen Prüfung in Amazon Rekognition finden Sie in den folgenden Themen:
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)](a2i-create-flow-definition.md#a2i-create-human-review-console)
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)](a2i-create-flow-definition.md#a2i-create-human-review-api)

Nachdem Sie Ihre Flow-Definition erstellt haben, finden Sie unter [Verwenden von Augmented AI mit Amazon Rekognition](https://docs.aws.amazon.com/rekognition/latest/dg/a2i-rekognition.html) Informationen zum Integrieren Ihrer Flow-Definition in Ihre Amazon-Rekognition-Aufgabe. 

## End-to-end Demo mit Amazon Rekognition und Amazon A2I
<a name="a2i-task-types-rekognition-notebook-demo"></a>

Ein end-to-end Beispiel, das zeigt, wie Amazon Rekognition mit Amazon A2I über die Konsole verwendet wird, finden Sie unter. [Tutorial: Erste Schritte in der Amazon-A2I-Konsole](a2i-get-started-console.md)

Um zu erfahren, wie Sie mit der Amazon A2I API eine menschliche Bewertung erstellen und starten können, können Sie die [Amazon Augmented AI (Amazon A2I) -Integration mit Amazon Rekognition [Beispiel]](https://github.com/aws-samples/amazon-a2i-sample-jupyter-notebooks/blob/master/Amazon%20Augmented%20AI%20(A2I)%20and%20Rekognition%20DetectModerationLabels.ipynb) in einer Notebook-Instance verwenden. SageMaker Um zu beginnen, sehen Sie sich [Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook](a2i-task-types-general.md#a2i-task-types-notebook-demo) an.

## Vorversion der A2I Rekognition-Aufragnehmerkonsole
<a name="a2i-rekognition-console-preview"></a>

Wenn ihnen eine Überprüfungsaufgabe in einem Amazon-Rekognition-Workflow zugewiesen wird, sehen die Auftragnehmer möglicherweise eine Benutzeroberfläche ähnlich der folgenden:

![\[Beispielbild in der A2I-Rekognition-Worker-Konsole.\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i-rekognition-example.png)


Sie können diese Oberfläche in der SageMaker KI-Konsole anpassen, wenn Sie Ihre Definition für menschliche Bewertungen erstellen, oder indem Sie eine benutzerdefinierte Vorlage erstellen und verwenden. Weitere Informationen hierzu finden Sie unter [Worker-Aufgabenvorlagen erstellen und verwalten](a2i-instructions-overview.md).

# Verwenden von Amazon Augmented AI mit benutzerdefinierten Aufgabentypen
<a name="a2i-task-types-custom"></a>

Sie können Amazon Augmented AI (Amazon A2I) verwenden, um mithilfe des *benutzerdefinierten Aufgabentyps* eine menschliche Überprüfung (Human Loop) in *jeden* Machine-Learning-Workflow zu integrieren. Diese Option bietet Ihnen die größte Flexibilität, um die Bedingungen, unter denen Ihre Datenobjekte zur menschlichen Überprüfung gesendet werden, sowie das Aussehen und die Bedienung Ihrer Worker-Benutzeroberfläche anzupassen.

Wenn Sie einen benutzerdefinierten Aufgabentyp verwenden, erstellen Sie einen benutzerdefinierten Workflow für die menschliche Überprüfung und geben die Bedingungen an, unter denen ein Datenobjekt direkt in Ihrer Anwendung zur menschlichen Überprüfung gesendet wird. 

Die folgende Abbildung zeigt den benutzerdefinierten Amazon-A2I-Workflow. Ein benutzerdefiniertes ML-Modell wird verwendet, um Vorhersagen zu generieren. Die Client-Anwendung filtert diese Vorhersagen anhand benutzerdefinierter Kriterien und bestimmt, ob eine menschliche Überprüfung erforderlich ist. Wenn ja, werden diese Vorhersagen zur Überprüfung durch einen Menschen an Amazon A2I gesendet. Amazon A2I sammelt die Ergebnisse der Überprüfung durch einen Menschen in Amazon S3, auf die die Client-Anwendung zugreifen kann. Wenn der Filter feststellt, dass keine menschliche Überprüfung erforderlich ist, können Prognosen direkt an die Client-Anwendung übermittelt werden. 

![\[Verwenden von Amazon Augmented AI mit benutzerdefinierten Aufgabentypen\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/a2i/diagrams/product-page-diagram_A2I-Components_Custom@2x.png)


Verwenden Sie die Verfahren auf dieser Seite, um zu erfahren, wie Sie Amazon A2I mithilfe des benutzerdefinierten Aufgabentyps in jeden Workflow für Machine Learning integrieren können. 

**Um eine Human Loop mit einer Flow-Definition zu erstellen, integrieren Sie sie in Ihre Anwendung und überwachen die Ergebnisse**

1. Schließen Sie die Amazon A2I [Voraussetzungen für den Einsatz von Augmented AI](a2i-getting-started-prerequisites.md) ab. Beachten Sie Folgendes: 
   + Der Pfad zu dem/den Amazon Simple Storage Service (Amazon S3)-Bucket(s), in dem/denen Sie Ihre Eingabe- und Ausgabedaten speichern. 
   + Der Amazon-Ressourcenname (ARN) einer AWS Identity and Access Management (IAM) -Rolle mit den angehängten erforderlichen Berechtigungen. 
   + (Optional) Der ARN Ihrer Arbeitskräfte, wenn Sie planen, private Arbeitskräfte zu verwenden. 

1. Erstellen Sie mithilfe von HTML-Elementen eine benutzerdefinierte Worker-Vorlage, die Amazon A2I verwendet, um die Benutzeroberfläche Ihrer Worker-Aufgabe zu generieren. Informationen zum Erstellen einer benutzerdefinierten Vorlage finden Sie unter [Erstellen benutzerdefinierter Auftragnehmervorlagen](a2i-custom-templates.md). 

1. Verwenden Sie die benutzerdefinierte Worker-Vorlage aus Schritt 2, um eine Worker-Aufgabenvorlage in der Amazon SageMaker AI-Konsole zu generieren. Um zu erfahren wie dies geht, vgl. [Erstellen einer Worker-Aufgabenvorlage](a2i-worker-template-console.md#a2i-create-worker-template-console).

   Im nächsten Schritt erstellen Sie eine Flow-Definition:
   + Wenn Sie mithilfe der SageMaker API eine Flow-Definition erstellen möchten, notieren Sie sich den ARN dieser Worker-Aufgabenvorlage für den nächsten Schritt.
   + Wenn Sie eine Flow-Definition mithilfe der Konsole erstellen, wird Ihre Vorlage automatisch im Abschnitt **Worker-Aufgabenvorlagen** angezeigt, wenn Sie **Workflow für die menschliche Überprüfung erstellen** auswählen.

1. Geben Sie beim Erstellen der Flow-Definition den Pfad zu den S3-Buckets, den ARN Ihrer IAM-Rolle und Ihre Worker-Vorlage an. 
   + Informationen zum Erstellen einer Flow-Definition mithilfe der SageMaker `CreateFlowDefinition` AI-API finden Sie unter[Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)](a2i-create-flow-definition.md#a2i-create-human-review-api). 
   + Informationen zum Erstellen einer Flow-Definition mithilfe der SageMaker AI-Konsole finden Sie unter[Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)](a2i-create-flow-definition.md#a2i-create-human-review-console).

1. Konfigurieren Sie Ihre Human Loop mit der [Amazon-A2I-Laufzeit-API](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/Welcome.html). Um zu erfahren wie dies geht, vgl. [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md). 

1. Um zu steuern, wann menschliche Überprüfungen in Ihrer Anwendung initiiert werden, legen Sie Bedingungen fest, unter denen `StartHumanLoop` in Ihrer Anwendung aufgerufen wird. Bedingungen für das Aktivieren einer Human Loop wie Konfidenzschwellenwerte, die die Human Loop auslösen, sind nicht verfügbar, wenn Amazon A2I mit benutzerdefinierten Aufgabentypen verwendet wird. Jeder `StartHumanLoop`-Aufruf führt zu einer menschlichen Überprüfung.

Sobald Sie einen Human Loop gestartet haben, können Sie Ihre Loops mithilfe der Amazon Augmented AI Runtime API und Amazon EventBridge (auch bekannt als Amazon CloudWatch Events) verwalten und überwachen. Weitere Informationen hierzu finden Sie unter [Überwachen und verwalten Ihrer menschlichen Schleife](a2i-monitor-humanloop-results.md).

## End-to-end Tutorial zur Verwendung benutzerdefinierter Amazon A2I-Aufgabentypen
<a name="a2i-task-types-custom-notebook-demo"></a>

Ein end-to-end Beispiel, das zeigt, wie Amazon A2I in eine Vielzahl von ML-Workflows integriert werden kann, finden Sie in [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md) der Tabelle unter. Informationen zu den ersten Schritten mit einem dieser Notebooks finden Sie unter [Verwenden Sie die SageMaker Notebook-Instance mit Amazon A2I Jupyter Notebook](a2i-task-types-general.md#a2i-task-types-notebook-demo).

# Erstellen eines Arbeitsablaufs für die menschliche Überprüfung
<a name="a2i-create-flow-definition"></a>

Verwenden Sie einen Amazon Augmented AI (Amazon A2I) *menschlichen Überprüfungsworkflow* oder eine *flow definition*, um Folgendes festzulegen:
+ Für die Amazon Textract und Amazon Rekognition integrierten Aufgabentypen die Bedingungen, unter denen Ihre Human Loop aufgerufen wird.
+ Die Belegschaft, an die Ihre Aufgaben gesendet werden
+ Die Anweisungen, die Ihre Arbeitskräfte erhalten werden und die als *Auftragnehmer-Aufgabenvorlage* bezeichnet werden.
+ Die Konfiguration Ihrer Arbeitsaufgaben, einschließlich der Anzahl der Auftragnehmer, die eine Aufgabe erhalten, und der Zeitbeschränkungen für den Abschluss von Aufgaben. 
+ Wo Ihre Ausgabedaten gespeichert werden 

Sie können in der SageMaker KI-Konsole oder mithilfe der SageMaker [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)KI-Operation einen Workflow für die Überprüfung durch Menschen erstellen. Sie können eine Arbeitsaufgabenvorlage mithilfe der Konsole für Amazon-Textract- und Amazon-Rekognition-Aufgabentypen erstellen, während Sie Ihre Flow-Definition erstellen.

**Wichtig**  
Die Aktivierungsbedingungen für Human Loop, die Human Loop initiieren – z. B. Vertrauensschwellen – sind für benutzerdefinierte Aufgabentypen von Amazon A2I nicht verfügbar. Wenn Sie mithilfe der Konsole eine Flow-Definition für einen benutzerdefinierten Aufgabentyp erstellen, können Sie keine Aktivierungsbedingungen angeben. Wenn Sie mithilfe der Amazon A2I API eine Flow-Definition für einen benutzerdefinierten Aufgabentyp verwenden, können Sie das `HumanLoopActivationConditions` Attribut des `HumanLoopActivationConditionsConfig` Parameters nicht festlegen. Um zu steuern, wann Prüfungen durch Menschen (Human Review) initiiert werden, legen Sie Bedingungen fest, unter denen `StartHumanLoop` in Ihrer benutzerdefinierten Anwendung aufgerufen wird. In diesem Fall führt jeder `StartHumanLoop`-Aufruf zu einer menschlichen Überprüfung. Weitere Informationen finden Sie unter [Verwenden von Amazon Augmented AI mit benutzerdefinierten Aufgabentypen](a2i-task-types-custom.md).

**Voraussetzungen**

Um eine Flow-Definition erstellen zu können, müssen die unter [Voraussetzungen für den Einsatz von Augmented AI](a2i-getting-started-prerequisites.md) beschriebenen Voraussetzungen erfüllt sein. 

Wenn Sie die API verwenden, um eine Flow-Definition für einen beliebigen Aufgabentyp zu erstellen oder wenn Sie beim Erstellen einer Flow-Definition in der Konsole einen benutzerdefinierten Aufgabentyp verwenden, müssen Sie zuerst eine Arbeitsaufgabenvorlage erstellen. Weitere Informationen finden Sie unter [Worker-Aufgabenvorlagen erstellen und verwalten](a2i-instructions-overview.md).

Wenn Sie während der Erstellung einer Flow-Definition für einen integrierten Aufgabentyp in der Konsole eine Vorschau Ihrer Arbeitsaufgabenvorlage anzeigen möchten, stellen Sie sicher, dass Sie der Rolle, die Sie zum Erstellen der Flow-Definition verwenden, eine Zugriffsberechtigung für den Amazon S3 Bucket erteilen, der Ihre Vorlagen-Artefakte enthält. Verwenden Sie dafür eine Richtlinie wie unter [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai) beschrieben.



**Topics**
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)](#a2i-create-human-review-console)
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)](#a2i-create-human-review-api)
+ [JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md)

## Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)
<a name="a2i-create-human-review-console"></a>

Gehen Sie wie folgt vor, um mithilfe der KI-Konsole einen Amazon Augmented AI (Amazon A2I) -Workflow für die SageMaker menschliche Überprüfung zu erstellen. Wenn Sie noch nicht mit Amazon A2I gearbeitet haben, empfehlen wir Ihnen, ein privates Arbeitsteam mit Auftragnehmern in Ihrer Organisation zu erstellen und beim Erstellen der Flow-Definition den ARN dieses Arbeitsteams zu verwenden. Weitere Informationen zum Einrichten einer privaten Belegschaft und zum Erstellen eines Arbeitsteams finden Sie unter [Eine private Belegschaft erstellen (Amazon SageMaker AI Console)](sms-workforce-create-private-console.md). Wenn Sie bereits eine private Belegschaft eingerichtet haben, beachten Sie die Informationen unter [Erstellen Sie mithilfe der SageMaker KI-Konsole ein Arbeitsteam](sms-workforce-management-private-console.md#create-workteam-sm-console), um zu erfahren, wie Sie dieser Belegschaft ein Arbeitsteam hinzufügen.

Wenn Sie Amazon A2I mit einem der integrierten Aufgabentypen verwenden, können Sie Anweisungen für Auftragnehmer mithilfe einer standardmäßigen, von Augmented AI bereitgestellten Auftragnehmer-Aufgabenvorlage erstellen, während Sie einen Workflow für die Prüfung durch Menschen in der Konsole erstellen. Beispiele für Standardvorlagen, die von Augmented AI bereitgestellt werden, finden Sie in den integrierten Aufgabentypen in [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md).

**So erstellen Sie eine Flow-Definition (Konsole):**

1. Öffnen Sie die SageMaker AI-Konsole unter. [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)

1. Wählen Sie im Navigationsbereich unter dem Abschnitt **Augmented AI** die Option **Human review workflows (Workflows für die Prüfung durch Menschen)** und dann **Create human review workflow (Workflow für Prüfung durch Menschen erstellen)** aus.

1. Führen Sie unter **Overview (Übersicht)** die folgenden Schritte aus:

   1. Geben Sie für **Name** einen eindeutigen Workflownamen ein. Der Name muss in Kleinbuchstaben geschrieben und innerhalb der AWS Region Ihres Kontos eindeutig sein. Er kann bis zu 63 Zeichen lang sein. Gültige Zeichen sind: a - z, 0 - 9 und – (Bindestrich).

   1. Geben Sie unter **S3 location for output (S3-Speicherort für die Ausgabe)** den S3-Bucket ein, in dem Sie die Ergebnisse der Prüfung durch Menschen (Human Review) speichern möchten. Der Bucket muss sich in derselben AWS Region wie der Workflow befinden.

   1. Wählen Sie für **IAM-Rolle** eine IAM-Rolle, die über die erforderlichen Berechtigungen verfügt. Wenn Sie einen integrierten Aufgabentyp auswählen und eine Vorschau der Auftragnehmervorlage in der Konsole anzeigen möchten, geben Sie eine Rolle an, der der unter [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai) beschriebene Richtlinientyp angefügt ist.

1. Wählen Sie für **Task type (Aufgabentyp)** den Aufgabentyp aus, den der menschliche Auftragnehmer ausführen soll. 

1. Wenn Sie den Amazon Rekognition or Amazon Textract Aufgabentyp ausgewählt haben, geben Sie die Bedingungen an, die eine Prüfung durch Menschen hervorrufen.
   + Wählen Sie für Amazon Rekognition Image-Moderationsaufgaben ein Schwellenintervall für den Inferenz-Konfidenzwert aus, das die Prüfung durch Menschen auslöst. 
   + Bei Amazon-Textract-Aufgaben können Sie eine Prüfung durch Menschen veranlassen, wenn bestimmte Formularschlüssel fehlen oder der Konfidenzwert für deren Erkennung gering ist. Eine Prüfung durch Menschen kann auch veranlasst werden, wenn der Konfidenzwert nach der Auswertung aller Formularschlüssel im Text unter dem erforderlichen Schwellenwert für Formularschlüssel liegt. Es werden zwei Variablen angezeigt, mit denen Sie Ihre Konfidenzschwellenwerte angeben können: **Identification confidence** und **Qualification confidence**. Weitere Informationen zu diesen Variablen finden Sie unter [Verwenden Sie die erweiterte KI von Amazon mit Amazon Textract](a2i-textract-task-type.md).
   + Für beide Aufgabentypen können Sie willkürlich einen Prozentsatz von Datenobjekten (Bilder oder Formulare) und deren Bezeichnungen an Personen zur Prüfung durch Menschen senden. 

1. Konfigurieren Sie Ihre Auftragnehmer-Aufgabenvorlage und geben Sie diese an:

   1. Wenn Sie den Aufgabentyp Amazon Rekognition oder Amazon Textract verwenden:

      1. Gehen Sie im Abschnitt **Create template (Vorlage erstellen)** wie folgt vor: 
        + Um Anweisungen für Ihre Auftragnehmer über die Amazon-A2I-Standardvorlage für die Aufgabentypen Amazon Rekognition und Amazon Textract zu erstellen, wählen Sie **Build from a default template** aus.
          + Wenn Sie **Build form a default template (Anhand von Standardvorlage erstellen)** auswählen, erstellen Sie Ihre Anweisungen unter **Worker task design (Auftragnehmer-Aufgabenentwurf)**: 
            + Geben Sie einen **Vorlagennamen** an, der in der AWS Region, in der Sie sich befinden, eindeutig ist. 
            + Geben Sie im Abschnitt **Instructions (Anweisungen)** ausführliche Anweisungen zum Durchführen Ihrer Aufgabe an. Um Auftragnehmern dabei zu helfen, eine höhere Genauigkeit zu erreichen, geben Sie gute und schlechte Beispiele an. 
            + (Optional) Stellen Sie Ihren Auftragnehmern unter **Additional instructions (Zusätzliche Anweisungen)** zusätzliche Informationen und Anweisungen zur Verfügung. 

              Informationen zum Erstellen effektiver Anweisungen finden Sie unter [Erstellen von guten Anweisungen für Auftragnehmer](a2i-creating-good-instructions-guide.md).
        + Um eine von Ihnen erstellte benutzerdefinierte Vorlage auszuwählen, wählen Sie die Vorlage im Menü **Template (Vorlage)** aus und geben Sie eine **Task description (Aufgabenbeschreibung)** an, um die Aufgabe für Ihre Arbeitskräfte kurz zu beschreiben. Informationen zum Erstellen einer benutzerdefinierten Vorlage finden Sie unter [Erstellen einer Worker-Aufgabenvorlage](a2i-worker-template-console.md#a2i-create-worker-template-console).

   1. Bei Verwendung des benutzerdefinierten Aufgabentyps:

      1. Wählen Sie im Bereich **Worker task template** Ihre Vorlage aus der Liste aus. Alle Vorlagen, die Sie in der SageMaker AI-Konsole erstellt haben, werden in dieser Liste angezeigt. Informationen zum Erstellen einer Vorlage für benutzerdefinierte Aufgabentypen finden Sie unter [Worker-Aufgabenvorlagen erstellen und verwalten](a2i-instructions-overview.md).

1. (Optional) Vorschau der Auftragnehmervorlage: 

   Bei den Aufgabentypen Amazon Rekognition und Amazon Textract haben Sie die Möglichkeit, **See a sample worker task** auszuwählen, um eine Vorschau der Benutzeroberfläche für Auftragnehmeraufgaben anzuzeigen.

   Wenn Sie eine Flow-Definition für einen benutzerdefinierten Aufgabentyp erstellen, können Sie mithilfe der Operation `RenderUiTemplate`eine Vorschau der Benutzeroberfläche für Auftragnehmeraufgaben anzeigen. Weitere Informationen finden Sie unter [Vorschau einer Vorlage für Auftragnehmeraufgaben](a2i-custom-templates.md#a2i-preview-your-custom-template).

1. Wählen Sie für **Workers (Auftragnehmer)** einen Arbeitskräftetyp aus.

1. Wählen Sie **Erstellen** aus.

### Nächste Schritte
<a name="a2i-next-step-createflowdefinition-console"></a>

Nachdem Sie einen Workflow für die Prüfung durch Menschen erstellt haben, wird er in der Konsole unter **Human review workflows (Workflows für die Prüfung durch Menschen)** angezeigt. Um den Amazon-Ressourcennamen (ARN) und die Konfigurationsdetails Ihrer Flow-Definition anzuzeigen, wählen Sie den Workflow durch Auswahl seines Namens aus. 

Wenn Sie einen integrierten Aufgabentyp verwenden, können Sie den ARN der Flow-Definition verwenden, um mithilfe der API dieses AWS Dienstes (z. B. der Amazon Textract Textract-API) eine menschliche Schleife zu starten. Für benutzerdefinierte Aufgabentypen können Sie den ARN verwenden, um Human Loop für die Prüfung durch Menschen unter Verwendung der Amazon Augmented AI Runtime API zu starten. Weitere Informationen zu beiden Optionen finden Sie unter [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md).

## Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)
<a name="a2i-create-human-review-api"></a>

Um eine Flow-Definition mithilfe der SageMaker API zu erstellen, verwenden Sie den Vorgang. `CreateFlowDefinition` Nachdem Sie [Voraussetzungen für den Einsatz von Augmented AI](a2i-getting-started-prerequisites.md) abgeschlossen haben, gehen Sie wie folgt vor, um zu erfahren, wie Sie diesen API-Vorgang verwenden. 

Eine Übersicht über die `CreateFlowDefinition` Operation und Details zu den einzelnen Parametern finden Sie unter [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html). 

**So erstellen Sie eine Flow-Definition (API)**

1. Geben Sie für `FlowDeﬁnitionName` einen eindeutigen Namen ein. Der Name muss innerhalb der AWS Region Ihres Kontos eindeutig sein und kann bis zu 63 Zeichen lang sein. Gültige Zeichen sind: a - z, 0 - 9 und – (Bindestrich).

1. Geben Sie für `RoleArn` den ARN der Rolle ein, die Sie konfiguriert haben, um Zugriff auf Ihre Datenquellen zu gewähren.

1. Geben Sie für `HumanLoopConfig` Informationen zu den Arbeitskräften und zu den gewünschten Informationen ein. Informationen zu den einzelnen Parametern in `HumanLoopConfig` finden Sie unter [HumanLoopConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html#sagemaker-CreateFlowDefinition-request-HumanLoopActivationConfig).

1. (Optional) Wenn Sie einen integrierten Aufgabentyp verwenden, stellen Sie Bedingungen bereit, die Human Loop für die Prüfung durch Menschen in `HumanLoopActivationConﬁg` auslösen. Informationen zum Erstellen der Eingabe, die für den Parameter `HumanLoopActivationConﬁg` erforderlich ist, finden Sie unter [JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md). Wenn Sie hier keine Bedingungen angeben, sendet dieser Service bei der Bereitstellung einer Flow-Definition für den AWS Service, der mit einem integrierten Aufgabentyp verknüpft ist (z. B. Amazon Textract oder Amazon Rekognition), jede Aufgabe zur Überprüfung an einen menschlichen Mitarbeiter. 

   Wenn Sie einen benutzerdefinierten Aufgabentyp verwenden, ist `HumanLoopActivationConfig` deaktiviert. Informationen zum Steuern, wann Aufgaben mithilfe eines benutzerdefinierten Aufgabentyps an menschliche Mitarbeiter gesendet werden, finden Sie unter [Verwenden von Amazon Augmented AI mit benutzerdefinierten Aufgabentypen](a2i-task-types-custom.md).

1. (Optional) Wenn Sie einen integrierten Aufgabentyp verwenden, geben Sie die Integrationsquelle (z. B. Amazon Rekognition oder Amazon Textract) im Parameter an. [HumanLoopRequestSource](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HumanLoopRequestSource.html)

1. Geben Sie für `OutputConfig` an, wo in Amazon Simple Storage Service (Amazon S3) die Ausgabe der Human Loop gespeichert werden soll.

1. (Optional) Verwenden Sie `Tags`, um Schlüssel-Wert-Paare einzugeben, die Sie bei der Kategorisierung und Organisation einer Ablaufdefinition unterstützen. Jedes Tag besteht aus einem Schlüssel und einem Wert, die Sie beide selbst definieren.

------
#### [ Amazon Textract – Key-value pair extraction ]

Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Erstellung eines Amazon-Textract-Workflows für die menschliche Überprüfung (Flow-Definition) unter Verwendung von AWS SDK für Python (Boto3). Sie müssen `'AWS/Textract/AnalyzeDocument/Forms/V1'` verwenden, um Amazon Textract Human Loop zu erstellen. Beziehen Sie `PublicWorkforceTaskPrice` nur ein, wenn Sie die Mechanical Turk-Workforce nutzen.

```
sagemaker_client = boto3.client('sagemaker', aws_region)

response = sagemaker_client.create_flow_definition(
    FlowDefinitionName='ExampleFlowDefinition',
    HumanLoopRequestSource={
         'AwsManagedHumanLoopRequestSource': 'AWS/Textract/AnalyzeDocument/Forms/V1'
    }, 
    HumanLoopActivationConfig={
        'HumanLoopActivationConditionsConfig': {
            'HumanLoopActivationConditions': '{...}'
        }
    },
    HumanLoopConfig={
        'WorkteamArn': 'arn:aws:sagemaker:aws_region:aws_account_number:workteam/private-crowd/workteam_name',
        'HumanTaskUiArn': 'arn:aws:sagemaker:aws_region:aws_account_number:human-task-ui/template_name',
        'TaskTitle': 'Example task title',
        'TaskDescription': 'Example task description.',
        'TaskCount': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskKeywords': [
            'Keyword1','Keyword2'
        ],
        'PublicWorkforceTaskPrice': {
            'AmountInUsd': {
                'Dollars': 123,
                'Cents': 123,
                'TenthFractionsOfACent': 123
            }
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/',
        'KmsKeyId': '1234abcd-12ab-34cd-56ef-1234567890ab'
    },
    RoleArn='arn:aws:iam::aws_account_number:role/role_name',
    Tags=[
        {
            'Key': 'KeyName',
            'Value': 'ValueName'
        },
    ]
)
```

------
#### [ Amazon Rekognition – Image moderation ]

Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Erstellung eines Amazon-Rekognition-Workflows zur Überprüfung durch Menschen (Flow-Definition) unter Verwendung von AWS SDK für Python (Boto3). Sie müssen `'AWS/Rekognition/DetectModerationLabels/Image/V3'` verwenden, um eine Amazon-Rekognition-Flow-Definition zu erstellen. Nur `PublicWorkforceTaskPrice` einbeziehen, wenn Sie die Mechanical Turk-Workforce nutzen.

```
sagemaker_client = boto3.client('sagemaker', aws_region)

response = sagemaker_client.create_flow_definition(
    FlowDefinitionName='ExampleFlowDefinition',
    HumanLoopRequestSource={
         'AwsManagedHumanLoopRequestSource': 'AWS/Rekognition/DetectModerationLabels/Image/V3'
    }, 
    HumanLoopActivationConfig={
        'HumanLoopActivationConditionsConfig': {
            'HumanLoopActivationConditions': '{...}'
        }
    },
    HumanLoopConfig={
        'WorkteamArn': 'arn:aws:sagemaker:aws_region:aws_account_number:workteam/private-crowd/workteam_name',
        'HumanTaskUiArn': 'arn:aws:sagemaker:aws_region:aws_account_number:human-task-ui/template_name',
        'TaskTitle': 'Example task title',
        'TaskDescription': 'Example task description.',
        'TaskCount': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskKeywords': [
            'Keyword1','Keyword2'
        ],
        'PublicWorkforceTaskPrice': {
            'AmountInUsd': {
                'Dollars': 123,
                'Cents': 123,
                'TenthFractionsOfACent': 123
            }
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/',
        'KmsKeyId': '1234abcd-12ab-34cd-56ef-1234567890ab'
    },
    RoleArn='arn:aws:iam::aws_account_number:role/role_name',
    Tags=[
        {
            'Key': 'KeyName',
            'Value': 'ValueName'
        },
    ]
)
```

------
#### [ Custom Workflow ]

Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Erstellung eines Workflows zur Überprüfung durch einen Auftragnehmer (Flow-Definition) für eine benutzerdefinierte Integration. Um diese Art von Überprüfungsworkflow zu erstellen, lassen Sie `HumanLoopRequestSource` in der Ablaufdefinitionsanforderung weg. Sie müssen nur `PublicWorkforceTaskPrice` angeben, wenn Sie die Mechanical Turk-Workforce nutzen.

```
sagemaker_client = boto3.client('sagemaker', aws_region)

response = sagemaker_client.create_flow_definition(
    FlowDefinitionName='ExampleFlowDefinition',
    HumanLoopActivationConfig={
        'HumanLoopActivationConditionsConfig': {
            'HumanLoopActivationConditions': '{...}'
        }
    },
    HumanLoopConfig={
        'WorkteamArn': 'arn:aws:sagemaker:aws_region:aws_account_number:workteam/private-crowd/workteam_name',
        'HumanTaskUiArn': 'arn:aws:sagemaker:aws_region:aws_acount_number:human-task-ui/template_name',
        'TaskTitle': 'Example task title',
        'TaskDescription': 'Example task description.',
        'TaskCount': 123,
        'TaskAvailabilityLifetimeInSeconds': 123,
        'TaskTimeLimitInSeconds': 123,
        'TaskKeywords': [
            'Keyword1','Keyword2'
        ],
        'PublicWorkforceTaskPrice': {
            'AmountInUsd': {
                'Dollars': 123,
                'Cents': 123,
                'TenthFractionsOfACent': 123
            }
        }
    },
    OutputConfig={
        'S3OutputPath': 's3://bucket/path/',
        'KmsKeyId': '1234abcd-12ab-34cd-56ef-1234567890ab'
    },
    RoleArn='arn:aws:iam::account_number:role/role_name',
    Tags=[
        {
            'Key': 'KeyName',
            'Value': 'ValueName'
        },
    ]
)
```

------

### Nächste Schritte
<a name="a2i-next-step-createflowdefinition-api"></a>

Der Rückgabewert eines erfolgreichen Aufrufs der API-Operation `CreateFlowDefinition` ist der Amazon-Ressourcenname (ARN) einer Flow-Definition.

Wenn Sie einen integrierten Aufgabentyp verwenden, können Sie den ARN der Flow-Definition verwenden, um mithilfe der API dieses AWS Dienstes (d. h. der Amazon Textract Textract-API) eine menschliche Schleife zu starten. Für benutzerdefinierte Aufgabentypen können Sie den ARN verwenden, um Human Loop unter Verwendung der Amazon Augmented AI Runtime API zu starten. Weitere Informationen zu diesen beiden Optionen finden Sie unter [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md).

# JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI
<a name="a2i-human-fallback-conditions-json-schema"></a>

Der `HumanLoopActivationConditions` ist ein Eingabeparameter der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)-API. Dieser Parameter ist eine JSON-formatierte Zeichenfolge. JSON modelliert die Bedingungen, unter denen eine Human Loop erstellt wird, wenn diese Bedingungen anhand der Antwort einer integrierten KI-Service-API (z. B. `Rekognition.DetectModerationLabels` oder `Textract.AnalyzeDocument`) ausgewertet werden. Diese Antwort wird als *Inferenz*bezeichnet. Amazon Rekognition sendet beispielsweise eine Inferenz einer Moderationsbeschriftung mit einer zugeordneten Vertrauensbewertung. In diesem Beispiel ist die Inferenz die beste Schätzung des Modells für die entsprechende Beschriftung für ein Bild. Für Amazon Textract wird die Inferenz auf der Grundlage der Zuordnung zwischen Textblöcken (*Schlüssel-Wert-Paaren*) erstellt, wie etwa der Zuordnung zwischen `Name:` und `Sue` in einem Formular sowie dem Inhalt innerhalb eines Textblocks oder *Wortblocks*, wie z. B „Name“.

Im Folgenden finden Sie das JSON-Schema. Auf der obersten Ebene verfügt `HumanLoopActivationConditions` über das JSON-Array `Conditions`. Jedes Mitglied dieses Arrays ist eine unabhängige Bedingung, die, wenn sie als `true` ausgewertet wird, dazu führt, dass Amazon A2I eine Human Loop erzeugt. Jede dieser unabhängigen Bedingungen kann eine einfache Bedingung oder eine komplexe Bedingung sein. Eine einfache Bedingung hat die folgenden Attribute:
+ `ConditionType`: Dieses Attribut identifiziert den Typ der Bedingung. Jede AWS KI-Service-API, die in Amazon A2I integriert wird, definiert einen eigenen Satz von zulässigen `ConditionTypes`. 
  + Rekognition `DetectModerationLabels` – Diese API unterstützt die Werte `ModerationLabelConfidenceCheck` und `Sampling` `ConditionType`.
  + Textract `AnalyzeDocument` – Diese API unterstützt die Werte `ImportantFormKeyConfidenceCheck`, `MissingImportantFormKey` und `Sampling``ConditionType`.
+ `ConditionParameters` – Dies ist ein JSON-Objekt, das die Bedingung parametrisiert. Der Satz der zulässigen Attribute dieses Objekts hängt vom Wert des `ConditionType` ab. Jeder `ConditionType` definiert seinen eigenen Satz von `ConditionParameters`. 

Ein Mitglied des `Conditions`-Arrays kann eine komplexe Bedingung modellieren. Dies wird erreicht, indem einfache Bedingungen mit den logischen Operatoren `And` und `Or` logisch miteinander verbunden werden, wobei die zugrunde liegenden einfachen Bedingungen eingebettet werden. Es werden bis zu zwei Verschachtelungsebenen unterstützt. 

```
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
        "Condition": {
            "type": "object",
            "properties": {
                "ConditionType": {
                    "type": "string"
                },
                "ConditionParameters": {
                    "type": "object"
                }
            },
            "required": [
                "ConditionType"
            ]
        },
        "OrConditionArray": {
            "type": "object",
            "properties": {
                "Or": {
                    "type": "array",
                    "minItems": 2,
                    "items": {
                        "$ref": "#/definitions/ComplexCondition"
                    }
                }
            }
        },
        "AndConditionArray": {
            "type": "object",
            "properties": {
                "And": {
                    "type": "array",
                    "minItems": 2,
                    "items": {
                        "$ref": "#/definitions/ComplexCondition"
                    }
                }
            }
        },
        "ComplexCondition": {
            "anyOf": [
                {
                    "$ref": "#/definitions/Condition"
                },
                {
                    "$ref": "#/definitions/OrConditionArray"
                },
                {
                    "$ref": "#/definitions/AndConditionArray"
                }
            ]
        }
    },
    "type": "object",
    "properties": {
        "Conditions": {
            "type": "array",
            "items": {
                "$ref": "#/definitions/ComplexCondition"
            }
        }
    }
}
```

**Anmerkung**  
Human-Loop-Aktivierungsbedingungen sind für Workflows für die Prüfung durch Menschen, die mit benutzerdefinierten Aufgabentypen integriert sind, nicht verfügbar. Der `HumanLoopActivationConditions`-Parameter ist für benutzerdefinierte Aufgabentypen deaktiviert. 

**Topics**
+ [Verwenden eines JSON-Schemas für Bedingungen zur Aktivierung eines Human Loops mit Amazon Textract](a2i-json-humantaskactivationconditions-textract-example.md)
+ [Verwenden eines JSON-Schemas für Bedingungen zur Aktivierung eines Human Loops mit Amazon Rekognition](a2i-json-humantaskactivationconditions-rekognition-example.md)

# Verwenden eines JSON-Schemas für Bedingungen zur Aktivierung eines Human Loops mit Amazon Textract
<a name="a2i-json-humantaskactivationconditions-textract-example"></a>

Bei Verwendung mit Amazon A2I unterstützt die `AnalyzeDocument`-Operation die folgenden Eingaben im `ConditionType`-Parameter:
+ `ImportantFormKeyConfidenceCheck` – Verwenden Sie diese Bedingung, um eine Human Loop zu erstellen, wenn die Zuverlässigkeit innerhalb eines angegebenen Bereichs für Dokumentformularschlüssel und Wortblöcke liegt. Ein *Form key (Formularschlüssel)* ist ein beliebiges Wort in einem Dokument, das einer Eingabe zugeordnet ist. Die Eingabe wird als *Value (Wert)* bezeichnet. Zusammen werden Formularschlüssel und Werte als *Key-Value Pairs (Schlüssel-Wert-Paare)* bezeichnet. Ein *Wortblock* bezieht sich auf die Wörter, die Amazon Textract innerhalb eines erkannten Textblocks erkennt. Weitere Informationen zu Amazon-Textract-Dokumentblöcken finden Sie unter [Dokumente und Blockobjekte](https://docs.aws.amazon.com/textract/latest/dg/how-it-works-document-layout.html) im *Amazon-Textract-Entwicklerhandbuch*.
+ `MissingImportantFormKey` – Verwenden Sie diese Bedingung, um eine Human Loop zu erstellen, wenn Amazon Textract den Schlüssel oder seine zugehörigen Aliase innerhalb des Dokuments nicht identifiziert hat. 
+ `Sampling` – Verwenden Sie diese Bedingung, um einen Prozentsatz von Formularen festzulegen, die unabhängig von Inferenz-Vertrauensbewertungen zur Überprüfung an Menschen geschickt werden sollen. Verwenden Sie diese Bedingung, um Folgendes zu tun:
  + Ihr ML-Modell zu überprüfen, indem Sie alle von Ihrem Modell analysierten Formen Stichproben unterziehen und einen bestimmten Prozentsatz zur Überprüfung an Menschen schicken.
  + Mit der `ImportantFormKeyConfidenceCheck`-Bedingung zufällige Stichproben aus einem Prozentsatz der Inferenzen zu entnehmen, die die in `ImportantFormKeyConfidenceCheck` angegebenen Bedingungen erfüllten, um eine Schleife für die Prüfung durch Menschen (Human Loop) zu starten und nur den angegebenen Prozentsatz zur Überprüfung an Menschen zu senden. 

**Anmerkung**  
Wenn Sie dieselbe Anfrage mehrmals an `AnalyzeDocument` senden, ändert sich das Ergebnis von `Sampling` nicht für die Inferenz dieser Eingabe. Wenn Sie beispielsweise einmal eine `AnalyzeDocument`-Anforderung erstellen und `Sampling` keinen Human Loop initiiert, initiieren nachfolgende Anforderungen an `AnalyzeDocument` mit derselben Konfiguration auch keine Human Loop.

## `ImportantFormKeyConfidenceCheck` Eingaben und Ergebnisse
<a name="a2i-textract-importantformkeycofidencecheck"></a>

`ImportantFormKeyConfidenceCheck` `ConditionType` unterstützt die folgenden `ConditionParameters`:
+ `ImportantFormKey` – Eine Zeichenfolge, die einen Schlüssel in einem Schlüssel-Wert-Paar darstellt, der von Amazon Textract erkannt wird und von menschlichen Mitarbeitern überprüft werden muss. Wenn der Wert dieses Parameters der spezielle Catch-All-Wert (\$1) ist, gelten alle Schlüssel als mit der Bedingung übereingestimmt. Sie können dies verwenden, um den Fall zu modellieren, bei dem jedes Schlüssel-Wert-Paar, das bestimmte Konfidenzschwellenwerte erfüllt, von Menschen überprüft werden muss.
+ `ImportantFormKeyAliases` – Ein Array, das alternative Schreibweisen oder logische Äquivalente für den wichtigen Formularschlüssel darstellt. 
+ `KeyValueBlockConfidenceEquals`
+ `KeyValueBlockConfidenceLessThan`
+ `KeyValueBlockConfidenceLessThanEquals`
+ `KeyValueBlockConfidenceGreaterThan`
+ `KeyValueBlockConfidenceGreaterThanEquals`
+ `WordBlockConfidenceEquals`
+ `WordBlockConfidenceLessThan`
+ `WordBlockConfidenceLessThanEquals`
+ `WordBlockConfidenceGreaterThan`
+ `WordBlockConfidenceGreaterThanEquals`

Wenn Sie die `ImportantFormKeyConfidenceCheck` `ConditionType` verwenden, sendet Amazon A2I die Schlüssel-Wert-Block- und Wortblock-Inferenzen der Schlüssel-Wert-Blöcke und zugehörigen Aliase, die Sie in `ImportantFormKey` und `ImportantFormKeyAliases` zur menschlichen Überprüfung angegeben haben.

Wenn Sie bei der Erstellung einer Flow-Definition die Standardvorlage für Arbeitsaufgaben verwenden, die im Abschnitt **Workflows für menschliche Überprüfung** der Amazon SageMaker AI-Konsole bereitgestellt wird, sind Schlüsselwert- und Blockableitungen, die durch diese Aktivierungsbedingung zur Überprüfung durch einen Mitarbeiter gesendet wurden, in der Worker-Benutzeroberfläche enthalten. Wenn Sie eine benutzerdefinierte Vorlage für Auftragnehmeraufgaben verwenden, müssen Sie das Element `{{ task.input.selectedAiServiceResponse.blocks }}` zum Einfügen von Initialwert-Eingabedaten (Inferenzen) aus Amazon Textract einbinden. Ein Beispiel für eine benutzerdefinierte Vorlage, die dieses Eingabeelement verwendet, finden Sie unter [Beispiel für eine benutzerdefinierte Vorlage für Amazon Textract](a2i-custom-templates.md#a2i-custom-templates-textract-sample).

## `MissingImportantFormKey` Eingaben und Ergebnisse
<a name="a2i-textract-missingimportantformkey"></a>

`MissingImportantFormKey` `ConditionType` unterstützt die folgenden `ConditionParameters`:
+ `ImportantFormKey` – Eine Zeichenfolge, die einen Schlüssel in einem Schlüssel-Wert-Paar darstellt, der von Amazon Textract erkannt wird und von menschlichen Mitarbeitern überprüft werden muss.
+ `ImportantFormKeyAliases` – Ein Array, das alternative Schreibweisen oder logische Äquivalente für den wichtigen Formularschlüssel darstellt. 

Wenn Sie den `MissingImportantFormKey` `ConditionType` verwenden und der Schlüssel in `ImportantFormKey` oder die Aliase in `ImportantFormKeyAliases` nicht in der Amazon-Textract-Inferenz enthalten sind, wird dieses Formular zur menschlichen Überprüfung gesendet und es werden keine vorausgesagten Schlüssel-Wert-Paare aufgenommen. Wenn Amazon Textract z. B. nur `Address` und `Phone` in einem Formular identifizierte, aber der `ImportantFormKey` `Name` (im `MissingImportantFormKey`-Bedingungstyp) fehlte, würde dieses Formular zur Überprüfung an Menschen geschickt werden, ohne dass einer der Formularschlüssel (`Address` und `Phone`) erkannt wird.

Wenn Sie die Standardvorlage für Arbeitsaufgaben verwenden, die in der SageMaker AI-Konsole bereitgestellt wird, wird eine Aufgabe erstellt, in der die Mitarbeiter aufgefordert werden, den Schlüssel `ImportantFormKey` und den zugehörigen Wert zu identifizieren. Wenn Sie eine benutzerdefinierte Vorlage für Auftragnehmeraufgaben verwenden, müssen Sie das benutzerdefinierte HTML-Element `<task.input.humanLoopContext>` einbinden, um diese Aufgabe zu konfigurieren. 

## Stichprobeneingaben und -ergebnisse
<a name="a2i-textract-randomsamplingpercentage"></a>

`Sampling` `ConditionType` unterstützt die `RandomSamplingPercentage` `ConditionParameters`. Die Eingabe für `RandomSamplingPercentage` muss eine reelle Zahl zwischen 0,01 und 100 sein. Diese Zahl stellt den Prozentsatz der Daten dar, die für eine menschliche Überprüfung qualifiziert sind und zur Überprüfung an einen Menschen gesendet werden. Wenn Sie die `Sampling`-Bedingung ohne weitere Bedingungen verwenden, stellt diese Zahl den Prozentsatz aller resultierenden Inferenzen dar, die von der `AnalyzeDocument`-Operation aus einer einzelnen Anforderung abgeleitet werden, die an Menschen zur Überprüfung gesendet wird.

Wenn Sie die `Sampling`-Bedingung ohne einen weiteren Bedingungstyp angeben, werden alle Schlüsselwert- und Blockinferenzen zur Überprüfung an Mitarbeiter gesendet. 

Wenn Sie bei der Erstellung einer Flow-Definition die Standardvorlage für Worker-Aufgaben verwenden, die im Abschnitt **Workflows zur menschlichen Überprüfung** der SageMaker KI-Konsole bereitgestellt wird, sind alle Schlüsselwert- und Blockableitungen, die durch diese Aktivierungsbedingung zur Überprüfung durch einen Mitarbeiter gesendet wurden, in der Worker-Benutzeroberfläche enthalten. Wenn Sie eine benutzerdefinierte Vorlage für Auftragnehmeraufgaben verwenden, müssen Sie das Element `{{ task.input.selectedAiServiceResponse.blocks }}` zum Einfügen von Initialwert-Eingabedaten (Inferenzen) aus Amazon Textract einbinden. Ein Beispiel für eine benutzerdefinierte Vorlage, die dieses Eingabeelement verwendet, finden Sie unter [Beispiel für eine benutzerdefinierte Vorlage für Amazon Textract](a2i-custom-templates.md#a2i-custom-templates-textract-sample).

## Beispiele
<a name="a2i-json-activation-condition-examples"></a>

Während nur eine Bedingung als `true` ausgewertet werden muss, um eine Human Loop zu initiieren, wertet Amazon A2I alle Bedingungen für jedes von Amazon Textract analysierte Objekt aus. Die menschlichen Prüfer werden aufgefordert, die wichtigen Formularschlüssel für alle Bedingungen zu überprüfen, die als `true` ausgewertet wurden.

**Beispiel 1: Erkennen wichtiger Formularschlüssel mit Vertrauensbewertungen in einem angegebenen Bereich, der eine Human Loop initiiert**

Das folgende Beispiel zeigt einen `HumanLoopActivationConditions`-JSON, durch das eine Human Loop initiiert wird, wenn einer der folgenden drei Bedingungen entsprochen wird:
+ Die Amazon Textract `AnalyzeDocument`-API gibt ein Schlüssel-Wert-Paar zurück, dessen Schlüssel einer von `Employee Name`, `Name` oder `EmployeeName` ist, wobei der Konfidenzwert des Schlüssel-Wert-Blocks kleiner als 60 ist und die Konfidenzwerte der einzelnen Wortblöcke, die den Schlüssel und Wert bilden, kleiner als 85 sind.
+ Die Amazon Textract `AnalyzeDocument`-API gibt ein Schlüssel-Wert-Paar zurück, dessen Schlüssel einer von `Pay Date`, `PayDate`, `DateOfPay` oder `pay-date` ist, wobei der Konfidenzwert des Schlüssel-Wert-Blocks kleiner als 65 ist und die Konfidenzwerte der einzelnen Wortblöcke, die den Schlüssel und Wert bilden, kleiner als 85 sind.
+ Die Amazon Textract `AnalyzeDocument`-API gibt ein Schlüssel-Wert-Paar zurück, dessen Schlüssel einer von `Gross Pay`, `GrossPay` oder `GrossAmount` ist, wobei der Konfidenzwert des Schlüssel-Wert-Blocks kleiner als 60 ist und die Konfidenzwerte der einzelnen Wortblöcke, die den Schlüssel und Wert bilden, kleiner als 85 sind.

```
{
    "Conditions": [
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Employee Name",
                "ImportantFormKeyAliases": [
                    "Name",
                    "EmployeeName"
                ],
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 85
            }
        },
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 65,
                "WordBlockConfidenceLessThan": 85
            }
        },
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Gross Pay",
                "ImportantFormKeyAliases": [
                    "GrossPay",
                    "GrossAmount"
                ],
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 85
            }
        }
    ]
}
```

**Beispiel 2: Verwenden von `ImportantFormKeyConfidenceCheck`**

Wenn im folgenden Beispiel Amazon Textract ein Schlüssel-Wert-Paar erkennt, dessen Konfidenz für den Schlüssel-Wert-Block kleiner als 60 und für alle zugrunde liegenden Wortblöcke kleiner als 90 ist, wird eine Human Loop erstellt. Die menschlichen Prüfer werden aufgefordert, alle Schlüssel-Wert-Paare zu überprüfen, die den Konfidenzwert-Vergleichen entsprechen.

```
{
    "Conditions": [
        {
            "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "*",
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 90
            }
        }
    ]
}
```

**Beispiel 3: Verwenden von Stichproben**

Im folgenden Beispiel werden 5 % der aus einer Amazon Textract `AnalyzeDocument`-Anforderung resultierenden Inferenzen an menschliche Auftragnehmer zur Überprüfung übermittelt. Alle erkannten Schlüssel-Wert-Paare, die von Amazon Textract zurückgegeben werden, werden zur Überprüfung an Mitarbeiter gesendet.

```
{
  "Conditions": [
    {
      "ConditionType": "Sampling",
      "ConditionParameters": {
        "RandomSamplingPercentage": 5
      }
    }
  ]
}
```

**Beispiel 4: Verwenden von `MissingImportantFormKey`**

Wenn im folgenden Beispiel `Mailing Address` oder sein Alias `Mailing Address:`, in den von Amazon Textract erkannten Schlüsseln fehlt, wird eine menschliche Überprüfung ausgelöst. Bei Verwendung der Standardvorlage für Auftragnehmeraufgaben werden die Auftragnehmer durch die Auftragnehmer-Benutzeroberfläche aufgefordert, den Schlüssel `Mailing Address` oder `Mailing Address:` und den zugehörigen Wert zu identifizieren. 

```
{
    "ConditionType": "MissingImportantFormKey",
    "ConditionParameters": {
        "ImportantFormKey": "Mailing Address",
        "ImportantFormKeyAliases": ["Mailing Address:"]
    }
}
```

**Beispiel 5: Verwenden von Probenahme und `ImportantFormKeyConfidenceCheck` mit dem `And` Operator**

In diesem Beispiel werden 5 % der Schlüssel-Wert-Paare von Amazon Textract erkannt, deren Schlüssel entweder `Pay Date`, `PayDate`, `DateOfPay` oder `pay-date` ist, wobei der Konfidenzwert des Schlüssel-Wert-Blocks kleiner als 65 und die Konfidenzwerte der einzelnen Wortblöcke, aus denen der Schlüssel und der Wert bestehen, kleiner als 85 sind, zur Überprüfung an Auftragnehmer gesendet.

```
{
  "Conditions": [
    {
      "And": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
          "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 65,
                "WordBlockConfidenceLessThan": 85
            }
        }
      ]
    }
  ]
}
```

**Beispiel 6: Verwenden von Probenahme und `ImportantFormKeyConfidenceCheck` mit dem `And` Operator**

Verwenden Sie dieses Beispiel, um Ihren Workflow für die menschliche Überprüfung so zu konfigurieren, dass Inferenzen mit geringer Konfidenz eines angegebenen Schlüssel-Wert-Paars immer zur menschlichen Überprüfung gesendet werden und Stichproben von Inferenzen mit hoher Konfidenz eines Schlüssel-Wert-Paares mit einer bestimmten Rate entnommen werden. 

Im folgenden Beispiel wird eine menschliche Überprüfung auf eine der folgenden Arten initiiert: 
+ Erkannte Schlüssel-Wert-Paare, deren Schlüssel einer von `Pay Date`, `PayDate`, `DateOfPay` oder `pay-date` ist, wobei die Schlüssel-Wert- und Wortblockkonfidenzen unter 60 sind, werden zur menschlichen Überprüfung gesendet. Nur der `Pay Date`-Formularschlüssel (und seine Aliase) und die zugehörigen Werte werden an Mitarbeiter zur Prüfung gesendet. 
+ 5 % der erkannten Schlüssel-Wert-Paare, deren Schlüssel entweder `Pay Date`, `PayDate`, `DateOfPay` oder `pay-date` ist, mit Schlüssel-Wert- und Wortblockkonfidenzen über 90 werden zur Prüfung durch Menschen gesendet. Nur der `Pay Date`-Formularschlüssel (und seine Aliase) und die zugehörigen Werte werden an Mitarbeiter zur Prüfung gesendet. 

```
{
  "Conditions": [
    {
      "Or": [
       {
          "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 60,
                "WordBlockConfidenceLessThan": 60
            }
        },
        {
            "And": [
                {
                    "ConditionType": "Sampling",
                    "ConditionParameters": {
                        "RandomSamplingPercentage": 5
                    }
                },
                {
                    "ConditionType": "ImportantFormKeyConfidenceCheck",
                        "ConditionParameters": {
                            "ImportantFormKey": "Pay Date",
                            "ImportantFormKeyAliases": [
                                "PayDate",
                                "DateOfPay",
                                "pay-date"
                        ],
                        "KeyValueBlockConfidenceLessThan": 90
                        "WordBlockConfidenceGreaterThan": 90
                    }
                }
            ]
        }
      ]
    }
  ]
}
```

**Beispiel 7: Verwenden von Probenahme und `ImportantFormKeyConfidenceCheck` mit dem `Or` Operator**

Im folgenden Beispiel gibt die Amazon Textract `AnalyzeDocument`-Operation ein Schlüssel-Wert-Paar zurück, dessen Schlüssel einer von `Pay Date`, `PayDate`, `DateOfPay` oder `pay-date` ist, wobei der Konfidenzwert des Schlüssel-Wert-Blocks unter 65 ist und die Konfidenzwerte der Wortblöcke, aus denen Schlüssel und Wert bestehen, unter 85 sind. Darüber hinaus initiieren 5 % aller anderen Formulare eine Schleife für die Prüfung durch Menschen (Human Loop). Für jedes zufällig ausgewählte Formular werden alle Schlüssel-Wert-Paare, die für dieses Formular erkannt wurden, zur Überprüfung an den Menschen gesendet.

```
{
  "Conditions": [
    {
      "Or": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
           "ConditionType": "ImportantFormKeyConfidenceCheck",
            "ConditionParameters": {
                "ImportantFormKey": "Pay Date",
                "ImportantFormKeyAliases": [
                    "PayDate",
                    "DateOfPay",
                    "pay-date"
                ],
                "KeyValueBlockConfidenceLessThan": 65,
                "WordBlockConfidenceLessThan": 85
            }
          }
        }
      ]
    }
  ]
}
```

# Verwenden eines JSON-Schemas für Bedingungen zur Aktivierung eines Human Loops mit Amazon Rekognition
<a name="a2i-json-humantaskactivationconditions-rekognition-example"></a>

Bei Verwendung mit Amazon A2I unterstützt die Amazon Rekognition `DetectModerationLabels`-Operation die folgenden Eingaben im `ConditionType`-Parameter:
+ `ModerationLabelConfidenceCheck` – Verwenden Sie diesen Bedingungstyp, um eine Human Loop zu erstellen, wenn die Konfidenz für eine oder mehrere angegebene Beschriftungen niedrig ist.
+ `Sampling` – Verwenden Sie diese Bedingung, um einen Prozentsatz aller Inferenzen anzugeben, die an Menschen zur Überprüfung gesendet werden sollen. Verwenden Sie diese Bedingung, um Folgendes zu tun:
  + Ihr ML-Modell zu prüfen, indem Sie alle Inferenzen Ihres Modells Stichproben unterziehen und einen bestimmten Prozentsatz an Menschen zur Überprüfung senden.
  + Mit der `ModerationLabelConfidenceCheck`-Bedingung zufällige Stichproben aus einem Prozentsatz der Inferenzen zu entnehmen, die die in `ModerationLabelConfidenceCheck` angegebenen Bedingungen erfüllten, um eine Schleife für die Prüfung durch Menschen (Human Loop) zu starten und nur den angegebenen Prozentsatz zur Überprüfung an Menschen zu senden. 

**Anmerkung**  
Wenn Sie dieselbe Anfrage mehrmals an `DetectModerationLabels` senden, ändert sich das Ergebnis von `Sampling` nicht für die Inferenz dieser Eingabe. Wenn Sie beispielsweise einmal eine `DetectModerationLabels`-Anforderung erstellen und `Sampling` keine Human Loop initiiert, lösen nachfolgende Anforderungen an `DetectModerationLabels` mit derselben Konfiguration keine Human Loop aus. 

Wenn Sie bei der Erstellung einer Flow-Definition die Standardvorlage für Arbeitsaufgaben verwenden, die im Abschnitt **Workflows für menschliche Überprüfung** der Amazon SageMaker AI-Konsole bereitgestellt wird, werden Schlussfolgerungen, die aufgrund dieser Aktivierungsbedingungen zur Überprüfung durch einen Mitarbeiter gesendet wurden, in die Worker-Benutzeroberfläche aufgenommen, wenn ein Mitarbeiter Ihre Aufgabe öffnet. Wenn Sie eine benutzerdefinierte Arbeitsaufgabenvorlage verwenden, müssen Sie das benutzerdefinierte `<task.input.selectedAiServiceResponse.blocks>`-HTML-Element einschließen, um auf diese Inferenzen zuzugreifen. Ein Beispiel für eine benutzerdefinierte Vorlage, die dieses HTML-Element verwendet, finden Sie unter [Beispiel für eine benutzerdefinierte Vorlage für Amazon Rekognition](a2i-custom-templates.md#a2i-custom-templates-rekognition-sample).

## `ModerationLabelConfidenceCheck`-Eingaben
<a name="a2i-rek-moderationlabelconfidencecheck"></a>

Für `ModerationLabelConfidenceCheck` `ConditionType` werden die folgenden `ConditionParameters` unterstützt:
+ `ModerationLabelName`— Der genaue Name (unter Berücksichtigung von Groß- und Kleinschreibung) eines durch den Amazon Rekognition `DetectModerationLabels` Rekognition-Vorgang [ModerationLabel](https://docs.aws.amazon.com/rekognition/latest/dg/API_ModerationLabel.html)erkannten. Sie können den speziellen Catch-All-Wert (\$1) angeben, um ein Moderations-Label zu kennzeichnen.
+ `ConfidenceEquals`
+ `ConfidenceLessThan`
+ `ConfidenceLessThanEquals`
+ `ConfidenceGreaterThan`
+ `ConfidenceGreaterThanEquals`

Wenn Sie die `ModerationLabelConfidenceCheck` `ConditionType` verwenden, sendet Amazon A2I Beschriftungsinferenzen für die Beschriftungen, die Sie in `ModerationLabelName` für die menschliche Überprüfung angegeben haben.

## Stichproben bei Eingaben
<a name="a2i-rek-randomsamplingpercentage"></a>

`Sampling` `ConditionType` unterstützt die `RandomSamplingPercentage` `ConditionParameters`. Die Eingabe für den `RandomSamplingPercentage`-Parameter sollte eine reelle Zahl zwischen 0,01 und 100 sein. Diese Zahl stellt den Prozentsatz der Inferenzen dar, die für eine menschliche Überprüfung qualifiziert sind, und die an Menschen zur Überprüfung gesendet werden. Wenn Sie die `Sampling`-Bedingung ohne weitere Bedingungen verwenden, stellt diese Zahl den Prozentsatz aller Inferenzen dar, die aus einer einzelnen `DetectModerationLabel`-Anforderung resultieren, die an Menschen zur Überprüfung gesendet werden.

## Beispiele
<a name="a2i-json-rek-activation-condition-examples"></a>

**Beispiel 1: Verwenden von `ModerationLabelConfidenceCheck` mit dem `And` Operator**

Das folgende Beispiel einer `HumanLoopActivationConditions`-Bedingung initiiert eine Human Loop, wenn eine oder mehrere der folgenden Bedingungen erfüllt sind:
+ Amazon Rekognition erkennt das `Graphic Male Nudity`-Moderations-Label mit einem Konfidenzwert zwischen 90 und 99.
+ Amazon Rekognition erkennt das `Graphic Female Nudity`-Moderations-Label mit einem Konfidenzwert zwischen 80 und 99.

Beachten Sie die Verwendung der logischen Operatoren `Or` und `And`, um diese Logik zu modellieren.

Obwohl nur eine der beiden Bedingungen unter dem `Or`-Operator als `true` ausgewertet werden muss, damit eine Human Loop erstellt wird, wertet Amazon Augmented AI alle Bedingungen aus. Menschliche Prüfer werden aufgefordert, die Moderations-Label für alle Bedingungen zu überprüfen, die als `true` ausgewertet wurden.

```
{
     "Conditions": [{
         "Or": [{
                 "And": [{
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Male Nudity",
                             "ConfidenceLessThanEquals": 99
                         }
                     },
                     {
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Male Nudity",
                             "ConfidenceGreaterThanEquals": 90
                         }
                     }
                 ]
             },
             {
                 "And": [{
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Female Nudity",
                             "ConfidenceLessThanEquals": 99
                         }
                     },
                     {
                         "ConditionType": "ModerationLabelConfidenceCheck",
                         "ConditionParameters": {
                             "ModerationLabelName": "Graphic Female Nudity",
                             "ConfidenceGreaterThanEquals": 80
                         }
                     }
                 ]
             }
         ]
     }]
}
```

**Beispiel 2: Verwenden von `ModerationLabelConfidenceCheck` mit dem Catch-All-Wert (\$1) **

Wenn im folgenden Beispiel eine Moderationsbeschriftung mit einer Konfidenz über 75 erkannt wird, wird eine Human Loop initiiert. Menschliche Prüfer werden gebeten, alle Moderationsbeschriftungen mit Konfidenzwerten über oder gleich 75 zu überprüfen.

```
{
    "Conditions": [
        {
            "ConditionType": "ModerationLabelConfidenceCheck",
            "ConditionParameters": {
                "ModerationLabelName": "*",
                "ConfidenceGreaterThanEquals": 75
            }
        }
    ]
}
```

**Beispiel 3: Verwenden von Stichproben**

Im folgenden Beispiel werden 5 % der Amazon-Rekognition-Inferenzen aus einer `DetectModerationLabels`-Anforderung an menschliche Auftragnehmer übermittelt. Wenn Sie die in der SageMaker AI-Konsole bereitgestellte Standardvorlage für Worker-Aufgaben verwenden, werden alle von Amazon Rekognition zurückgegebenen Moderationslabels zur Überprüfung an die Mitarbeiter gesendet.

```
{
  "Conditions": [
    {
      "ConditionType": "Sampling",
      "ConditionParameters": {
        "RandomSamplingPercentage": 5
      }
    }
  ]
}
```

**Beispiel 4: Verwenden von Probenahme und `ModerationLabelConfidenceCheck` mit dem Operator `And`**

In diesem Beispiel werden 5 % der Amazon-Rekognition-Inferenzen des -`Graphic Male Nudity`Moderationsbezeichnungen mit einer Konfidenz von mehr als 50 an Auftragnehmer zur Überprüfung gesendet. Wenn Sie die in der SageMaker AI-Konsole bereitgestellte Standardvorlage für Mitarbeiteraufgaben verwenden, werden nur die Schlussfolgerungen des `Graphic Male Nudity` Labels zur Überprüfung an die Mitarbeiter gesendet. 

```
{
  "Conditions": [
    {
      "And": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
          "ConditionType": "ModerationLabelConfidenceCheck",
          "ConditionParameters": {
            "ModerationLabelName": "Graphic Male Nudity",
            "ConfidenceGreaterThan": 50
          }
        }
      ]
    }
  ]
}
```

**Beispiel 5: Verwenden von Probenahme und `ModerationLabelConfidenceCheck` mit dem `And` Operator**

Verwenden Sie dieses Beispiel, um Ihren Workflow für die menschliche Überprüfung so zu konfigurieren, dass Inferenzen mit geringer Konfidenz einer angegebenen Beschriftung immer zur menschlichen Überprüfung gesendet werden und Stichproben von Inferenzen mit hoher Konfidenz einer Beschriftung mit einer bestimmten Rate entnommen werden. 

Im folgenden Beispiel wird eine menschliche Überprüfung auf eine der folgenden Arten initiiert: 
+ Inferenzen für die `Graphic Male Nudity`-Moderationsbeschriftung mit Konfidenzwerten unter 60 werden immer zur menschlichen Überprüfung gesendet. Nur die Bezeichnung `Graphic Male Nudity` wird zur Überprüfung an Auftragnehmer gesendet. 
+ 5 % aller Inferenzen für die `Graphic Male Nudity`-Moderationsbezeichnung mit Vertrauensbewertungen über 90 werden zur Prüfung durch Menschen gesendet. Nur die Bezeichnung `Graphic Male Nudity` wird zur Überprüfung an Auftragnehmer gesendet. 

```
{
  "Conditions": [
    {
      "Or": [
        {
          "ConditionType": "ModerationLabelConfidenceCheck",
          "ConditionParameters": {
            "ModerationLabelName": "Graphic Male Nudity",
            "ConfidenceLessThan": 60
          }
        },
        {
            "And": [
                {
                    "ConditionType": "Sampling",
                    "ConditionParameters": {
                        "RandomSamplingPercentage": 5
                    }
                },
                {
                    "ConditionType": "ModerationLabelConfidenceCheck",
                    "ConditionParameters": {
                        "ModerationLabelName": "Graphic Male Nudity",
                        "ConfidenceGreaterThan": 90
                    }
                }
            ]
        }
      ]
    }
  ]
}
```

**Beispiel 6: Verwenden von Probenahme und `ModerationLabelConfidenceCheck` mit dem `Or` Operator**

Im folgenden Beispiel wird ein Human Loop erstellt, wenn die Amazon-Rekognition-Inferenzantwort die Beschriftung „Graphic Male Nudity“ (Darstellung nackter Männer) mit einer Inferenzkonfidenz über 50 enthält. Darüber hinaus initiieren 5 % aller anderen Inferenzen eine Schleife für die Prüfung durch Menschen (Human Loop). 

```
{
  "Conditions": [
    {
      "Or": [
        {
          "ConditionType": "Sampling",
          "ConditionParameters": {
            "RandomSamplingPercentage": 5
          }
        },
        {
          "ConditionType": "ModerationLabelConfidenceCheck",
          "ConditionParameters": {
            "ModerationLabelName": "Graphic Male Nudity",
            "ConfidenceGreaterThan": 50
          }
        }
      ]
    }
  ]
}
```

# Workflow für die menschliche Überprüfung löschen
<a name="a2i-delete-flow-definition"></a>

Wenn Sie einen menschlichen Review-Workflow löschen oder Ihr AWS Konto löschen, während ein menschlicher Review-Workflow in Bearbeitung ist, ändert sich Ihr Workflow-Status auf`Deleting`. Amazon A2I stoppt und löscht automatisch alle zugehörigen Human Loops, wenn Worker keine Aufgaben gestartet haben, die durch diese Human Loops erstellt wurden. Wenn menschliche Worker bereits an einer Aufgabe arbeiten, bleibt diese Aufgabe so lange verfügbar, bis sie abgeschlossen oder abgelaufen ist. Solange Worker noch an einer Aufgabe arbeiten, lautet der Status Ihres menschliche Überprüfung- Workflows `Deleting`. Wenn diese Tasks abgeschlossen sind, werden die Ergebnisse im Amazon-S3-Bucket gespeichert, der in Ihrer Flow-Definition angegeben wird. 

Beim Löschen einer Flow-Definition werden keine Worker-Antworten aus Ihrem S3-Bucket entfernt. Wenn die Aufgaben abgeschlossen sind, Sie aber Ihr AWS Konto gelöscht haben, werden die Ergebnisse 30 Tage lang im Augmented AI-Service-Bucket gespeichert und dann dauerhaft gelöscht.

Nachdem alle Human Loops gelöscht wurden, wird der Workflow zur menschlichen Überprüfung dauerhaft gelöscht. Wenn ein menschliche Überprüfung-Workflow gelöscht wurde, können Sie seinen Namen wiederverwenden, um einen neuen Workflow für die menschliche Überprüfung zu erstellen. 

Möglicherweise möchten Sie einen Workflow für menschliche Überprüfung aus einem der folgenden Gründe löschen:
+ Sie haben Daten an eine Gruppe menschlicher Prüfer gesendet und möchten alle nicht gestarteten Schleifen für die menschliche Prüfung löschen, da diese Auftragnehmer nicht mehr an diesen Aufgaben arbeiten sollen.
+ Die Auftragnehmer-Aufgabenvorlage, die zum Generieren der Auftragnehmer-Benutzeroberfläche verwendet wird, wird nicht ordnungsgemäß dargestellt oder funktioniert nicht wie erwartet. 

Nachdem Sie einen Workflow zur menschlichen Überprüfung gelöscht haben, treten die folgenden Änderungen auf:
+ Der Workflow für menschliche Überprüfungen wird nicht mehr auf der Seite **Workflows für menschliche Überprüfungen** im Bereich Augmented AI der Amazon SageMaker AI-Konsole angezeigt. 
+ Wenn Sie den Workflow-Namen für die menschliche Überprüfung als Eingabe für die API-Operationen [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeFlowDefinition.html) oder [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteFlowDefinition.html) verwenden , gibt Augmented AI einen `ResourceNotFound` Fehler zurück. 
+ Wenn Sie [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListFlowDefinitions.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListFlowDefinitions.html) verwenden, sind gelöschte Workflows zur menschlichen Überprüfung nicht in den Ergebnissen enthalten. 
+ Wenn Sie den menschliche Überprüfung-Workflow ARN als Eingabe für den Augmented AI Laufzeit API-Vorgang `[ListHumanLoops](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_ListHumanLoops.html)` verwenden, gibt Augmented AI `ResourceNotFoundException` zurück.

## Löschen Sie eine Flow-Definition mithilfe der Konsole oder der SageMaker API
<a name="a2i-delete-flow-definition-how-to"></a>

Sie können einen Workflow für menschliche Überprüfungen auf der Seite **Workflows für menschliche Überprüfung** im Bereich Augmented AI der SageMaker KI-Konsole oder mithilfe der SageMaker KI-API löschen. 

Flow-Definitionen können nur gelöscht werden, wenn ihr Status `Active` lautet. 

**Löschen eines Workflows für die menschliche Überprüfung (Konsole)**

1. Navigieren Sie zur Augmented AI-Konsole unter [https://console.aws.amazon.com/a2i/](https://console.aws.amazon.com/a2i).

1. Wählen Sie im Navigationsbereich im Bereich **Augmented AI**, die Option **Workflows der menschlichen Überprüfung** aus.

1. Wählen Sie den Hyperlink-Namen des Workflows für die menschliche Überprüfung, den Sie löschen möchten. 

1. Wählen Sie auf der Seite **Zusammenfassung** Ihres Workflows für die menschliche Überprüfung in der oberen rechten Ecke die Option **Löschen** aus. 

1. Wählen Sie in dem Dialogfeld, in dem Sie aufgefordert werden, zu bestätigen, dass Sie den Workflow für die Prüfung durch Menschen löschen möchten, die Option **Delete (Löschen)**. 

Sie werden automatisch zur Seite **Human review workflows (Workflows für die menschliche Überprüfung)** weitergeleitet. Während Ihr Workflow für die menschliche Überprüfung gelöscht wird, wird in der Statusspalte für diesen Workflow der Status **Deleting (Wird gelöscht)** angezeigt. Nachdem er gelöscht wurde, wird er nicht mehr in der Liste der Workflows auf dieser Seite angezeigt. 

**Löschen eines Workflows für die menschliche Überprüfung (API)**  
Sie können einen Arbeitsablauf zur Überprüfung durch einen Menschen (Flow-Definition) mithilfe der SageMaker [DeleteFlowDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteFlowDefinition.html)KI-API-Operation löschen. Dieser API-Vorgang wird durch die [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/delete-flow-definition.html)und eine [Vielzahl von sprachspezifischen](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteFlowDefinition.html#API_DeleteFlowDefinition_SeeAlso) unterstützt SDKs. Die folgende Tabelle zeigt Beispielanfragen mit dem SDK for Python (Boto3) und dem Workflow AWS CLI to delete the human review,. *`example-flow-definition`* 

------
#### [ AWS SDK für Python (Boto3) ]

Im folgenden Anforderungsbeispiel wird das SDK for Python (Boto3) zum Löschen des Workflows zur menschlichen Überprüfung verwendet. Weitere Informationen finden Sie unter [delete\$1flow\$1definition](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.delete_flow_definition) in der *AWS SDK für Python (Boto) API Referenz*.

```
import boto3

sagemaker_client = boto3.client('sagemaker')
response = sagemaker_client.delete_flow_definition(FlowDefinitionName='example-flow-definition')
```

------
#### [ AWS CLI ]

Das folgende Anforderungsbeispiel verwendet die AWS CLI, um den menschlichen Überprüfungsworkflow zu löschen. Weitere Informationen finden Sie unter [delete-flow-definition](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/delete-flow-definition.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*. 

```
$ aws sagemaker delete-flow-definition --flow-definition-name 'example-flow-definition'
```

------

Wenn die Aktion erfolgreich ist, sendet Augmented AI eine HTTP 200-Antwort mit leerem HTTP-Textinhalt zurück.

# Erstellen und Starten einer Human Loop
<a name="a2i-start-human-loop"></a>

Eine *Human Loop* startet Ihren Workflow für die menschliche Überprüfung und sendet Datenüberprüfungsaufgaben an menschliche Mitarbeiter. Wenn Sie einen der integrierten Aufgabentypen von Amazon A2I verwenden, erstellt und startet der entsprechende AWS Service in Ihrem Namen eine menschliche Schleife, wenn die in Ihrer Flow-Definition angegebenen Bedingungen erfüllt sind. Wenn in der Flow-Definition keine Bedingungen angegeben wurden, wird für jedes Objekt eine Human Loop erstellt. Wenn Sie Amazon A2I für eine benutzerdefinierte Aufgabe verwenden, beginnt eine Human Loop, wenn `StartHumanLoop` in Ihrer Anwendung aufgerufen wird. 

Verwenden Sie die folgenden Anweisungen, um eine Human Loop mit den integrierten Aufgabentypen Amazon Rekognition und Amazon Textract benutzerdefinierten Aufgabentypen zu konfigurieren. 

**Voraussetzungen**

Um einen Human Loop zu erstellen und zu starten, müssen Sie die `AmazonAugmentedAIFullAccess` Richtlinie dem AWS Identity and Access Management (IAM-) Benutzer oder der Rolle zuordnen, die den Human Loop konfiguriert oder startet. Dies ist die Identität, die Sie verwenden, um die Human Loop mit `HumanLoopConfig` für integrierte Task-Typen zu konfigurieren. Bei benutzerdefinierten Task-Typen handelt es sich hierbei um die Identität, die Sie zum Aufrufen von `StartHumanLoop` verwenden.

Wenn Sie einen integrierten Aufgabentyp verwenden, muss Ihr Benutzer oder Ihre Rolle außerdem über die Berechtigung verfügen, API-Operationen des mit Ihrem Aufgabentyp verknüpften AWS Dienstes aufzurufen. Wenn Sie zum Beispiel Amazon Rekognition mit Augmented AI verwenden, müssen Sie die erforderlichen Berechtigungen für den Aufruf von `DetectModerationLabels` anfügen. Beispiele für identitätsbasierte Richtlinien, die Sie zum Erteilen dieser Berechtigungen verwenden können, finden Sie unter [Beispiele für identitätsbasierte Richtlinien von Amazon Rekognition](https://docs.aws.amazon.com/rekognition/latest/dg/security_iam_id-based-policy-examples.html) und [Beispiele für identitätsbasierte Richtlinien von Amazon Textract](https://docs.aws.amazon.com/textract/latest/dg/security_iam_id-based-policy-examples.html). Sie können auch die allgemeinere Richtlinie `AmazonAugmentedAIIntegratedAPIAccess` verwenden, um diese Berechtigungen zu erteilen. Weitere Informationen finden Sie unter [Einen Benutzer mit Berechtigungen zum Aufrufen von Amazon-A2I-, Amazon-Textract- und Amazon-Rekognition-API-Operationen erstellen](a2i-permissions-security.md#a2i-grant-general-permission). 

Sie benötigen einen Flow-Definitions-ARN, um eine Human Loop zu erstellen und zu starten. Weitere Informationen zum Erstellen einer Flow-Definition (oder Workflow für die menschliche Überprüfung) finden Sie unter [Erstellen eines Arbeitsablaufs für die menschliche Überprüfung](a2i-create-flow-definition.md).

**Wichtig**  
Amazon A2I verlangt, dass an alle S3-Buckets, die Eingabe-Image-Daten mit Human Loop enthalten, eine CORS-Richtlinie angehängt ist. Weitere Informationen dazu finden Sie unter [CORS benötigte Berechtigungen](a2i-permissions-security.md#a2i-cors-update).

## Erstellen und Starten einer Human Loop für einen integrierten Aufgabentyp
<a name="a2i-human-loop-built-in-task-type"></a>

Um eine Human Loop für eine integrierte Aufgabe zu starten, verwenden Sie die API des entsprechenden Services, um Ihre Eingabedaten bereitzustellen und die Human Loop zu konfigurieren. Für Amazon Textract verwenden Sie den API-Vorgang `AnalyzeDocument`. Für Amazon Rekognition verwenden Sie den `DetectModerationLabels`-API-Vorgang. Sie können das AWS CLI oder ein sprachspezifisches SDK verwenden, um Anfragen mithilfe dieser API-Operationen zu erstellen. 

**Wichtig**  
Wenn Sie eine Human Loop unter Verwendung eines integrierten Aufgabentyps erstellen, können Sie `DataAttributes` verwenden, um eine Gruppe von `ContentClassifiers` anzugeben, die sich auf die für die Operation `StartHumanLoop` bereitgestellte Eingabe beziehen. Verwenden Sie Inhaltsklassifizierer, um anzugeben, dass Ihre Inhalte frei von persönlich identifizierbaren Informationen oder nicht jugendfreien Inhalten sind.  
Um Amazon Mechanical Turk nutzen zu können, stellen Sie sicher, dass Ihre Daten frei von persönlich identifizierbaren Informationen sind, einschließlich geschützter Gesundheitsinformationen gemäß HIPAA. Fügen Sie den Inhaltsklassifizierer `FreeOfPersonallyIdentifiableInformation` hinzu. Wenn Sie diesen Inhaltsklassifikator nicht verwenden, sendet SageMaker KI Ihre Aufgabe nicht an Mechanical Turk. Wenn Ihre Daten frei von nicht jugendfreien Inhalten sind, fügen Sie auch den `'FreeOfAdultContent'` Klassifizierer ein. Wenn Sie diese Inhaltsklassifikatoren nicht verwenden, kann SageMaker KI die Anzahl der Mechanical Turk Turk-Mitarbeiter einschränken, die Ihre Aufgabe sehen können.

Nachdem Sie Ihren ML-Job mit der AWS Service-API Ihres integrierten Aufgabentyps gestartet haben, überwacht Amazon A2I die Inferenzergebnisse dieses Services. Wenn Sie beispielsweise einen Auftrag mit Amazon Rekognition ausführen, prüft Amazon A2I den Konfidenzwert für die Schlussfolgerungen für jedes Bild und vergleicht ihn mit den Konfidenzschwellenwerten, die in der Flow-Definition angegeben sind. Wenn die Bedingungen zum Starten einer menschlichen Prüfaufgabe erfüllt sind, oder Sie keine Bedingungen in der Flow-Definition angegeben haben, wird eine menschliche Prüfaufgabe an Mitarbeiter gesendet. 

### Erstellen Sie eine Amazon Textract Human Loop
<a name="a2i-human-loop-textract"></a>

Amazon A2I ist mit Amazon Textract integriert, so dass Sie mithilfe der Amazon-Textract-API eine Human Loop konfigurieren und starten können. Um eine Dokumentdatei zur Textanalyse an Amazon Textract zu senden, verwenden Sie den Amazon Textract [`AnalyzeDocument` API-Vorgang](https://docs.aws.amazon.com/textract/latest/dg/API_AnalyzeDocument.html). Um diesem Dokumentenanalyseauftrag eine Human Loop hinzuzufügen, müssen Sie den Parameter `HumanLoopConfig` konfigurieren. 

Bei der Konfiguration der Human Loop muss sich die in `FlowDefinitionArn` von `HumanLoopConfig` angegebene Flussdefinition in derselben AWS -Region befinden wie der in `Bucket` des Parameters `Document` identifizierte Bucket.

Die folgende Tabelle zeigt Beispiele für die Verwendung dieser Operation mit und. AWS CLI AWS SDK für Python (Boto3)

------
#### [ AWS SDK für Python (Boto3) ]

Das folgende Anfragebeispiel verwendet das SDK für Python (Boto3). Weitere Informationen finden Sie unter [analyze\$1document](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/textract.html#Textract.Client.analyze_document) in der *AWS SDK for Python (Boto) API-Referenz*. 

```
import boto3

textract = boto3.client('textract', aws_region)

response = textract.analyze_document(
            Document={'S3Object': {'Bucket': bucket_name, 'Name': document_name}},
            FeatureTypes=["TABLES", "FORMS"],
            HumanLoopConfig={
                'FlowDefinitionArn': 'arn:aws:sagemaker:aws_region:aws_account_number:flow-definition/flow_def_name',
                'HumanLoopName': 'human_loop_name',
                'DataAttributes': {'ContentClassifiers': ['FreeOfPersonallyIdentifiableInformation','FreeOfAdultContent']}
            }
          )
```

------
#### [ AWS CLI ]

Das folgende Anforderungsbeispiel verwendet die AWS CLI. Weitere Informationen finden Sie unter [analyze-document](https://docs.aws.amazon.com/cli/latest/reference/textract/analyze-document.html) in der *[AWS CLI -Command Reference](https://docs.aws.amazon.com/cli/latest/reference/)*.

```
$ aws textract analyze-document \
     --document '{"S3Object":{"Bucket":"bucket_name","Name":"document_name"}}' \
     --human-loop-config HumanLoopName="human_loop_name",FlowDefinitionArn="arn:aws:sagemaker:aws-region:aws_account_number:flow-definition/flow_def_name",DataAttributes='{ContentClassifiers=["FreeOfPersonallyIdentifiableInformation", "FreeOfAdultContent"]}' \
     --feature-types '["TABLES", "FORMS"]'
```

```
$ aws textract analyze-document \
     --document '{"S3Object":{"Bucket":"bucket_name","Name":"document_name"}}' \
     --human-loop-config \
          '{"HumanLoopName":"human_loop_name","FlowDefinitionArn":"arn:aws:sagemaker:aws_region:aws_account_number:flow-definition/flow_def_name","DataAttributes": {"ContentClassifiers":["FreeOfPersonallyIdentifiableInformation","FreeOfAdultContent"]}}' \
     --feature-types '["TABLES", "FORMS"]'
```

------

Nachdem Sie `AnalyzeDocument` mit einer konfigurierten Human Loop ausgeführt haben, überwacht Amazon A2I die Ergebnisse von `AnalyzeDocument` und überprüft sie anhand der Aktivierungsbedingungen der Flow-Definition. Wenn der Amazon-Textract-Konfidenzwert für ein oder mehrere Schlüssel-Wert-Paare die Bedingungen für eine Überprüfung erfüllt, startet Amazon A2I eine Human Überprüfungsloop und nimmt das [https://docs.aws.amazon.com/textract/latest/dg/API_HumanLoopActivationOutput.html](https://docs.aws.amazon.com/textract/latest/dg/API_HumanLoopActivationOutput.html) Objekt in die `AnalyzeDocument` Antwort auf.

### Erstellen Sie einen Amazon Rekognition Human Loop
<a name="a2i-human-loop-rekognition"></a>

Amazon A2I ist mit Amazon Rekognition integriert, so dass Sie mithilfe der Amazon-Rekognition-API eine Human Loop konfigurieren und starten können. Um Abbilder an Amazon Rekognition zur Inhaltsmoderation zu senden, verwenden Sie den Amazon Rekognition [`DetectModerationLabels` API-Vorgang](https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectModerationLabels.html). Um eine Human Loop zu konfigurieren, legen Sie den `HumanLoopConfig`-Parameter fest, wenn Sie `DetectModerationLabels` konfigurieren.

Wenn Sie Ihre Human Loop konfigurieren, muss sich die Flow-Definition, die Sie in `FlowDefinitionArn` für `HumanLoopConfig` angeben, in derselben AWS -Region befinden wie der S3-Bucket, der in `Bucket` vom Parameter `Image` identifiziert wurde.

Die folgende Tabelle zeigt Beispiele für die Verwendung dieser Operation mit AWS CLI und AWS SDK für Python (Boto3).

------
#### [ AWS SDK für Python (Boto3) ]

Die folgenden Beispiele verwenden den SDK for Python (Boto3). Weitere Informationen finden Sie unter [detect\$1moderation\$1Label](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rekognition.html#Rekognition.Client.detect_moderation_labels) im *AWS -SDK für die API-Referenz Python (Boto)*.

```
import boto3

rekognition = boto3.client("rekognition", aws_region)

response = rekognition.detect_moderation_labels( \
        Image={'S3Object': {'Bucket': bucket_name, 'Name': image_name}}, \
        HumanLoopConfig={ \
            'HumanLoopName': 'human_loop_name', \
            'FlowDefinitionArn': , "arn:aws:sagemaker:aws_region:aws_account_number:flow-definition/flow_def_name" \
            'DataAttributes': {'ContentClassifiers': ['FreeOfPersonallyIdentifiableInformation','FreeOfAdultContent']}
         })
```

------
#### [ AWS CLI ]

Das folgende Anforderungsbeispiel verwendet die AWS CLI. Weitere Informationen finden Sie unter [detect-moderation-labels](https://docs.aws.amazon.com/cli/latest/reference/rekognition/detect-moderation-labels.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*.

```
$ aws rekognition detect-moderation-labels \
    --image "S3Object={Bucket='bucket_name',Name='image_name'}" \
    --human-loop-config HumanLoopName="human_loop_name",FlowDefinitionArn="arn:aws:sagemaker:aws_region:aws_account_number:flow-definition/flow_def_name",DataAttributes='{ContentClassifiers=["FreeOfPersonallyIdentifiableInformation", "FreeOfAdultContent"]}'
```

```
$ aws rekognition detect-moderation-labels \
    --image "S3Object={Bucket='bucket_name',Name='image_name'}" \
    --human-loop-config \
        '{"HumanLoopName": "human_loop_name", "FlowDefinitionArn": "arn:aws:sagemaker:aws_region:aws_account_number:flow-definition/flow_def_name", "DataAttributes": {"ContentClassifiers": ["FreeOfPersonallyIdentifiableInformation", "FreeOfAdultContent"]}}'
```

------

Nachdem Sie `DetectModerationLabels` mit einer konfigurierten Human Loop ausgeführt haben, überwacht Amazon A2I die Ergebnisse von `DetectModerationLabels` und überprüft sie anhand der Aktivierungsbedingungen der Flow-Definition. Wenn der Amazon Rekognition Inferenz-Konfidenzwert für ein Bild die Bedingungen für eine Überprüfung erfüllt, startet Amazon A2I eine Human-Loop-Überprüfung und nimmt das Antwort-Element `HumanLoopActivationOutput` in die `DetectModerationLabels` Antwort auf.

## Erstellen und Starten einer Human Loop für einen benutzerdefinierten Aufgabentyp
<a name="a2i-instructions-starthumanloop"></a>

Um eine Human Loop Schleife für eine benutzerdefinierte menschliche Prüfaufgabe zu konfigurieren, verwenden Sie den `StartHumanLoop`-Vorgang in Ihrer Anwendung. Dieser Abschnitt enthält ein Beispiel für eine menschliche Loop-Anfrage, bei der AWS SDK für Python (Boto3) und the AWS Command Line Interface (AWS CLI) verwendet werden. Dokumentation zu anderen sprachspezifischen Sprachen, SDKs die unterstützt werden`StartHumanLoop`, finden Sie im Abschnitt „**Siehe auch**“ [StartHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StartHumanLoop.html)in der Dokumentation zur Amazon Augmented AI Runtime API. Beispiele, die zeigen, wie Amazon A2I mit einem benutzerdefinierten Aufgabentyp verwendet wird, finden Sie unter [Anwendungsfälle und Beispiele mit Amazon A2I](a2i-task-types-general.md).

**Voraussetzungen**

Für diesen Vorgang ist Folgendes erforderlich:
+ Eingabedaten, die als String-Darstellung einer JSON-formatierten Datei formatiert sind
+ Der Amazon-Ressourcenname (ARN) Ihrer Flow-Definition

**So konfigurieren Sie die Human Loop:**

1. Geben Sie für `DataAttributes` einen Satz von `ContentClassifiers` mit Bezug zur Eingabe für den `StartHumanLoop`-Vorgang an. Verwenden Sie Inhaltsklassifizierer, um anzugeben, dass Ihre Inhalte frei von persönlich identifizierbaren Informationen oder nicht jugendfreien Inhalten sind. 

   Um Amazon Mechanical Turk nutzen zu können, stellen Sie sicher, dass Ihre Daten frei von persönlich identifizierbaren Informationen sind, einschließlich geschützter Gesundheitsinformationen gemäß HIPAA, und den Inhaltsklassifizierer `FreeOfPersonallyIdentifiableInformation` enthalten. Wenn Sie diesen Inhaltsklassifikator nicht verwenden, sendet SageMaker KI Ihre Aufgabe nicht an Mechanical Turk. Wenn Ihre Daten frei von nicht jugendfreien Inhalten sind, fügen Sie auch den `'FreeOfAdultContent'` Klassifizierer ein. Wenn Sie diese Inhaltsklassifikatoren nicht verwenden, kann SageMaker KI die Anzahl der Mechanical Turk Turk-Mitarbeiter einschränken, die Ihre Aufgabe sehen können.

1. Geben Sie für `FlowDefinitionArn` den Amazon-Ressourcennamen (ARN) Ihrer Flow-Definition ein.

1. Geben Sie für `HumanLoopInput` die Eingabedaten als Zeichenfolgendarstellung einer JSON-formatierten Datei ein. Strukturieren Sie Ihre Eingabedaten und Ihre benutzerdefinierte Arbeitsaufgabenvorlage so, dass Ihre Eingabedaten für menschliche Mitarbeiter korrekt angezeigt werden, wenn Sie Ihre Human Loop starten. Hier [Vorschau einer Vorlage für Auftragnehmeraufgaben](a2i-custom-templates.md#a2i-preview-your-custom-template) erfahren Sie, wie Sie eine Vorschau Ihrer benutzerdefinierten Arbeitsaufgabenvorlage anzeigen. 

1. Geben Sie für `HumanLoopName` einen Namen für die Human Loop ein. Der Name muss innerhalb der Region in Ihrem Konto einzigartig sein und darf bis zu 63 Zeichen enthalten. Gültige Zeichen sind a-z, 0-9 und – (Bindestrich).

**So starten Sie eine Human Loop:**
+ Um eine Human Loop zu starten, senden Sie eine Anfrage ähnlich den folgenden Beispielen mit Ihrem bevorzugten sprachspezifischen SDK. 

------
#### [ AWS SDK für Python (Boto3) ]

Die folgenden Anfragebeispiele verwenden den SDK für Python (Boto3). Weitere Informationen finden Sie unter [Boto 3 Augmented AI Laufzeit](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.start_human_loop) in der *AWS -SDK für Python (Boto)-API-Referenz*.

```
import boto3

a2i_runtime_client = boto3.client('sagemaker-a2i-runtime')

response = a2i_runtime_client.start_human_loop(
    HumanLoopName='human_loop_name',
    FlowDefinitionArn='arn:aws:sagemaker:aws-region:xyz:flow-definition/flow_def_name',
    HumanLoopInput={
        'InputContent': '{"InputContent": {\"prompt\":\"What is the answer?\"}}'    
    },
    DataAttributes={
        'ContentClassifiers': [
            'FreeOfPersonallyIdentifiableInformation'|'FreeOfAdultContent',
        ]
    }
)
```

------
#### [ AWS CLI ]

Das folgende Anforderungsbeispiel verwendet die AWS CLI. Weitere Informationen finden Sie unter [start-human-loop](https://docs.aws.amazon.com/cli/latest/reference/sagemaker-a2i-runtime/start-human-loop.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*. 

```
$ aws sagemaker-a2i-runtime start-human-loop
        --flow-definition-arn 'arn:aws:sagemaker:aws_region:xyz:flow-definition/flow_def_name' \
        --human-loop-name 'human_loop_name' \
        --human-loop-input '{"InputContent": "{\"prompt\":\"What is the answer?\"}"}' \
        --data-attributes ContentClassifiers="FreeOfPersonallyIdentifiableInformation","FreeOfAdultContent" \
```

------

Wenn Sie erfolgreich eine Human Loop starten, indem Sie `StartHumanLoop` direkt aufrufen, wird die Antwort ein – `HumanLoopARN`und ein `HumanLoopActivationResults`-Objekt enthalten, das auf `NULL` gesetzt ist. Sie können dies als den Namen der Human Loop verwenden, um Ihre Human Loop zu überwachen und zu verwalten.

## Nächste Schritte:
<a name="a2i-next-step-starthumanloop"></a>

Nachdem Sie einen Human Loop gestartet haben, können Sie ihn mit der Amazon Augmented AI Runtime API und Amazon CloudWatch Events verwalten und überwachen. Weitere Informationen hierzu finden Sie unter [Überwachen und verwalten Ihrer menschlichen Schleife](a2i-monitor-humanloop-results.md).

# Eine Human Loop löschen
<a name="a2i-delete-human-loop"></a>

Durch das Löschen einer Human Loop ändert sich ihr Status auf `Deleting`. Wenn die Human Loop gelöscht wird, steht die zugehörige menschliche Überprüfungsaufgabe den Mitarbeitern nicht mehr zur Verfügung. In einem der folgenden Fälle empfiehlt es sich möglicherweise, eine Human Loop zu löschen:
+ Die Vorlage für die Worker-Aufgabe, die zur Erstellung der Worker-Benutzeroberfläche verwendet wurde, wird nicht korrekt dargestellt oder funktioniert nicht wie erwartet. 
+ Ein einzelnes Datenobjekt wurde versehentlich mehrfach an Mitarbeiter gesendet. 
+ Sie benötigen kein Datenobjekt mehr, das von einem Menschen überprüft wurde. 

Wenn der Status einer menschlichen Schleife `InProgress` lautet, müssen Sie die Human Loop beenden, bevor Sie sie löschen können. Wenn Sie eine Human Loop beenden, ändert sich der Status auf `Stopping`, während sie gestoppt wird. Wenn sich der Status auf `Stopped` ändert, können Sie die Human Loop löschen. 

Wenn menschliche Mitarbeiter bereits an einer Aufgabe arbeiten, wenn Sie die zugehörige Human Loop stoppen, ist diese Aufgabe weiterhin verfügbar, bis sie abgeschlossen ist oder abläuft. Solange die Arbeiter noch an einer Aufgabe arbeiten, ist der Status Ihrer menschlichen Schleife `Stopping`. Wenn diese Aufgaben abgeschlossen sind, werden die Ergebnisse in der Amazon-S3-Bucket-URI gespeichert, der in Ihrem Workflow für die menschliche Überprüfung angegeben ist. Wenn die Arbeitskraft die Aufgabe verlässt, ohne Arbeit einzureichen, wird sie beendet und die Arbeitskraft kann nicht zur Aufgabe zurückkehren. Wenn kein Mitarbeiter mit der Arbeit an der Aufgabe begonnen hat, wird sie sofort beendet. 

Wenn Sie das AWS Konto löschen, mit dem der Human Loop erstellt wurde, wird er gestoppt und automatisch gelöscht. 

## Aufbewahrung und Löschung von Human-Loop-Daten
<a name="a2i-delete-human-loop-data-retention"></a>

Wenn ein menschlicher Mitarbeiter eine menschliche Überprüfungsaufgabe abschließt, werden die Ergebnisse in dem Amazon S3-Ausgabe-Bucket gespeichert, den Sie im Workflow für die menschliche Überprüfung angegeben haben, der zur Erstellung der Human Loop verwendet wurde. Durch das Löschen oder Stoppen einer menschlichen Schleife werden keine Antworten von Mitarbeitern aus Ihrem S3-Bucket entfernt. 

Darüber hinaus speichert Amazon A2I die Eingabe- und Ausgabedaten von Human Loop aus den folgenden Gründen vorübergehend intern:
+ Wenn Sie Ihre Human Loops so konfigurieren, dass ein einzelnes Datenobjekt zur Überprüfung an mehrere Mitarbeiter gesendet wird, schreibt Amazon A2I keine Ausgabedaten in Ihren S3-Bucket, bis alle Mitarbeiter die Überprüfungsaufgabe abgeschlossen haben. Amazon A2I speichert Teilantworten – Antworten von einzelnen Mitarbeitern – intern, sodass vollständige Ergebnisse in Ihren S3-Bucket geschrieben werden können. 
+ Wenn Sie ein qualitativ minderwertiges Ergebnis einer menschlichen Bewertung melden, kann Amazon A2I Ihr Problem untersuchen und darauf reagieren. 
+ Wenn Sie den Zugriff auf den S3-Ausgabe-Bucket verlieren oder ihn löschen, der im Workflow zur menschlichen Überprüfung angegeben ist, und der zur Erstellung einer menschlichen Schleife verwendet wurde, und die Aufgabe bereits an einen oder mehrere Mitarbeiter gesendet wurde, benötigt Amazon A2I einen Ort, an dem die Ergebnisse der menschlichen Überprüfung vorübergehend gespeichert werden können. 

Amazon A2I löscht diese Daten intern 30 Tage, nachdem der Status einer menschlichen Schleife in einen der folgenden Zustände geändert wurde: `Deleted`, `Stopped` oder `Completed`. Mit anderen Worten, Daten werden 30 Tage, nachdem der menschliche Kreislauf abgeschlossen, gestoppt oder gelöscht wurde, gelöscht. Darüber hinaus werden diese Daten nach 30 Tagen gelöscht, wenn Sie das AWS Konto schließen, mit dem die zugehörigen Human Loops erstellt wurden.

## Anhalten und Löschen einer Flussdefinition über die Konsole oder die Amazon-A2I-API
<a name="a2i-delete-human-loop-how-to"></a>

Sie können eine menschliche Schleife in der Augmented AI-Konsole oder mithilfe der SageMaker API stoppen und löschen. Sobald die Human Loop gelöscht wurde, ändert sich ihr Status in `Deleted`.

**Löschen einer Human Loop (Konsole)**

1. Navigieren Sie zur Augmented AI-Konsole unter [https://console.aws.amazon.com/a2i/](https://console.aws.amazon.com/a2i).

1. Wählen Sie im Navigationsbereich unter dem Abschnitt **Augmented AI** die Option **Workflows Menschliche Überprüfung**.

1. Wählen Sie den mit einem Hyperlink versehenen Namen des Überprüfungsworkflows, mit dem Sie die zu löschende Schleife erstellt haben. 

1. Wählen Sie im Bereich **Human Loop** unten auf der Seite die Human Loop aus, die Sie beenden und löschen möchten.

1. Wenn der Status der menschlichen Schleife `Completed`, `Stopped` oder `Failed` ist, wählen Sie **Löschen**.

   Wenn der **Status** Human Loop `InProgress` lautet, wählen Sie **Stopp**. Wenn sich der Status auf **Gestoppt** ändert, wählen Sie **Löschen** aus.

**Löschen einer Human Loop (API)**

1. Überprüfen Sie den Status Ihrer Human Loop mithilfe der Augmented AI Runtime API-Operation `[DescribeHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DescribeHumanLoop.html)`. In der folgenden Tabelle finden Sie Beispiele für die Verwendung dieser Operation. 

------
#### [ AWS SDK für Python (Boto3) ]

   Im folgenden Beispiel wird das SDK for Python (Boto3) verwendet, um die genannte menschliche Schleife zu beschreiben. *example-human-loop* Weitere Informationen finden Sie unter [describe\$1human\$1loop](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.describe_human_loop) in der *AWS SDK for Python (Boto) API-Referenz*.

   ```
   import boto3
   
   a2i_runtime_client = boto3.client('sagemaker-a2i-runtime')
   response = a2i_runtime_client.describe_human_loop(HumanLoopName='example-human-loop')
   human_loop_status = response['HumanLoopStatus']
   print(f'example-human-loop status is: {human_loop_status}')
   ```

------
#### [ AWS CLI ]

   Im folgenden Beispiel wird die AWS CLI verwendet, um die benannte menschliche Schleife zu beschreiben*example-human-loop*. Weitere Informationen finden Sie unter [describe-human-loop](https://docs.aws.amazon.com/cli/latest/reference/sagemaker-a2i-runtime/describe-human-loop.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*. 

   ```
   $ aws sagemaker-a2i-runtime describe-human-loop --human-loop-name 'example-human-loop'
   ```

------

1. Wenn der Status der Flow-Definition `Completed`, `Stopped` oder `Failed` ist, löschen Sie die Flow-Definition mithilfe der Augmented AI Runtime API-Operation `[DeleteHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DeleteHumanLoop.html)`.

------
#### [ AWS SDK für Python (Boto3) ]

   Im folgenden Beispiel wird das SDK for Python (Boto3) verwendet, um die angegebene menschliche Schleife zu löschen. *example-human-loop* Weitere Informationen finden Sie unter [delete\$1human\$1loop](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.delete_human_loop) in der *AWS SDK for Python (Boto) API-Referenz*.

   ```
   import boto3
   
   a2i_runtime_client = boto3.client('sagemaker-a2i-runtime')
   response = a2i_runtime_client.delete_human_loop(HumanLoopName='example-human-loop')
   ```

------
#### [ AWS CLI ]

   Im folgenden Beispiel wird die AWS CLI verwendet, um die angegebene menschliche Schleife zu löschen*example-human-loop*. Weitere Informationen finden Sie unter [delete-human-loop](https://docs.aws.amazon.com/cli/latest/reference/sagemaker-a2i-runtime/delete-human-loop.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*. 

   ```
   $ aws sagemaker-a2i-runtime delete-human-loop --human-loop-name 'example-human-loop'
   ```

------

   Wenn der Status der menschlichen Schleife `InProgress` ist, halten Sie die Human Loop mit `[StopHumanLoop](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StopHumanLoop.html)` an und löschen Sie sie anschließend mit `DeleteHumanLoop`. 

------
#### [ AWS SDK für Python (Boto3) ]

   Im folgenden Beispiel wird das SDK for Python (Boto3) verwendet, um die genannte menschliche Schleife zu beschreiben. *example-human-loop* Weitere Informationen finden Sie unter [stop\$1human\$1loop](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker-a2i-runtime.html#AugmentedAIRuntime.Client.stop_human_loop) in der *AWS SDK for Python (Boto) API-Referenz*.

   ```
   import boto3
   
   a2i_runtime_client = boto3.client('sagemaker-a2i-runtime')
   response = a2i_runtime_client.stop_human_loop(HumanLoopName='example-human-loop')
   ```

------
#### [ AWS CLI ]

   Im folgenden Beispiel wird die AWS CLI verwendet, um die benannte menschliche Schleife zu beschreiben*example-human-loop*. Weitere Informationen finden Sie unter [stop-human-loop](https://docs.aws.amazon.com/cli/latest/reference/sagemaker-a2i-runtime/stop-human-loop.html) in der Referenz zum *[AWS CLI -Befehl](https://docs.aws.amazon.com/cli/latest/reference/)*. 

   ```
   $ aws sagemaker-a2i-runtime stop-human-loop --human-loop-name 'example-human-loop'
   ```

------

# Worker-Aufgabenvorlagen erstellen und verwalten
<a name="a2i-instructions-overview"></a>

Sie können eine Aufgabenbenutzeroberfläche für Ihre Mitarbeiter erstellen, indem Sie eine *Worker-Aufgabenvorlage* erstellen. Eine Worker-Aufgabenvorlage ist eine HTML-Datei, in der Ihre Eingabedaten und Anweisungen angezeigt werden, damit Auftragnehmer Ihre Aufgabe erledigen können.

Für die Aufgabentypen Amazon Rekognition oder Amazon Textract können Sie eine vorgefertigte Auftragnehmer-Aufgabenvorlage mithilfe einer grafischen Benutzeroberfläche (GUI) anpassen und so die Interaktion mit HTML-Code vermeiden. Verwenden Sie für diese Option die Anweisungen unter [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (Konsole)](a2i-create-flow-definition.md#a2i-create-human-review-console), um einen Workflow für die menschliche Überprüfung zu erstellen und Ihre Worker-Aufgabenvorlage in der Konsole von Amazon SageMaker AI anzupassen. Sobald Sie mithilfe dieser Anweisungen eine Vorlage erstellt haben, wird sie auf der Seite mit den Worker-Aufgabenvorlagen der [Erweiterte KI-Konsole](https://console.aws.amazon.com/a2i) angezeigt.

Wenn Sie einen Workflow für die menschliche Überprüfung für einen benutzerdefinierten Aufgabentyp erstellen, müssen Sie mithilfe von HTML-Code eine *benutzerdefinierte Worker-Aufgabenvorlage* erstellen. Weitere Informationen finden Sie unter [Erstellen benutzerdefinierter Auftragnehmervorlagen](a2i-custom-templates.md). 

Wenn Sie Ihre Vorlage mit HTML erstellen, müssen Sie diese Vorlage verwenden, um einen Amazon A2I *Human Task UI Amazon-Ressourcenname (ARN)* in der Amazon-A2I-Konsole zu generieren. Der ARN hat das folgende Format: `arn:aws:sagemaker:<aws-region>:<aws-account-number>:human-task-ui/<template-name>`. Dieser ARN ist mit einer Vorlagenressource für Arbeitsaufgaben verknüpft, die Sie in einem oder mehreren Workflows für die menschliche Überprüfung (Flow-Definitionen) verwenden können.

Generieren Sie einen ARN für die Worker-Aufgabenvorlage. Befolgen Sie dazu die Anweisungen unter [Erstellen einer Worker-Aufgabenvorlage](a2i-worker-template-console.md#a2i-create-worker-template-console) oder verwenden Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html) API-Betrieb.

**Topics**
+ [Vorlagen für Worker-Aufgabenvorlagen erstellen und löschen](a2i-worker-template-console.md)
+ [Erstellen benutzerdefinierter Auftragnehmervorlagen](a2i-custom-templates.md)
+ [Erstellen von guten Anweisungen für Auftragnehmer](a2i-creating-good-instructions-guide.md)

# Vorlagen für Worker-Aufgabenvorlagen erstellen und löschen
<a name="a2i-worker-template-console"></a>

Mithilfe einer Arbeitsvorlage können Sie die Benutzeroberfläche und Anweisungen anpassen, die Ihren Auftragnehmern beim Arbeiten an Ihren Aufgaben angezeigt werden. Verwenden Sie die Anweisungen auf dieser Seite, um eine Worker-Aufgabenvorlage im Augmented AI-Bereich der Amazon SageMaker AI-Konsole zu erstellen. Für Amazon-Textract- und Amazon-Rekognition-Aufgaben wird eine Startvorlage bereitgestellt. Informationen zum Anpassen Ihrer Vorlage mithilfe von HTML-Crowd-Elementen finden Sie unter [Erstellen benutzerdefinierter Auftragnehmervorlagen](a2i-custom-templates.md).

Wenn Sie auf der Seite mit den Worker-Aufgabenvorlagen im Bereich Augmented AI der AI-Konsole eine Worker-Vorlage erstellen, wird ein ARN für Worker-Task-Vorlagen generiert. SageMaker Verwenden Sie diesen ARN als Eingabe für `HumanTaskUiArn`, wenn Sie eine Flow-Definition mithilfe der API-Operation [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html) erstellen. Sie können diese Vorlage auswählen, wenn Sie einen Workflow zur menschlichen Überprüfung auf der Seite Workflows zur menschlichen Überprüfung in der Konsole erstellen. 

Wenn Sie eine Worker-Aufgabenvorlagen-Ressource für einen Amazon-Textract- oder Amazon-Rekognition-Aufgabentyp erstellen, können Sie auf der Konsolenseite für Worker-Aufgabenvorlagen eine Vorschau der Worker-Benutzeroberfläche anzeigen, die aus Ihrer Vorlage generiert wurde. Sie müssen die unter [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai) beschriebene Richtlinie an die IAM-Rolle anhängen, die Sie für die Vorschau der Vorlage verwenden.

## Erstellen einer Worker-Aufgabenvorlage
<a name="a2i-create-worker-template-console"></a>

Sie können mithilfe der AI-Konsole und mithilfe der SageMaker SageMaker API-Operation eine Vorlage für Arbeitsaufgaben erstellen [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html). 

**Erstellen einer Worker-Aufgabenvorlage (Konsole)**

1. Öffnen Sie die Amazon A2I-Konsole unter [https://console.aws.amazon.com/a2i/](https://console.aws.amazon.com/a2i).

1. Wählen Sie unter **Amazon Erweiterte KI** im linken Navigationsbereich **Worker-Aufgabenvorlagen**.

1. Wählen Sie **Create template (Vorlage erstellen)** aus.

1. Geben Sie unter **Template name (Vorlagenname)** einen eindeutigen Namen ein.

1. (Optional) Geben Sie eine **IAM-Rolle** ein, die Amazon A2I die erforderlichen Berechtigungen erteilt, um Services in Ihrem Namen aufzurufen. 

1. Wählen Sie unter **Vorlagentyp** einen Vorlagentyp aus dem Dropdown-Menü aus. Wenn Sie eine Vorlage für eine **Textract-form extraction (textract-form-Extraktion)** oder eine **Rekognition-image moderation (rekognition-image-Moderation)** erstellen, wählen Sie die entsprechende Option aus. 

1. Geben Sie Ihre benutzerdefinierten Vorlagenelemente wie folgt ein:
   + Wenn Sie die Amazon-Textract- oder Amazon-Rekognition-Aufgabenvorlage ausgewählt haben, wird der **Vorlageneditor** automatisch mit einer Standardvorlage ausgefüllt, die Sie anpassen können. 
   + Wenn Sie eine benutzerdefinierte Vorlage verwenden, geben Sie Ihre vordefinierte Vorlage im Editor ein. 

1. (Optional) Um diesen Schritt abzuschließen, müssen Sie einen IAM-Rollen-ARN mit der Berechtigung zum Lesen von Amazon S3-Objekten bereitstellen, die in **Schritt 5** auf der Benutzeroberfläche gerendert werden. 

   Sie können nur dann eine Vorschau Ihrer Vorlage anzeigen, wenn Sie Vorlagen für Amazon Textract oder Amazon Rekognition erstellen. 

   Wählen Sie **Vorschau anzeigen**, um eine Vorschau der Benutzeroberfläche und Anweisungen anzuzeigen, die Auftragnehmer sehen werden. Dies ist eine interaktive Vorschau. Nachdem Sie die Beispielaufgabe abgeschlossen und die Option **Submit (Senden)** gewählt haben, wird die resultierende Ausgabe der Aufgabe angezeigt, die Sie gerade ausgeführt haben. 

   Wenn Sie eine Arbeitsaufgabenvorlage für einen benutzerdefinierten Aufgabentyp erstellen, können Sie eine Vorschau der Benutzeroberfläche Ihrer Arbeitsaufgabe mithilfe von `RenderUiTemplate` anzeigen. Weitere Informationen finden Sie unter [Vorschau einer Vorlage für Auftragnehmeraufgaben](a2i-custom-templates.md#a2i-preview-your-custom-template).

1. Wenn Sie mit Ihrer Vorlage zufrieden sind, wählen Sie **Create (Erstellen)**.

Nachdem Sie die Vorlage erstellt haben, können Sie diese Vorlage auswählen, wenn Sie einen Workflow für die Prüfung durch Menschen in der Konsole erstellen. Ihre Vorlage wird auch im Bereich **Amazon Augmented SageMaker AI** der AI-Konsole unter **Worker-Aufgabenvorlagen** angezeigt. Wählen Sie Ihre Vorlage aus, um deren ARN anzuzeigen. Verwenden Sie diesen ARN bei Einsatz der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html) API-Operation. 

**Erstellen Sie eine Worker-Aufgabenvorlage mithilfe einer Worker-Aufgabenvorlagen (API)**  
Um mithilfe der SageMaker API-Operation eine Worker-Aufgabenvorlage zu generieren [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html), geben Sie einen Namen für Ihre Benutzeroberfläche ein `HumanTaskUiName` und geben Sie Ihre HTML-Vorlage `Content` unter ein`UiTemplate`. Eine Dokumentation zu sprachspezifischen Sprachen SDKs , die diesen API-Vorgang unterstützen, finden **Sie im Abschnitt „Siehe auch**“ der. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html)

## Löschen einer Worker-Aufgabenvorlage
<a name="sms-delete-worker-task-template"></a>

Sobald Sie eine Worker-Aufgabenvorlage erstellt haben, können Sie sie mithilfe der SageMaker AI-Konsole oder des SageMaker API-Vorgangs löschen. [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteHumanTaskUi.html)

Wenn Sie eine Worker-Aufgabenvorlage löschen, können Sie keine menschlichen Überprüfungs-Workflows (Flow-Definitionen) verwenden, die mit dieser Vorlage erstellt wurden, um Human Loops zu starten. Alle Human Loops, die bereits mithilfe der von Ihnen gelöschten Worker-Aufgabenvorlage erstellt wurden, werden bis zur Fertigstellung weiter verarbeitet und sind nicht betroffen. 

**Löschen einer Worker-Aufgabenvorlage (Konsole)**

1. Öffnen Sie die Amazon A2I-Konsole unter [https://console.aws.amazon.com/a2i/](https://console.aws.amazon.com/a2i).

1. Wählen Sie unter Amazon Erweiterte KI im linken Navigationsbereich **Worker-Aufgabenvorlagen** aus.

1. Wählen Sie die Vorlage aus, die Sie löschen möchten. 

1. Wählen Sie **Löschen**.

1. Ein Modal erscheint, um Ihre Auswahl zu bestätigen. Wählen Sie **Löschen** aus.

**Löschen einer Worker-Aufgabenvorlage (API)**  
Um eine Worker-Aufgabenvorlage mithilfe des SageMaker API-Vorgangs zu löschen [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteHumanTaskUi.html), geben Sie unter einen Namen für Ihre Benutzeroberfläche ein. `HumanTaskUiName` 

# Erstellen benutzerdefinierter Auftragnehmervorlagen
<a name="a2i-custom-templates"></a>

*Crowd-HTML-Elemente* sind Webkomponenten, die eine Reihe von Aufgaben-Widgets und Designelementen bereitstellen, die Sie auf die zu stellende Frage zuschneiden können. Sie können diese Crowd-Elemente verwenden, um eine benutzerdefinierte Arbeitsvorlage zu erstellen und sie mit einem Amazon Augmented AI (Amazon A2I) menschlichen Überprüfungsworkflow zu integrieren, um die Arbeitskonsole und Anweisungen anzupassen. 

Eine Liste aller HTML-Crowd-Elemente, die für Amazon-A2I-Benutzer verfügbar sind, finden Sie unter [Referenz der Crowd-HTML-Elemente](sms-ui-template-reference.md). Beispiele für Vorlagen finden Sie im [AWS GitHubRepository](https://github.com/aws-samples/amazon-a2i-sample-task-uis), das über 60 Beispiele für benutzerdefinierte Aufgabenvorlagen enthält.

## Lokales Entwickeln von Vorlagen
<a name="developing-templates-locally"></a>

Wenn Sie in der Konsole testen, wie Ihre Vorlage eingehende Daten verarbeitet, können Sie das Aussehen der HTML- und benutzerdefinierten Elemente Ihrer Vorlage in Ihrem Browser testen, indem Sie den folgenden Code am Anfang Ihrer HTML-Datei hinzufügen.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
```

Dies lädt den erforderlichen Code zum Rendern der benutzerdefinierten HTML-Elemente. Verwenden Sie diesen Code, wenn Sie das Erscheinungsbild Ihrer Vorlage lieber in Ihrem bevorzugten Editor anstatt in der Konsole entwickeln möchten.

Dieser Code analysiert Ihre Variablen nicht. Möglicherweise möchten Sie diese mit Beispielinhalten ersetzen, während Sie lokal entwickeln.

## Verwenden externer Komponenten
<a name="a2i-custom-template-using-external-assets"></a>

Mit den benutzerdefinierten Vorlagen von Amazon Augmented AI können Sie externe Skripte und Stylesheets einbetten. Die folgende Kopfzeile bettet beispielsweise ein `text/css`-Stylesheet namens `stylesheet`, das sich unter `https://www.example.com/my-enhancement-styles.css` befindet, in die benutzerdefinierte Vorlage ein.

**Example**  

```
<script src="https://www.example.com/my-enhancment-script.js"></script>
<link rel="stylesheet" type="text/css" href="https://www.example.com/my-enhancement-styles.css">
```

Wenn Fehler auftreten, stellen Sie sicher, dass Ihr Ursprungsserver den richtigen MIME-Typ und die richtigen Kodierungskopfzeilen mit den Assets sendet.

Der MIME- und Kodierungstyp für entfernte Skripte ist zum Beispiel `application/javascript;CHARSET=UTF-8`.

Der MIME- und Kodierungs-Typ für Remote-Stylesheets ist `text/css;CHARSET=UTF-8`.

## Verfolgen Ihrer Variablen
<a name="a2i-custom-template-step2-UI-vars"></a>

Beim Erstellen einer benutzerdefinierten Vorlage müssen Sie Variablen für die Datenteile hinzufügen, die sich von Aufgabe zu Aufgabe oder von Auftragnehmer zu Auftragnehmer ändern können. Wenn Sie mit einer der Beispielvorlagen beginnen, müssen Sie sicherstellen, dass Sie wissen, welche Variablen bereits verwendet werden. 

Für eine benutzerdefinierte Vorlage, die eine Augmented AI-Bewertungsschleife mit einer Amazon-Textract-Textbewertungsaufgabe integriert, wird beispielsweise `{{ task.input.selectedAiServiceResponse.blocks }}` für die Eingabedaten der Anfangswerte verwendet. Für Amazon Augmented AI (Amazon A2I) wird `{{ task.input.selectedAiServiceResponse.moderationLabels }}` mit Amazon Rekognition verwendet. Für einen benutzerdefinierten Aufgabentyp müssen Sie den Eingabeparameter für Ihren Aufgabentyp bestimmen. Verwenden Sie `{{ task.input.customInputValuesForStartHumanLoop}}` dort, wo sie `customInputValuesForStartHumanLoop` angeben. 

## Beispiel für eine benutzerdefinierte Vorlage für Amazon Textract
<a name="a2i-custom-templates-textract-sample"></a>

Alle benutzerdefinierten Vorlagen beginnen und enden mit den `<crowd-form> </crowd-form>`-Elementen. Wie bei Standard-HTML-Elementen `<form>` sollte der gesamte Formularcode zwischen diesen Elementen platziert werden. 

Verwenden Sie das Element `<crowd-textract-analyze-document>` für eine Amazon-Textract-Dokumentenanalyseaufgabe. Es verwendet die folgenden Attribute: 
+ `src` – Gibt die URL der Bilddatei an, die mit Anmerkungen versehen werden soll.
+ `initialValue` – Legt die Anfangswerte für die Attribute in der Auftragnehmer-Benutzeroberfläche fest.
+ `blockTypes` (erforderlich) – Bestimmt die Art der Analyse, die die Auftragnehmer durchführen können. Derzeit wird nur `KEY_VALUE_SET` unterstützt. 
+ `keys` (erforderlich) – Gibt neue Schlüssel und den zugehörigen Textwert an, den der Auftragnehmer hinzufügen kann.
+ `no-key-edit` (erforderlich) – Verhindert, dass die Auftragnehmer die Schlüssel der durch `initialValue` übermittelten Anmerkungen bearbeiten.
+ `no-geometry-edit` – Verhindert, dass Auftragnehmer die Polygone von Anmerkungen, die durch `initialValue` weitergegeben werden, bearbeiten können.

Für untergeordnete Elemente des `<crowd-textract-analyze-document>`-Elements müssen Sie zwei Regionen haben. Sie können beliebige HTML- und CSS-Elemente in diesen Regionen verwenden. 
+ `<full-instructions>` – Anweisungen, die über den Link **Vollständige Anweisungen anzeigen** im Tool verfügbar sind. Sie können dieses Feld leer lassen, aber wir empfehlen Ihnen, vollständige Anweisungen zu geben, um bessere Ergebnisse zu erzielen.
+ `<short-instructions>` – Eine kurze Beschreibung der Aufgabe, die in der Seitenleiste des Werkzeugs angezeigt wird. Sie können dieses Feld leer lassen, aber wir empfehlen Ihnen, vollständige Anweisungen zu geben, um bessere Ergebnisse zu erzielen.

 Eine Amazon-Textract-Vorlage würde ähnlich wie die folgende aussehen.

**Example**  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
{% capture s3_uri %}http://s3.amazonaws.com/{{ task.input.aiServiceRequest.document.s3Object.bucket }}/{{ task.input.aiServiceRequest.document.s3Object.name }}{% endcapture %}

<crowd-form>
  <crowd-textract-analyze-document
    src="{{ s3_uri | grant_read_access }}"
    initial-value="{{ task.input.selectedAiServiceResponse.blocks }}"
    header="Review the key-value pairs listed on the right and correct them if they don't match the following document."
    no-key-edit
    no-geometry-edit
    keys="{{ task.input.humanLoopContext.importantFormKeys }}"
    block-types="['KEY_VALUE_SET']"
  >
    <short-instructions header="Instructions">
      <style>
        .instructions {
          white-space: pre-wrap;
        }
        .instructionsImage {
          display: inline-block;
          max-width: 100%;
        }
      </style>
      <p class='instructions'>Choose a key-value block to highlight the corresponding key-value pair in the document.

If it is a valid key-value pair, review the content for the value. If the content is incorrect, correct it.

The text of the value is incorrect, correct it.
<img class='instructionsImage' src="https://example-site/correct-value-text.png" />

A wrong value is identified, correct it.
<img class='instructionsImage' src="https://example-site/correct-value.png" />

If it is not a valid key-value relationship, choose No.
<img class='instructionsImage' src="https://example-site/not-a-key-value-pair.png" />

If you can’t find the key in the document, choose Key not found.
<img class='instructionsImage' src="https://example-site/key-is-not-found.png" />

If the content of a field is empty, choose Value is blank.
<img class='instructionsImage' src="https://example-site/value-is-blank.png" />

<b>Examples</b>
Key and value are often displayed next to or below to each other.

Key and value displayed in one line.
<img class='instructionsImage' src="https://example-site/sample-key-value-pair-1.png" />

Key and value displayed in two lines.
<img class='instructionsImage' src="https://example-site/sample-key-value-pair-2.png" />

If the content of the value has multiple lines, enter all the text without a line break. Include all value text even if it extends beyond the highlight box.
<img class='instructionsImage' src="https://assets.crowd.aws/images/a2i-console/multiple-lines.png" /></p>
    </short-instructions>

    <full-instructions header="Instructions"></full-instructions>
  </crowd-textract-analyze-document>
</crowd-form>
```

## Beispiel für eine benutzerdefinierte Vorlage für Amazon Rekognition
<a name="a2i-custom-templates-rekognition-sample"></a>

Alle benutzerdefinierten Vorlagen beginnen und enden mit den `<crowd-form> </crowd-form>`-Elementen. Wie bei Standard-HTML-Elementen `<form>` sollte der gesamte Formularcode zwischen diesen Elementen platziert werden. Für eine benutzerdefinierte Amazon-Rekognition-Aufgabenvorlage verwenden Sie das Element `<crowd-rekognition-detect-moderation-labels>`. Dieses Element unterstützt die folgenden Attribute: 
+ `categories` – Eine Reihe von Zeichenketten *oder* eine Reihe von Objekten, wobei jedes Objekt ein `name`-Feld hat.
  + Wenn die Kategorien als Objekte eingestuft werden, gilt Folgendes:
    + Die angezeigten Kategorien sind der Wert des Feldes `name`. 
    + Die zurückgegebene Antwort enthält die *vollständigen* Objekte aller ausgewählten Kategorien.
  + Wenn die Kategorien als Zeichenfolgen eingestuft werden, gilt Folgendes:
    + Die zurückgegebene Antwort ist ein Array aller Zeichenfolgen, die ausgewählt wurden.
+ `exclusion-category` – Durch Festlegen dieses Attributs erstellen Sie eine Schaltfläche unterhalb der Kategorien in der Benutzeroberfläche. Wenn ein Benutzer die Schaltfläche anklickt, werden alle Kategorien abgewählt und deaktiviert. Wenn der Auftragnehmer die Schaltfläche erneut auswählt, können die Benutzer wieder Kategorien auswählen. Wenn der Auftragnehmer die Aufgabe abgibt, indem er **Absenden** wählt, nachdem Sie die Schaltfläche ausgewählt haben, gibt diese Aufgabe ein leeres Array zurück.

Für untergeordnete Elemente des `<crowd-rekognition-detect-moderation-labels>`-Elements müssen Sie zwei Regionen haben.
+ `<full-instructions>` – Anweisungen, die über den Link **Vollständige Anweisungen anzeigen** im Tool verfügbar sind. Sie können dieses Feld leer lassen, aber wir empfehlen Ihnen, vollständige Anweisungen zu geben, um bessere Ergebnisse zu erzielen.
+ `<short-instructions>` – Kurze Beschreibung der Aufgabe, die in der Seitenleiste des Werkzeugs angezeigt wird. Sie können dieses Feld leer lassen, aber wir empfehlen Ihnen, vollständige Anweisungen zu geben, um bessere Ergebnisse zu erzielen.

Eine Vorlage, die diese Elemente verwendet, würde ungefähr wie folgt aussehen.

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
{% capture s3_uri %}http://s3.amazonaws.com/{{ task.input.aiServiceRequest.image.s3Object.bucket }}/{{ task.input.aiServiceRequest.image.s3Object.name }}{% endcapture %}

<crowd-form>
  <crowd-rekognition-detect-moderation-labels
    categories='[
      {% for label in task.input.selectedAiServiceResponse.moderationLabels %}
        {
          name: "{{ label.name }}",
          parentName: "{{ label.parentName }}",
        },
      {% endfor %}
    ]'
    src="{{ s3_uri | grant_read_access }}"
    header="Review the image and choose all applicable categories."
  >
    <short-instructions header="Instructions">
      <style>
        .instructions {
          white-space: pre-wrap;
        }
      </style>
      <p class='instructions'>Review the image and choose all applicable categories.
If no categories apply, choose None.

<b>Nudity</b>
Visuals depicting nude male or female person or persons

<b>Graphic Male Nudity</b>
Visuals depicting full frontal male nudity, often close ups

<b>Graphic Female Nudity</b>
Visuals depicting full frontal female nudity, often close ups

<b>Sexual Activity</b>
Visuals depicting various types of explicit sexual activities and pornography

<b>Illustrated Nudity or Sexual Activity</b>
Visuals depicting animated or drawn sexual activity, nudity, or pornography

<b>Adult Toys</b>
Visuals depicting adult toys, often in a marketing context

<b>Female Swimwear or Underwear</b>
Visuals depicting female person wearing only swimwear or underwear

<b>Male Swimwear Or Underwear</b>
Visuals depicting male person wearing only swimwear or underwear

<b>Partial Nudity</b>
Visuals depicting covered up nudity, for example using hands or pose

<b>Revealing Clothes</b>
Visuals depicting revealing clothes and poses, such as deep cut dresses

<b>Graphic Violence or Gore</b>
Visuals depicting prominent blood or bloody injuries

<b>Physical Violence</b>
Visuals depicting violent physical assault, such as kicking or punching

<b>Weapon Violence</b>
Visuals depicting violence using weapons like firearms or blades, such as shooting

<b>Weapons</b>
Visuals depicting weapons like firearms and blades

<b>Self Injury</b>
Visuals depicting self-inflicted cutting on the body, typically in distinctive patterns using sharp objects

<b>Emaciated Bodies</b>
Visuals depicting extremely malnourished human bodies

<b>Corpses</b>
Visuals depicting human dead bodies

<b>Hanging</b>
Visuals depicting death by hanging</p>
    </short-instructions>

    <full-instructions header="Instructions"></full-instructions>
  </crowd-rekognition-detect-moderation-labels>
</crowd-form>
```

## Hinzufügen von Automatisierung mit Liquid
<a name="a2i-custom-templates-step2-automate"></a>

Das benutzerdefinierte Vorlagensystem verwendet [Liquid](https://shopify.github.io/liquid/) zur Automatisierung. *Liquid* ist eine Open-Source Inline Markup Language. Weitere Informationen und Dokumentationen finden Sie auf der [Liquid-Homepage](https://shopify.github.io/liquid/).

In Liquid ist der Text zwischen einzelnen geschweiften Klammern und Prozentzeichen eine Anweisung oder ein *tag*, das eine Operation wie Kontrollfluss oder Iteration durchführt. Text zwischen doppelten geschweiften Klammern ist eine Variable oder ein *Objekt* zum Ausgeben des Werts. Die folgende Liste enthält zwei Arten von Liquid-Tags, die für Sie nützlich sein könnten, um die Verarbeitung von Vorlageneingabedaten zu automatisieren. Wenn Sie einen der folgenden Tag-Typen auswählen, werden Sie zur Liquid-Dokumentation weitergeleitet.
+ [Kontrollfluss](https://shopify.github.io/liquid/tags/control-flow/): Beinhaltet Programmierlogik-Operatoren wie `if/else`, `unless` und `case/when`.
+ [Iteration](https://shopify.github.io/liquid/tags/iteration/): Ermöglicht das wiederholte Ausführen von Codeblöcken mithilfe von Anweisungen wie for-Schleifen.

  Das folgende Codebeispiel zeigt beispielsweise, wie Sie das Liquid-Tag `for` verwenden können, um eine `for`-Schleife zu erstellen. Dieses Beispiel durchläuft die von Amazon Rekognition zurückgegebenen [https://docs.aws.amazon.com/rekognition/latest/dg/API_ModerationLabel.html](https://docs.aws.amazon.com/rekognition/latest/dg/API_ModerationLabel.html) und zeigt die `moderationLabels`-Attribute `name` und `parentName` an, sodass Worker sie überprüfen können:

  ```
   {% for label in task.input.selectedAiServiceResponse.moderationLabels %}
      {
        name: &quot;{{ label.name }}&quot;,
        parentName: &quot;{{ label.parentName }}&quot;,
      },
   {% endfor %}
  ```

### Verwenden von Variablenfiltern
<a name="a2i-custom-templates-step2-automate-filters"></a>

Zusätzlich zu den standardmäßigen [Liquid-Filtern](https://shopify.github.io/liquid/filters/abs/) und -Aktionen bietet Amazon Augmented AI (Amazon A2I) zusätzliche Filter. Filter werden angewendet, indem ein Pipe-Zeichen (`|`) nach dem Variablennamen platziert und dann ein Filtername angegeben wird. Verwenden Sie das folgende Format, um Filter zu verketten.

**Example**  

```
{{ <content> | <filter> | <filter> }}
```

#### Autoescape und explizites Escape
<a name="a2i-custom-templates-step2-automate-filters-autoescape"></a>

Standardmäßig sind Eingaben durch HTML-Escape-Zeichen geschützt, um Verwirrung zwischen Ihrem variablen Text und HTML zu verhindern. Sie können den `escape`-Filter explizit hinzufügen, um es für den Leser der Quelle Ihrer Vorlage ersichtlicher zu machen, dass Escaping erfolgt.

#### escape\$1once
<a name="a2i-custom-templates-step2-automate-escapeonce"></a>

`escape_once` stellt sicher, dass, wenn Sie Ihren Code bereits durch Escape-Zeichen geschützt haben, er nicht erneut durch Escape-Zeichen geschützt wird. So wird zum Beispiel sichergestellt, dass aus `&amp;` nicht `&amp;amp;` wird.

#### skip\$1autoescape
<a name="a2i-custom-templates-step2-automate-skipautoescape"></a>

`skip_autoescape` ist nützlich, wenn Ihre Inhalte als HTML verwendet werden sollen. Beispiel: Sie haben ein paar Textabsätze und einige Bilder in den vollständigen Anweisungen für einen Begrenzungsrahmen.

**Anmerkung**  
Sie sollten `skip_autoescape` sparsam verwenden. Eine bewährte Methode bei Vorlagen besteht darin, die Übergabe von funktionalem Code oder Markup mit `skip_autoescape` zu vermeiden, es sei denn, Sie sind absolut sicher, dass Sie strenge Kontrolle darüber haben, was übergeben wird. Wenn Sie Benutzereingaben übergeben, können Sie Ihre Auftragnehmer einem siteübergreifenden Skriptangriff aussetzen.

#### to\$1json
<a name="a2i-custom-templates-step2-automate-tojson"></a>

`to_json`kodiert Daten, die Sie für JavaScript Object Notation (JSON) bereitstellen. Wenn Sie ein Objekt angeben, wird es serialisiert.

#### grant\$1read\$1access
<a name="a2i-custom-templates-step2-automate-grantreadaccess"></a>

`grant_read_access` nimmt einen Amazon Simple Storage Service (Amazon S3) URI und kodiert ihn in eine HTTPS-URL mit einem kurzlebigen Zugriffstoken für diese Ressource. Dadurch ist es möglich, Foto-, Audio- oder Videoobjekte anzuzeigen, die in S3-Buckets gespeichert sind, auf die Auftragnehmer nicht anders öffentlich zugreifen können.

#### s3\$1presign
<a name="a2i-custom-templates-step2-automate-s3"></a>

 Der `s3_presign`-Filter funktioniert genauso wie der `grant_read_access`-Filter. `s3_presign` nimmt einen Amazon-S3-URI und kodiert ihn in eine HTTPS-URL mit einem kurzlebigen Zugriffstoken für diese Ressource. Dadurch ist es möglich, Foto-, Audio- oder Videoobjekte anzuzeigen, die in S3-Buckets gespeichert sind, auf die Auftragnehmer nicht anders öffentlich zugreifen können.

**Example Beispiel für die variablen Filter**  
Input  

```
auto-escape: {{ "Have you read 'James & the Giant Peach'?" }}
explicit escape: {{ "Have you read 'James & the Giant Peach'?" | escape }}
explicit escape_once: {{ "Have you read 'James &amp; the Giant Peach'?" | escape_once }}
skip_autoescape: {{ "Have you read 'James & the Giant Peach'?" | skip_autoescape }}
to_json: {{ jsObject | to_json }}                
grant_read_access: {{ "s3://amzn-s3-demo-bucket/myphoto.png" | grant_read_access }}
s3_presign: {{ "s3://amzn-s3-demo-bucket/myphoto.png" | s3_presign }}
```

**Example**  
Ausgabe  

```
auto-escape: Have you read &#39;James &amp; the Giant Peach&#39;?
explicit escape: Have you read &#39;James &amp; the Giant Peach&#39;?
explicit escape_once: Have you read &#39;James &amp; the Giant Peach&#39;?
skip_autoescape: Have you read 'James & the Giant Peach'?
to_json: { "point_number": 8, "coords": [ 59, 76 ] }
grant_read_access: https://s3.amazonaws.com/amzn-s3-demo-bucket/myphoto.png?<access token and other params>
s3_presign: https://s3.amazonaws.com/amzn-s3-demo-bucket/myphoto.png?<access token and other params>
```

**Example Beispiel für eine automatisierte Klassifizierungsvorlage.**  
Um dieses einfache Textklassifizierungsbeispiel zu automatisieren, schließen Sie das Liquid-Tag `{{ task.input.source }}` ein. In dem Beispiel wird das Element [crowd-classifier](sms-ui-template-crowd-classifier.md) verwendet.  

```
<script src="https://assets.crowd.aws/crowd-html-elements.js"></script>
<crowd-form>
  <crowd-classifier 
    name="tweetFeeling"
    categories="['positive', 'negative', 'neutral', 'cannot determine']"
    header="Which term best describes this tweet?" 
  >
    <classification-target>
       {{ task.input.source }}
    </classification-target>

    <full-instructions header="Analyzing a sentiment">
      Try to determine the feeling the author 
      of the tweet is trying to express. 
      If none seems to match, choose "other."
    </full-instructions>

    <short-instructions>
      Pick the term that best describes the sentiment 
      of the tweet. 
    </short-instructions>

  </crowd-classifier>
</crowd-form>
```

## Vorschau einer Vorlage für Auftragnehmeraufgaben
<a name="a2i-preview-your-custom-template"></a>

Verwenden Sie die SageMaker `RenderUiTemplate` AI-Operation, um eine Vorschau einer benutzerdefinierten Worker-Aufgabenvorlage anzuzeigen. Sie können den `RenderUiTemplate` Vorgang mit dem AWS CLI oder Ihrem bevorzugten AWS SDK verwenden. Eine Dokumentation zu der unterstützten Sprache, die SDKs für diesen API-Vorgang spezifisch ist, finden Sie im [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html#API_RenderUiTemplate_SeeAlso](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html#API_RenderUiTemplate_SeeAlso)Abschnitt der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html). 

**Voraussetzungen**

Um eine Vorschau Ihrer Worker-Aufgabenvorlage anzuzeigen, muss die AWS Identity and Access Management (IAM) -Rolle Amazon Resource Name (ARN)`RoleArn`, die Sie verwenden, über Zugriffsberechtigungen für die S3-Objekte verfügen, die von der Vorlage verwendet werden. Informationen zum Konfigurieren der Rolle oder des Benutzers finden Sie unter [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai).

**So zeigen Sie mithilfe der Operation `RenderUiTemplate` eine Vorschau Ihrer Vorlage für Auftragnehmeraufgaben an:**

1. Geben Sie einen **`RoleArn`** der Rolle mit den erforderlichen Richtlinien an, um eine Vorschau Ihrer benutzerdefinierten Vorlage anzuzeigen. 

1. Geben Sie im **`Input`**-Parameter von **`Task`** ein JSON-Objekt an, das Werte für die in der Vorlage definierten Variablen enthält. Dies sind die Variablen, die die Variable `task.input.source` ersetzen. Wenn Sie beispielsweise eine Variable task.input.text in Ihrer Vorlage definieren, können Sie die Variable im JSON-Objekt als `text`: `sample text` angeben.

1. Fügen Sie in den **`Content`**-Parameter von **`UiTemplate`** Ihre Vorlage ein.

Nachdem Sie `RenderUiTemplate` konfiguriert haben, verwenden Sie Ihr bevorzugtes SDK oder die AWS CLI , um eine Anforderung zum Rendern Ihrer Vorlage zu übermitteln. Wenn Ihre Anfrage erfolgreich war, enthält die Antwort [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html#API_RenderUiTemplate_ResponseSyntax](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html#API_RenderUiTemplate_ResponseSyntax), eine Liquid-Vorlage, die das HTML für die Worker-UI rendert.

**Wichtig**  
Um eine Vorschau Ihrer Vorlage anzuzeigen, benötigen Sie eine IAM-Rolle mit der Berechtigung, Amazon S3-Objekte zu lesen, die auf Ihrer Benutzeroberfläche dargestellt werden. Ein Beispiel für eine Richtlinie, die Sie an Ihre IAM-Rolle anhängen können, um diese Berechtigungen zu gewähren, finden Sie unter [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](a2i-permissions-security.md#permissions-for-worker-task-templates-augmented-ai). 

# Erstellen von guten Anweisungen für Auftragnehmer
<a name="a2i-creating-good-instructions-guide"></a>

Durch Erstellen guter Anweisungen für Ihre Aufträge der Prüfung durch Menschen (Human Review) wird die Genauigkeit Ihrer Auftragnehmer bei der Ausführung ihrer Aufgabe verbessert. Sie können die Standardanweisungen ändern, die in der Konsole beim Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) bereitgestellt werden, oder Sie können mit der Konsole eine benutzerdefinierte Auftragnehmervorlage erstellen und Ihre Anweisungen in diese Vorlage einschließen. Die Anweisungen werden dem Auftragnehmer auf der Seite angezeigt, auf der er seine Labeling-Aufgabe durchführt.

## Erstellen guter Anweisungen für Auftragnehmer
<a name="a2i-good-instructions-console"></a>

Es gibt drei Arten von Anweisungen in der Amazon Augmented AI-Konsole:
+ **Task Description** – Die Beschreibung sollte eine kurze Erläuterung der Aufgabe enthalten.
+ **Instructions** – Diese Anweisungen werden auf derselben Webseite angezeigt, auf der Auftragnehmer eine Aufgabe durchführen. Diese Anweisungen sollten als einfache Referenz dienen, um dem Auftragnehmer zu zeigen, wie die Aufgabe richtig ausgeführt wird.
+ **Additional Instructions** – Diese Anweisungen werden in einem Dialogfeld angezeigt, das erscheint, wenn von einem Auftragnehmer **View full instructions** ausgewählt wird. Wir empfehlen, dass Sie detaillierte Anweisungen für die Aufgaben bereitstellen, einschließlich mehrerer Beispiele mit Sonderfällen und anderen schwierigen Situationen beim Labeling von Objekten.

## Hinzufügen von Beispielbildern zu Ihren Anweisungen
<a name="sms-using-s3-images"></a>

Bilder stellen nützliche Beispiele für Ihre Mitarbeiter dar. So fügen Sie Ihren Anweisungen ein öffentlich zugängliches Bild hinzu:

1. Platzieren Sie den Cursor auf jene Stelle, wo das Bild im Anweisungseditor erscheinen soll.

1. Wählen Sie das Bildsymbol in der Editor-Symbolleiste aus.

1. Geben Sie die URL Ihres Bilds ein.

Wenn sich das Anweisungsbild in einem S3-Bucket befindet, auf den nicht öffentlich zugegriffen werden kann, gehen Sie folgendermaßen vor:
+ Geben Sie für die Bild-URL Folgendes ein: `{{ 'https://s3.amazonaws.com/your-bucket-name/image-file-name' | grant_read_access }}`.

Dies fügt der Bild-URL einen kurzlebigen, einmaligen Zugangscode an, über den der Browser des Auftragnehmers das Bild anzeigen kann. Im Anweisungseditor wird ein fehlerhaftes Bildsymbol angezeigt, jedoch stellt die Vorschau das Bild gerendert dar. Weitere Informationen zum `grand_read_access`-Element finden Sie unter [s3\$1presigngrant\$1read\$1accesss3\$1presign](a2i-custom-templates.md#a2i-custom-templates-step2-automate-grantreadaccess). 

# Überwachen und verwalten Ihrer menschlichen Schleife
<a name="a2i-monitor-humanloop-results"></a>

Sobald Sie eine Human Loop Überprüfung gestartet haben, können Sie die Ergebnisse der Loop mit der [Amazon Augmented AI Runtime API](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/Welcome.html) überprüfen und verwalten. Darüber hinaus ist Amazon A2I in Amazon EventBridge (auch bekannt als Amazon CloudWatch Events) integriert, um Sie zu benachrichtigen, wenn sich der Status einer Überprüfung des Human Loops auf `Completed`, `Failed` oder `Stopped` ändert. Diese Ereigniszustellung wird mindestens einmal garantiert, was bedeutet, dass alle Ereignisse, die entstehen, wenn Human Loops beendet sind, erfolgreich an EventBridge übertragen werden.

Gehen Sie wie unten beschrieben vor, um zu erfahren, wie Sie Ihre Human Loop mithilfe Amazon A2I Runtime API überwachen und verwalten können. Hier [Verwendung Amazon CloudWatch Events in Amazon Augmented AI](a2i-cloudwatch-events.md) erfahren Sie, wie Amazon A2I mit Amazon EventBridge integriert wird.

**So überprüfen Sie Ihre Ausgabedaten:**

1. Überprüfen Sie die Ergebnisse Ihrer menschlichen Schleife, indem Sie die Operation [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DescribeHumanLoop.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DescribeHumanLoop.html) aufrufen. Das Ergebnis dieser API-Operation enthält Informationen zum Grund für die Schleifenaktivierung und zu ihrem Ergebnis.

1. Überprüfen Sie die Ausgabedaten Ihres Human Loop in Amazon Simple Storage Service (Amazon S3). Der Pfad zu den Daten verwendet das folgende Muster, wobei `YYYY/MM/DD/hh/mm/ss` das Erstellungsdatum der Human Loop in der Form Jahr (`YYYY`), Monat (`MM`) und Tag (`DD`) und die Erstellungszeit in der Form Stunde (`hh`), Minute (`mm`) und Sekunde (`ss`) darstellt. 

   ```
   s3://customer-output-bucket-specified-in-flow-definition/flow-definition-name/YYYY/MM/DD/hh/mm/ss/human-loop-name/output.json
   ```

Sie können diese Struktur mit AWS Glue oder Amazon Athena integrieren, um Ihre Ausgabedaten zu partitionieren und zu analysieren. Weitere Informationen finden Sie unter [Verwalten von Partitionen für ETL-Ausgabe in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-partitions.html).

Weitere Informationen zum Amazon-A2I-Ausgabedatenformat finden Sie unter [Amazon A2I Ausgabedaten](a2i-output-data.md).

**So beenden und löschen Sie Ihre Human Loop:**

1. Wenn eine manuelle Schleife gestartet wurde, können Sie sie beenden, indem Sie die Operation [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StopHumanLoop.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StopHumanLoop.html) mit `HumanLoopName` aufrufen. Wenn eine Human Loop erfolgreich beendet wurde, sendet der Server eine HTTP 200-Antwort zurück. 

1. Um eine Human Loop zu löschen, deren Status `Failed`, `Completed` oder `Stopped` lautet, verwenden Sie die Operation [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DeleteHumanLoop.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_DeleteHumanLoop.html). 

**So listen Sie Human Loops auf:**

1. Sie können alle aktiven Human Loops auflisten, indem Sie die Operation [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_ListHumanLoops.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_ListHumanLoops.html) aufrufen. Sie können Human Loops mit den Parametern `CreationTimeAfter` und `CreateTimeBefore` nach dem Erstellungsdatum der Schleife filtern. 

1. Wenn der Vorgang erfolgreich war, gibt `ListHumanLoops` [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopSummary.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_HumanLoopSummary.html) und `NextToken` Objekte im Antwortelement zurück. `HumanLoopSummaries` enthält Informationen über eine einzelne Human Loop. Zum Beispiel werden der Status einer Loop und gegebenenfalls der Fehlergrund aufgeführt. 

   Verwenden Sie die in `NextToken` zurückgegebene Zeichenfolge als Eingabe in einem nachfolgenden Aufruf von `ListHumanLoops`, um die nächste Seite der menschlichen Schleifen anzuzeigen. 

# Amazon A2I Ausgabedaten
<a name="a2i-output-data"></a>

Wenn Ihr Workflow für Machine Learning Amazon A2I ein Datenobjekt sendet, wird eine *Human Loop* erstellt, und menschliche Prüfer erhalten die *Aufgabe*, dieses Datenobjekt zu überprüfen. Die Ausgabedaten jeder menschlichen Review-Aufgabe werden im Amazon Simple Storage Service (Amazon S3)-Ausgabe-Bucket gespeichert, den Sie in Ihrer Worker-Überprüfungsebene angeben. Der Pfad zu den Daten verwendet das folgende Muster, wobei `YYYY/MM/DD/hh/mm/ss` das Erstellungsdatum der Human Loop in der Form Jahr (`YYYY`), Monat (`MM`) und Tag (`DD`) und die Erstellungszeit in der Form Stunde (`hh`), Minute (`mm`) und Sekunde (`ss`) darstellt. 

```
s3://customer-output-bucket-specified-in-flow-definition/flow-definition-name/YYYY/MM/DD/hh/mm/ss/human-loop-name/output.json
```

Der Inhalt Ihrer Ausgabedaten hängt von der Art des [Aufgabentyps](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-task-types-general.html) (integriert oder benutzerdefiniert) und der Art der [Arbeitskraft](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-management.html) ab, die Sie einsetzen. Ihre Ausgabedaten beinhalten immer die Antwort des menschlichen Arbeiters. Darüber hinaus können die Ausgabedaten Metadaten über den menschlichen Kreislauf, den menschlichen Prüfer (Worker) und das Datenobjekt enthalten. 

In den folgenden Abschnitten erfahren Sie mehr über das Amazon-A2I-Ausgabedatenformat für verschiedene Aufgabentypen und Belegschaften. 

## Daten aus integrierten Aufgabentypen ausgeben
<a name="sms-output-data-textract"></a>

Zu den integrierten Aufgabentypen von Amazon A2I gehören Amazon Textract und Amazon Rekognition. Zusätzlich zu den menschlichen Antworten enthalten die Ausgabedaten einer dieser Aufgaben Details über den Grund, warum die Human Loop erstellt wurde, und Informationen über den integrierten Dienst, der zur Erstellung der menschlichen Schleife verwendet wurde. In der folgenden Tabelle erfahren Sie mehr über das Ausgabedatenschema für alle integrierten Aufgabentypen. Der *Wert* für jeden dieser Parameter hängt von dem Service ab, den Sie mit Amazon A2I verwenden. Weitere Informationen zu diesen servicespezifischen Werten finden Sie in der zweiten Tabelle in diesem Abschnitt. 


****  

| Parameter | Wert-Typ | Beispielwerte | Description | 
| --- | --- | --- | --- | 
| awsManagedHumanLoopRequestSource |  Zeichenfolge  | AWS/Rekognition/DetectModerationLabels/Image/V3 oder AWS/Textract/AnalyzeDocument/Forms/V1 | Der API-Vorgang und die zugehörigen AWS Dienste, die Amazon A2I aufgefordert haben, eine menschliche Schleife zu erstellen. Dies ist der API-Vorgang, den Sie verwenden, um Ihren Amazon A2I Human Loop zu konfigurieren. | 
| flowDefinitionArn |  Zeichenfolge  | arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name |  Der Amazon-Ressourcenname (ARN) des Worker-Review-Workflows (Worker-Definition), der zum Erstellen des Worker-Workflows verwendet wurde.   | 
| humanAnswers |  Liste der JSON-Objekte  | <pre>{<br />"answerContent": {<br />    "AWS/Rekognition/DetectModerationLabels/Image/V3": {<br />        "moderationLabels": [...]<br />    }<br />},</pre> oder<pre>{<br />    "answerContent": {<br />        "AWS/Textract/AnalyzeDocument/Forms/V1": {<br />            "blocks": [...]<br />    }<br />},</pre> | Eine Liste von JSON-Objekten, die Antworten von Auftragnehmern in answerContent enthalten. Dieses Objekt enthält auch Einreichungsdetails und, falls private Arbeitskräfte eingesetzt wurden, Metadaten der Mitarbeiter. Weitere Informationen hierzu finden Sie unter [Worker-Aktivitäten verfolgen](#a2i-worker-id-private). Bei Human-Loop-Output-Daten, die im Rahmen von Amazon Rekognition `DetectModerationLabel`-Überprüfungsaufgaben generiert wurden, enthält dieser Parameter nur positive Antworten. Wenn Mitarbeiter beispielsweise *Kein Inhalt* auswählen, ist diese Antwort nicht enthalten. | 
| humanLoopName |  Zeichenfolge  |  `'human-loop-name'`  | Der Name der menschliche (Human Loop). | 
| inputContent |  JSON-Objekt  |  <pre>{<br />    "aiServiceRequest": {...},<br />    "aiServiceResponse": {...},<br />    "humanTaskActivationConditionResults": {...},<br />    "selectedAiServiceResponse": {...}<br />}</pre>  |  Der Eingabeinhalt, den der AWS Service an Amazon A2I gesendet hat, als er die Erstellung einer menschlichen Schleife angefordert hat.   | 
| aiServiceRequest |  JSON-Objekt  | <pre>{<br />    "document": {...},<br />    "featureTypes": [...],<br />    "humanLoopConfig": {...}<br />}</pre>oder <pre>{<br />    "image": {...},<br />    "humanLoopConfig": {...}<br />}</pre> |  Die ursprüngliche Anfrage wurde an den in Amazon A2I integrierten AWS Service gesendet. Wenn Sie beispielsweise Amazon Rekognition mit Amazon A2I verwenden, schließt dies die Anfrage ein, die über die API-Operation `DetectModerationLabels` gestellt wurde. Bei Amazon-Textract-Integrationen schließt dies die Anfrage ein, die über `AnalyzeDocument` gestellt wurde.  | 
| aiServiceResponse |  JSON-Objekt  |  <pre>{<br />    "moderationLabels": [...],<br />    "moderationModelVersion": "3.0"<br />}</pre> oder <pre>{<br />    "blocks": [...],<br />    "documentMetadata": {}<br />}</pre>  |  Die vollständige Antwort des AWS Dienstes. Anhand dieser Daten wird festgestellt, ob eine Überprüfung durch einen Menschen erforderlich ist. Dieses Objekt kann Metadaten über das Datenobjekt enthalten, die nicht an menschliche Prüfer weitergegeben werden.   | 
| selectedAiServiceResponse |  JSON-Objekt  |  <pre>{<br />    "moderationLabels": [...],<br />    "moderationModelVersion": "3.0"<br />}</pre> oder <pre>{<br />    "blocks": [...],<br />    "documentMetadata": {}<br />}</pre>  |  Die Teilmenge von `aiServiceResponse`, die den Aktivierungsbedingungen in `ActivationConditions` entspricht. Alle in `aiServiceResponse` aufgelisteten Datenobjekte werden in `selectedAiServiceResponse` aufgelistet, wenn die Schlussfolgerungen nach dem Zufallsprinzip gezogen werden oder alle Schlussfolgerungen Aktivierungsbedingungen auslösen.  | 
| humanTaskActivationConditionResults |  JSON-Objekt  |  <pre>{<br />     "Conditions": [...]<br />}</pre>  |  Ein JSON-Objekt in `inputContent`, das den Grund für die Erstellung einer menschlichen Schleife enthält. Dazu gehören eine Liste der Aktivierungsbedingungen (`Conditions`), die in Ihrem Workflow für die menschliche Überprüfung (Ablaufdefinition) enthalten sind, sowie das Bewertungsergebnis für jede Bedingung – dieses Ergebnis ist entweder `true` oder `false`. Weitere Informationen zu den Aktivierungsbedingungen finden Sie unter [JSON-Schema für Bedingungen zur Aktivierung eines Human Loop in Amazon Augmented AI](a2i-human-fallback-conditions-json-schema.md).  | 

Wählen Sie in der folgenden Tabelle eine Registerkarte aus, um mehr über die für den Tasktyp spezifischen Parameter zu erfahren und sich ein Beispiel für einen Codeblock mit Ausgabedaten für jeden der integrierten Tasktypen anzusehen.

------
#### [ Amazon Textract Task Type Output Data ]

Wenn Sie die integrierte Amazon-Textract-Integration verwenden, sehen Sie `'AWS/Textract/AnalyzeDocument/Forms/V1'` als den Wert für `awsManagedHumanLoopRequestSource` in Ihren Ausgabedaten.

Der `answerContent` Parameter enthält ein `Block` Objekt, das menschliche Antworten für alle an Amazon A2I gesendeten Blöcke enthält.

Der `aiServiceResponse` Parameter beinhaltet auch ein `Block` Objekt mit der Antwort von Amazon Textract auf die ursprüngliche Anfrage, die mit an `AnalyzeDocument` gesendet wurde.

Weitere Informationen zu den Parametern, die Sie im Blockobjekt sehen, finden Sie unter [Block](https://docs.aws.amazon.com/textract/latest/dg/API_Block.html) im *Amazon Textract Developer Guide*. 

Im Folgenden finden Sie ein Beispiel für die Ausgabedaten einer Amazon-A2I-Überprüfung der Schlussfolgerungen aus der Amazon-Textract-Dokumentenanalyse durch einen Menschen. 

```
{
    "awsManagedHumanLoopRequestSource": "AWS/Textract/AnalyzeDocument/Forms/V1",
    "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
    "humanAnswers": [
        {
            "answerContent": {
                "AWS/Textract/AnalyzeDocument/Forms/V1": {
                    "blocks": [...]
                }
            },
            "submissionTime": "2020-09-28T19:17:59.880Z",
            "workerId": "111122223333",
            "workerMetadata": {
                "identityData": {
                    "identityProviderType": "Cognito",
                    "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_111111",
                    "sub": "c6aa8eb7-9944-42e9-a6b9-111122223333"
                }
            }
        }
    ],
    "humanLoopName": "humnan-loop-name",
    "inputContent": {
        "aiServiceRequest": {
            "document": {
                "s3Object": {
                    "bucket": "amzn-s3-demo-bucket1",
                    "name": "document-demo.jpg"
                }
            },
            "featureTypes": [
                "TABLES",
                "FORMS"
            ],
            "humanLoopConfig": {
                "dataAttributes": {
                    "contentClassifiers": [
                        "FreeOfPersonallyIdentifiableInformation"
                    ]
                },
                "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
                "humanLoopName": "humnan-loop-name"
            }
        },
        "aiServiceResponse": {
            "blocks": [...],
            "documentMetadata": {
                "pages": 1
            }
        },
        "humanTaskActivationConditionResults": {
            "Conditions": [
                {
                    "EvaluationResult": true,
                    "Or": [
                        {
                            "ConditionParameters": {
                                "ImportantFormKey": "Mail address",
                                "ImportantFormKeyAliases": [
                                    "Mail Address:",
                                    "Mail address:",
                                    "Mailing Add:",
                                    "Mailing Addresses"
                                ],
                                "KeyValueBlockConfidenceLessThan": 100,
                                "WordBlockConfidenceLessThan": 100
                            },
                            "ConditionType": "ImportantFormKeyConfidenceCheck",
                            "EvaluationResult": true
                        },
                        {
                            "ConditionParameters": {
                                "ImportantFormKey": "Mail address",
                                "ImportantFormKeyAliases": [
                                    "Mail Address:",
                                    "Mail address:",
                                    "Mailing Add:",
                                    "Mailing Addresses"
                                ]
                            },
                            "ConditionType": "MissingImportantFormKey",
                            "EvaluationResult": false
                        }
                    ]
                }
            ]
        },
        "selectedAiServiceResponse": {
            "blocks": [...]
        }
    }
}
```

------
#### [ Amazon Rekognition Task Type Output Data ]

Wenn Sie die integrierte Amazon-Textract-Integration verwenden, sehen Sie die Zeichenfolge `'AWS/Rekognition/DetectModerationLabels/Image/V3'` als Wert für `awsManagedHumanLoopRequestSource` in Ihren Ausgabedaten.

Der `answerContent` Parameter enthält ein `moderationLabels` Objekt, das menschliche Antworten für alle Moderationslabels enthält, die an Amazon A2I gesendet wurden.

Der `aiServiceResponse` Parameter beinhaltet auch ein `moderationLabels` Objekt mit der Antwort von Amazon Rekognition auf die ursprüngliche Anfrage, an die `DetectModerationLabels` gesendet wurde.

Weitere Informationen zu den Parametern, die Sie im Blockobjekt sehen, finden Sie [ModerationLabel](https://docs.aws.amazon.com/rekognition/latest/dg/API_ModerationLabel.html)im Amazon Rekognition Developer Guide. 

Im Folgenden finden Sie ein Beispiel für die Ausgabedaten einer Amazon-A2I-Überprüfung der Amazon Rekognition Image-Moderation-Inferenzen durch einen Menschen. 

```
{
    "awsManagedHumanLoopRequestSource": "AWS/Rekognition/DetectModerationLabels/Image/V3",
    "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
    "humanAnswers": [
        {
            "answerContent": {
                "AWS/Rekognition/DetectModerationLabels/Image/V3": {
                    "moderationLabels": [...]
                }
            },
            "submissionTime": "2020-09-28T19:22:35.508Z",
            "workerId": "ef7294f850a3d9d1",
            "workerMetadata": {
                "identityData": {
                    "identityProviderType": "Cognito",
                    "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_111111",
                    "sub": "c6aa8eb7-9944-42e9-a6b9-111122223333"
                }
            }
        }
    ],
    "humanLoopName": "humnan-loop-name",
    "inputContent": {
        "aiServiceRequest": {
            "humanLoopConfig": {
                "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
                "humanLoopName": "humnan-loop-name"
            },
            "image": {
                "s3Object": {
                    "bucket": "amzn-s3-demo-bucket1",
                    "name": "example-image.jpg"
                }
            }
        },
        "aiServiceResponse": {
            "moderationLabels": [...],
            "moderationModelVersion": "3.0"
        },
        "humanTaskActivationConditionResults": {
            "Conditions": [
                {
                    "EvaluationResult": true,
                    "Or": [
                        {
                            "ConditionParameters": {
                                "ConfidenceLessThan": 98,
                                "ModerationLabelName": "Suggestive"
                            },
                            "ConditionType": "ModerationLabelConfidenceCheck",
                            "EvaluationResult": true
                        },
                        {
                            "ConditionParameters": {
                                "ConfidenceGreaterThan": 98,
                                "ModerationLabelName": "Female Swimwear Or Underwear"
                            },
                            "ConditionType": "ModerationLabelConfidenceCheck",
                            "EvaluationResult": false
                        }
                    ]
                }
            ]
        },
        "selectedAiServiceResponse": {
            "moderationLabels": [
                {
                    "confidence": 96.7122802734375,
                    "name": "Suggestive",
                    "parentName": ""
                }
            ],
            "moderationModelVersion": "3.0"
        }
    }
}
```

------

## Daten aus benutzerdefinierten Aufgabentypen ausgeben
<a name="sms-output-data-custom"></a>

Wenn Sie Amazon A2I zu einem benutzerdefinierten Arbeitsablauf für die Überprüfung durch einen Mitarbeiter hinzufügen, sehen Sie die folgenden Parameter in den Ausgabedaten, die von menschlichen Überprüfungsaufgaben zurückgegeben werden. 


****  

| Parameter | Wert-Typ | Description | 
| --- | --- | --- | 
|  `flowDefinitionArn`  |  Zeichenfolge  |  Der Amazon-Ressourcenname (ARN) des Worker-Review-Workflows (Worker-Definition), der zum Erstellen des Worker-Workflows verwendet wurde.   | 
|  `humanAnswers`  |  Liste der JSON-Objekte  | Eine Liste von JSON-Objekten, die Antworten von Mitarbeitern in answerContent enthalten. Der Wert in diesem Parameter wird durch die Ausgabe bestimmt, die Sie von Ihrer [Worker-Aufgabenvorlage](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-instructions-overview.html) erhalten haben. Wenn Sie eine private Belegschaft einsetzen, sind die Metadaten der Mitarbeiter enthalten. Weitere Informationen hierzu finden Sie unter [Worker-Aktivitäten verfolgen](#a2i-worker-id-private). | 
|  `humanLoopName`  | Zeichenfolge | Der Name der menschliche (Human Loop). | 
|  `inputContent`  |  JSON-Objekt  |  Der an Amazon A2I gesendete Eingabeinhalt ist in der Anfrage an [https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StartHumanLoop.html](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/API_StartHumanLoop.html) enthalten.  | 

Im Folgenden finden Sie ein Beispiel für Ausgabedaten aus einer benutzerdefinierten Integration mit Amazon A2I und Amazon Transcribe. In diesem Beispiel besteht der `inputContent` aus:
+ Ein Pfad zu einer.mp4-Datei in Amazon S3 und der Videotitel
+ Die von Amazon Transcribe zurückgesendete Transkription (analysiert aus den Amazon Transcribe-Ausgabedaten)
+ Eine Start- und Endzeit, die von der Worker-Aufgabenvorlage verwendet wird, um die MP4-Datei auszuschneiden und den Arbeitern einen relevanten Teil des Videos zu zeigen

```
{
    "flowDefinitionArn": "arn:aws:sagemaker:us-west-2:111122223333:flow-definition/flow-definition-name",
    "humanAnswers": [
        {
            "answerContent": {
                "transcription": "use lambda to turn your notebook"
            },
            "submissionTime": "2020-06-18T17:08:26.246Z",
            "workerId": "ef7294f850a3d9d1",
            "workerMetadata": {
                "identityData": {
                    "identityProviderType": "Cognito",
                    "issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_111111",
                    "sub": "c6aa8eb7-9944-42e9-a6b9-111122223333"
                }
            }

        }
    ],
    "humanLoopName": "human-loop-name",
    "inputContent": {
        "audioPath": "s3://amzn-s3-demo-bucket1/a2i_transcribe_demo/Fully-Managed Notebook Instances with Amazon SageMaker - a Deep Dive.mp4",
        "end_time": 950.27,
        "original_words": "but definitely use Lambda to turn your ",
        "start_time": 948.51,
        "video_title": "Fully-Managed Notebook Instances with Amazon SageMaker - a Deep Dive.mp4"
    }
}
```

## Worker-Aktivitäten verfolgen
<a name="a2i-worker-id-private"></a>

Amazon A2I bietet Informationen, mit denen Sie einzelne Mitarbeiter anhand von Aufgabenausgabedaten verfolgen können. Um den Mitarbeiter zu identifizieren, der an der menschlichen Überprüfungsaufgabe gearbeitet hat, verwenden Sie Folgendes aus den Ausgabedaten in Amazon S3:
+ Der `acceptanceTime` ist die Zeit, zu welcher der Mitarbeiter die Aufgabe angenommen hat. Das Format dieses Datums- und Zeitstempels bezieht sich `YYYY-MM-DDTHH:MM:SS.mmmZ` auf Jahr (`YYYY`), Monat (`MM`), Tag (`DD`), Stunde (`HH`), Minute (`MM`), Sekunde (`SS`) und Millisekunde (). `mmm` Datum und Uhrzeit werden durch ein **T** getrennt. 
+ Der `submissionTime` ist die Zeit, zu der die Arbeitskraft ihre Anmerkungen mit der Schaltfläche **Senden** eingereicht hat. Das Format dieses Datums- und Zeitstempels `YYYY-MM-DDTHH:MM:SS.mmmZ` bezieht sich auf Jahr (`YYYY`), Monat (`MM`), Tag (`DD`), Stunde (`HH`), Minute (`MM`), Sekunde (`SS`) und Millisekunde (). `mmm` Datum und Uhrzeit werden durch ein **T** getrennt. 
+ `timeSpentInSeconds` gibt die Gesamtzeit in Sekunden an, die ein Auftragnehmer aktiv an dieser Aufgabe gearbeitet hat. Diese Metrik beinhaltet nicht die Zeit, in der ein Auftragnehmer die Arbeit unterbrochen oder eine Pause gemacht hat.
+ Die `workerId` ist für jeden Worker spezifisch. 
+ Wenn Sie [private Arbeitskräfte](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-workforce-private.html) verwenden, wird in `workerMetadata` Folgendes angezeigt.
  + `identityProviderType` ist der Dienst, der für die Verwaltung der privaten Arbeitskräfte zuständig ist. 
  + Das `issuer` ist der Amazon Cognito-Benutzerpool oder der OpenID Connect (OIDC) Identitätsanbieter (IDP) -Aussteller, der dem Arbeitsteam zugeordnet ist, das mit dieser menschlichen Überprüfungsaufgabe beauftragt ist.
  + Ein eindeutiger `sub`-Identifier verweist auf den Arbeitnehmer. Wenn Sie mit Amazon Cognito eine Belegschaft erstellen, können Sie mit Amazon Cognito Details zu dieser Arbeitskraft (wie den Namen oder den Benutzernamen) abrufen, die dieser ID zugeordnet sind. Wie das funktioniert, erfahren Sie unter [Verwalten und Suchen von Benutzerkonten](https://docs.aws.amazon.com/cognito/latest/developerguide/how-to-manage-user-accounts.html#manage-user-accounts-searching-user-attributes) im *[Amazon Cognito Developer Guide](https://docs.aws.amazon.com/cognito/latest/developerguide/)*.

Im Folgenden finden Sie ein Beispiel für die Ausgabe, die Sie sehen können, wenn Sie Amazon Cognito verwenden, um private Arbeitskräfte zu erstellen. Dies ist in der `identityProviderType` identifiziert.

```
"submissionTime": "2020-12-28T18:59:58.321Z",
"acceptanceTime": "2020-12-28T18:59:15.191Z", 
"timeSpentInSeconds": 40.543,
"workerId": "a12b3cdefg4h5i67",
"workerMetadata": {
    "identityData": {
        "identityProviderType": "Cognito",
        "issuer": "https://cognito-idp.aws-region.amazonaws.com/aws-region_123456789",
        "sub": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
    }
}
```

 Im Folgenden finden Sie ein Beispiel für die Ausgabe, die Sie sehen können, wenn Sie Ihren eigenen OIDC-IdP verwenden, um eine private Belegschaft aufzubauen:

```
"workerMetadata": {
        "identityData": {
            "identityProviderType": "Oidc",
            "issuer": "https://example-oidc-ipd.com/adfs",
            "sub": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
        }
}
```

Weitere Informationen zum Einsetzen von privaten Arbeitskräften finden Sie unter [Private Arbeitskräfte](sms-workforce-private.md).

# Berechtigungen und Sicherheit in Amazon Augmented AI
<a name="a2i-permissions-security"></a>

Wenn Sie Amazon Augmented AI (Amazon A2I) verwenden, um einen Workflow zur Überprüfung durch Mitarbeiter für Ihre ML/AI-Anwendung zu erstellen, erstellen und konfigurieren Sie *Ressourcen* in Amazon SageMaker AI, z. B. eine menschliche Belegschaft und Vorlagen für Arbeiteraufgaben. Um einen Human Loop zu konfigurieren und zu starten, integrieren Sie Amazon A2I entweder in andere AWS Dienste wie Amazon Textract oder Amazon Rekognition oder verwenden die Amazon Augmented AI Runtime API. Um einen menschlichen Überprüfungs-Workflow zu erstellen und einen menschlichen Kreislauf in Gang zu setzen, müssen Sie Ihrer AWS Identity and Access Management (IAM-) Rolle oder Ihrem Benutzer bestimmte Richtlinien zuordnen. Das heißt: 
+ Wenn Sie am oder nach dem 12. Januar 2020 ein Human Loop mit Bildeingabedaten starten, müssen Sie dem Amazon-S3-Bucket, der Ihre Eingabedaten enthält, eine CORS-Header-Richtlinie hinzufügen. Weitere Informationen hierzu finden Sie unter [CORS benötigte Berechtigungen](#a2i-cors-update). 
+ Wenn Sie eine Flow-Definition erstellen, müssen Sie eine Rolle bereitstellen, die die Berechtigung für den Zugriff auf sowohl zum Lesen von Objekten, die in einer Benutzeroberfläche für menschliche Aufgaben gerendert werden, als auch zum Schreiben der Ergebnisse der Prüfung durch Menschen gewährt. 

  An diese Rolle muss auch eine Vertrauensrichtlinie angehängt sein, um der SageMaker KI die Erlaubnis zu erteilen, die Rolle zu übernehmen. Auf diese Weise kann Amazon A2I Aktionen entsprechend den Berechtigungen ausführen, die Sie der Rolle anfügen. 

  Unter [Hinzufügen von Berechtigungen zur IAM-Rolle, die zum Erstellen einer Flow-Definition verwendet wird](#a2i-human-review-permissions-s3) finden Sie Beispielrichtlinien, die Sie ändern und der Rolle anfügen können, die Sie zum Erstellen einer Flow-Definition verwenden. Dies sind die Richtlinien, die der IAM-Rolle zugeordnet sind, die im Bereich **Human Review Workflows** im Amazon A2I-Bereich der SageMaker KI-Konsole erstellt wurde. 
+ Zum Erstellen und Starten von Human Loops können Sie entweder eine API-Operation aus einem integrierten Task-Typ (z. B. `DetectModerationLabel` oder `AnalyzeDocument`) oder die Amazon A2I Runtime-API-Operation `StartHumanLoop` in einer benutzerdefinierten ML-Anwendung verwenden. Sie müssen die `AmazonAugmentedAIFullAccess` verwaltete Richtlinie AmazonAugmentedAIFullAccess an den Benutzer anfügen, der diese API-Operationen aufruft, um die Serviceberechtigung zur Verwendung von Amazon A2I Vorgängen zu erteilen. Um zu erfahren wie dies geht, vgl. [Erstellen eines Benutzers, der Amazon A2I API-Operationen aufrufen kann](#create-user-grants).

  Diese Richtlinie gewährt *keine* Genehmigung zum Aufrufen der API-Operationen des AWS Dienstes, die mit integrierten Aufgabentypen verknüpft sind. AmazonAugmentedAIFullAccess erteilt beispielsweise `AmazonAugmentedAIFullAccess`keine Berechtigung zum Aufrufen der `DetectModerationLabel` API-Operation oder Amazon Textract `AnalyzeDocument` API Operation. Sie können die allgemeinere Richtlinie `AmazonAugmentedAIIntegratedAPIAccess` verwenden, um diese Berechtigungen zu erteilen. Weitere Informationen finden Sie unter [Einen Benutzer mit Berechtigungen zum Aufrufen von Amazon-A2I-, Amazon-Textract- und Amazon-Rekognition-API-Operationen erstellen](#a2i-grant-general-permission). Dies ist eine gute Option, wenn Sie einem Benutzer umfassende Berechtigungen zur Nutzung von Amazon A2I und AWS der API-Operationen integrierter Dienste gewähren möchten. 

  Wenn Sie detailliertere Berechtigungen konfigurieren möchten, finden Sie unter [Beispiele für identitätsbasierte Richtlinien von Amazon Rekognition](https://docs.aws.amazon.com/rekognition/latest/dg/security_iam_id-based-policy-examples.html) und [Beispiele für identitätsbasierte Richtlinien von Amazon Textract](https://docs.aws.amazon.com/textract/latest/dg/security_iam_id-based-policy-examples.html) identitätsbasierte Richtlinien, die Sie verwenden können, um die Berechtigung zur Nutzung dieser einzelnen Services zu erteilen.
+ Um eine Vorschau der benutzerdefinierten Vorlage für die Benutzeroberfläche für Auftragnehmeraufgaben anzuzeigen, benötigen Sie eine IAM-Rolle mit Berechtigungen zum Lesen von Amazon S3 Objekten, die auf der Benutzeroberfläche gerendert werden. Ein Richtlinienbeispiel finden Sie unter [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](#permissions-for-worker-task-templates-augmented-ai).

**Topics**
+ [CORS benötigte Berechtigungen](#a2i-cors-update)
+ [Hinzufügen von Berechtigungen zur IAM-Rolle, die zum Erstellen einer Flow-Definition verwendet wird](#a2i-human-review-permissions-s3)
+ [Erstellen eines Benutzers, der Amazon A2I API-Operationen aufrufen kann](#create-user-grants)
+ [Einen Benutzer mit Berechtigungen zum Aufrufen von Amazon-A2I-, Amazon-Textract- und Amazon-Rekognition-API-Operationen erstellen](#a2i-grant-general-permission)
+ [Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben](#permissions-for-worker-task-templates-augmented-ai)
+ [Amazon A2I mit AWS KMS verschlüsselten Buckets verwenden](#a2i-kms-encryption)
+ [Zusätzliche Berechtigungen und Sicherheitsressourcen](#additional-security-resources-augmented-ai)

## CORS benötigte Berechtigungen
<a name="a2i-cors-update"></a>

Anfang 2020 änderten weit verbreitete Browser wie Chrome und Firefox ihr Standardverhalten für das Rotieren von Bildern auf der Grundlage von Bildmetadaten, den sogenannten [EXIF-Daten](https://en.wikipedia.org/wiki/Exif). Bisher wurden Bilder in Browsern immer genau so angezeigt, wie sie auf der Festplatte gespeichert sind, die normalerweise nicht gedreht ist. Nach der Änderung rotieren Bilder nun entsprechend einem Teil der Bildmetadaten, dem sogenannten *Orientierungswert*. Dies hat wichtige Auswirkungen auf die gesamte Community für das Machine Learning. Wenn beispielsweise die EXIF-Ausrichtung nicht berücksichtigt wird, können Anwendungen, die zum Kommentieren von Bildern verwendet werden, Bilder in unerwarteter Ausrichtung anzeigen und zu falschen Beschriftungen führen. 

Ab Chrome 89 AWS kann die Rotation von Bildern nicht mehr automatisch verhindert werden, da die Webstandardgruppe W3C entschieden hat, dass die Möglichkeit, die Rotation von Bildern zu kontrollieren, gegen die Same-Origin-Richtlinie des Webs verstößt. Daher müssen Sie den S3-Buckets, die Ihre Eingabebilder enthalten, eine CORS-Header-Richtlinie hinzufügen, um sicherzustellen, dass menschliche Mitarbeiter Ihre Eingabebilder in einer vorhersehbaren Ausrichtung kommentieren, wenn Sie Anfragen zur Erstellung eines Human Loops einreichen.

**Wichtig**  
Wenn Sie den S3-Buckets, die Ihre Eingabedaten enthalten, keine CORS-Konfiguration hinzufügen, schlagen die manuellen Überprüfungsaufgaben für diese Eingabedatenobjekte fehl.

Sie können eine CORS-Richtlinie zu einem S3-Bucket hinzufügen, der Eingabedaten in der Amazon S3-Konsole enthält. Um die erforderlichen CORS-Header für den S3-Bucket festzulegen, der Ihre Eingabebilder in der S3-Konsole enthält, folgen Sie den Anweisungen unter [Wie füge ich die domainübergreifende gemeinsame Nutzung von Ressourcen](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html) mit CORS hinzu?. Verwenden Sie den folgenden CORS-Konfigurationscode für die Buckets, die Ihre Bilder hosten. Wenn Sie die Amazon S3-Konsole verwenden, um die Richtlinie zu Ihrem Bucket hinzuzufügen, müssen Sie das JSON-Format verwenden.

**JSON**

```
[{
   "AllowedHeaders": [],
   "AllowedMethods": ["GET"],
   "AllowedOrigins": ["*"],
   "ExposeHeaders": []
}]
```

**XML**

```
<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>*</AllowedOrigin>
   <AllowedMethod>GET</AllowedMethod>
 </CORSRule>
</CORSConfiguration>
```

Das folgende GIF zeigt die Anweisungen in der Amazon S3-Dokumentation zum Hinzufügen einer CORS-Header-Richtlinie mithilfe der Amazon S3-Konsole.

![\[GIF zum Hinzufügen einer CORS-Header-Richtlinie über die Amazon-S3-Konsole\]](http://docs.aws.amazon.com/de_de/sagemaker/latest/dg/images/sms/gifs/cors-config.gif)


## Hinzufügen von Berechtigungen zur IAM-Rolle, die zum Erstellen einer Flow-Definition verwendet wird
<a name="a2i-human-review-permissions-s3"></a>

Um eine Flow-Definition zu erstellen, fügen Sie die Richtlinien in diesem Abschnitt der Rolle hinzu, die Sie bei der Erstellung eines Workflows zur Überprüfung durch Menschen in der SageMaker AI-Konsole oder bei der Verwendung des API-Vorgangs verwenden. `CreateFlowDefinition`
+ Wenn Sie die Konsole verwenden, um einen Workflow für die Prüfung durch Menschen zu erstellen, geben Sie den Amazon-Ressourcennamen (ARN) der Rolle in das Feld **IAM role (IAM-Rolle)** ein, wenn Sie [einen Workflow für die Prüfung durch Menschen in der Konsole erstellen](https://docs.aws.amazon.com/sagemaker/latest/dg/create-human-review-console.html). 
+ Wenn Sie eine Flow-Definition über die API erstellen, fügen Sie diese Richtlinien der Rolle an, die an den `RoleArn`-Parameter der `CreateFlowDefinition`-Operation übergeben wird. 

Wenn Sie einen Workflow für die Prüfung durch Menschenerstellen, ruft Amazon A2I Amazon S3 auf, um die Aufgabe abzuschließen. Um Amazon A2I die Berechtigung zum Abrufen und Speichern Ihrer Dateien in Ihrem Amazon S3 Bucket zu erteilen, erstellen Sie die folgende Richtlinie und fügen Sie sie Ihrer Rolle an. Wenn beispielsweise die Bilder, Dokumente und anderen Dateien, die Sie zur Prüfung durch Menschen senden, in einem S3-Bucket namens `my_input_bucket` gespeichert sind, und Sie möchten, dass die menschlichen Prüfungen in einem Bucket namens `my_output_bucket` gespeichert werden, würden Sie die folgende Richtlinie erstellen. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::my_input_bucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::my_output_bucket/*"
            ]
        }
    ]
}
```

------

Darüber hinaus muss die IAM-Rolle über die folgende Vertrauensrichtlinie verfügen, um SageMaker KI die Erlaubnis zu erteilen, die Rolle zu übernehmen. Weitere Informationen IAM-Vertrauensrichtlinien finden Sie im Abschnitt [Ressourcenbasierte Richtlinien](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_resource-based) unter **Richtlinien und Berechtigungen** in der Dokumentation zu *AWS Identity and Access Management*.

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

****  

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

------

Weitere Informationen zum Erstellen und Verwalten von IAM-Rollen und -Richtlinien finden Sie in den folgenden Themen im *AWS Identity and Access Management Benutzerhandbuch*: 
+ Informationen zum Erstellen von IAM-Rollen finden Sie unter [Erstellen einer Rolle zum Delegieren von Berechtigungen an einen IAM-Benutzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html). 
+ Informationen zum Erstellen von -Richtlinien finden Sie unter [Erstellen von IAM-Richtlinien](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html). 
+ Informationen zum Anfügen einer -Richtlinie an eine Rolle finden Sie unter [Hinzufügen und Entfernen von IAM-Identitätsberechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).

## Erstellen eines Benutzers, der Amazon A2I API-Operationen aufrufen kann
<a name="create-user-grants"></a>

Um Amazon A2I zum Erstellen und Starten von Hooman Loops für Amazon Rekognition, Amazon Textract oder die Amazon-A2I-Runtime-API zu verwenden, müssen Sie einen Benutzer verwenden, der die Berechtigung hat, Amazon-A2I-Vorgänge aufzurufen. Verwenden Sie zu diesem Zweck die IAM Konsole, um die [https://console.aws.amazon.com/iam/home?region=us-east-2#/policies/arn:aws:iam::aws:policy/AmazonAugmentedAIFullAccess$jsonEditor](https://console.aws.amazon.com/iam/home?region=us-east-2#/policies/arn:aws:iam::aws:policy/AmazonAugmentedAIFullAccess$jsonEditor) verwaltete Richtlinie einem neuen oder vorhandenen Benutzer anzufügen. 

Diese Richtlinie gewährt einem Benutzer die Erlaubnis, API-Operationen von der SageMaker API für die Erstellung und Verwaltung von Flow-Definitionen und der Amazon Augmented AI Runtime API für die Erstellung und Verwaltung von Human Loop aufzurufen. Weitere Informationen zu diesen API-Vorgängen finden Sie unter [Verwendung APIs in Amazon Augmented AI](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-api-references.html).

`AmazonAugmentedAIFullAccess` gewährt keine Berechtigungen für die Verwendung von Amazon Rekognition or Amazon Textract API-Operationen. 

**Anmerkung**  
Sie können `AmazonAugmentedAIFullAccess` auch einer IAM-Rolle anfügen, die zum Erstellen und Starten einer Human Loop verwendet wird. 

Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:
+ Benutzer und Gruppen in AWS IAM Identity Center:

  Erstellen Sie einen Berechtigungssatz. Befolgen Sie die Anweisungen unter [Erstellen eines Berechtigungssatzes](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) im *AWS IAM Identity Center -Benutzerhandbuch*.
+ Benutzer, die in IAM über einen Identitätsanbieter verwaltet werden:

  Erstellen Sie eine Rolle für den Identitätsverbund. Befolgen Sie die Anleitung unter [Eine Rolle für einen externen Identitätsanbieter (Verbund) erstellen](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) im *IAM-Benutzerhandbuch*.
+ IAM-Benutzer:
  + Erstellen Sie eine Rolle, die Ihr Benutzer annehmen kann. Befolgen Sie die Anleitung unter [Eine Rolle für einen IAM-Benutzer erstellen](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) im *IAM-Benutzerhandbuch*.
  + (Nicht empfohlen) Weisen Sie einem Benutzer eine Richtlinie direkt zu oder fügen Sie einen Benutzer zu einer Benutzergruppe hinzu. Befolgen Sie die Anweisungen unter [Hinzufügen von Berechtigungen zu einem Benutzer (Konsole)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) im *IAM-Benutzerhandbuch*.

Informationen finden Sie im Abschnitt [Hinzufügen und Entfernen von IAM-Identitätsberechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) im *AWS Identity and Access Management IAM-Benutzerhandbuch*.

## Einen Benutzer mit Berechtigungen zum Aufrufen von Amazon-A2I-, Amazon-Textract- und Amazon-Rekognition-API-Operationen erstellen
<a name="a2i-grant-general-permission"></a>

Um einen Benutzer zu erstellen, der die Berechtigung hat, die API-Vorgänge aufzurufen, die von den eingebauten Aufgabentypen verwendet werden (d. h. `DetectModerationLables` für Amazon Rekognition und `AnalyzeDocument` für Amazon Textract), und die Berechtigung hat, alle Amazon-A2I-API-Vorgänge zu verwenden, fügen Sie die verwaltete IAM-Richtlinie, `AmazonAugmentedAIIntegratedAPIAccess`. Sie können diese Richtlinie verwenden, wenn Sie einem Benutzer, der Amazon A2I mit mehreren Task-Typen verwendet, allgemeine Berechtigungen erteilen möchten. Weitere Informationen zu diesen API-Vorgängen finden Sie unter [Verwendung APIs in Amazon Augmented AI](https://docs.aws.amazon.com/sagemaker/latest/dg/a2i-api-references.html).

**Anmerkung**  
Sie können `AmazonAugmentedAIIntegratedAPIAccess` auch einer IAM-Rolle anfügen, die zum Erstellen und Starten einer Human Loop verwendet wird. 

Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:
+ Benutzer und Gruppen in AWS IAM Identity Center:

  Erstellen Sie einen Berechtigungssatz. Befolgen Sie die Anweisungen unter [Erstellen eines Berechtigungssatzes](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) im *AWS IAM Identity Center -Benutzerhandbuch*.
+ Benutzer, die in IAM über einen Identitätsanbieter verwaltet werden:

  Erstellen Sie eine Rolle für den Identitätsverbund. Befolgen Sie die Anleitung unter [Eine Rolle für einen externen Identitätsanbieter (Verbund) erstellen](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) im *IAM-Benutzerhandbuch*.
+ IAM-Benutzer:
  + Erstellen Sie eine Rolle, die Ihr Benutzer annehmen kann. Befolgen Sie die Anleitung unter [Eine Rolle für einen IAM-Benutzer erstellen](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) im *IAM-Benutzerhandbuch*.
  + (Nicht empfohlen) Weisen Sie einem Benutzer eine Richtlinie direkt zu oder fügen Sie einen Benutzer zu einer Benutzergruppe hinzu. Befolgen Sie die Anweisungen unter [Hinzufügen von Berechtigungen zu einem Benutzer (Konsole)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) im *IAM-Benutzerhandbuch*.

Informationen finden Sie im Abschnitt [Adding and Removing IAM Identity Permissions](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) im *AWS Identity and Access Management -Benutzerhandbuch*.

## Aktivieren der Vorschau von Vorlagen für Auftragnehmeraufgaben
<a name="permissions-for-worker-task-templates-augmented-ai"></a>

Sie können eine Vorlage für Auftragnehmeraufgaben erstellen, um die Benutzeroberfläche und Anweisungen anzupassen, die Ihren Auftragnehmern beim Arbeiten an Ihren Aufgaben angezeigt werden. Sie können die Vorlage mithilfe der [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html)Operation oder der SageMaker AI-Konsole erstellen. 

Um eine Vorschau der Vorlage anzuzeigen, benötigen Sie eine IAM-Rolle mit den folgenden Berechtigungen zum Lesen von Amazon S3-Objekten, die auf der Benutzeroberfläche gerendert werden. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::my_input_bucket/*"
            ]
        }
    ]
}
```

------

Für die Aufgabentypen Amazon Rekognition und Amazon Textract können Sie im Bereich Amazon Augmented AI der KI-Konsole eine Vorschau Ihrer Vorlage anzeigen. SageMaker Bei benutzerdefinierten Aufgabentypen können Sie eine Vorschau der Vorlage anzeigen, indem Sie die [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_RenderUiTemplate.html) Operation aufrufen. Befolgen Sie die Anweisungen für Ihren Aufgabentyp, um eine Vorschau der Vorlage anzuzeigen:
+  Aufgabentypen Amazon Rekognition und Amazon Textract — Verwenden Sie in der SageMaker AI-Konsole den Amazon-Ressourcennamen (ARN) der Rolle in dem unter dokumentierten Verfahren. [Erstellen einer Worker-Aufgabenvorlage](a2i-worker-template-console.md#a2i-create-worker-template-console)
+ Benutzerdefinierte Aufgabentypen – Verwenden Sie im `RenderUiTemplate` Vorgang die ARN der Rolle im `RoleArn` Parameter.

## Amazon A2I mit AWS KMS verschlüsselten Buckets verwenden
<a name="a2i-kms-encryption"></a>

Wenn Sie einen AWS Key Management Service (AWS KMS) vom Kunden verwalteten Schlüssel angeben, um die Ausgabedaten in `OutputConfig` of zu verschlüsseln [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html), müssen Sie diesem Schlüssel eine IAM-Richtlinie hinzufügen, die der folgenden ähnelt. Diese Richtlinie erteilt der IAM-Ausführungsrolle, mit der Sie Ihre Human Loops erstellen, die Erlaubnis, diesen Schlüssel für die Ausführung aller aufgeführten Aktionen unter `"Action"` zu verwenden. Weitere Informationen zu diesen Aktionen finden Sie im [AWS KMSAWS Key Management Service Entwicklerhandbuch unter Berechtigungen](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html).

Um diese Richtlinie zu verwenden, ersetzen Sie den ARN der IAM-Servicerolle durch den ARN der Ausführungsrolle in `"Principal"`, mit der Sie den Workflow für die menschliche Überprüfung (Flow-Definition)erstellen. Wenn Sie einen Beschriftungsauftrag mithilfe `CreateFlowDefinition` erstellen, ist dies der ARN, für den Sie [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateLabelingJob.html#sagemaker-CreateLabelingJob-request-RoleArn) angeben. Beachten Sie, dass Sie ein `KmsKeyId` beim Erstellen einer Flow-Definition in der Konsole nicht angeben können.

```
{
    "Sid": "AllowUseOfKmsKey",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/service-role/example-role"
    },
    "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
    ],
    "Resource": "*"
}
```

## Zusätzliche Berechtigungen und Sicherheitsressourcen
<a name="additional-security-resources-augmented-ai"></a>
+ [Steuern Sie den Zugriff auf SageMaker KI-Ressourcen mithilfe von Tags](security_iam_id-based-policy-examples.md#access-tag-policy).
+ [Identitätsbasierte Richtlinien für Amazon AI SageMaker](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies)
+ [Steuern Sie die Erstellung von SageMaker KI-Ressourcen mit Bedingungsschlüsseln](security_iam_id-based-policy-examples.md#sagemaker-condition-examples)
+ [Amazon SageMaker AI API-Berechtigungen: Referenz zu Aktionen, Berechtigungen und Ressourcen](api-permissions-reference.md)
+ [Sicherheit in Amazon SageMaker AI konfigurieren](security.md)

# Verwendung Amazon CloudWatch Events in Amazon Augmented AI
<a name="a2i-cloudwatch-events"></a>

Amazon Augmented AI verwendet Amazon CloudWatch Events, um Sie zu benachrichtigen, wenn sich der Status einer menschlichen Überprüfungsschleife auf `Completed``Failed`, oder ändert`Stopped`. Diese Ereigniszustellung wird mindestens einmal garantiert, was bedeutet, dass alle Ereignisse, die entstehen, wenn menschliche Schleifen beendet sind, erfolgreich an CloudWatch Events (Amazon EventBridge) übertragen werden. Wenn eine Überprüfungsschleife in einen dieser Zustände wechselt, sendet Augmented AI ein Ereignis an CloudWatch Events, das dem Folgenden ähnelt.

```
{
    "version":"0",
    "id":"12345678-1111-2222-3333-12345EXAMPLE",
    "detail-type":"SageMaker A2I HumanLoop Status Change",
    "source":"aws.sagemaker",
    "account":"1111111111111",
    "time":"2019-11-14T17:49:25Z",
    "region":"us-east-1",
    "resources":["arn:aws:sagemaker:us-east-1:111111111111:human-loop/humanloop-nov-14-1"],
    "detail":{
        "creationTime":"2019-11-14T17:37:36.740Z",
        "failureCode":null,
        "failureReason":null,
        "flowDefinitionArn":"arn:aws:sagemaker:us-east-1:111111111111:flow-definition/flowdef-nov-12",
        "humanLoopArn":"arn:aws:sagemaker:us-east-1:111111111111:human-loop/humanloop-nov-14-1",
        "humanLoopName":"humanloop-nov-14-1",
        "humanLoopOutput":{ 
            "outputS3Uri":"s3://customer-output-bucket-specified-in-flow-definition/flowdef-nov-12/2019/11/14/17/37/36/humanloop-nov-14-1/output.json"
        },
        "humanLoopStatus":"Completed"
    }
}
```

Die Details in der JSON-Ausgabe umfassen Folgendes:

`creationTime`  
Der Zeitstempel, als die Human Loop von Augmented AI erstellt wurde.

`failureCode`  
Ein Fehlercode, der einen bestimmten Fehlertyp angibt.

`failureReason`  
Der Grund für das Scheitern einer menschlichen Schleife (Human Loop). Der Fehlergrund wird nur zurückgegeben, wenn der Status der Schleife für die Prüfung durch Menschen (Human Review Loop) `failed` ist.

`flowDefinitionArn`  
Der Amazon Resource Name (ARN) der Flow-Definition oder *Workflow für die Prüfung durch Menschen (Human Review)*.

`humanLoopArn`  
Der Amazon-Ressourcenname (ARN) der menschlichen Schleife (Human Loop).

`humanLoopName`  
Der Name der menschliche (Human Loop).

`humanLoopOutput`  
Ein Objekt, das Informationen über die Ausgabe der menschlichen Schleife (Human Loop) enthält.

`outputS3Uri`  
Die Position des Amazon S3-Objekts, in dem Augmented AI die Ausgabe der Human Loop speichert.

`humanLoopStatus`  
Der Status der menschlichen Schleife (Human Loop).

## Senden Sie Ereignisse aus „Your Human Loop“ an „ CloudWatch Ereignisse“
<a name="a2i-cloud-watch-events-rule-setup"></a>

Verwenden Sie den [https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html](https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html)Befehl AWS Command Line Interface (AWS CLI), um eine CloudWatch Ereignisregel zum Abrufen von Statusaktualisierungen oder *Ereignissen* für Ihre Amazon A2I Human Loops zu konfigurieren. Geben Sie bei Verwendung des Befehls `put-rule` Folgendes an, um Human-Loop-Status zu erhalten: 
+ `\"source\":[\"aws.sagemaker\"]`
+ `\"detail-type\":[\"SageMaker A2I HumanLoop Status Change\"]`

Um eine CloudWatch Ereignisregel so zu konfigurieren, dass alle Statusänderungen überwacht werden, verwenden Sie den folgenden Befehl und ersetzen Sie den Platzhaltertext. `"A2IHumanLoopStatusChanges"`Ersetzen Sie es beispielsweise durch einen eindeutigen Namen für die CloudWatch Events-Regel und *`"arn:aws:iam::111122223333:role/MyRoleForThisRule"`* durch die Amazon-Ressourcennummer (ARN) einer IAM-Rolle, der eine Events.amazonaws.com.rproxy.goskope.com-Vertrauensrichtlinie beigefügt ist. *region*Ersetzen Sie durch die AWS Region, in der Sie die Regel erstellen möchten. 

```
aws events put-rule --name "A2IHumanLoopStatusChanges" 
    --event-pattern "{\"source\":[\"aws.sagemaker\"],\"detail-type\":[\"SageMaker A2I HumanLoop Status Change\"]}" 
    --role-arn "arn:aws:iam::111122223333:role/MyRoleForThisRule" 
    --region "region"
```

Weitere Informationen zu der `put-rule` Anfrage finden Sie unter [Event Patterns in CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/CloudWatchEventsandEventPatterns.html) im *Amazon CloudWatch Events-Benutzerhandbuch*.

## Einrichten eines Ziels für die Verarbeitung von Ereignissen
<a name="a2i-subscribe-cloud-watch-events"></a>

Um Ereignisse zu verarbeiten, müssen Sie ein Ziel einrichten. Wenn Sie beispielsweise eine E-Mail erhalten möchten, wenn sich der Status eines Human Loop ändert, verwenden Sie ein Verfahren unter [Einrichten von Amazon SNS SNS-Benachrichtigungen](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/US_SetupSNS.html) im * CloudWatch Amazon-Benutzerhandbuch*, um ein Amazon SNS-Thema einzurichten und es mit Ihrer E-Mail zu abonnieren. Sobald Sie ein Thema erstellt haben, können Sie es zum Erstellen eines Ziels verwenden. 

**Um Ihrer Event-Regel ein Ziel hinzuzufügen CloudWatch**

1. Öffnen Sie die CloudWatch Konsole: [https://console.aws.amazon.com/cloudwatch/home](https://console.aws.amazon.com/cloudwatch/home)

1. Wählen Sie im Navigationsbereich **Regeln** aus.

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

1. Wählen Sie **Actions** und anschließend **Bearbeiten**.

1. Wählen Sie unter **Ziele** die Option **Ziel hinzufügen** und wählen Sie den AWS Service aus, auf den Sie reagieren möchten, wenn ein menschliches Ereignis zur Statusänderung erkannt wird. 

1. Konfigurieren Sie Ihr Ziel. Anweisungen finden Sie im Thema zum Konfigurieren eines Ziels in der [AWS Dokumentation für diesen Service](https://docs.aws.amazon.com/index.html).

1. Wählen Sie **Details konfigurieren**.

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

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

1. Wählen Sie **Regel aktualisieren** aus.

## Verwenden der Ausgabe der Prüfung durch Menschen (Human Review)
<a name="using-human-review-output"></a>

Nachdem Sie Ergebnisse für die Prüfung durch Menschen (Human Review) erhalten haben, können Sie die Ergebnisse analysieren und mit Machine-Learning-Vorhersagen vergleichen. Das im Amazon-S3-Bucket gespeicherte JSON enthält sowohl die Machine-Learning-Vorhersagen als auch die Ergebnisse der menschlichen Prüfung.

## Weitere Informationen
<a name="amazon-augmented-ai-programmatic-walkthroughs"></a>

[Ereignisse, die Amazon SageMaker AI an Amazon sendet EventBridge](automating-sagemaker-with-eventbridge.md)

# Verwendung von APIs in Amazon Augmented AI
<a name="a2i-api-references"></a>

Sie können programmgesteuert einen Workflow für Prüfung durch Menschen oder eine Worker-Aufgabenvorlage erstellen. Welche APIs Sie verwenden, hängt davon ab, ob Sie einen Amazon Rekognition, Amazon Textract oder benutzerdefinierten Aufgabentyp erstellen. Dieses Thema enthält Links zur API-Referenzdokumentation für jeden Aufgabentyp und jede Programmieraufgabe.

Die folgenden APIs können mit Augmented AI verwendet werden:

**Amazon Augmented AI**  
Verwenden Sie die Augmented AI-API, um die Prüfung Human Loops zu starten, stoppen und löschen. Sie können auch alle Schleifen für die Prüfung durch Menschen (Human Review) auflisten und Informationen über Schleifen der Prüfung durch Menschen in Ihrem Konto zurückgeben.  
Weitere Informationen zu APIs für die Prüfung des Human Loop finden Sie in der [Amazon Augmented AI Runtime API Reference](https://docs.aws.amazon.com/augmented-ai/2019-11-07/APIReference/Welcome.html).

**Amazon Rekognition**  
Verwenden Sie den Parameter **HumanLoopConfig** der `[ DetectModerationLabels](https://docs.aws.amazon.com/rekognition/latest/dg/API_DetectModerationLabels.html)`-API, um mithilfe von Amazon Rekognition einen menschlichen Überprüfungs-Workflow zu initiieren.

**Amazon SageMaker AI**  
Verwenden Sie die Amazon SageMaker-API, um eine `FlowDefinition` zu erstellen, die auch als *Workflow für die Prüfung durch Menschen* bezeichnet wird. Sie können auch eine `HumanTaskUi` oder *Auftragnehmer-Aufgabenvorlage* erstellen.  
Weitere Informationen finden Sie in der Dokumentation der – [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateFlowDefinition.html)oder [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateHumanTaskUi.html)-API.

**Amazon Textract**  
Verwenden Sie den Parameter **HumanLoopConfig** der [AnalyzeDocument](https://docs.aws.amazon.com/textract/latest/dg/API_AnalyzeDocument.html)-API, um einen Workflow für die Prüfung durch Menschen mit Amazon Textract auszulösen.

## Tutorials zum Programmieren
<a name="amazon-augmented-ai-programmatic-walkthroughs"></a>

Die folgenden exemplarischen Vorgehensweisen und Tutorials enthalten Beispielcode und Schritt-für-Schritt-Anleitungen zum programmgesteuerten Erstellen von Workflows für die Prüfung durch Menschen und Auftragnehmer-Aufgabenvorlagen.
+ [Tutorial: Erste Schritte in der Amazon-A2I-API](a2i-get-started-api.md)
+ [Erstellen eines Workflows für die Prüfung durch Menschen (Human Review) (API)](a2i-create-flow-definition.md#a2i-create-human-review-api)
+ [Erstellen und Starten einer Human Loop](a2i-start-human-loop.md)
+ [Verwenden von Amazon Augmented AI mit Amazon Rekognition](https://docs.aws.amazon.com/rekognition/latest/dg/a2i-rekognition.html) im *Amazon Rekognition Developer Guide*
+ [Verwenden von Amazon Augmented AI mit Amazon Textract AnalyzeDocument](https://docs.aws.amazon.com/textract/latest/dg/a2i-textract.html) im *Amazon-Textract-Entwicklerhandbuch*