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á.
Notas de lançamento da biblioteca de SageMaker paralelismo de modelos
Consulte as notas de versão a seguir para acompanhar as atualizações mais recentes da biblioteca SageMaker model parallelism ()SMP. Se você tiver mais perguntas sobre a SMP biblioteca, entre em contato com a equipe SMP de serviço emsm-model-parallel-feedback@amazon.com
.
A biblioteca de paralelismo de SageMaker modelos v2.5.0
Data: 28 de agosto de 2024
SMPatualizações da biblioteca
Novos atributos
-
Foi adicionado suporte para treinamento de precisão mista usando formato de FP8 dados em instâncias P5 para o modelo Mixtral.
-
As configurações Mixtral suportadas são 8x7B e 8x22B. Para saber mais, consulte Treinamento misto de precisão com FP8 instâncias P5 usando o Transformer Engine.
-
-
Foi adicionado suporte Paralelismo de contexto para as seguintes configurações de modelo.
-
Llama-v2:7B e 70B
-
Llama-v3:8B e 70B
-
GPT-NeoX: 20B
-
-
Foi adicionado suporte para salvar pontos de verificação de forma assíncrona. Para saber mais, consulte Ponto de verificação usando SMP.
-
Support para salvar pontos de verificação diretamente no S3 sem usar a Amazon EBS ou servidores de arquivos.
-
Correções de erros
-
Resolveu um problema que causava uma perda inicial inesperadamente alta durante o ajuste fino do Llama ao carregar um ponto de verificação de modelo pré-treinado e utilizar o paralelismo de tensores.
Observações
-
Para usar o ponto de verificação de ativação do Mixtral com precisão FP8 mista, você precisará verificar as camadas de atenção e especialista separadamente. Para ver um exemplo de como configurá-lo corretamente, consulte o exemplo de script de treinamento
no repositório Amazon SageMaker Examples.
Problemas conhecidos
-
O tipo de balanceamento de carga balanceado na configuração MoE (torch.sagemaker.moe.moe_config.MoEConfig) atualmente é incompatível com o ponto de verificação de ativação.
-
Com o paralelismo de contexto, GPT -NeoX mostra regressão de desempenho tanto no pré-treinamento quanto no ajuste fino.
-
Para GPT -NeoX em instâncias P4, carregar pesos diretamente de um modelo transformado inicializado com parâmetros atrasados em um modelo de transformador Hugging Face leva a uma incompatibilidade de perdas na primeira etapa.
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Se você usar a classe PyTorch estimador no SageMaker Python SDK e especificar a configuração de distribuição para usar a SMP v2, SageMaker selecionará automaticamente os contêineres do Docker. SMP Para usar essa versão da SMP v2, atualize seu SageMaker SDK Python para a v2.224.0 ou posterior.
Atualizações de moeda
-
Atualizou a FlashAttention biblioteca para v2.5.8
-
Atualizou a biblioteca do Transformer Engine para v1.8
Detalhes do contêiner
-
SMPContêiner Docker para PyTorch v2.3.1 com v12.1 CUDA
658645717510.dkr.ecr.
<region>
.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121Para obter uma lista completa das regiões compatíveis, consulte Regiões da AWS.
-
Pacotes pré-instalados
-
A SMP biblioteca v2.5.0
-
A SMDDP biblioteca v2.3.0
-
CUDNNv8.9.7.29
-
FlashAttention v2.5.8
-
TransformerEngine v1.8
-
Megatron v0.7.0
-
Transformadores Hugging Face v4.40.1
-
Biblioteca de conjuntos de dados Hugging Face v2.19.0
-
EFAv1.32.0
-
NCCLv2.21.5
-
SMPCanal Conda
O bucket S3 a seguir é o canal público Conda da SMP biblioteca hospedada pela equipe de SMP serviço. Se você quiser instalar a biblioteca SMP v2 em um ambiente de recursos computacionais altamente personalizáveis, como SageMaker HyperPod clusters, use esse canal Conda para instalar adequadamente a biblioteca. SMP
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Para obter mais informações sobre os canais do Conda em geral, consulte Canais
A biblioteca de paralelismo de SageMaker modelos v2.4.0
Data: 20 de junho de 2024
SMPatualizações da biblioteca
Correções de erros
-
Corrigido um erro que causa formas incorretas de logit quando os rótulos não são passados na passagem para frente ao usar o SMP Transformer.
Atualizações de moeda
-
Foi adicionado suporte para PyTorch v2.3.1.
-
Foi adicionado suporte para Python v3.11.
-
Foi adicionado suporte para a biblioteca Hugging Face Transformers v4.40.1.
Depreciações
-
Suporte descontinuado para Python v3.10.
-
Suporte descontinuado para as versões da biblioteca Hugging Face Transformers anteriores à v4.40.1.
Outras mudanças
-
Incluiu um patch para ativar o salvamento de tensores desduplicados em diferentes níveis. Para saber mais, consulte o tópico de discussão
no PyTorch GitHub repositório.
Problemas conhecidos
-
Há um problema conhecido de que a perda pode aumentar e, em seguida, retomar com um valor de perda mais alto enquanto ajusta o Llama-3 70B com paralelismo de tensores.
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Se você usar a classe PyTorch estimador no SageMaker Python SDK e especificar a configuração de distribuição para usar a SMP v2, SageMaker selecionará automaticamente os contêineres do Docker. SMP Para usar essa versão da SMP v2, atualize seu SageMaker SDK Python para a v2.224.0 ou posterior.
Atualizações de moeda
-
Atualizou a SMDDP biblioteca para a v2.3.0.
-
Atualizou a NCCL biblioteca para a v2.21.5.
-
Atualizou o EFA software para v1.32.0.
Depreciações
-
A instalação da biblioteca Torch Distributed Experimental (TorchDistX
) foi interrompida.
Detalhes do contêiner
-
SMPContêiner Docker para PyTorch v2.3.1 com v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.3.1-gpu-py311-cu121 -
Pacotes pré-instalados
-
A SMP biblioteca v2.4.0
-
A SMDDP biblioteca v2.3.0
-
CUDNNv8.9.7.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformadores Hugging Face v4.40.1
-
Biblioteca de conjuntos de dados Hugging Face v2.19.0
-
EFAv1.32.0
-
NCCLv2.21.5
-
SMPCanal Conda
O bucket S3 a seguir é o canal público Conda da SMP biblioteca hospedada pela equipe de SMP serviço. Se você quiser instalar a biblioteca SMP v2 em um ambiente de recursos computacionais altamente personalizáveis, como SageMaker HyperPod clusters, use esse canal Conda para instalar adequadamente a biblioteca. SMP
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Para obter mais informações sobre os canais do Conda em geral, consulte Canais
A biblioteca de paralelismo de SageMaker modelos v2.3.1
Data: 9 de maio de 2024
Correções de erros
-
Corrigido um
ImportError
problema ao usarmoe_load_balancing=balanced
in torch.sagemaker.moe.moe_config.MoEConfig para paralelismo especializado. -
Corrigido um problema de ajuste fino em que a torch.sagemaker.transform chamada era gerada
KeyError
quandoload_state_dict_from_rank0
ativada. -
Corrigido um erro out-of-memory (OOM) gerado ao carregar modelos grandes do Mixture of Experts (MoE), como o Mixtral 8x22B, para ajuste fino.
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Esta versão incorpora as correções de bugs mencionadas acima na imagem Docker a seguirSMP.
-
SMPContêiner Docker para PyTorch v2.2.0 com v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121
A biblioteca de paralelismo de SageMaker modelos v2.3.0
Data: 11 de abril de 2024
Novos atributos
-
Foi adicionado um novo recurso principal, o paralelismo especializado, para oferecer suporte aos modelos de transformadores Mixture of Experts. Para saber mais, consulte Paralelismo especializado.
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Se você usar a classe PyTorch estimador no SageMaker Python SDK e especificar a configuração de distribuição para usar a SMP v2, SageMaker selecionará automaticamente os contêineres do Docker. SMP Para usar essa versão da SMP v2, atualize seu SageMaker SDK Python para a v2.214.4 ou posterior.
-
SMPContêiner Docker para PyTorch v2.2.0 com v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121-
Pacotes pré-instalados neste contêiner Docker
-
A SMDDP biblioteca v2.2.0
-
CUDNNv8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformadores Hugging Face v4.37.1
-
Biblioteca de conjuntos de dados Hugging Face v2.16.1
-
Megatron Core 0.5.0
-
EFAv1.30.0
-
NCCLv2.19.4
-
-
A biblioteca de paralelismo de SageMaker modelos v2.2.0
Data: 7 de março de 2024
Novos recursos
-
Foi adicionado suporte para o FP8treinamento dos seguintes modelos de transformadores Hugging Face em instâncias P5 com integração com o Transformer Engine:
-
GPT-NeoX
-
Lhama 2
-
Correções de bugs
-
Corrigido um bug em que não era garantido que os tensores fossem contíguos antes da chamada
AllGather
coletiva durante o treinamento de paralelismo de tensores.
Atualizações de moeda
-
Foi adicionado suporte para PyTorch v2.2.0.
-
Atualizou a SMDDP biblioteca para a v2.2.0.
-
Atualizou a FlashAttention biblioteca para a v2.3.3.
-
Atualizou a NCCL biblioteca para a v2.19.4.
Depreciação
-
Suporte descontinuado para versões do Transformer Engine anteriores à v1.2.0.
Problemas conhecidos
-
O SMP Ativação e descarregamento recurso atualmente não funciona. Em vez disso, use o descarregamento de PyTorch ativação nativo.
Outras mudanças
-
Incluiu um patch para corrigir a regressão de desempenho discutida no tópico do problema em https://github.com/pytorch/pytorch/issues/117748
no repositório. PyTorch GitHub
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Se você usar a classe PyTorch estimador no SageMaker Python SDK e especificar a configuração de distribuição para usar a SMP v2, SageMaker selecionará automaticamente os contêineres do Docker. SMP Para usar essa versão da SMP v2, atualize seu SageMaker SDK Python para a v2.212.0 ou posterior.
-
SMPContêiner Docker para PyTorch v2.2.0 com v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.2.0-gpu-py310-cu121-
Disponível para instâncias P4d, P4de e P5
-
Pacotes pré-instalados neste contêiner Docker
-
A SMDDP biblioteca v2.2.0
-
CUDNNv8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformadores Hugging Face v4.37.1
-
Biblioteca de conjuntos de dados Hugging Face v2.16.1
-
EFAv1.30.0
-
NCCLv2.19.4
-
-
A biblioteca de paralelismo de SageMaker modelos v2.1.0
Data: 6 de fevereiro de 2024
Atualizações de moeda
-
Foi adicionado suporte para PyTorch v2.1.2.
Depreciação
-
Suporte descontinuado para Hugging Face Transformers v4.31.0.
Problemas conhecidos
-
Foi descoberto um problema: o ajuste fino do modelo Hugging Face Llama 2 com e faz FSDP com que o
attn_implementation=flash_attention_2
modelo diverja. Para referência, consulte o tíquete de edição no repositórioHugging Face Transformers. GitHub Para evitar o problema de divergência, use. attn_implementation=sdpa
Como alternativa, use a implementação do modelo de SMP transformadoruse_smp_implementation=True
configurando.
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Se você usar a classe PyTorch estimador no SageMaker Python SDK e especificar a configuração de distribuição para usar a SMP v2, SageMaker selecionará automaticamente os contêineres do Docker. SMP Para usar essa versão da SMP v2, atualize seu SageMaker SDK Python para a v2.207.0 ou posterior.
-
SMPContêiner Docker para PyTorch v2.1.2 com v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.1.2-gpu-py310-cu121-
Disponível para instâncias P4d, P4de e P5
-
Pacotes pré-instalados neste contêiner Docker
-
A SMDDP biblioteca v2.1.0
-
CUDNNv8.9.5.29
-
FlashAttention v2.3.3
-
TransformerEngine v1.2.1
-
Transformadores Hugging Face v4.37.1
-
Biblioteca de conjuntos de dados Hugging Face v2.16.1
-
EFAv1.30.0
-
-
SMPCanal Conda
O bucket S3 a seguir é um canal público da Conda hospedado pela equipe de SMP serviço. Se você quiser instalar a biblioteca SMP v2 em um ambiente de recursos computacionais altamente personalizáveis, como SageMaker HyperPod clusters, use esse canal Conda para instalar adequadamente a biblioteca. SMP
-
https://sagemaker-distributed-model-parallel.s3.us-west-2.amazonaws.com/smp-v2/
Para obter mais informações sobre os canais do Conda em geral, consulte Canais
A biblioteca de paralelismo de SageMaker modelos v2.0.0
Data: 19 de dezembro de 2023
Novos atributos
Lançou a biblioteca SageMaker model parallelism (SMP) v2.0.0 com as seguintes novas ofertas.
-
Um novo
torch.sagemaker
pacote, totalmente renovado em relação aosmdistributed.modelparallel.torch
pacote anterior na v1.x. SMP -
Support para PyTorch 2.0.1.
-
Support for PyTorch FSDP.
-
Implementação do paralelismo de tensores por meio da integração com a biblioteca Transformer Engine.
-
Support tanto para SageMaker Training quanto para SageMaker HyperPod.
Alterações significativas
-
SMPA v2 o reformulou APIs completamente e fornece o pacote.
torch.sagemaker
Na maioria das vezes, você só precisa inicializar com otorch.sagemaker.init()
módulo e passar os parâmetros de configuração paralela do modelo. Com esse novo pacote, você pode simplificar significativamente as modificações de código em seu script de treinamento. Para saber mais sobre como adaptar seu script de treinamento para usar a SMP v2, consulte. Use a biblioteca de paralelismo de SageMaker modelos v2 -
Se você usou a SMP v1 para treinar modelos do Hugging Face Transformer e deseja reutilizar os modelos na v2, consulte. SMP Atualize da SMP v1 para a SMP v2
-
Para PyTorch FSDP treinamento, você deve usar a SMP v2.
Problemas conhecidos
-
Atualmente, o ponto de verificação de ativação funciona apenas com as seguintes políticas de empacotamento com. FSDP
-
auto_wrap_policy = functools.partial(transformer_auto_wrap_policy, ...)
-
-
Para usarAtivação e descarregamento, o tipo FSDP de ponto de verificação de ativação deve ser REENTRANT
. -
Ao executar com o tensor parallel habilitado com o grau paralelo de dados fragmentados definido como
1
, você deve usar.backend = nccl
A opçãosmddp
de back-end não é suportada nesse cenário. -
É necessário usar o Transformer Engine
PyTorch com a SMP biblioteca mesmo quando não está usando o paralelismo de tensores.
Outras mudanças
-
A partir desta versão, a documentação da biblioteca de paralelismo de SageMaker modelos está totalmente disponível neste Guia do desenvolvedor da Amazon SageMaker . Em favor deste guia completo do desenvolvedor para SMP v2 no Amazon SageMaker Developer Guide, a referência adicional para SMP v1.x
na documentação do SageMaker SDKPython está obsoleta. Se você ainda precisar da documentação da SMP v1.x, o guia do desenvolvedor da v1.x está disponível em, Biblioteca de paralelismo de SageMaker modelos (arquivada) v1.x e a referência da biblioteca Python SMP v1.x está disponível na documentação do SMP Python v2.199.0. SageMaker SDK
Depreciações
-
Suporte descontinuado para TensorFlow.
-
Não há suporte para paralelismo de pipeline na v2. SMP
-
Não há suporte para a DeepSpeed biblioteca em favor da nativa PyTorchFSDP.
SMPContêiner Docker
A equipe da SMP biblioteca distribui os contêineres do Docker em substituição aos contêineres da SageMaker PyTorch estrutura. Se você usar a classe PyTorch estimador no SageMaker Python SDK e especificar a configuração de distribuição para usar a SMP v2, SageMaker selecionará automaticamente os contêineres do Docker. SMP Para usar essa versão da SMP v2, atualize seu SageMaker SDK Python para a v2.207.0 ou posterior.
-
SMPContêiner Docker para PyTorch v2.0.1 com v12.1 CUDA
658645717510.dkr.ecr.
us-west-2
.amazonaws.com/smdistributed-modelparallel:2.0.1-gpu-py310-cu121