Support für FlashAttention - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Support für FlashAttention

Support für FlashAttention ist eine Funktion der Bibliothek, die nur für das verteilte Transformer-Modell gilt, bei dem es sich um ein Transformer-Modell handelt, das smp.DistributedModel()für modellparalleles Training genutzt wird. Diese Funktion ist auch mit Tensor-Parallelität kompatibel.

Die FlashAttentionBibliothek unterstützt nur Modelle, wenn sie auf einen Wert gesetzt attention_head_size ist, der ein Vielfaches von 8 und kleiner als 128 ist. Wenn Sie also einen dezentralen Transformator trainieren und sicherstellen, dass er ordnungsgemäß FlashAttention funktioniert, sollten Sie die Parameter so anpassen, dass die Größe des Aufmerksamkeitskopfs den Anforderungen entspricht. Weitere Informationen finden Sie auch unter Installation und Funktionen im FlashAttention GitHubRepository.

Nehmen wir z. B. an, Sie konfigurieren ein Transformator-Modell mit hidden_width=864 und num_heads=48. Die Kopfgröße von FlashAttention wird berechnet alsattention_head_size = hidden_width / num_heads = 864 / 48 = 18. Um das zu aktivieren FlashAttention, müssen Sie den num_heads Parameter so einstellen 54attention_head_size = hidden_width / num_heads = 864 / 54 = 16, dass das ein Vielfaches von 8 ist.