使用版面配置剖析器處理文件
版面配置剖析器會擷取文字、表格和清單等文件內容元素,並建立情境感知分塊,以便在生成式 AI 和探索應用程式中檢索資訊。
版面配置剖析器功能
剖析文件版面配置。您可以將 HTML 或 PDF 檔案輸入版面配置剖析器,以便辨識文字區塊、表格、清單等內容元素,以及標題和標題等結構元素。這些元素可協助定義文件的組織和階層,並提供豐富的內容和結構元素,為資訊擷取和探索建立更多背景資訊。
分割文件。Layout Parser 可將文件分割成多個區塊,保留原始文件版面配置階層的相關資訊。產生答案的 LLM 可使用區塊來改善相關性,並減少運算負載。
在分割時考量文件版面配置,可改善語意一致性,並減少內容在擷取和 LLM 產生時的雜訊。區塊中的所有文字都來自相同的版面配置實體,例如標題、副標題或清單。
限制
限制如下:
- 線上處理:
- 所有檔案類型的輸入檔案大小上限為 20 MB
- 每個 PDF 檔案最多 15 頁
- 批次處理:
- PDF 檔案單一檔案大小上限為 40 MB
- 每個 PDF 檔案的頁數上限為 500 頁
依檔案類型偵測版面配置
下表列出版面配置剖析器可偵測的每個文件檔案類型元素。
檔案類型 | 偵測到的元素 | 限制 |
---|---|---|
HTML | 段落、表格、清單、標題、標題、頁首、頁尾 | 請注意,剖析作業主要仰賴 HTML 標記,因此可能無法擷取以 CSS 為基礎的格式設定。 |
段落、表格、標題、標題、頁首、頁尾 | 橫跨多個頁面的表格可能會分割為兩個表格。 | |
DOCX (預先發布版) | 段落、跨多個頁面的表格、清單、標題、標題元素 | 不支援巢狀資料表。 |
PPTX (預先發布版) | 段落、表格、清單、標題、標題元素 | 為確實辨識標題,請在 PowerPoint 檔案中標示標題。不支援巢狀表格和隱藏的簡報。 |
XLSX/XLSM (預先發布版) | Excel 試算表中的資料表,支援 INT 、FLOAT 和 STRING 值 |
不支援多個表格偵測。隱藏的工作表、資料列或資料欄也可能會影響偵測結果。 |
事前準備
如要啟用版面配置剖析器,請按照下列步驟操作:
使用版面配置剖析器傳送線上處理要求
將文件輸入版面配置剖析器,以便剖析及分割。
請參考「傳送處理要求」中的批次處理要求操作說明。
在
ProcessDocumentRequest
的ProcessOptions.layoutConfig
中設定欄位。REST
使用任何要求資料之前,請先替換以下項目:
- LOCATION:處理器的位置,例如:
us
- 美國eu
- 歐盟
- PROJECT_ID:您的 Google Cloud 專案 ID。
- PROCESSOR_ID:自訂處理器的 ID。
- MIME_TYPE:版面配置剖析器支援
application/pdf
和text/html
。 - DOCUMENT:要分割為多個區塊的內容。版面配置剖析器可接受原始 PDF 或 HTML 文件,或由版面配置剖析器輸出的剖析文件。
- CHUNK_SIZE:選用。用於拆分文件時使用的區塊大小 (以符號為單位)。
- INCLUDE_ANCESTOR_HEADINGS:選用。布林值。在分割文件時,是否要納入祖系標題。
HTTP 方法和網址:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process
JSON 要求主體:
// Sample for inputting raw documents such as PDF or HTML { "rawDocument": { "mimeType": "MIME_TYPE", "content": "DOCUMENT" }, "processOptions": { "layoutConfig": { "chunkingConfig": { "chunkSize": "CHUNK_SIZE", "includeAncestorHeadings": "INCLUDE_ANCESTOR_HEADINGS", } } } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為
request.json
的檔案中,然後執行下列指令:curl -X POST \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process"PowerShell
將要求主體儲存在名為
request.json
的檔案中,然後執行下列指令:$headers = @{ }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process" | Select-Object -Expand ContentDocument.documentLayout
和Document.chunkedDocument
。Python
詳情請參閱 Document AI Python API 參考說明文件。
如要向 Document AI 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
- LOCATION:處理器的位置,例如:
使用版面配置剖析器批次處理文件
請按照下列程序,在單一要求中剖析及分割多份文件。
將文件輸入版面配置剖析器,以便剖析及分割。
請參考「傳送處理要求」中的批次處理要求操作說明。
請在提出
batchProcess
要求時,在ProcessOptions.layoutConfig
中設定欄位。輸入
以下 JSON 範例會設定
ProcessOptions.layoutConfig
。"processOptions": { "layoutConfig": { "chunkingConfig": { "chunkSize": "CHUNK_SIZE", "includeAncestorHeadings": "INCLUDE_ANCESTOR_HEADINGS_BOOLEAN" } } }
更改下列內容:
CHUNK_SIZE
:在分割文件時使用的最大區塊大小 (以符記數量為單位)。INCLUDE_ANCESTOR_HEADINGS_BOOLEAN
:是否要在分割文件時納入祖系標題。祖系標題是原始文件中子標題的父項。這些資訊可為某個區塊提供額外資訊,說明該區塊在原始文件中的確切位置。每個區塊最多可包含兩個層級的標題。
後續步驟
- 查看處理器清單。
- 建立自訂分類器。
- 使用 Enterprise Document OCR 偵測及擷取文字。