Monta una condivisione NFS per l'addestramento personalizzato

Puoi configurare i job di addestramento personalizzati per montare Network File System (NFS) le condivisioni al container su cui è in esecuzione il codice. In questo modo i tuoi job possono accedere ai file remoti come se fossero locali, consentendo un'elevata velocità in uscita e una bassa latenza.

Questa guida mostra come montare una condivisione NFS quando esegui un job di addestramento personalizzato.

Prima di iniziare

  1. Crea una condivisione NFS in un Virtual Private Cloud (VPC). La condivisione deve essere accessibile senza autenticazione.

    Puoi utilizzare un'istanza Filestore come condivisione NFS. Se utilizzi Filestore, seleziona Accesso privato ai servizi come la modalità di connessione quando crei un'istanza. Per un esempio, vedi Crea istanze nella documentazione di Filestore.

  2. Segui le istruzioni riportate in Configurare il peering della rete VPC per eseguire il peering di Vertex AI con la VPC che ospita la tua condivisione NFS.

Informazioni NFS per l'addestramento personalizzato

Quando crei un job di addestramento personalizzato che monta una condivisione NFS, devi specificare quanto segue:

  • Il nome della rete a cui Vertex AI deve accedere. Il modo in cui specificare il nome della rete varia a seconda del tipo di addestramento personalizzato un lavoro. Per maggiori dettagli, vedi Eseguire l'addestramento personalizzato.

  • La configurazione NFS nel campo WorkerPoolSpec. Includi i seguenti campi:

    Campo Descrizione
    nfsMounts.server L'indirizzo IP del tuo server NFS. Deve essere un indirizzo privato nella tua VPC.
    nfsMounts.path Percorso di condivisione NFS. Deve essere un percorso assoluto che inizia con /.
    nfsMounts.mountPoint Il punto di montaggio locale. Deve essere un nome di directory UNIX valido. Ad esempio, se il punto di montaggio locale è sourceData, specifica il percorso /mnt/nfs/sourceData dall'istanza VM di addestramento.

    Per ulteriori informazioni, vedi Dove specificare le risorse di computing.

Esempio: creare un job personalizzato utilizzando gcloud CLI

  1. Segui i passaggi descritti in Creare un'applicazione di addestramento Python per un container predefinito per creare un'applicazione di addestramento da eseguire su Vertex AI.

  2. Crea un file denominato config.yaml che descriva la rete e NFS le impostazioni di montaggio per il job di addestramento. Utilizza il formato seguente:

    network: projects/PROJECT_NUMBER/global/networks/NETWORK_NAME
    workerPoolSpecs:
        - machineSpec:
            machineType: MACHINE_TYPE
          replicaCount: 1
          pythonPackageSpec:
            executorImageUri: PYTHON_PACKAGE_EXECUTOR_IMAGE_URI or PRE_BUILT_CONTAINER_IMAGE_URI
            packageUris:
              -  PYTHON_PACKAGE_URIS
            pythonModule: PYTHON_MODULE
          nfsMounts:
            - server: NFS_SERVER_IP
              path: NFS_SHARE_NAME
              mountPoint: LOCAL_FOLDER
    

    Sostituisci quanto segue:

    • PROJECT_NUMBER: l'ID del tuo progetto Google Cloud.

    • NETWORK_NAME: il nome del tuo VPC privato o condiviso.

    • MACHINE_TYPE: l'identificatore del tipo di macchina virtuale.

    • PYTHON_PACKAGE_EXECUTOR_IMAGE_URI or PRE_BUILT_CONTAINER_IMAGE_URI: L'URI di un'immagine container inArtifact Registry che eseguirà il un pacchetto Python. Vertex AI fornisce un Ampia gamma di immagini esecutore con pacchetti preinstallati per soddisfare le esigenze per diversi casi d'uso.

    • PYTHON_PACKAGE_URIS: un elenco separato da virgole di URI di Cloud Storage che specificano i file del pacchetto Python che costituiscono il programma di addestramento e i relativi pacchetti dipendenti. Il numero massimo di URI dei pacchetti è 100.

    • PYTHON_MODULE: il nome del modulo Python da eseguire dopo l'installazione dei pacchetti.

    • NFS_SERVER_IP: l'indirizzo IP del server NFS.

    • NFS_SHARE_NAME: il percorso di condivisione NFS, ovvero percorso assoluto che inizia con /.

    • LOCAL_FOLDER: il punto di montaggio locale (nome della directory UNIX).

    Assicurati che il nome della rete sia formattato correttamente e che la chiave NFS condivisione esistente nella rete specificata.

  3. Crea il tuo job personalizzato e passa il file config.yaml al parametro --config.

    gcloud ai custom-jobs create \
      --region=LOCATION \
      --display-name=JOB_NAME \
      --config=config.yaml
    

    Sostituisci quanto segue:

    • LOCATION: specifica la regione in cui creare il job.

    • JOB_NAME: nome del job personalizzato.

Limitazioni

  • Devi montare la condivisione NFS utilizzando un indirizzo IP interno al tuo VPC; non è consentito utilizzare URL pubblici.

  • I job di addestramento montano le condivisioni NFS senza autenticazione e non riusciranno se sono richiesti nome utente e password.

    Per proteggere i tuoi dati, imposta le autorizzazioni sulla condivisione NFS. Se utilizzi Filestore, consulta la sezione sul controllo dell'accesso nella documentazione di Filestore.

  • Non puoi eseguire due job di addestramento che montano condivisioni NFS da diversi reti VPC contemporaneamente. Ciò è dovuto alla limitazione del peering di rete.