BetterTransformer support training & autocast for all archs #1225
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
WIP, support training for (almost) all archs.
Though for now for encoders we pass
attention_mask
to SDPA, so it will only dispatch to the math path. I tried to use nestedtensor pytorch/pytorch#105913 without much success.We probably should be more flexible to allow to use xformers / Hazy-flash that do support either custom mask or indexing. Or for training, simply ignore the mask.
cc @younesbelkada
Fixes #1081 #952 #971
Still some tests to add / make pass, and precise the doc