

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á.

# Support for FlashAttention
<a name="model-parallel-attention-head-size-for-flash-attention"></a>

Support for FlashAttention é um recurso da biblioteca aplicável apenas ao modelo de *transformador distribuído*, que é um modelo de transformador incluído [https://sagemaker.readthedocs.io/en/v2.199.0/api/training/smp_versions/latest/smd_model_parallel_pytorch.html#smdistributed-modelparallel-torch-distributedmodel](https://sagemaker.readthedocs.io/en/v2.199.0/api/training/smp_versions/latest/smd_model_parallel_pytorch.html#smdistributed-modelparallel-torch-distributedmodel)para treinamento paralelo de modelos. Esse atributo também é compatível com [Paralelismo de tensores](model-parallel-extended-features-pytorch-tensor-parallelism.md). 

A [FlashAttention](https://github.com/HazyResearch/flash-attention)biblioteca só oferece suporte a modelos quando `attention_head_size` é definida com um valor múltiplo de 8 e menor que 128. Portanto, ao treinar um transformador distribuído e garantir que ele FlashAttention funcione corretamente, você deve ajustar os parâmetros para que o tamanho da cabeça de atenção atenda aos requisitos. Para obter mais informações, consulte também [Instalação e recursos](https://github.com/HazyResearch/flash-attention#installation-and-features) no *FlashAttention GitHubrepositório.*

Por exemplo, suponha que você configure um modelo Transformador com `hidden_width=864` e `num_heads=48`. O tamanho da cabeça de FlashAttention é calculado como`attention_head_size = hidden_width / num_heads = 864 / 48 = 18`. Para habilitar FlashAttention, você precisa ajustar o `num_heads` parâmetro para`54`, de forma que `attention_head_size = hidden_width / num_heads = 864 / 54 = 16` seja um múltiplo de 8.