Gestione modelli
Questo documento mostra come gestire i modelli BigQuery ML, inclusi la copia e la ridenominazione dei modelli.
Ruoli obbligatori
Per ottenere le autorizzazioni
necessarie per leggere e creare modelli BigQuery,
chiedi all'amministratore di concederti il ruolo IAM
Editor dati BigQuery (roles/bigquery.dataEditor
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per leggere e creare modelli BigQuery. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per leggere e creare modelli BigQuery sono necessarie le seguenti autorizzazioni:
-
Per leggere le informazioni dai modelli:
bigquery.models.getData
-
Per creare modelli:
bigquery.models.create
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Rinominare i modelli
Non puoi modificare il nome di un modello esistente. Se devi modificare il nome del modello, segui i passaggi per copiarlo. Quando specifichi la destinazione nell'operazione di copia, utilizza il nuovo nome del modello.
Copia modelli
Puoi copiare uno o più modelli da un set di dati di origine a un set di dati di destinazione in uno dei seguenti modi:
- Utilizzo della console Trusted Cloud .
- Utilizzo del comando
bq cp
dello strumento a riga di comando bq. - Chiamando direttamente il metodo API jobs.insert e configurando un job di copia o utilizzando le librerie client.
Limitazioni relative alla copia dei modelli
I job di copia dei modelli sono soggetti alle seguenti limitazioni:
- Quando copi un modello, il nome del modello di destinazione deve rispettare le stesse convenzioni di denominazione di quando crei un modello.
- Le copie dei modelli sono soggette ai limiti di BigQuery per i job di copia.
- La copia di un modello non è supportata dalla console Trusted Cloud .
- La copia di più modelli di origine in un unico comando non è supportata.
- Quando copi un modello utilizzando la CLI, il flag
--destination_kms_key
non è supportato.
Copiare un modello
Puoi copiare un modello:
- Utilizzo del comando
bq cp
dello strumento a riga di comando - Chiamando il metodo API
jobs.insert
e configurando un job di copia o utilizzando le librerie client
Per copiare un modello:
Console
La console Trusted Cloud non supporta la copia dei modelli.
bq
Esegui il comando bq cp
. Flag facoltativi:
-f
o--force
sovrascrive un modello esistente nel set di dati di destinazione e non ti chiede la conferma.-n
o--no_clobber
restituisce il seguente messaggio di errore se il modello esiste nel set di dati di destinazione:'[PROJECT_ID]:[DATASET].[MODEL]' already exists, skipping
.Se
-n
non è specificato, il comportamento predefinito è quello di chiederti di scegliere se sostituire il modello di destinazione.
Se il set di dati di origine o di destinazione si trova in un progetto diverso da quello predefinito, aggiungi l'ID progetto ai nomi dei set di dati nel seguente formato:
PROJECT_ID:DATASET
.
bq cp -f -n PROJECT_ID:DATASET.SOURCE_MODEL PROJECT_ID:DATASET.DESTINATION_MODEL
Sostituisci quanto segue:
- PROJECT_ID: il tuo ID progetto.
- DATASET: il nome del set di dati di origine o di destinazione.
- SOURCE_MODEL: il modello che stai copiando.
- DESTINATION_MODEL: il nome del modello nel set di dati di destinazione.
Esempi:
Inserisci il seguente comando per copiare mydataset.mymodel
in
mydataset2
.
bq cp mydataset.mymodel mydataset2.mymodel
Inserisci il comando seguente per copiare mydataset.mymodel
e sovrascrivere un modello di destinazione con lo stesso nome. Il set di dati di origine si trova nel progetto
predefinito. Il set di dati di destinazione si trova in myotherproject
. La scorciatoia -f
viene
utilizzata per sovrascrivere il modello di destinazione senza un prompt.
bq cp -f mydataset.mymodel myotherproject:myotherdataset.mymodel
Inserisci il seguente comando per copiare mydataset.mymodel
e restituire un errore
se il set di dati di destinazione contiene un modello con lo stesso nome. Il set di dati
di origine si trova nel progetto predefinito. Il set di dati di destinazione si trova in
myotherproject
. La scorciatoia -n
viene utilizzata per evitare di sovrascrivere un modello con
lo stesso nome.
bq cp -n mydataset.mymodel myotherproject:myotherdataset.mymodel
Inserisci questo comando per copiare mydataset.mymodel
in mydataset2
e
per rinominare il modello mymodel2
. Entrambi i set di dati si trovano nel tuo progetto predefinito.
Entrambi i set di dati sono stati creati nella regione asia-northeast1
.
bq cp mydataset.mymodel mydataset2.mymodel2
API
Per copiare un modello utilizzando l'API, chiama il metodo
bigquery.jobs.insert
e configura un job copy
. Specifica la tua posizione nella proprietà
location
nella sezione jobReference
della
risorsa lavoro.
Devi specificare i seguenti valori nella configurazione del job:
"copy": { "sourceTable": { // Required "projectId": string, // Required "datasetId": string, // Required "tableId": string // Required }, "destinationTable": { // Required "projectId": string, // Required "datasetId": string, // Required "tableId": string // Required }, "createDisposition": string, // Optional "writeDisposition": string, // Optional },
Dove:
sourceTable
: fornisce informazioni sul modello da copiare.destinationTable
: fornisce informazioni sul nuovo modello.createDisposition
: indica se creare il modello se non esiste.writeDisposition
: indica se sovrascrivere un modello esistente.
Criptare i modelli
Per saperne di più sull'utilizzo di una chiave di crittografia gestita dal cliente (CMEK) per criptare un modello, consulta Utilizzare CMEK per proteggere i modelli BigQuery ML.
Passaggi successivi
- Per una panoramica di BigQuery ML, consulta Introduzione a BigQuery ML.
- Per iniziare a utilizzare BigQuery ML, consulta Creare modelli di machine learning in BigQuery ML.
- Per scoprire di più su come lavorare con i modelli, consulta: