Después de configurar tu cuenta deGoogle Cloud y crear un procesador, puedes enviar una solicitud a tu procesador de Document AI.
El código que se usa 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 de la API de v1 de Document AI o la Google Cloud consola, puedes enviar solicitudes de procesamiento a esa versión específica del procesador. Si no especificas una versión del procesador, se usa la versión predeterminada.
Para obtener más información, consulta Administra versiones de procesadores.
Procesamiento en línea
Las solicitudes en línea (síncronas) te permiten enviar un solo documento para su procesamiento.
Document AI procesa la solicitud de inmediato y devuelve un document.
Envía una solicitud a un procesador
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 del documento (contenido sin procesar en bytes a través de una cadena codificada en base64) en el objeto rawDocument.
Como alternativa, 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, luego, extraes su contenido).
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: Es el ID del proyecto de Google Cloud .
- PROCESSOR_ID: Es el ID de tu procesador personalizado.
- skipHumanReview: Es un valor booleano para inhabilitar la revisión humana (solo es compatible con los procesadores con interacción humana).
true- Se omite la revisión humanafalse: Habilita la revisión manual (configuración predeterminada).
- MIME_TYPE†: Una de las opciones de tipo de MIME válidas.
- IMAGE_CONTENT†: Uno de los contenidos de documentos intercalados válidos, representado como un flujo de bytes. Para las representaciones JSON, es la codificación en base64 (cadena ASCII) de los datos de la imagen binaria. Esta cadena debería ser similar a la siguiente:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK: Especifica qué campos se deben incluir en el resultado de
Document. Esta es una lista separada por comas de los nombres de campos completamente calificados en formatoFieldMask.- Ejemplo:
text,entities,pages.pageNumber
- Ejemplo:
- INDIVIDUAL_PAGES: Es una lista de páginas individuales para procesar.
† Este contenido también se puede especificar con 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 completa de forma correcta, el servidor muestra un código de estado HTTP 200 OK y la respuesta en formato JSON. El cuerpo de la respuesta contiene una instancia de
Document.
Envía una solicitud a una versión del procesador
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: Es el ID del proyecto de Google Cloud .
- PROCESSOR_ID: Es el ID de tu procesador personalizado.
- PROCESSOR_VERSION: Es el identificador de la versión del procesador. Consulta Selecciona una versión del procesador para obtener más información. Por ejemplo:
pretrained-TYPE-vX.X-YYYY-MM-DDstablerc
- skipHumanReview: Es un valor booleano para inhabilitar la revisión humana (solo es compatible con los procesadores con interacción humana).
true- Se omite la revisión humanafalse: Habilita la revisión manual (configuración predeterminada).
- MIME_TYPE†: Una de las opciones de tipo de MIME válidas.
- IMAGE_CONTENT†: Uno de los contenidos de documentos intercalados válidos, representado como un flujo de bytes. Para las representaciones JSON, es la codificación en base64 (cadena ASCII) de los datos de la imagen binaria. Esta cadena debería ser similar a la siguiente:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK: Especifica qué campos se deben incluir en el resultado de
Document. Esta es una lista separada por comas de los nombres de campos completamente calificados en formatoFieldMask.- Ejemplo:
text,entities,pages.pageNumber
- Ejemplo:
† Este contenido también se puede especificar con 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 completa de forma correcta, el servidor muestra 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 de Document AI C#.
Para autenticarte en Document AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.