Utilizzo di Cloud Storage

AI Platform Prediction legge i dati dalle località di Cloud Storage in cui si trovano a cui è stato concesso l'accesso al tuo progetto AI Platform Prediction. Questa pagina fornisce una rapida guida all'utilizzo di Cloud Storage con AI Platform Prediction.

Panoramica

L'utilizzo di Cloud Storage è obbligatorio o consigliato per i seguenti aspetti di Servizi di AI Platform Prediction:

Previsione online

Previsione batch

  • Archiviazione dei file di input per la previsione batch.
  • Archiviazione dell'output della previsione batch.
  • Archiviazione del modello, se si utilizza la previsione batch senza eseguire il deployment del modello su AI Platform Prediction.

Considerazioni sulle regioni

Quando crei un bucket Cloud Storage da utilizzare con AI Platform Prediction devono:

  • Assegnalo a una regione di computing specifica, non a un valore multiregionale.
  • Utilizza la stessa regione in cui esegui i job di addestramento.

Scopri di più sulle Regioni in cui è disponibile AI Platform Prediction.

Configurazione dei bucket Cloud Storage

Questa sezione mostra come creare un nuovo bucket. Puoi utilizzare un modello esistente ma deve trovarsi nella stessa regione in cui prevedi di eseguire AI Platform di lavoro. Inoltre, se non fa parte del progetto che utilizzi per eseguire AI Platform Prediction, devi generare concedere l'accesso agli account di servizio AI Platform Prediction.

  1. Specifica un nome per il nuovo bucket. Il nome deve essere univoco in tutti i bucket di Cloud Storage.

    BUCKET_NAME="YOUR_BUCKET_NAME"

    Ad esempio, utilizza il nome del progetto con -aiplatform aggiunto:

    PROJECT_ID=$(gcloud config list project --format "value(core.project)")
    BUCKET_NAME=${PROJECT_ID}-aiplatform
  2. Controlla il nome del bucket che hai creato.

    echo $BUCKET_NAME
  3. Seleziona una regione per il bucket e imposta una variabile di ambiente REGION.

    Utilizza la stessa regione in cui prevedi di eseguire AI Platform Prediction di lavoro. Scopri le regioni in cui è disponibile per Servizi di AI Platform Prediction.

    Ad esempio, il seguente codice crea REGION e lo imposta su us-central1:

    REGION=us-central1
  4. Crea il nuovo bucket:

    gcloud storage buckets create gs://$BUCKET_NAME --location=$REGION

Organizzazione dei modelli in bucket

Organizza la struttura delle cartelle nel bucket in modo da supportare molte iterazioni del tuo modello.

  • Posiziona ogni modello salvato nella propria directory separata all'interno del tuo bucket.
  • Valuta la possibilità di utilizzare i timestamp per assegnare un nome alle directory nel tuo bucket.

Ad esempio, puoi inserire il tuo primo modello in una struttura simile a gs://your-bucket/your-model-DATE1/your-saved-model-file. Per assegnare un nome a per ogni iterazione successiva del modello, utilizza un modello timestamp (gs://your-bucket/your-model-DATE2/your-saved-model-file e e così via).

Accesso a Cloud Storage durante la previsione

Se esegui il deployment di una routine di previsione personalizzata (beta) o di una pipeline scikit-learn con codice personalizzato (beta), la versione del modello può leggere da qualsiasi bucket Cloud Storage nello stesso progetto durante la gestione delle previsioni.

Utilizza un modulo Python che può leggere da Cloud Storage nel codice di previsione personalizzato, ad esempio il client Python per Cloud Storage di Google, il modulo tf.io.gfile.GFile di TensorFlow o pandas 0.24.0 o versioni successive. Il AI Platform Prediction si occupa dell'autenticazione.

Puoi anche specificare un account di servizio quando esegui il deployment della previsione personalizzata per e personalizzare le risorse di Cloud Storage a cui ha accesso il deployment.

Utilizzo di un bucket Cloud Storage di un progetto diverso

Questa sezione descrive come configurare i bucket Cloud Storage dall'esterno del progetto in modo che AI Platform Prediction possa accedervi.

Se configuri il bucket Cloud Storage nello stesso progetto in cui utilizzi AI Platform Prediction, gli account di servizio AI Platform Prediction dispongono già delle autorizzazioni necessarie per accedere al bucket Cloud Storage.

