Procesa documentos con el Analizador de diseño
El analizador de diseño extrae elementos de contenido de documentos, como texto, tablas y listas, y crea fragmentos con contexto que facilitan la recuperación de información en la IA generativa y las aplicaciones de descubrimiento.
Funciones del Analizador de diseño
Analiza diseños de documentos. Puedes ingresar archivos HTML o PDF en Layout Parser para identificar elementos de contenido, como bloques de texto, tablas, listas y elementos estructurales, como títulos y encabezados. Estos elementos ayudan a definir la organización y la jerarquía de un documento con contenido enriquecido y elementos estructurales que pueden crear más contexto para la recuperación y el descubrimiento de información.
Segmenta los documentos. El analizador de diseño puede dividir los documentos en fragmentos que conservan información contextual sobre la jerarquía del diseño del documento original. Los LLMs que generan respuestas pueden usar fragmentos para mejorar la relevancia y disminuir la carga computacional.
Tener en cuenta el diseño de un documento durante la fragmentación mejora la coherencia semántica y reduce el ruido en el contenido cuando se usa para la recuperación y la generación de LLM. Todo el texto de un fragmento proviene de la misma entidad de diseño, como un encabezado, un subencabezado o una lista.
Limitaciones
Se aplica la siguiente limitación:
- Procesamiento en línea:
- El tamaño máximo del archivo de entrada es de 20 MB para todos los tipos de archivos.
- Un máximo de 15 páginas por archivo PDF
- Procesamiento por lotes:
- Tamaño máximo de un solo archivo de 40 MB para archivos PDF
- Un máximo de 500 páginas por archivo PDF
Detección de diseño por tipo de archivo
En la siguiente tabla, se enumeran los elementos que Layout Parser puede detectar por tipo de archivo de documento.
Tipo de archivo | Elementos detectados | Limitaciones |
---|---|---|
HTML | párrafo, tabla, lista, título, encabezado, encabezado de página, pie de página | Ten en cuenta que el análisis depende en gran medida de las etiquetas HTML, por lo que es posible que no se capture el formato basado en CSS. |
párrafo, tabla, título, encabezado, encabezado de página, pie de página | Las tablas que abarcan varias páginas pueden dividirse en dos tablas. | |
DOCX (vista previa) | párrafos, tablas en varias páginas, listas, títulos y elementos de encabezado | No se admiten las tablas anidadas. |
PPTX (vista previa) | párrafos, tablas, listas, títulos y elementos de encabezado | Para que los encabezados se identifiquen con precisión, deben marcarse como tales en el archivo de PowerPoint. No se admiten tablas anidadas ni diapositivas ocultas. |
XLSX/XLSM (vista previa) | Tablas dentro de hojas de cálculo de Excel, que admiten valores INT , FLOAT y STRING |
No se admite la detección de varias tablas. Las hojas, las filas o las columnas ocultas también pueden afectar la detección. |
Antes de comenzar
Para activar Layout Parser, sigue estos pasos:
Crea un Layout Parser siguiendo las instrucciones en Crea y administra procesadores.
El nombre del tipo de procesador es
LAYOUT_PARSER_PROCESSOR
.Para habilitar Layout Parser, sigue las instrucciones en Habilita un procesador.
Envía una solicitud de proceso en línea con Layout Parser
Documentos de entrada para que el analizador de diseño los analice y los divida en fragmentos.
Sigue las instrucciones para las solicitudes de procesamiento por lotes en Envía una solicitud de procesamiento.
Configura los campos en
ProcessOptions.layoutConfig
enProcessDocumentRequest
.REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- LOCATION: La ubicación de tu procesador, por ejemplo:
us
: Estados Unidoseu
: Unión Europea
- PROJECT_ID: El ID de tu proyecto de Google Cloud .
- PROCESSOR_ID: Es el ID de tu procesador personalizado.
- MIME_TYPE: Layout Parser admite
application/pdf
ytext/html
. - DOCUMENT: Es el contenido que se dividirá en fragmentos. El Layout Parser acepta documentos PDF o HTML sin procesar, o documentos analizados que generó el Layout Parser.
- CHUNK_SIZE: Opcional Es el tamaño de fragmento, en tokens, que se usará cuando se dividan los documentos.
- INCLUDE_ANCESTOR_HEADINGS: Opcional Booleano. Indica si se deben incluir los encabezados de principales cuando se dividen los documentos.
Método HTTP y URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process
Cuerpo JSON de la solicitud:
// 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", } } } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
y ejecuta el siguiente comando: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
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
y ejecuta el siguiente comando:$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
yDocument.chunkedDocument
.Python
Para obtener más información, consulta la documentación de referencia de la API de Document AI Python.
Para autenticarte en Document AI, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
- LOCATION: La ubicación de tu procesador, por ejemplo:
Procesa documentos por lotes con el Analizador de diseño
Sigue el siguiente procedimiento para analizar y dividir varios documentos en una sola solicitud.
Documentos de entrada para que el analizador de diseño los analice y los divida en fragmentos.
Sigue las instrucciones para las solicitudes de procesamiento por lotes en Envía una solicitud de procesamiento.
Configura los campos en
ProcessOptions.layoutConfig
cuando realices una solicitud debatchProcess
.Entrada
En el siguiente ejemplo de JSON, se configura
ProcessOptions.layoutConfig
."processOptions": { "layoutConfig": { "chunkingConfig": { "chunkSize": "CHUNK_SIZE", "includeAncestorHeadings": "INCLUDE_ANCESTOR_HEADINGS_BOOLEAN" } } }
Reemplaza lo siguiente:
CHUNK_SIZE
: Es el tamaño máximo de fragmento, en cantidad de tokens, que se usará cuando se dividan documentos.INCLUDE_ANCESTOR_HEADINGS_BOOLEAN
: Indica si se deben incluir los encabezados principales cuando se dividen los documentos. Los encabezados principales son los encabezados superiores de los subencabezados en el documento original. Pueden proporcionar un fragmento con contexto adicional sobre su posición en el documento original. Se pueden incluir hasta dos niveles de encabezados con un fragmento.
¿Qué sigue?
- Revisa la lista de procesadores.
- Crea un clasificador personalizado.
- Usa el Enterprise Document OCR para detectar y extraer texto.
- Consulta Envía una solicitud para procesar documentos por lotes para obtener información sobre cómo controlar las respuestas.