GitHub archivi - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

GitHub archivi

Per avviare un processo di formazione, si utilizzano file provenienti da due archivi distinti GitHub:

Questi repository contengono componenti essenziali per l’avvio, la gestione e la personalizzazione dei job di addestramento dei modelli linguistici di grandi dimensioni (LLM). Utilizzate gli script dei repository per configurare ed eseguire i lavori di formazione per i vostri. LLMs

HyperPod archivio di ricette

Usa l'archivio delle SageMaker HyperPod ricette per ottenere una ricetta.

  1. main.py: Questo file funge da punto di ingresso principale per l'avvio del processo di invio di un lavoro di formazione a un cluster o a un processo di formazione. SageMaker

  2. launcher_scripts: Questa directory contiene una raccolta di script di uso comune progettati per facilitare il processo di formazione per vari Large Language Models (). LLMs

  3. recipes_collection: questa cartella contiene una raccolta di ricette LLM predefinite fornite dagli sviluppatori. Gli utenti possono sfruttare queste ricette insieme ai propri dati personalizzati per addestrare modelli LLM personalizzati in base alle loro esigenze specifiche.

Le SageMaker HyperPod ricette vengono utilizzate per avviare attività di formazione o perfezionamento. Indipendentemente dal cluster che stai utilizzando, il processo di invio del processo è lo stesso. Ad esempio, puoi utilizzare lo stesso script per inviare un processo a un cluster Slurm o Kubernetes. L’utilità di avvio invia un job di addestramento in base a tre file di configurazione:

  1. Configurazione generale (config.yaml): include impostazioni comuni come i parametri predefiniti o le variabili di ambiente utilizzate nel job di addestramento.

  2. Configurazione del cluster (cluster): per i job di addestramento che utilizzano solo i cluster. Se stai inviando un job di addestramento a un cluster Kubernetes, potresti dover specificare informazioni come volume, etichetta o policy di riavvio. Per i cluster Slurm, potrebbe essere necessario specificare il nome del processo Slurm. Tutti i parametri sono correlati al cluster specifico che stai utilizzando.

  3. Ricetta (ricette): le ricette contengono le impostazioni per il job di addestramento, come i tipi di modello, il grado di sharding o i percorsi dei set di dati. Ad esempio, puoi specificare Llama come modello di addestramento e addestrarlo utilizzando tecniche di parallelizzazione del modello o dei dati come Fully Sharded Distributed Parallel (FSDP) su otto computer. Puoi anche specificare frequenze o percorsi di checkpoint diversi per il tuo job di addestramento.

Dopo aver specificato una ricetta, esegui lo script di avvio per specificare un processo di end-to-end formazione su un cluster in base alle configurazioni tramite il punto di ingresso. main.py Per ogni ricetta che utilizzi, sono disponibili script shell di accompagnamento nella cartella launch_scripts. Questi esempi ti guidano nelle procedure di invio e avvio dei job di addestramento. La figura seguente illustra come un lanciatore di SageMaker HyperPod ricette invia un processo di formazione a un cluster in base a quanto sopra. Attualmente, il lanciatore di SageMaker HyperPod ricette è basato su Nvidia Framework Launcher. NeMo Per ulteriori informazioni, consulta NeMo Launcher Guide.

Diagramma che illustra il flusso di lavoro del programma di avvio delle HyperPod ricette. Sulla sinistra, all’interno di una casella tratteggiata, ci sono tre icone di file denominate “Ricetta”, “config.yaml” e “slurm.yaml o k8s.yaml o sm_job.yaml (configurazione cluster)”. Una freccia punta da questo riquadro verso una casella centrale denominata "Recipe Launcher»HyperPod . Da questa casella centrale, un’altra freccia punta a destra verso “Job di addestramento”, con “main.py” scritto sopra la freccia.

HyperPod archivio di adattatori per ricette

L'adattatore SageMaker HyperPod di formazione è un framework di formazione. Puoi utilizzarlo per gestire l’intero ciclo di vita dei tuoi job di addestramento. Utilizza l’adattatore per implementare il preaddestramento o il fine-tuning dei modelli in più computer. L’adattatore utilizza diverse tecniche di parallelizzazione per distribuire l’addestramento. Gestisce anche l’implementazione e la gestione del salvataggio dei checkpoint. Per ulteriori dettagli, consultare Impostazioni avanzate.

Usa il repository degli adattatori per SageMaker HyperPod ricette per utilizzare l'adattatore per ricette.

  1. src: questa directory contiene l’implementazione dell’addestramento dei modelli linguistici di grandi dimensioni (LLM), che comprende varie funzionalità come la parallelizzazione del modello, l’addestramento di precisione misto e la gestione dei checkpoint.

  2. examples: questa cartella fornisce una raccolta di esempi che mostrano come creare un punto di ingresso per l’addestramento di un modello LLM e funge da guida pratica per gli utenti.