処理フェーズ - AWS 規範ガイダンス

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

処理フェーズ

Amazon Textract は PDF ファイルの内容を文字列として抽出し、ダウンストリームのアプリケーションでは直接使用できません(たとえば、数値を集計して統計を生成する場合など)。データ値は、ダウンストリームのアプリケーション(コストの傾向を時系列としてプロットする場合など)でより簡単に使用できるため、正しく識別および変換されたデータ値が必要です。PDF ファイル処理を実装するには、新しい PDF ファイルタイプごとに 1 つの PDF ファイルを Amazon Textract で一度処理し、JSONTemplate 形式のファイルを生成する必要があります。

AWS Lambda関数が開始されると取り込みフェーズ、次の図に示すステップが実行されます。

AWS Lambdaこの関数は Amazon Textract を呼び出して PDF ファイルを処理し、Template定義済みの定義済みの JSON ファイルを使用し、最終出力を S3 バケットに保存する前に後処理ルールを適用します。

図表に示す内容は以下のステップを実装する Lambda 関数です。

  1. Amazon Textract を呼び出して PDF ファイルを処理し、コンテンツを抽出し、JSON 形式のファイルを返します。

  2. JSON ファイルを取得し、Template各フィールドのキー名と値のタイプが正しい事前定義の JSON ファイルを使用してフォームとテーブルを解析します。このプロセスにより、解析された JSON ファイルが提供されます。

  3. 後処理ルールを適用し、Template JSON ファイルを使用して解析された JSON ファイルの各値を修正します。これによりFinal JSON ファイルが生成されます。定義済みのTemplate JSON ファイルは S3 バケットに保存できます。

  4. S3 出力バケット内の PDF ファイルごとに 1 つのFinal JSON ファイルに加えて、JSON ファイルを PDF ファイルごとに 1 つのレコードとして Amazon DynamoDB に保存します。

Amazon Textract を使用して PDF ファイルからコンテンツを自動的に抽出し、 step-by-step クリーンな出力に処理するワークフローについては、AWS規範的ガイダンスウェブサイトの「Amazon Textract を使用して PDF ファイルからコンテンツを自動的に抽出する」というパターンを参照してください。このパターンでは、テンプレートマッチング手法を使用して必要なフィールド、キー名、およびテーブルを正しく識別し、各データ型に後処理による修正を適用します。

処理フェーズのベストプラクティス

次の 4 つのベストプラクティスを使用して、処理フェーズを成功させてください。

  • 処理する PDF ファイルタイプごとにテンプレート JSON ファイルを作成します。これらのさまざまなテンプレート JSON ファイルを、Lambda 関数によって呼び出される S3 バケットに保存できます。1 つの Lambda 関数でさまざまな PDF ファイルタイプを処理する場合は、PDF ファイルタイプごとに一意の識別子(たとえば、S3 バケット内の PDF ファイルタイプのフォルダー名)を使用する必要があります。Lambda 関数は呼び出されると、適切なテンプレート JSON ファイルを取得して処理します。

  • Lambda 関数の各ステップのステータスを正確に追跡するメカニズムを設定します。たとえば、Amazon Textract 呼び出し後、最終的な JSON ファイルが Amazon DynamoDB テーブルに保存されるとき、PDF ファイルが S3Success バケットに保存されたときのステータスを追加できます。また、個別の DynamoDB テーブルを作成して、各ステップにおける各 PDF ファイルのステータスを追跡して、プロセスを可視化することもできます。

  • 多数の PDF ファイルをバッチ処理する場合、失敗した操作を自動的に再試行することで、スロットリングや接続切断を管理できます。Amazon Textract では、接続が切断されたり、1 秒あたりのトランザクション (TPS) の最大数 (TPS) を超えたりすると、スロットリングが発生する可能性があります。失敗した操作を自動的に再試行する詳細と手順については、Amazon Textract ドキュメントの「スロットリングされた呼び出しと切断された接続の処理」を参照してください。

  • 複数ページの PDF ファイルがある場合は、非同期操作を使用してファイル全体を処理するか、PDF ファイルを個別のページに分割し、同期操作を使用して各ページを処理し、各ページの結果を組み合わせることができます。非同期オペレーションの完全なコード実装については、Amazon Textract ドキュメントの「複数ページのドキュメント内のテキストの検出と分析」を参照してください。同期操作の使用方法の詳細については、Amazon Textract ドキュメントの「単一ページのドキュメント内のテキストの検出と分析」を参照してください。