Integrazione di BigQuery

BigQuery si integra con Document AI per aiutarti a creare casi d'uso di analisi dei documenti e AI generativa. Con l'accelerazione della trasformazione digitale, le organizzazioni generano grandi quantità di testo e altri dati dei documenti, tutti con un enorme potenziale per approfondimenti e per alimentare nuovi casi d'uso dell'AI generativa. Per sfruttare al meglio questi dati, siamo felici di annunciare un'integrazione tra BigQuery e Document AI, che ti consente di estrarre insight dai dati dei documenti e creare nuove applicazioni di modelli linguistici di grandi dimensioni (LLM).

Panoramica

I clienti BigQuery ora possono creare estrattori personalizzati Document AI, basati sui foundation model all'avanguardia di Google, che possono personalizzare in base ai propri documenti e metadati. Questi modelli personalizzati possono poi essere richiamati da BigQuery per estrarre dati strutturati dai documenti in modo sicuro e controllato, utilizzando la semplicità e la potenza di SQL. Prima di questa integrazione, alcuni clienti hanno tentato di creare pipeline Document AI indipendenti, il che comportava la cura manuale della logica di estrazione e dello schema. La mancanza di funzionalità di integrazione integrate ha portato allo sviluppo di un'infrastruttura personalizzata per sincronizzare e mantenere la coerenza dei dati. In questo modo, ogni progetto di analisi dei documenti si è trasformato in un'impresa sostanziale che ha richiesto un investimento significativo. Ora, con questa integrazione, i clienti possono creare modelli remoti in BigQuery per i propri estrattori personalizzati in Document AI e utilizzarli per eseguire analisi dei documenti e AI generativa su larga scala, aprendo una nuova era di innovazione e approfondimenti basati sui dati.

Un'esperienza unificata e controllata dai dati all'AI

Puoi creare un estrattore personalizzato in Document AI in tre passaggi:

  1. Definisci i dati da estrarre dai documenti. Questo viene chiamato document schema, archiviato con ogni versione dell'estrattore personalizzato e accessibile da BigQuery.
  2. (Facoltativo) Fornisci documenti aggiuntivi con annotazioni come esempi dell'estrazione.
  3. Addestra il modello per l'estrattore personalizzato in base ai foundation model forniti in Document AI.

Oltre agli estrattori personalizzati che richiedono l'addestramento manuale, Document AI fornisce anche estrattori pronti all'uso per spese, scontrini, fatture, moduli fiscali, documenti di identità rilasciati dal governo e una moltitudine di altri scenari nella galleria dei processori.

Una volta pronto l'estrattore personalizzato, puoi passare a BigQuery Studio per analizzare i documenti utilizzando SQL nei quattro passaggi seguenti:

  1. Registra un modello remoto BigQuery per l'estrattore utilizzando SQL. Il modello può comprendere lo schema del documento (creato sopra), richiamare l'estrattore personalizzato e analizzare i risultati.
  2. Crea tabelle di oggetti utilizzando SQL per i documenti archiviati in Cloud Storage. Puoi governare i dati non strutturati nelle tabelle impostando criteri di accesso a livello di riga, che limitano l'accesso degli utenti a determinati documenti e quindi limitano la potenza dell'AI per la privacy e la sicurezza.
  3. Utilizza la funzione ML.PROCESS_DOCUMENT nella tabella degli oggetti per estrarre i campi pertinenti effettuando chiamate di inferenza all'endpoint API. Puoi anche filtrare i documenti per le estrazioni con una clausola WHERE al di fuori della funzione. La funzione restituisce una tabella strutturata, in cui ogni colonna è un campo estratto.
  4. Unisci i dati estratti ad altre tabelle BigQuery per combinare dati strutturati e non strutturati e produrre valori aziendali.

L'esempio seguente illustra l'esperienza utente:

bigquery-integration-with-document-ai-1

  # Create an object table in BigQuery that maps to the document files stored in Cloud Storage.
  CREATE OR REPLACE EXTERNAL TABLE `my_dataset.document`
  WITH CONNECTION `my_project.us.example_connection`
  OPTIONS (
    object_metadata = 'SIMPLE',
    uris = ['gs://my_bucket/path/*'],
    metadata_cache_mode= 'AUTOMATIC',
    max_staleness= INTERVAL 1 HOUR
  );

  # Create a remote model to register your Doc AI processor in BigQuery.
  CREATE OR REPLACE MODEL `my_dataset.layout_parser`
  REMOTE WITH CONNECTION `my_project.us.example_connection`
  OPTIONS (
    remote_service_type = 'CLOUD_AI_DOCUMENT_V1',   
    document_processor='PROCESSOR_ID'
  );

  # Invoke the registered model over the object table to parse PDF document
  SELECT uri, total_amount, invoice_date
  FROM ML.PROCESS_DOCUMENT(
    MODEL `my_dataset.layout_parser`,
    TABLE `my_dataset.document`,
    PROCESS_OPTIONS => (
      JSON '{"layout_config": {"chunking_config": {"chunk_size": 250}}}')
    )
  WHERE content_type = 'application/pdf';