Queste istruzioni sono fornite per i seguenti casi:

  • Non puoi utilizzare un bucket dal tuo progetto, ad esempio quando un set di dati di grandi dimensioni viene condiviso tra più progetti.
  • Se utilizzi più bucket con AI Platform Prediction, devi concedere l'accesso agli account di servizio AI Platform Prediction separatamente per ciascuno.

Passaggio 1: recupera le informazioni richieste dal progetto cloud

Console

  1. Apri la pagina IAM nella console Google Cloud.

    Apri la pagina IAM

  2. La pagina IAM mostra un elenco di tutte le entità che hanno accesso al tuo progetto, insieme ai ruoli associati. Il tuo progetto AI Platform Prediction ha più account di servizio. Individua il account di servizio nell'elenco con il ruolo Agente di servizio Cloud ML e copia il relativo ID account di servizio, che è simile al seguente:

    "service-111111111111@cloud-ml.google.com.iam.gserviceaccount.com".

    Dovrai incollare questo ID account di servizio in un'altra pagina della console Google Cloud durante i passaggi successivi.

Riga di comando

I passaggi in questa sezione contengono informazioni su Google Cloud progetto per usarli per modificare il controllo dell'accesso Account di servizio AI Platform Prediction. Devi memorizzare i valori per un utilizzo successivo nelle variabili di ambiente.

  1. Ottieni l'identificatore del progetto utilizzando Google Cloud CLI con il progetto selezionato:

    PROJECT_ID=$(gcloud config list project --format "value(core.project)")
    
  2. Ottieni il token di accesso per il tuo progetto utilizzando gcloud:

    AUTH_TOKEN=$(gcloud auth print-access-token)
    
  3. Per recuperare le informazioni dell'account di servizio, richiedi la configurazione del progetto dal servizio REST:

    SVC_ACCOUNT=$(curl -X GET -H "Content-Type: application/json" \
        -H "Authorization: Bearer $AUTH_TOKEN" \
        https://ml.googleapis.com/v1/projects/${PROJECT_ID}:getConfig \
        | python3 -c "import json; import sys; response = json.load(sys.stdin); \
        print(response['serviceAccount'])")
    

Passaggio 2: configura l'accesso al bucket Cloud Storage

Console

  1. Apri la pagina Archiviazione nella console Google Cloud.

    Apri la pagina Spazio di archiviazione

  2. Seleziona il bucket Cloud Storage che utilizzi per eseguire il deployment dei modelli selezionando la casella a sinistra del nome del bucket.

  3. Fai clic sul pulsante Mostra riquadro informazioni nell'angolo in alto a destra per visualizzare la scheda Autorizzazioni.

  4. Incolla l'ID dell'account di servizio nel campo Aggiungi entità. Alla a destra di questo campo, seleziona i ruoli che preferisci, Lettore bucket legacy Storage.

    Se non sai con certezza quale ruolo selezionare, puoi selezionare più ruoli. visualizzate sotto il campo Aggiungi entità, ciascuna con una breve descrizione delle sue autorizzazioni.

  5. Per assegnare i ruoli desiderati all'account di servizio, fai clic sul pulsante Aggiungi a destra del campo Aggiungi entità.

Riga di comando

Ora che hai i dati del progetto e dell'account di servizio, devi aggiornare le autorizzazioni di accesso per il bucket Cloud Storage. Questi passaggi utilizzano gli stessi nomi di variabile utilizzati nella sezione precedente.

  1. Imposta il nome del bucket in una variabile di ambiente denominata BUCKET_NAME:

    BUCKET_NAME="your_bucket_name"
    
  2. Concedi all'account di servizio l'accesso in lettura agli oggetti nel bucket Cloud Storage:

    gcloud storage buckets add-iam-policy-binding gs://$BUCKET_NAME --member=user:$SVC_ACCOUNT --role=roles/storage.legacyObjectReader
    
  3. Concedi l'accesso in scrittura:

    gcloud storage buckets add-iam-policy-binding gs://$BUCKET_NAME --member=user:$SVC_ACCOUNT --role=roles/storage.legacyObjectWriter
    

Per scegliere un ruolo da concedere al tuo account di servizio AI Platform Prediction, consulta Ruoli IAM di Cloud Storage. Per per altre informazioni generali sull'aggiornamento dei ruoli IAM in Cloud Storage, consulta come concedere l'accesso a un account di servizio per una risorsa.

Passaggi successivi