Elabora i documenti con il parser di layout
Il parser del layout estrae elementi di contenuto del documento come testo, tabelle ed elenchi e crea blocchi sensibili al contesto che facilitano il recupero di informazioni nell'IA generativa e nelle applicazioni di rilevamento.
Funzionalità di Layout Parser
Eseguire l'analisi dei layout dei documenti. Puoi inserire file HTML o PDF in Layout Parser per identificare elementi di contenuti come blocchi di testo, tabelle, elenchi ed elementi strutturali come titoli e intestazioni. Questi elementi contribuiscono a definire l'organizzazione e la gerarchia di un documento con contenuti avanzati ed elementi strutturali che possono creare più contesto per il recupero e la scoperta delle informazioni.
Suddividi i documenti. Il parser del layout può suddividere i documenti in blocchi che mantengono le informazioni contestuali sulla gerarchia del layout del documento originale. Gli LLM che generano risposte possono utilizzare i chunk per migliorare la pertinenza e ridurre il carico computazionale.
Tenere conto del layout di un documento durante l'organizzazione in blocchi migliora la coerenza semantica e riduce il rumore nei contenuti quando vengono utilizzati per il recupero e la generazione di LLM. Tutto il testo di un chunk proviene dalla stessa entità di layout, ad esempio un titolo, un sottotitolo o un elenco.
Limitazioni
Si applicano le seguenti limitazioni:
- Elaborazione online:
- Dimensione massima del file di input di 20 MB per tutti i tipi di file
- Massimo 15 pagine per file PDF
- Elaborazione batch:
- Dimensione massima di un singolo file di 40 MB per i file PDF
- Massimo 500 pagine per file PDF
Rilevamento del layout per tipo di file
La tabella seguente elenca gli elementi che Layout Parser può rilevare in base al tipo di file del documento.
Tipo di file | Elementi rilevati | Limitazioni |
---|---|---|
HTML | paragrafo, tabella, elenco, titolo, intestazione, intestazione pagina, piè di pagina | Tieni presente che l'analisi sintattica si basa molto sui tag HTML, pertanto la formattazione basata su CSS potrebbe non essere acquisita. |
paragrafo, tabella, titolo, intestazione, intestazione pagina, piè di pagina | Le tabelle che si estendono su più pagine potrebbero essere suddivise in due tabelle. | |
DOCX (anteprima) | paragrafo, tabelle su più pagine, elenco, titolo, elementi di intestazione | Le tabelle nidificate non sono supportate. |
PPTX (anteprima) | paragraph, table, list, title, heading elements | Affinché le intestazioni vengano identificate con precisione, devono essere contrassegnate come tali all'interno del file PowerPoint. Le tabelle nidificate e le slide nascoste non sono supportate. |
XLSX/XLSM (anteprima) | tabelle all'interno di fogli di lavoro Excel, che supportano i valori INT ,
FLOAT e STRING |
Il rilevamento di più tabelle non è supportato. Anche fogli, righe o colonne nascoste potrebbero influire sul rilevamento. |
Prima di iniziare
Per attivare l'analisi del layout:
Crea un'analisi del layout seguendo le istruzioni riportate in Creare e gestire i processori.
Il nome del tipo di processore è
LAYOUT_PARSER_PROCESSOR
.Attiva l'analisi del layout seguendo le istruzioni riportate in Attivare un processore.
Inviare una richiesta di elaborazione online con l'analizzatore sintattico di layout
Inserisci i documenti in Layout Parser per analizzarli e suddividerli in chunk.
Segui le istruzioni per le richieste di elaborazione batch in Invia una richiesta di elaborazione.
Configura i campi in
ProcessOptions.layoutConfig
inProcessDocumentRequest
.REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: la posizione del tuo elaboratore, ad esempio:
us
- Stati Unitieu
- Unione Europea
- PROJECT_ID: il tuo Google Cloud ID progetto.
- PROCESSOR_ID: l'ID del tuo processore personalizzato.
- MIME_TYPE: il parser del layout supporta
application/pdf
etext/html
. - DOCUMENT: i contenuti da suddividere in blocchi. Layout Parser accetta documenti PDF o HTML non elaborati oppure documenti analizzati generati da Layout Parser.
- CHUNK_SIZE: facoltativo. La dimensione del chunk, in token, da utilizzare per suddividere i documenti.
- INCLUDE_ANCESTOR_HEADINGS: facoltativo. Valore booleano. Indica se includere o meno le intestazioni precedenti durante la suddivisione dei documenti.
Metodo HTTP e URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process
Corpo JSON della richiesta:
// 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", } } } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato
request.json
, quindi esegui il comando seguente: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
Salva il corpo della richiesta in un file denominato
request.json
, quindi esegui il comando seguente:$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
eDocument.chunkedDocument
.Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Document AI Python.
Per autenticarti a Document AI, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
- LOCATION: la posizione del tuo elaboratore, ad esempio:
Elaborare i documenti in batch con il parser di layout
Utilizza la procedura seguente per analizzare e suddividere più documenti in una singola richiesta.
Inserisci i documenti in Layout Parser per analizzarli e suddividerli in chunk.
Segui le istruzioni per le richieste di elaborazione batch in Invia una richiesta di elaborazione.
Configura i campi in
ProcessOptions.layoutConfig
quando effettui una richiestabatchProcess
.Input
Il seguente esempio JSON configura
ProcessOptions.layoutConfig
."processOptions": { "layoutConfig": { "chunkingConfig": { "chunkSize": "CHUNK_SIZE", "includeAncestorHeadings": "INCLUDE_ANCESTOR_HEADINGS_BOOLEAN" } } }
Sostituisci quanto segue:
CHUNK_SIZE
: la dimensione massima del chunk, in numero di token, da utilizzare per suddividere i documenti.INCLUDE_ANCESTOR_HEADINGS_BOOLEAN
: se includere o meno le intestazioni precedenti quando dividi i documenti. Le intestazioni predecessore sono le intestazioni principali delle sottointestazioni nel documento originale. Possono fornire un frammento con un contesto aggiuntivo sulla sua posizione nel documento originale. Un frammento può includere fino a due livelli di intestazioni.
Passaggi successivi
- Esamina l'elenco dei processori.
- Crea un classificatore personalizzato.
- Utilizza la funzionalità di Enterprise Document OCR per rilevare ed estrarre il testo.