Modello da Spanner a Vertex AI Vector Search

Il modello per i file Spanner to Vertex AI Vector Search su Cloud Storage crea una pipeline batch che esporta dati di incorporamenti vettoriali da una tabella Spanner a Cloud Storage in JSON formato. Usa i parametri del modello per specificare la cartella di Cloud Storage in cui esportare gli incorporamenti vettoriali. La cartella Cloud Storage contiene l'elenco dei file .json, che rappresentano gli incorporamenti vettoriali in un formato supportato da Vertex AI Indice di Vector Search.

Per ulteriori informazioni, consulta Formato e struttura dei dati di input.

Requisiti della pipeline

  • Il database Spanner deve esistere.
  • Deve esistere il bucket Cloud Storage per l'output dei dati.
  • Oltre ai ruoli IAM (Identity and Access Management) necessari per eseguire i job Dataflow, necessitano della richiesta IAM ruoli per la lettura dei dati Spanner e la scrittura su Cloud Storage di sincronizzare la directory di una VM con un bucket.

Parametri del modello

Parametri obbligatori

  • spannerProjectId : l'ID progetto dell'istanza Spanner.
  • spannerInstanceId : l'ID dell'istanza Spanner da cui esportare gli incorporamenti vettoriali.
  • spannerDatabaseId : l'ID del database Spanner da cui esportare gli incorporamenti vettoriali.
  • spannerTable : la tabella Spanner da cui leggere.
  • spannerColumnsToExport : un elenco separato da virgole di colonne richieste per l'indice di Vertex AI Vector Search. Le colonne ID e di incorporamento sono richieste da Vector Search. Se i nomi delle colonne non corrispondono alla struttura di input dell'indice di Vertex AI Vector Search, crea mappature delle colonne utilizzando alias. Se i nomi delle colonne non corrispondono al formato previsto da Vertex AI, utilizza la notazione da:a. Ad esempio, se hai colonne denominate id e my_embedding, specifica id, my_embedding:embedding.
  • gcsOutputFolder : la cartella di Cloud Storage in cui scrivere i file di output. Il percorso deve terminare con una barra. ad esempio gs://your-bucket/folder1/.
  • gcsOutputFilePrefix : il prefisso del nome file per la scrittura dei file di output. (Esempio: incorporamenti vettoriali).

Parametri facoltativi

Esegui il modello

Console

  1. Vai alla pagina Crea job da modello di Dataflow.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco per il job.
  4. (Facoltativo) Per Endpoint a livello di regione, seleziona un valore dal menu a discesa. Il valore predefinito è us-central1.

    Per un elenco di regioni in cui è possibile eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Spanner to Vertex AI Vector Search files on Cloud Storage template.
  6. Inserisci i valori parametro negli appositi campi.
  7. Fai clic su Esegui job.

gcloud

Nella shell o nel terminale, esegui il modello:

gcloud dataflow jobs run JOB_NAME \
    --gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/Cloud_Spanner_vectors_to_Cloud_Storage \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --parameters \
       spannerProjectId=SPANNER_PROJECT_ID,\
       spannerInstanceId=SPANNER_INSTANCE_ID,\
       spannerDatabaseId=SPANNER_DATABASE_ID,\
       spannerTable=SPANNER_TABLE,\
       spannerColumnsToExport=SPANNER_COLUMNS_TO_EXPORT,\
       gcsOutputFolder=GCS_OUTPUT_FOLDER,\
       gcsOutputFilePrefix=GCS_OUTPUT_FILE_PREFIX,\

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco di tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

  • REGION_NAME: la regione in cui vuoi di eseguire il deployment del job Dataflow, ad esempio us-central1
  • SPANNER_PROJECT_ID: l'ID progetto Spanner
  • SPANNER_INSTANCE_ID: l'ID istanza Spanner
  • SPANNER_DATABASE_ID: l'ID database Spanner
  • SPANNER_TABLE: la tabella Spanner
  • SPANNER_COLUMNS_TO_EXPORT: le colonne da esportare dalla tabella Spanner
  • GCS_OUTPUT_FOLDER: la cartella Cloud Storage in cui esportare i file
  • GCS_OUTPUT_FILE_PREFIX: il prefisso dei file di output in Cloud Storage

API

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sul API e i relativi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Cloud_Spanner_vectors_to_Cloud_Storage
{
   "jobName": "JOB_NAME",
   "parameters": {
     "spannerProjectId": "SPANNER_PROJECT_ID",
     "spannerInstanceId": "SPANNER_INSTANCE_ID",
     "spannerDatabaseId": "SPANNER_DATABASE_ID",
     "spannerTable": "SPANNER_TABLE",
     "spannerColumnsToExport": "SPANNER_COLUMNS_TO_EXPORT",
     "gcsOutputFolder": "GCS_OUTPUT_FOLDER",
     "gcsOutputFilePrefix": "GCS_OUTPUT_FILE_PREFIX",
   },
   "environment": { "maxWorkers": "10" }
}

Sostituisci quanto segue:

  • PROJECT_ID: L'ID progetto Google Cloud in cui vuoi eseguire il job Dataflow
  • JOB_NAME: un nome job univoco di tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

  • LOCATION: la regione in cui vuoi di eseguire il deployment del job Dataflow, ad esempio us-central1
  • SPANNER_PROJECT_ID: l'ID progetto Spanner
  • SPANNER_INSTANCE_ID: l'ID istanza Spanner
  • SPANNER_DATABASE_ID: l'ID database Spanner
  • SPANNER_TABLE: la tabella Spanner
  • SPANNER_COLUMNS_TO_EXPORT: le colonne da esportare dalla tabella Spanner
  • GCS_OUTPUT_FOLDER: la cartella Cloud Storage in cui esportare i file
  • GCS_OUTPUT_FILE_PREFIX: il prefisso dei file di output in Cloud Storage

Passaggi successivi