Depois de configurar sua conta doGoogle Cloud e criar um processador, você pode enviar uma solicitação para o processador da Document AI.
O código usado para enviar a solicitação é o mesmo para todos os processadores. Você vai notar diferenças no funcionamento do processador nas informações que cada um gera.
Ao usar a versão da API v1 da Document AI ou no console Google Cloud , você pode enviar solicitações de processamento para essa versão específica do processador. Se você não especificar uma versão do processador, a padrão será usada.
Para mais informações, consulte Como gerenciar versões de processadores.
Processamento on-line
Com as solicitações on-line (síncronas), é possível enviar um único documento para processamento.
A Document AI processa imediatamente a solicitação e retorna um document.
Enviar solicitação a um processador
Os exemplos de código a seguir mostram como enviar uma solicitação a um processador.
REST
Este exemplo mostra como fornecer conteúdo de documento (conteúdo bruto em bytes
usando uma string codificada em base64) no objeto rawDocument.
Como alternativa, você também pode especificar inlineDocument, que é o mesmo formato JSON Document retornado pela Document AI. Isso permite encadear solicitações transmitindo o mesmo formato de volta
(por exemplo, se você classificar um documento e extrair o conteúdo dele).
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- LOCATION: a localização do seu processador, por exemplo:
us: Estados Unidoseu: União Europeia
- PROJECT_ID: o ID do projeto do Google Cloud .
- PROCESSOR_ID: o ID do seu processador personalizado.
- skipHumanReview: um booleano para desativar a revisão humana. Compatível apenas com processadores human-in-the-loop.
true- ignora a revisão humanafalse: ativa a revisão humana (padrão).
- MIME_TYPE†: uma das opções válidas de tipo MIME.
- IMAGE_CONTENT†: um dos conteúdos de documento inline válidos, representado como um stream de bytes. Para representações JSON, a codificação base64 (string ASCII) dos dados da imagem binária. A string precisa ser semelhante à seguinte:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK: especifica quais campos incluir na saída
Document. É uma lista separada por vírgulas de nomes de campos totalmente qualificados no formatoFieldMask.- Exemplo:
text,entities,pages.pageNumber
- Exemplo:
- INDIVIDUAL_PAGES: uma lista de páginas individuais a serem processadas.
† Esse conteúdo também pode ser especificado usando conteúdo codificado em base64 no objeto inlineDocument.
Método HTTP e URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID:process
Corpo JSON da solicitação:
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK",
"processOptions": {
"individualPageSelector" {
"pages": [INDIVIDUAL_PAGES]
}
}
}
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:
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
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:
$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
Quando a solicitação é bem-sucedida, o servidor retorna um código de status HTTP 200 OK e a
resposta no formato JSON. O corpo da resposta contém uma instância de Document.
Enviar solicitação para uma versão do processador
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- LOCATION: a localização do seu processador, por exemplo:
us: Estados Unidoseu: União Europeia
- PROJECT_ID: o ID do projeto do Google Cloud .
- PROCESSOR_ID: o ID do seu processador personalizado.
- PROCESSOR_VERSION: o identificador da versão do processador. Consulte Selecionar uma versão do processador para mais informações. Por exemplo:
pretrained-TYPE-vX.X-YYYY-MM-DDstablerc
- skipHumanReview: um booleano para desativar a revisão humana. Compatível apenas com processadores human-in-the-loop.
true- ignora a revisão humanafalse: ativa a revisão humana (padrão).
- MIME_TYPE†: uma das opções válidas de tipo MIME.
- IMAGE_CONTENT†: um dos conteúdos de documento inline válidos, representado como um stream de bytes. Para representações JSON, a codificação base64 (string ASCII) dos dados da imagem binária. A string precisa ser semelhante à seguinte:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- FIELD_MASK: especifica quais campos incluir na saída
Document. É uma lista separada por vírgulas de nomes de campos totalmente qualificados no formatoFieldMask.- Exemplo:
text,entities,pages.pageNumber
- Exemplo:
† Esse conteúdo também pode ser especificado usando conteúdo codificado em base64 no objeto inlineDocument.
Método HTTP e URL:
POST https://LOCATION-documentai.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process
Corpo JSON da solicitação:
{
"skipHumanReview": skipHumanReview,
"rawDocument": {
"mimeType": "MIME_TYPE",
"content": "IMAGE_CONTENT"
},
"fieldMask": "FIELD_MASK"
}
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:
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
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:
$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
Quando a solicitação é bem-sucedida, o servidor retorna um código de status HTTP 200 OK e a
resposta no formato JSON. O corpo da resposta contém uma instância de Document.
C#
Para mais informações, consulte a documentação de referência da API C# da Document AI.
Para autenticar na Document AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.