Skip to content

Commit a528b75

Browse files
jla524AlanPonnachan
authored andcommitted
Update translated docs for sdpa_kernel (huggingface#35461)
* docs: update sdpa_kernel for translation * fix: nn.attention * update: infer many
1 parent 88f438a commit a528b75

File tree

2 files changed

+17
-13
lines changed

2 files changed

+17
-13
lines changed

docs/source/ja/perf_infer_gpu_many.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ BetterTransformerは、テキスト、画像、音声モデルの単一GPUおよ
3434
<Tip>
3535

3636
Flash Attentionは、fp16またはbf16 dtypeを使用しているモデルにのみ使用できます。BetterTransformerを使用する前に、モデルを適切なdtypeにキャストしてください。
37-
37+
3838
</Tip>
3939

4040
### Decoder models
@@ -53,11 +53,12 @@ model.to_bettertransformer()
5353
# Use it for training or inference
5454
```
5555

56-
SDPAは、ハードウェアや問題のサイズなどの特定の設定で[Flash Attention](https://arxiv.org/abs/2205.14135)カーネルを呼び出すこともできます。Flash Attentionを有効にするか、特定の設定(ハードウェア、問題のサイズ)で利用可能かを確認するには、[`torch.backends.cuda.sdp_kernel`](https://pytorch.org/docs/master/backends.html#torch.backends.cuda.sdp_kernel)をコンテキストマネージャとして使用します。
56+
SDPAは、ハードウェアや問題のサイズなどの特定の設定で[Flash Attention](https://arxiv.org/abs/2205.14135)カーネルを呼び出すこともできます。Flash Attentionを有効にするか、特定の設定(ハードウェア、問題のサイズ)で利用可能かを確認するには、[`torch.nn.kernel.sdpa_kernel`](https://pytorch.org/docs/stable/generated/torch.nn.attention.sdpa_kernel.html)をコンテキストマネージャとして使用します。
5757

5858

5959
```diff
6060
import torch
61+
+ from torch.nn.attention import SDPBackend, sdpa_kernel
6162
from transformers import AutoModelForCausalLM, AutoTokenizer
6263

6364
tokenizer = AutoTokenizer.from_pretrained("facebook/opt-350m")
@@ -68,7 +69,7 @@ model.to_bettertransformer()
6869
input_text = "Hello my dog is cute and"
6970
inputs = tokenizer(input_text, return_tensors="pt").to("cuda")
7071

71-
+ with torch.backends.cuda.sdp_kernel(enable_flash=True, enable_math=False, enable_mem_efficient=False):
72+
+ with sdpa_kernel(SDPBackend.FLASH_ATTENTION):
7273
outputs = model.generate(**inputs)
7374

7475
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
@@ -105,6 +106,7 @@ BetterTransformerのパフォーマンスの詳細については、この[ブ
105106

106107
```py
107108
import torch
109+
from torch.nn.attention import SDPBackend, sdpa_kernel
108110
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
109111

110112
quantization_config = BitsAndBytesConfig(
@@ -118,7 +120,7 @@ model = AutoModelForCausalLM.from_pretrained("facebook/opt-350m", quantization_c
118120
input_text = "Hello my dog is cute and"
119121
inputs = tokenizer(input_text, return_tensors="pt").to("cuda")
120122

121-
with torch.backends.cuda.sdp_kernel(enable_flash=True, enable_math=False, enable_mem_efficient=False):
123+
with sdpa_kernel(SDPBackend.FLASH_ATTENTION):
122124
outputs = model.generate(**inputs)
123125

124126
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

docs/source/ja/perf_infer_gpu_one.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ model_id = "tiiuae/falcon-7b"
5555
tokenizer = AutoTokenizer.from_pretrained(model_id)
5656

5757
model = AutoModelForCausalLM.from_pretrained(
58-
model_id,
59-
torch_dtype=torch.bfloat16,
58+
model_id,
59+
torch_dtype=torch.bfloat16,
6060
attn_implementation="flash_attention_2",
6161
)
6262
```
@@ -112,7 +112,7 @@ model_id = "tiiuae/falcon-7b"
112112
tokenizer = AutoTokenizer.from_pretrained(model_id)
113113

114114
model = AutoModelForCausalLM.from_pretrained(
115-
model_id,
115+
model_id,
116116
load_in_8bit=True,
117117
attn_implementation="flash_attention_2",
118118
)
@@ -130,7 +130,7 @@ model_id = "tiiuae/falcon-7b"
130130
tokenizer = AutoTokenizer.from_pretrained(model_id)
131131

132132
model = AutoModelForCausalLM.from_pretrained(
133-
model_id,
133+
model_id,
134134
load_in_4bit=True,
135135
attn_implementation="flash_attention_2",
136136
)
@@ -149,7 +149,7 @@ model_id = "tiiuae/falcon-7b"
149149
tokenizer = AutoTokenizer.from_pretrained(model_id)
150150

151151
model = AutoModelForCausalLM.from_pretrained(
152-
model_id,
152+
model_id,
153153
load_in_4bit=True,
154154
attn_implementation="flash_attention_2",
155155
)
@@ -173,7 +173,7 @@ BetterTransformerは、テキスト、画像、およびオーディオモデル
173173
<Tip>
174174

175175
Flash Attentionは、fp16またはbf16のdtypeを使用するモデルにのみ使用できます。BetterTransformerを使用する前に、モデルを適切なdtypeにキャストしてください。
176-
176+
177177
</Tip>
178178

179179
### Encoder models
@@ -214,11 +214,12 @@ model.to_bettertransformer()
214214
# Use it for training or inference
215215
```
216216

217-
SDPAは、ハードウェアや問題のサイズに応じて[Flash Attention](https://arxiv.org/abs/2205.14135)カーネルを使用することもできます。Flash Attentionを有効にするか、特定の設定(ハードウェア、問題サイズ)で使用可能かどうかを確認するには、[`torch.backends.cuda.sdp_kernel`](https://pytorch.org/docs/master/backends.html#torch.backends.cuda.sdp_kernel)をコンテキストマネージャとして使用します。
217+
SDPAは、ハードウェアや問題のサイズに応じて[Flash Attention](https://arxiv.org/abs/2205.14135)カーネルを使用することもできます。Flash Attentionを有効にするか、特定の設定(ハードウェア、問題サイズ)で使用可能かどうかを確認するには、[`torch.nn.attention.sdpa_kernel`](https://pytorch.org/docs/stable/generated/torch.nn.attention.sdpa_kernel.html)をコンテキストマネージャとして使用します。
218218

219219

220220
```diff
221221
import torch
222+
+ from torch.nn.attention import SDPBackend, sdpa_kernel
222223
from transformers import AutoModelForCausalLM, AutoTokenizer
223224

224225
tokenizer = AutoTokenizer.from_pretrained("facebook/opt-350m")
@@ -229,7 +230,7 @@ model.to_bettertransformer()
229230
input_text = "Hello my dog is cute and"
230231
inputs = tokenizer(input_text, return_tensors="pt").to("cuda")
231232

232-
+ with torch.backends.cuda.sdp_kernel(enable_flash=True, enable_math=False, enable_mem_efficient=False):
233+
+ with sdpa_kernel(SDPBackend.FLASH_ATTENTION):
233234
outputs = model.generate(**inputs)
234235

235236
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
@@ -421,6 +422,7 @@ In this example, the first GPU will use 1GB of memory and the second 2GB.
421422

422423
```py
423424
import torch
425+
from torch.nn.attention import SDPBackend, sdpa_kernel
424426
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
425427

426428
quantization_config = BitsAndBytesConfig(
@@ -434,7 +436,7 @@ model = AutoModelForCausalLM.from_pretrained("facebook/opt-350m", quantization_c
434436
input_text = "Hello my dog is cute and"
435437
inputs = tokenizer(input_text, return_tensors="pt").to("cuda")
436438

437-
with torch.backends.cuda.sdp_kernel(enable_flash=True, enable_math=False, enable_mem_efficient=False):
439+
with sdpa_kernel(SDPBackend.FLASH_ATTENTION):
438440
outputs = model.generate(**inputs)
439441

440442
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

0 commit comments

Comments
 (0)