Erstellen einesAWS LambdaFunktion - Amazon Textract

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.

Erstellen einesAWS LambdaFunktion

Sie können Amazon Textract Textract-API-Vorgänge von einemAWS LambdaFunktion. Die folgenden Anweisungen zeigen, wie Sie eine Lambda-Funktion in Python erstellen, die aufruftDetectDocumentTextaus. Es gibt eine Liste von zurückBlockObjekte. Um dieses Beispiel auszuführen, benötigen Sie einen Amazon S3 S3-Bucket, der ein Dokument im PNG- oder JPEG-Format enthält. Verwenden Sie die Konsole, um die Funktion zu erstellen.

Ein Beispiel, das Lambda-Funktionen verwendet, um Dokumente in großem Maßstab zu verarbeiten, finden Sie unterDokumentenverarbeitung im großen Maßstab mit Amazon Textractaus.

So rufen Sie den DetectDocumentText-Vorgang von einer Lambda-Funktion aus auf:

Schritt 1: Erstellen eines Lambda-Bereitstellungspakets
  1. Öffnen Sie ein Befehlsfenster.

  2. Geben Sie die folgenden Befehle ein, um ein Bereitstellungspaket mit der neuesten Version derAWS-SDK.

    pip install boto3 --target python/. zip boto3-layer.zip -r python/
Schritt 2: Erstellen einer Lambda-Funktion
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die AWS Lambda-Konsole an https://console.aws.amazon.com/lambda.

  2. Wählen Sie Create function (Funktion erstellen).

  3. Geben Sie Folgendes an.

    • Wählen Sie Author from scratch aus.

    • Geben Sie als Function name (Funktionsname) einen Namen ein.

    • FürLaufzeit, wählenPython 3.7oderPython 3.6aus.

    • FürWählen oder erstellen Sie eine Ausführungsrolle, wählenErstellen einer neuen Rolle mit den grundlegenden Lambda-Berechtigungenaus.

  4. Klicken Sie aufCreate -Funktionum die Lambda-Funktion zu erstellen.

  5. Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  6. Wählen Sie im NavigationsbereichRollenaus.

  7. Wählen Sie aus der Ressourcenliste die IAM-Rolle aus, die Lambda für Sie erstellt hat. Der Rollenname beginnt mit dem Namen Ihrer Lambda-Funktion.

  8. Wählen Sie das SymbolBerechtigungenund wählen Sie dannRichtlinien anfügenaus.

  9. Wählen Sie die AmazonTextractFullAccess- und Amazons3ReadOnlyAccess-Richtlinien aus.

  10. SelectRichtlinie anfügenaus.

Weitere Informationen finden Sie unterErstellen einer Lambda-Funktion mit der Konsole

Schritt 3: Erstellen und fügen Sie eine -Ebene hinzu
  1. Öffnen Sie die AWS Lambda-Konsole unter https://console.aws.amazon.com/lambda/.

  2. Wählen Sie im Navigationsbereich Layers aus.

  3. Wählen Sie Create Layer (Ebene erstellen) aus.

  4. FürNameGeben Sie einen Namen ein.

  5. Geben Sie im Feld Description (Beschreibung) eine Beschreibung ein.

  6. FürCodeeingabetyp, wählenHochladen der ZIP-Dateiund wählen Sie ausHochladenaus.

  7. Wählen Sie im Dialogfeld die ZIP-Datei (boto3-layer.zip) aus, die Zip, in der Sie erstellt habenSchritt 1: Erstellen eines Lambda-Bereitstellungspaketsaus.

  8. FürKompatible Laufzeiten, wählen Sie die Version der Laufzeit aus, in der Sie ausgewählt habenSchritt 2: Erstellen einer Lambda-Funktionaus.

  9. Klicken Sie aufGeben Sie einen Namen für den Benutzer ein und klicken Sie dann aufum den Layer zu erstellen.

  10. Wählen Sie das Menüsymbol des Navigationsbereichs.

  11. Wählen Sie im Navigationsbereich Functions aus.

  12. Wählen Sie in der Ressourcenliste die Funktion aus, die Sie in erstellt habenSchritt 2: Erstellen einer Lambda-Funktionaus.

  13. Klicken Sie aufKonfigurationund imDesigner-Bereich wählenEbenen(unter Ihrem Lambda-Funktionsnamen).

  14. In derEbenen-Bereich wählenHinzufügen einer Ebeneaus.

  15. Klicken Sie aufWählen Sie aus der Liste der Laufzeit-kompatiblen Layeraus.

  16. In :Kompatible LayerWählen Sie denNameundVersionder -Ebene, die Sie in Schritt 3 erstellt haben.

  17. Wählen Sie Add (Hinzufügen) aus.

Schritt 4: Fügen Sie der Funktion Python-Code hinzu
  1. In :DesignerWählen Sie Ihre Funktion aus.

  2. Fügen Sie im Funktionscode-Editor der Datei Folgendes hinzulambda_function.pyaus. Ändern Sie die Werte vonbucketunddocumentzu deinem Bucket und Dokument.

    import json import boto3 def lambda_handler(event, context): bucket="bucket" document="document" client = boto3.client('textract') #process using S3 object response = client.detect_document_text( Document={'S3Object': {'Bucket': bucket, 'Name': document}}) #Get the text blocks blocks=response['Blocks'] return { 'statusCode': 200, 'body': json.dumps(blocks) }
  3. Klicken Sie aufSaveum Ihre Lambda-Funktion zu speichern.

Schritt 5: Testen Sie Ihr Lambda
  1. SelectTestaus.

  2. Geben Sie einen Wert für einEvent name (Ereignisname)aus.

  3. Wählen Sie Create (Erstellen) aus.

  4. Die Ausgabe, eine Liste vonBlock-Objekte werden im Bereich Ausführungsergebnisse angezeigt.

Wenn das SymbolAWS Lambdagibt einen Timeout-Fehler zurück, ein Amazon Textract Textract-API-Betriebsaufruf könnte die Ursache sein. Weitere Informationen über die Verlängerung des Timout-Zeitraums für eineAWS Lambda-Funktion, sieheAWS Lambda-Funktionskonfigurationaus.

Weitere Informationen zum Aufrufen einer Lambda-Funktion aus Ihrem Code finden Sie unterAufrufenAWS LambdaFunktionenaus.