Tabella dei risultati

bigquery-integration-with-document-ai-2

Analisi del testo, riepilogo e altri casi d'uso dell'analisi dei documenti

Una volta estratto il testo dai documenti, puoi eseguire l'analisi dei documenti in diversi modi:

  • Utilizza BigQuery ML per eseguire l'analisi del testo: BigQuery ML supporta l'addestramento e il deployment di modelli di incorporamento in vari modi. Ad esempio, puoi utilizzare BigQuery ML per identificare il sentiment dei clienti nelle chiamate di assistenza o per classificare il feedback sui prodotti in diverse categorie. Se utilizzi Python, puoi anche utilizzare BigQuery DataFrames per pandas e API simili a scikit-learn per l'analisi del testo sui tuoi dati.
  • Utilizza l'LLM text-embedding-004 per generare incorporamenti dai documenti suddivisi in blocchi: BigQuery ha una funzione ML.GENERATE_EMBEDDING che chiama il modello text-embedding-004 per generare incorporamenti. Ad esempio, puoi utilizzare Document AI per estrarre il feedback dei clienti e riassumerlo utilizzando PaLM 2, il tutto con BigQuery SQL.
  • Unisci i metadati dei documenti ad altri dati strutturati archiviati nelle tabelle BigQuery:

Ad esempio, puoi generare embedding utilizzando i documenti suddivisi in blocchi e utilizzarli per la ricerca vettoriale.

# Example 1: Parse the chunked data

CREATE OR REPLACE TABLE docai_demo.demo_result_parsed AS (SELECT
  uri,
  JSON_EXTRACT_SCALAR(json , '$.chunkId') AS id,
  JSON_EXTRACT_SCALAR(json , '$.content') AS content,
  JSON_EXTRACT_SCALAR(json , '$.pageFooters[0].text') AS page_footers_text,
  JSON_EXTRACT_SCALAR(json , '$.pageSpan.pageStart') AS page_span_start,
  JSON_EXTRACT_SCALAR(json , '$.pageSpan.pageEnd') AS page_span_end
FROM docai_demo.demo_result, UNNEST(JSON_EXTRACT_ARRAY(ml_process_document_result.chunkedDocument.chunks, '$')) json)

# Example 2: Generate embedding

CREATE OR REPLACE TABLE `docai_demo.embeddings` AS
SELECT * FROM ML.GENERATE_EMBEDDING(
  MODEL `docai_demo.embedding_model`,
  TABLE `docai_demo.demo_result_parsed`
);

Implementare casi d'uso della ricerca e dell'AI generativa

Una volta estratto il testo strutturato dai documenti, puoi creare indici ottimizzati per le query di ricerca di un ago in un pagliaio, resi possibili dalle funzionalità di ricerca e indicizzazione di BigQuery, sbloccando una potente funzionalità di ricerca. Questa integrazione consente inoltre di sbloccare nuove applicazioni LLM generative come l'esecuzione dell'elaborazione di file di testo per il filtraggio della privacy, i controlli di sicurezza dei contenuti e la suddivisione in token utilizzando SQL e modelli Document AI personalizzati. Il testo estratto, combinato con altri metadati, semplifica la cura del corpus di addestramento necessario per mettere a punto modelli di grandi dimensioni. Inoltre, stai creando casi d'uso LLM su dati aziendali controllati che sono stati fondati tramite le funzionalità di gestione dell'indice vettoriale e di generazione di embedding di BigQuery. Se sincronizzi questo indice con Vertex AI, puoi implementare casi d'uso di generazione aumentata dal recupero, per un'esperienza di AI più controllata e semplificata.

Applicazione di esempio

Per un esempio di applicazione end-to-end con il connettore Document AI:

  • Guarda la demo relativa al report sulle spese su GitHub.
  • Leggi il post del blog complementare.
  • Guarda un video di approfondimento di Google Cloud Next 2021.