Messaggi di errore

Scopri come risolvere alcuni errori generati da Document AI. Questo argomento tratta gli errori la cui risoluzione richiede più passaggi di quelli che possono essere descritti in un messaggio di errore.

Consulta la documentazione dell'API Cloud per le pratiche consigliate per la gestione degli errori.

Autorizzazioni

La risoluzione richiede l'esecuzione di alcuni passaggi, come descritto nel messaggio di errore.

Le credenziali predefinite dell'applicazione non sono disponibili

Se ricevi questo messaggio:

The Application Default Credentials are not available. They are
available if running in Compute Engine. Otherwise, the
environment variable GOOGLE_APPLICATION_CREDENTIALS must be defined
pointing to a file defining the credentials.
See https://developers.google.com/accounts/docs/application-default-credentials
for more information.

Document AI utilizza Credenziali predefinite dell'applicazione per l'autenticazione.

Devi disporre di un account di servizio per il tuo progetto, scaricare la chiave (file JSON) per il account di servizio nel tuo ambiente di sviluppo e impostare la posizione del file JSON su una variabile di ambiente denominata GOOGLE_APPLICATION_CREDENTIALS.

Inoltre, la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS deve essere disponibile nel contesto in cui chiami l'API Document AI. Ad esempio, se imposti la variabile all'interno di una sessione del terminale, ma esegui il codice nel debugger dell'IDE, il contesto di esecuzione del codice potrebbe non avere accesso alla variabile. In questo caso, la tua richiesta a Document AI potrebbe non riuscire per mancanza di un'autenticazione adeguata.

Per ulteriori informazioni su come impostare la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS, consulta la guida rapida di Document AI o la documentazione sull'utilizzo delle credenziali predefinite dell'applicazione.

Autorizzazione negata

Se ricevi questo messaggio:

ERROR: (gcloud.auth.application-default.print-access-token) File
(pointed by GOOGLE_APPLICATION_CREDENTIALS environment variable) does not exist!
{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "status": "PERMISSION_DENIED"
  }
}

Verifica di avere un file JSON della chiave account di servizio valido nella posizione archiviata nella variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS e che la variabile punti alla posizione corretta.

Per diagnosticare questo errore, prova ad aprire il file delle chiavi del account di servizio dalla cartella da cui stai tentando di chiamare l'API Document AI.

cat $GOOGLE_APPLICATION_CREDENTIALS

Vietato: 403 POST API non è stata utilizzata o è disabilitata

Se ricevi il messaggio:

Forbidden: 403 POST Document AI API has not been used in
project # before or it is disabled.
Enable it by visiting [url], then retry.
If you enabled this API recently, wait a few minutes for the action to
propagate and retry.
  1. Visita il link specificato nel messaggio di errore e abilita l'API Document AI. Attendi alcuni minuti e riprova.
  2. Verifica di avere un file JSON della chiave account di servizio valido archiviato nella variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS. Per diagnosticare questo errore, prova ad aprire il file delle chiavi del account di servizio dalla cartella da cui stai tentando di chiamare l'API Document AI.
    cat $GOOGLE_APPLICATION_CREDENTIALS
    

Errore durante la scrittura dell'output finale

Se ricevi un messaggio simile al seguente quando ricevi i risultati di una richiesta di elaborazione batch:

{
  "name": "projects/project-name/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.document.v1beta1.OperationMetadata",
    "state": "SUCCEEDED",
    "createTime": "2019-09-19T02:02:15.885267760Z",
    "updateTime": "2019-09-19T02:02:31.896425001Z"
  },
  "done": true,
  "error": {
    "code": 5,
    "message": "Error writing final output to: gs://bucket-name/filename.json"
  }
}

Il tuo account di servizio potrebbe non disporre delle autorizzazioni corrette per creare oggetti nel bucket Cloud Storage. Assicurati di aver assegnato le autorizzazioni corrette al account di servizio, come descritto nella guida rapida.

Potresti anche aver scritto in modo errato il nome del bucket Cloud Storage. Verifica che il bucket a cui stai tentando di accedere esista.

P4SA non ha accesso a Cloud Storage

Quando il service account per prodotto (P4SA) Document AI non dispone dell'autorizzazione per accedere ad alcune risorse Cloud Storage.

message: "Cloud DocumentAI P4SA doesn't have access to this Cloud Storage resource:"

Il service account non può creare oggetti in Cloud Storage

Quando il service account per prodotto (P4SA) Document AI non dispone dell'autorizzazione per creare l'oggetto in Cloud Storage.

message: "Service account service-123@gcp-sa-prod-dai-core.iam.gserviceaccount.com
         does not have permission storage.objects.create to create
         Google Cloud Storage object in bucket gs://foo."

