Una vez que haya configurado su Google Cloud cuenta y creado un procesador, podrá enviar una solicitud a su procesador de Document AI.
El código usado para enviar la solicitud es el mismo para todos los procesadores. Observas diferencias en el funcionamiento del procesador en la información que genera cada procesador.
Si usas la versión v1 de la API de Document AI o la consola, Google Cloud puedes enviar solicitudes de procesamiento a esa versión específica del procesador. Si no especificas una versión del procesador, se usará la versión predeterminada.
Para obtener más información, consulta Gestionar versiones de procesador.
Procesamiento online
Las solicitudes online (síncronas) te permiten enviar un solo documento para procesarlo.
Document AI procesa inmediatamente la solicitud y devuelve un document.
Enviar una solicitud a un encargado del tratamiento
En los siguientes ejemplos de código se muestra cómo enviar una solicitud a un procesador.
REST
En este ejemplo se muestra cómo proporcionar contenido de un documento (contenido sin formato en bytes a través de una cadena codificada en base64) en el objeto rawDocument.
También puedes especificar inlineDocument, que es el mismo formato JSON Document que devuelve Document AI. Esto te permite encadenar solicitudes pasando el mismo formato de un lado a otro (por ejemplo, si clasificas un documento y, después, extraes su contenido).
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION: la ubicación de tu procesador, por ejemplo:
us- Estados Unidoseu- Unión Europea
- PROJECT_ID: tu ID de proyecto Google Cloud .
- PROCESSOR_ID: el ID de tu procesador personalizado.
- skipHumanReview: booleano para inhabilitar la revisión humana (solo admitido por los procesadores con intervención humana).
true- omite la revisión humanafalse: habilita la revisión humana (opción predeterminada).
- MIME_TYPE†: una de las opciones válidas de tipo MIME.
- IMAGE_CONTENT†: uno de los valores válidos
Contenido del documento insertado, representado como
un flujo de bytes. En el caso de las representaciones JSON, la codificación base64 (cadena ASCII) de los datos de imagen binarios. Esta cadena debe ser similar a la siguiente:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK: especifica los campos que se incluirán en el resultado de
Document. Se trata de una lista separada por comas de nombres completos de campos en formatoFieldMask.- Ejemplo:
text,entities,pages.pageNumber
- Ejemplo:
- INDIVIDUAL_PAGES: lista de páginas concretas que se van a procesar.
† Este contenido también se puede especificar mediante contenido codificado en base64 en el objeto inlineDocument.
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:
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK",
"processOptions": {
"individualPageSelector" {
"pages": [INDIVIDUAL_PAGES]
}
}
}
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 "Authorization: Bearer $(gcloud auth print-access-token)" \
-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:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
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 Content
Si la solicitud se realiza de forma correcta, el servidor devuelve un código de estado HTTP 200 OK y la respuesta en formato JSON. El cuerpo de la respuesta contiene una instancia de Document.
Enviar una solicitud a una versión de procesador
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION: la ubicación de tu procesador, por ejemplo:
us- Estados Unidoseu- Unión Europea
- PROJECT_ID: tu ID de proyecto Google Cloud .
- PROCESSOR_ID: el ID de tu procesador personalizado.
- PROCESSOR_VERSION: el identificador de la versión del procesador. Consulta Seleccionar una versión del procesador para obtener más información. Por ejemplo:
pretrained-TYPE-vX.X-YYYY-MM-DDstablerc
- skipHumanReview: booleano para inhabilitar la revisión humana (solo admitido por los procesadores con intervención humana).
true- omite la revisión humanafalse: habilita la revisión humana (opción predeterminada).
- MIME_TYPE†: una de las opciones válidas de tipo MIME.
- IMAGE_CONTENT†: uno de los valores válidos
Contenido del documento insertado, representado como
un flujo de bytes. En el caso de las representaciones JSON, la codificación base64 (cadena ASCII) de los datos de imagen binarios. Esta cadena debe ser similar a la siguiente:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK: especifica los campos que se incluirán en el resultado de
Document. Se trata de una lista separada por comas de nombres completos de campos en formatoFieldMask.- Ejemplo:
text,entities,pages.pageNumber
- Ejemplo:
† Este contenido también se puede especificar mediante contenido codificado en base64 en el objeto inlineDocument.
Método HTTP y URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process
Cuerpo JSON de la solicitud:
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK"
}
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 "Authorization: Bearer $(gcloud auth print-access-token)" \
-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/processorVersions/PROCESSOR_VERSION:process"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
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/processorVersions/PROCESSOR_VERSION:process" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve un código de estado HTTP 200 OK y la respuesta en formato JSON. El cuerpo de la respuesta contiene una instancia de Document.
C#
Para obtener más información, consulta la documentación de referencia de la API C# de Document AI.
Para autenticarte en Document AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.