Los métodos de procesamiento por lotes devuelven operaciones de larga duración porque tardan más en completarse de lo que es apropiado para una respuesta de API. De esta forma, el hilo de llamada no se mantiene abierto mientras se procesan muchos documentos. La API Document AI crea un LRO cada vez que llamas a projects.locations.processors.batchProcess
a través de la API o de las bibliotecas de cliente. La LRO monitoriza el estado del trabajo de procesamiento.
Puedes usar los métodos de operaciones que proporciona la API de Document AI para comprobar el estado de las operaciones de larga duración. También puedes listar, consultar o cancelar operaciones LRO. Las bibliotecas de cliente llaman al método asíncrono de forma interna, lo que habilita la retrollamada. (En Python, await está habilitado). También incluyen un parámetro de tiempo de espera. En el LRO principal devuelto por .batchProcess, se crea un LRO para cada documento (porque los límites de recuento de páginas por lote son mucho más altos que la llamada process síncrona y pueden tardar mucho tiempo en procesarse). Cuando finaliza el LRO principal, se proporciona el estado detallado de cada LRO de documento.
Las operaciones de larga duración se gestionan a nivel de Google Cloud proyecto y ubicación. Cuando hagas una solicitud a la API, incluye el Google Cloud proyecto y la ubicación en la que se está ejecutando la operación de larga duración.
El registro de una operación de larga duración se conserva durante aproximadamente 30 días después de que finalice, lo que significa que no puedes ver ni enumerar una operación de larga duración después de ese periodo.
Obtener detalles sobre una operación de larga duración
En los siguientes ejemplos se muestra cómo obtener detalles de una operación LRO.
REST
Para obtener el estado de una operación de larga duración y ver sus detalles, llama al método projects.locations.operations.get.
Supongamos que recibes la siguiente respuesta después de llamar a projects.locations.processors.batchProcess:
{
"name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID"
}
El valor name de la respuesta muestra que la API Document AI ha creado un LRO llamado projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID.
También puedes obtener el nombre de la LRO consultando las operaciones de larga duración.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: tu ID de proyecto Google Cloud .
- LOCATION: la ubicación en la que se está ejecutando la operación de larga duración. Por ejemplo:
us- Estados Unidoseu- Unión Europea
- OPERATION_ID: el ID de tu operación. El ID es el último elemento del nombre de tu operación. Por ejemplo:
- Nombre de la operación:
projects/PROJECT_ID/locations/LOCATION/operations/bc4e1d412863e626 - ID de operación:
bc4e1d412863e626
- Nombre de la operación:
Método HTTP y URL:
GET https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Para enviar tu solicitud, elige una de estas opciones: