Inviare un processo di personalizzazione del modello per il fine-tuning o il pre-addestramento continuo - Amazon Bedrock

Inviare un processo di personalizzazione del modello per il fine-tuning o il pre-addestramento continuo

Per creare un modello personalizzato, utilizzare il fine-tuning o il pre-addestramento continuo nella console o nell’API Amazon Bedrock. È possibile eseguire un ulteriore fine-tuning di un modello personalizzato esistente. Il processo di personalizzazione può richiedere anche alcune ore. La durata del processo dipende dalla dimensione dei dati di addestramento (numero di record, token di input e token di output), dal numero di epoch e dalla dimensione del batch.

Prerequisiti

Inviare il processo

Scegli la scheda relativa al metodo che preferisci, quindi segui la procedura:

Console

Per inviare un processo di personalizzazione del modello nella console, attieniti alla procedura descritta di seguito.

  1. Accedi alla Console di gestione AWS con un’identità IAM che disponga delle autorizzazioni per utilizzare la console Amazon Bedrock. Quindi, apri la console Amazon Bedrock all’indirizzo https://console.aws.amazon.com/bedrock.

  2. Nel riquadro di navigazione a sinistra, scegli Modelli personalizzati in Ottimizza.

  3. Nella scheda Modelli, scegli Personalizza il modello e poi Crea un processo di fine-tuning o Crea un processo di pre-addestramento continuo, a seconda del modello da addestrare.

  4. Nella sezione Dettagli modello, procedi come segue.

    1. Scegli il modello che vuoi personalizzare con i tuoi dati e assegna un nome al modello risultante. Come modello base puoi scegliere un modello di fondazione o un modello precedentemente personalizzato (ottimizzato o distillato).

    2. (Facoltativo) Per impostazione predefinita, Amazon Bedrock crittografa il modello con una chiave di proprietà e gestita da AWS. Per utilizzare una chiave KMS personalizzata, seleziona Crittografia del modello e scegli una chiave.

    3. (Facoltativo) Per associare tag al modello personalizzato, espandi la sezione Tag se seleziona Aggiungi nuovo tag.

  5. Nella sezione Configurazione del processo, inserisci un nome per il processo e aggiungi eventuali tag da associare al processo.

  6. (Facoltativo) Per utilizzare un cloud privato virtuale (VPC) per proteggere i dati di addestramento e il processo di personalizzazione, nella sezione Impostazioni VPC seleziona un VPC che contenga le posizioni Amazon S3 dei dati di input e output, le relative sottoreti e i gruppi di sicurezza.

    Nota

    Se il processo include la configurazione di un VPC, la console non può creare un nuovo ruolo di servizio per il processo. Crea un ruolo di servizio personalizzato e aggiungi autorizzazioni simili all’esempio descritto in Associare le autorizzazioni VPC a un ruolo di personalizzazione del modello.

  7. Nella sezione Dati di input, seleziona la posizione S3 del file del set di dati di addestramento e, se applicabile, del file del set di dati di convalida.

  8. Nella sezione Iperparametri, inserisci i valori per gli iperparametri da utilizzare durante l’addestramento.

  9. Nella sezione Dati di output, inserisci la posizione Amazon S3 in cui Amazon Bedrock deve salvare l’output del processo. Amazon Bedrock archivia le metriche di perdita di addestramento e di convalida per ogni epoch in file separati, nella posizione che specifichi.

  10. Nella sezione Accesso al servizio, seleziona una delle seguenti opzioni:

    • Usa un ruolo di servizio esistente: seleziona un ruolo di servizio nell’elenco a discesa. Per ulteriori informazioni sulla configurazione di un ruolo personalizzato con le autorizzazioni appropriate, consulta Creazione di un ruolo di servizio per la personalizzazione del modello.

    • Crea e usa un nuovo ruolo di servizio: immetti un nome per il ruolo di servizio.

  11. Scegli Ottimizza il modello o Crea un processo di pre-addestramento continuo per iniziare il processo.

API

Richiesta

Invia una richiesta CreateModelCustomizationJob (consulta il link per i formati di richiesta e risposta e i dettagli dei campi) con un endpoint del piano di controllo (control-plane) Amazon Bedrock per inviare un processo di personalizzazione del modello. Devi specificare almeno i seguenti campi:

  • roleArn: l’ARN del ruolo di servizio con le autorizzazioni per personalizzare i modelli. Amazon Bedrock può creare automaticamente un ruolo con le autorizzazioni appropriate se utilizzi la console oppure puoi creare un ruolo personalizzato seguendo la procedura indicata in Creazione di un ruolo di servizio per la personalizzazione del modello.

    Nota

    Se includi un campo vpcConfig, assicurati che il ruolo abbia le autorizzazioni appropriate per accedere al VPC. Per un esempio, consulta Associare le autorizzazioni VPC a un ruolo di personalizzazione del modello.

  • baseModelIdentifier: l’ID modello o l’ARN del modello di fondazione o del modello precedentemente personalizzato (ottimizzato o distillato) da personalizzare.

  • customModelName: il nome da assegnare al modello appena personalizzato.

  • jobName: il nome da assegnare al job di addestramento.

  • hyperParameters: gli iperparametri che influiscono sul processo di personalizzazione del modello.

  • trainingDataConfig: un oggetto contenente l’URI di Amazon S3 per il set di dati di addestramento. A seconda del metodo e del modello di personalizzazione, puoi includere anche un validationDataConfig. Per ulteriori informazioni sulla preparazione dei set di dati, consulta Preparazione dei set di dati di addestramento per il fine-tuning e il pre-addestramento continuo.

  • validationDataconfig: un oggetto contenente l’URI di Amazon S3 per il set di dati di convalida.

  • outputDataConfig: un oggetto contenente l’URI di Amazon S3 in cui scrivere il set di dati di output.

Se non specifichi il customizationType, il metodo di personalizzazione del modello predefinito è FINE_TUNING.

Per evitare che la richiesta venga completata più di una volta, includi un clientRequestToken.

Puoi includere i seguenti campi facoltativi per ulteriori configurazioni.

Risposta

La risposta restituisce un jobArn che puoi utilizzare per monitorare o interrompere il processo.

Vedi esempi di codice