Il account di servizio Document AI potrebbe non disporre delle autorizzazioni corrette per creare oggetti nel bucket Cloud Storage. Assicurati di aver assegnato le autorizzazioni corrette alaccount di serviziot Document AI, come descritto nella configurazione dell'accesso ai file tra progetti.

Potresti anche aver scritto in modo errato il nome del bucket Cloud Storage. Verifica che il bucket a cui stai tentando di accedere esista.

Il chiamante non può recuperare oggetti in Cloud Storage

Quando il chiamante dell'API Document AI non dispone dell'autorizzazione per ottenere oggetti in Cloud Storage.

message: "The caller does not have permission storage.objects.get to get Google
         Cloud Storage objects in bucket gs://foo."

Il chiamante dell'API potrebbe non disporre delle autorizzazioni corrette per ottenere gli oggetti nel bucket Cloud Storage. Assicurati di aver assegnato le autorizzazioni corrette al chiamante.

Potresti anche aver scritto in modo errato il nome del bucket Cloud Storage. Verifica che il bucket a cui stai tentando di accedere esista.

Argomenti non validi

La risoluzione richiede l'esecuzione di alcuni passaggi, come descritto nel messaggio di errore.

Versione API non supportata

Quando viene effettuata una richiesta a una versione dell'API che non supporta l'operazione.

message: "The requested operation is unsupported for the API version."

Tipo di processore non supportato

Quando viene effettuata una richiesta a un metodo API che non supporta il tipo di processore specificato.

message: "The requested operation is unsupported for the processor type: ${PROCESSOR_TYPE}."

Bad Request (Richiesta non valida)

Quando viene effettuata una richiesta API, ma i campi della richiesta presentano una o più violazioni. Ogni violazione viene registrata come field_violations nei google.rpc.BadRequestdettagli.

message: "Request contains an invalid argument."
details {
  [type.googleapis.com/google.rpc.BadRequest] {
    field_violations { field: "foo" description: "bar" }
  }
}

Elaborazione batch di tutti i documenti non riuscita

Quando l'elaborazione di tutti i documenti in una richiesta di elaborazione batch non va a buon fine.

message: "Failed to process all documents."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "FAILED_TO_PROCESS_ALL_DOCUMENTS"
    domain: "documentai.googleapis.com"
  }
}

Nessun documento

Quando sono richiesti o previsti documenti, ma non ne viene fornito nessuno, ad esempio quando vengono importati documenti tramiteURI Cloud Storagee.

message: "No valid documents found in ${training|test} directory. Ensure files are in a supported MIME type. For details, see https://cloud.google.com/document-ai/docs/file-types."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "NO_DOCUMENTS"
    domain: "documentai.googleapis.com"
  }
}

I parametri gcsUriPrefix e gcsOutputConfig.gcsUri devono iniziare con gs:// e terminare con una barra rovesciata finale (/). Controlla la configurazione degli URI dei bucket.

Esempio: gs://bucket/directory/

L'addestramento non è supportato

Quando viene effettuata una richiesta di addestramento della versione del processore su un tipo di processore che non supporta l'addestramento.

message: "Training is not supported on processor type: ${DOCUMENT_TYPE}_PROCESSOR."

Nessun documento selezionato

Quando sono previsti documenti, ma nessuno è selezionato nel set di dati, ad esempio durante la creazione di job di etichettatura dei dati.

message: No documents selected. Please select at least one document."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "NO_DOCUMENTS_SELECTED"
    domain: "documentai.googleapis.com"
  }
}

Tipo di documento non trovato

Quando la classe di un documento (ad esempio licenza, passaporto o fattura) non corrisponde alla classificazione necessaria per il tipo di processore. Un esempio è quando il passaggio del classificatore nel parser W2 non trova elementi da una fattura.

Potrebbe anche essere visualizzato come Couldn't preview the document: Unable to find a document of type: 'foo' nella console Google Cloud . Questo messaggio di errore è applicabile ai processori legacy.

message: "Unable to find a document of type: 'foo'"
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "DOCUMENT_OF_TYPE_NOT_FOUND"
    domain: "documentai.googleapis.com"
  }
}

Limite di dimensioni del documento superato

Quando il limite superiore per le dimensioni del file di un documento è stato superato durante l'importazione del set di dati o durante l'esecuzione della previsione.

message: "Document size (2) exceeds limit: 1 (bytes)."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "DOCUMENT_SIZE_LIMIT_EXCEEDED"
    domain: "documentai.googleapis.com"
    metadata { key: "limit" value: "1" }
    metadata { key: "size" value: "2" }
  }
}

Limite di documenti superato

Quando è stato superato il limite superiore per il conteggio dei documenti.

message: "Document count exceed the limit: 5 got 6"
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "DOCUMENT_LIMIT_EXCEEDED"
    domain: "documentai.googleapis.com"
    metadata { key: "document_limit" value: "5" }
    metadata { key: "documents" value: "6" }
  }
}

