本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
加化階段
Amazon Textract 會將 PDF 檔案內容擷取為字串,下游應用程式無法直接使用這些字串 (例如,透過彙總數字來產生統計資料)。需要正確識別和轉換的資料值,因為下游應用程式可以更輕鬆地使用這些值 (例如,將成本趨勢繪製為時間序列)。若要實作 PDF 檔案處理,每個新 PDF 檔案類型中的一個 PDF 檔案必須透過 Amazon Textract 進行一次性處理,然後產生 JSON 格式的Template
檔案。
在中啟動AWS Lambda函數之後擷取階段,它會執行下圖所示的步驟。
下圖顯示實作下列步驟的 Lambda 函數:
-
呼叫 Amazon Textract 提取來處理 PDF 文件,提取內容,並返回 JSON 格式的文件。
-
取得 JSON 檔案,並使用預先定義的
Template
JSON 檔案 (其中每個欄位都有正確的索引鍵名稱和值類型) 來剖析表單和表格。這個過程提供了一個解析的 JSON 文件。 -
套用後處理規則,並使用
Template
JSON 檔案來更正剖析的 JSON 檔案中的每個值。這會產生Final
JSON 檔案。預化的Template
JSON 檔可以存放在 S3 儲存貯體中。 -
將
Final
JSON 檔案作為每個 PDF 檔案的一筆記錄存放在 Amazon DynamoDB 中,以及 S3 輸出儲存貯體中的每個 PDF 檔案都有一個 JSON 檔案。
如需使用 Amazon Textract 自動從 PDF 檔案擷取內容並將其處理為全新輸出的 step-by-step 工作流程,請參閱AWS規定指導網站上的使用 Amazon Textract 自動從 PDF 檔案擷取內容的模式。此樣式使用範本比對技術來正確識別必要欄位、索引鍵名稱和表格,然後將後處理校正套用至每個資料類型。
處理階段
請使用下列四個最佳作法來確保處理階段成功:
-
為您要處理的每個 PDF 檔案類型建立範本 JSON 檔案。您可以將這些不同的範本 JSON 檔案存放在由 Lambda 函數呼叫的 S3 儲存貯體中。如果您想要在一個 Lambda 函數中處理不同的 PDF 檔案類型,則應為每個 PDF 檔案類型使用唯一識別碼 (例如,S3 儲存貯體中 PDF 檔案類型的資料夾名稱)。叫用 Lambda 函數之後,它會擷取適當的範本 JSON 檔案並加以處理。
-
設定機制以精確追蹤 Lambda 函數中每個步驟的狀態。例如,您可以在 Amazon 文字擷取呼叫後、將最終 JSON 檔案儲存至 Amazon DynamoDB 表格時,或將 PDF 檔案儲存至 S3 儲存貯體時,新增
Success
狀態。您也可以建立個別的 DynamoDB 表格,以透過不同步驟追蹤每個 PDF 檔案的狀態,從而提供流程的可見度。 -
當您批次處理許多 PDF 檔案時,會自動重試失敗的作業,以管理節流和中斷的連線。如果您的連線中斷或超過每秒最大交易數 (TPS),Amazon Textract 可能會發生節流。如需自動重試失敗操作的詳細資訊和步驟,請參閱 Amazon Textract 文件中的處理限制呼叫和中斷連線。
-
如果您有多個頁面的 PDF 檔案,您可以使用非同步作業來處理整個檔案,或將 PDF 檔案分解為個別頁面、使用同步作業來處理每個頁面,然後合併每個頁面的結果。如需非同步作業的完整程式碼實作,請參閱 Amazon Textract 文件中的偵測和分析多頁文件中的文字。如需有關使用同步操作的詳細資訊,請參閱 Amazon Textract 文件中的偵測和分析單頁文件中的文字。