As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
GitHub repositórios
Para iniciar um trabalho de treinamento, você utiliza arquivos de dois GitHub repositórios distintos:
Esses repositórios contêm componentes essenciais para iniciar, gerenciar e personalizar os processos de treinamento do Large Language Model (LLM). Você usa os scripts dos repositórios para configurar e executar os trabalhos de treinamento para o seu LLMs.
HyperPod repositório de receitas
Use o repositório de SageMaker HyperPod receitas
-
main.py
: esse arquivo serve como ponto de entrada principal para iniciar o processo de envio de um trabalho de treinamento para um cluster ou um trabalho de SageMaker treinamento. -
launcher_scripts
: Esse diretório contém uma coleção de scripts comumente usados, projetados para facilitar o processo de treinamento de vários modelos de linguagem grande (LLMs). -
recipes_collection
: essa pasta contém uma compilação de receitas LLM predefinidas fornecidas pelos desenvolvedores. Os usuários podem aproveitar essas receitas em conjunto com seus dados personalizados para treinar modelos de LLM adaptados às suas necessidades específicas.
Você usa as SageMaker HyperPod receitas para iniciar trabalhos de treinamento ou de ajuste fino. Independentemente do cluster que você está usando, o processo de envio do trabalho é o mesmo. Por exemplo, você pode usar o mesmo script para enviar um trabalho para um cluster Slurm ou Kubernetes. O lançador envia um trabalho de treinamento com base em três arquivos de configuração:
-
Configuração geral (
config.yaml
): inclui configurações comuns, como os parâmetros padrão ou variáveis de ambiente usadas no trabalho de treinamento. -
Configuração de cluster (cluster): para trabalhos de treinamento usando somente clusters. Se você estiver enviando um trabalho de treinamento para um cluster Kubernetes, talvez seja necessário especificar informações como volume, rótulo ou política de reinicialização. Para clusters do Slurm, talvez seja necessário especificar o nome do trabalho do Slurm. Todos os parâmetros estão relacionados ao cluster específico que você está usando.
-
Receita (receitas): as receitas contêm as configurações do seu trabalho de treinamento, como tipos de modelo, grau de fragmentação ou caminhos do conjunto de dados. Por exemplo, você pode especificar o Llama como seu modelo de treinamento e treiná-lo usando técnicas de paralelismo de modelos ou dados, como Fully Sharded Distributed Parallel (FSDP) em oito máquinas. Você também pode especificar diferentes frequências ou caminhos de pontos de verificação para seu trabalho de treinamento.
Depois de especificar uma receita, você executa o script do lançador para especificar um trabalho de end-to-end treinamento em um cluster com base nas configurações por meio do main.py
ponto de entrada. Para cada receita que você usa, há scripts de shell associados localizados na pasta launch_scripts. Esses exemplos orientam você a enviar e iniciar trabalhos de treinamento. A figura a seguir ilustra como um lançador de SageMaker HyperPod receitas envia um trabalho de treinamento para um cluster com base no anterior. Atualmente, o lançador de SageMaker HyperPod receitas é construído sobre o Nvidia NeMo Framework Launcher. Para obter mais informações, consulte o Guia do NeMo Launcher

HyperPod repositório de adaptadores de receitas
O adaptador SageMaker HyperPod de treinamento é uma estrutura de treinamento. Você pode usá-lo para gerenciar todo o ciclo de vida de seus trabalhos de treinamento. Use o adaptador para distribuir o pré-treinamento ou o ajuste fino de seus modelos em várias máquinas. O adaptador usa diferentes técnicas de paralelismo para distribuir o treinamento. Ele também lida com a implementação e o gerenciamento do salvamento dos pontos de verificação. Consulte mais detalhes em Configurações avançadas.
Use o repositório do adaptador de SageMaker HyperPod receita
-
src
: Esse diretório contém a implementação do treinamento de Modelo de Linguagem em Grande Escala (LLM), abrangendo vários recursos, como paralelismo de modelos, treinamento de precisão mista e gerenciamento de pontos de verificação. -
examples
: esta pasta fornece uma coleção de exemplos que demonstram como criar um ponto de entrada para treinar um modelo LLM, servindo como um guia prático para os usuários.