Tipo MIME non supportato

Quando è stato fornito un tipo MIME non supportato. Il sistema verifica il formato del file (tipo MIME) quando importi un set di dati o effettui una chiamata di previsione. Vai a File supportati (e per Layout Parser) per visualizzare i tipi di file disponibili. Se il formato file non è supportato, viene visualizzato il seguente messaggio di errore:

message: "INVALID_ARGUMENT: Unsupported MIME type: 'foo'."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "UNSUPPORTED_MIME_TYPE"
    domain: "documentai.googleapis.com"
    metadata { key: "mime_type" value: "foo" }
  }
}

Nessuna pagina

Quando è stato fornito un documento senza pagine, ma sono richieste una o più pagine.

message: "No pages were found in the document."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "NO_PAGES"
    domain: "documentai.googleapis.com"
  }
}

Numero di pagina negativo

Quando un documento elenca un valore negativo per uno dei suoi numeri di pagina.

message: "Page number cannot be negative."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "NEGATIVE_PAGE_NUMBER"
    domain: "documentai.googleapis.com"
  }
}

Numeri di pagina duplicati

Quando un documento elenca lo stesso numero di pagina una o più volte.

message: "Duplicate page number detected (page numbers to indices): [{1, [1, 2]}, {4, [4, 5]}]."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "DUPLICATE_PAGE_NUMBERS"
    domain: "documentai.googleapis.com"
    metadata {
      key: "page_number_to_indices"
      value: "[{1, [1, 2]}, {4, [4, 5]}]"
    }
  }
}

Limite di pagine superato

Quando viene superato il limite superiore del numero totale di pagine di un documento. Si verifica questo errore durante l'importazione o la previsione del set di dati quando un documento all'interno del set di dati ha troppe pagine, superando i limiti del processore.

message: "Document pages exceed the limit: 5 got 6"
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "PAGE_LIMIT_EXCEEDED"
    domain: "documentai.googleapis.com"
    metadata { key: "page_limit" value: "5" }
    metadata { key: "pages" value: "6" }
  }
}

Limite di pagine superato in modalità senza immagini

Si verifica questo errore durante l'importazione o la previsione del set di dati quando un documento all'interno del set di dati ha troppe pagine, superando i limiti del processore. Puoi richiedere che il tuo progetto venga aggiunto a una lista consentita per attivare la modalità senza immagini, in questo modo il limite di pagine viene aumentato a 30.

message: "Document pages in non-imageless mode exceed the limit: 15 got 16. Try using imageless mode to increase the limit to 30."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "PAGE_LIMIT_EXCEEDED_IN_IMAGELESS_MODE"
    domain: "documentai.googleapis.com"
    metadata { key: "page_limit" value: "15" }
    metadata { key: "pages" value: "16" }
    metadata { key: "imageless_page_limit" value: "30" }
  }
}

Modifica dello stato della versione del processore preaddestrato

Quando è stata emessa una richiesta di modifica dello stato di una versione del processore preaddestrato. Si verifica questo errore quando tenti di eliminare una versione del processore preaddestrato.

message: "ProcessorVersion with id 'xyz' is pretrained by Google and cannot change states."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "PRETRAINED_PROCESSOR_VERSION_STATE_CHANGE"
    domain: "documentai.googleapis.com"
    metadata { key: "processor_id" value: "abc" }
    metadata { key: "target_state" value: "DELETING" }
    metadata { key: "version_id" value: "xyz" }
  }
}

Convalida del set di dati

Quando un set di dati non soddisfa i criteri di convalida, ad esempio a causa di ancore di pagina mancanti, dati errati o dettagli incompleti in alcuni attributi dell'oggetto proto del documento.

message: "Invalid dataset. See operation metadata for specific errors."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "INVALID_DATASET"
    domain: "documentai.googleapis.com"
  }
}

Documento non in linea per la revisione human-in-the-loop

Quando è stata avviata una revisione umana per un documento non definito in linea.

message: "The document for review must be provided inline."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "HUMAN_REVIEW_NON_INLINED_DOCUMENT"
    domain: "documentai.googleapis.com"
  }
}

Tipo di documento non valido

Quando il tipo di documento non è valido o non è supportato dal processore. Un tipo di documento si riferisce alla categoria del documento (ad es. W2), non il formato file o il tipo MIME, come PDF o JPEG.

message: "Invalid document type: 'foo'."
details {
  [type.googleapis.com/google.rpc.ErrorInfo] {
    reason: "INVALID_DOCUMENT_TYPE"
    domain: "documentai.googleapis.com"
    metadata { key: "type" value: "foo" }
  }
}

Intervallo del documento fuori dai limiti

message