La funzione ML.PROCESS_DOCUMENT
Questo documento descrive la funzione ML.PROCESS_DOCUMENT
, che consente di elaborare documenti non strutturati da una tabella degli oggetti.
Sintassi
ML.PROCESS_DOCUMENT( MODEL `project_id.dataset.model_name`, TABLE `project_id.dataset.object_table` )
Argomenti
ML.PROCESS_DOCUMENT
accetta i seguenti argomenti:
project_id
: l'ID del tuo progetto.dataset
: il set di dati BigQuery che contiene il modello.model
: il nome di un modello remoto con un valoreREMOTE_SERVICE_TYPE
diCLOUD_AI_DOCUMENT_V1
.object_table
: il nome della tabella dell'oggetto che contiene gli URI dei documenti.I documenti nella tabella degli oggetti devono essere di un tipo supportato. Viene restituito un errore per qualsiasi riga contenente un documento di tipo non supportato.
Output
ML.PROCESS_DOCUMENT
restituisce le seguenti colonne:
ml_process_document_result
: un valoreJSON
che contiene le entità restituite dall'API Document AI.ml_process_document_result_status
: un valoreSTRING
contenente lo stato della risposta API per la riga corrispondente. Questo valore è vuoto se l'operazione è riuscita.- I campi restituiti dal processore specificato nel modello.
- Le colonne della tabella degli oggetti.
Quote
Consulta Quote e limiti delle funzioni di servizio Cloud AI.
Località
ML.PROCESS_DOCUMENT
deve essere eseguito nella stessa regione del modello remoto a cui fa riferimento la funzione. Puoi creare modelli basati su
Document AI solo nelle
aree geografiche multiple US
e EU
.
Limitazioni
La funzione non può elaborare documenti con più di 15 pagine. Qualsiasi riga contenente questo file restituisce un errore.
Esempio
L'esempio seguente utilizza l'analizzatore sintattico delle fatture per elaborare i documenti rappresentati dalla tabella documents
.
Crea il modello:
# Create model CREATE OR REPLACE MODEL `myproject.mydataset.invoice_parser` REMOTE WITH CONNECTION `myproject.myregion.myconnection` OPTIONS (remote_service_type = 'cloud_ai_document_v1', document_processor='projects/project_number/locations/processor_location/processors/processor_id/processorVersions/version_id');
Elabora i documenti:
SELECT * FROM ML.PROCESS_DOCUMENT( MODEL `myproject.mydataset.invoice_parser`, TABLE `myproject.mydataset.documents` );
Il risultato è simile al seguente:
ml_process_document_result | ml_process_document_status | invoice_type | currency | ... |
---|---|---|---|---|
{"entities":[{"confidence":1,"id":"0","mentionText":"10 105,93 10,59","pageAnchor":{"pageRefs":[{"boundingPoly":{"normalizedVertices":[{"x":0.40452111,"y":0.67199326},{"x":0.74776918,"y":0.67199326},{"x":0.74776918,"y":0.68208581},{"x":0.40452111,"y":0.68208581}]}}]},"properties":[{"confidence":0.66... | USD |
Passaggi successivi
- Ottieni istruzioni dettagliate su come elaborare i documenti utilizzando la funzione
ML.PROCESS_DOCUMENT
. - Per saperne di più sull'inferenza del modello, comprese le altre funzioni che puoi utilizzare per analizzare i dati di BigQuery, consulta Panoramica dell'inferenza del modello.
- Per informazioni sulle istruzioni e le funzioni SQL supportate per ogni tipo di modello, consulta Percorso dell'utente end-to-end per ogni modello.