の作成AWS Lambda関数 - Amazon Textract

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

の作成AWS Lambda関数

Amazon Textract API オペレーションは、AWS Lambdafunction. 次の手順では、Python で呼び出す Lambda 関数を作成する方法を示しています。DetectDocumentText。これは、リストを返しますBlockオブジェクト。この例を実行するには、PNG または JPEG 形式のドキュメントを含む Amazon S3 バケットが必要です。関数を作成するには、コンソールを使用します。

Lambda 関数を使用してドキュメントを大規模に処理する例については、を参照してください。Amazon Textract による大規模なドキュメント処理

Lambda 関数から detectDocumentText オペレーションを呼び出すには、次の手順を実行します。

ステップ 1: Lambda デプロイパッケージの作成
  1. コマンドウィンドウを開きます。

  2. 次のコマンドを入力して、最新バージョンのAWSSDK。

    pip install boto3 --target python/. zip boto3-layer.zip -r python/
ステップ 2: Lambda 関数の作成
  1. AWS Management Console にサインインして AWS Lambda コンソール (https://console.aws.amazon.com/lambda/) を開きます。

  2. [Create function] (関数の作成) を選択します。

  3. 次を指定します。

    • Author from scratch を選択します。

    • [関数名] に名前を入力します。

    • を使用する場合ランタイムで、Python 3.7またはPython 3.6

    • を使用する場合実行ロールの選択または作成で、基本的な Lambda アクセス権限で新しいロールを作成する

  4. 選択関数の作成Lambda 関数を作成します。

  5. IAM コンソール(https://console.aws.amazon.com/iam/)を開きます。

  6. ナビゲーションペインで [ロール] を選択します。

  7. [Resources] リストから、Lambda が作成した IAM ロールを選択します。ロール名は Lambda 関数の名前から始まります。

  8. [アクセス許可タブを選択し、ポリシーのアタッチ

  9. AmazonTextractFullAccess sポリシーと Amazons3ReadOnlyAccess ポリシーを選択します。

  10. Selectポリシーのアタッチ

詳細については、「」を参照してください。コンソールで Lambda 関数の作成

ステップ 3: レイヤーの作成と追加
  1. https://console.aws.amazon.com/lambda/ で、AWS Lambda コンソールを開きます。

  2. ナビゲーションペインで [Layers] を選択します。

  3. [Create layer] (レイヤーの作成) を選択します。

  4. を使用する場合名前[] に、名前を入力します。

  5. [説明] に説明を入力します。

  6. を使用する場合コード エントリ タイプで、.zip ファイルのアップロードを選択し、アップロード

  7. ダイアログボックスで、で作成した zip ファイル (boto3-layer.zip) を選択します。ステップ 1: Lambda デプロイパッケージの作成

  8. を使用する場合対応ランタイムで、で選択したランタイムのバージョンを選択します。ステップ 2: Lambda 関数の作成

  9. 選択作成をクリックして、レイヤーを作成します。

  10. ナビゲーションペインメニューアイコンを選択します。

  11. ナビゲーションペインで、[Functions] (関数) を選択します。

  12. [Resource] リストで、[] で作成した関数を選択します。ステップ 2: Lambda 関数の作成

  13. 選択設定そして、デザイナー] セクションで、[] を選択しますレイヤー(Lambda 関数名の下)。

  14. レイヤー] セクションで、[] を選択しますレイヤーを追加する

  15. 選択ランタイム互換レイヤーのリストから選択

  16. Eclipse対応レイヤーで、[] を選択します。名前そしてVersionステップ 3 で作成したレイヤーのうち、

  17. [Add] (追加) をクリックします。

ステップ 4: 関数に Python コードを追加する
  1. Eclipseデザイナー[] で、関数を選択します。

  2. 関数コードエディタで、次の内容をファイルに追加します。lambda_function.py。の値を変更するbucketそしてdocumentバケットとドキュメントに移動します。

    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. 選択保存Lambda 関数を保存します。

ステップ 5: Lambda をテストする
  1. SelectTest

  2. [] の値を入力します。イベント名

  3. [Create] (作成) を選択します。

  4. 出力、リストBlockオブジェクトは、[実行結果] ペインに表示されます。

そのファイルにAWS Lambda関数がタイムアウトエラーを返します。Amazon Textract API オペレーション呼び出しが原因である可能性があります。のタイムアウト期間の延長については、AWS Lambda関数、「」を参照してください。AWS Lambda 関数の設定

コードから Lambda 関数を呼び出す方法については、「」を参照してください。を呼び出しますAWS Lambda関数