Repository: huggingface/transformers
Pull request #35472 (2025-01-01 00:48:51)

Use `sdpa_kernel` in tests
# What does this PR do?

Addresses #34411 (issue)

## Who can review?

@ArthurZucker 


Patch:
diff --git a/src/transformers/agents/agent_types.py b/src/transformers/agents/agent_types.py
index f5be746265..75973777b9 100644
--- a/src/transformers/agents/agent_types.py
+++ b/src/transformers/agents/agent_types.py
@@ -19,7 +19,7 @@ import uuid
 
 import numpy as np
 
-from ..utils import is_soundfile_availble, is_torch_available, is_vision_available, logging
+from ..utils import is_soundfile_available, is_torch_available, is_vision_available, logging
 
 
 logger = logging.get_logger(__name__)
@@ -36,7 +36,7 @@ if is_torch_available():
 else:
     Tensor = object
 
-if is_soundfile_availble():
+if is_soundfile_available():
     import soundfile as sf
 
 
@@ -179,7 +179,7 @@ class AgentAudio(AgentType, str):
     def __init__(self, value, samplerate=16_000):
         super().__init__(value)
 
-        if not is_soundfile_availble():
+        if not is_soundfile_available():
             raise ImportError("soundfile must be installed in order to handle audio.")
 
         self._path = None
diff --git a/src/transformers/file_utils.py b/src/transformers/file_utils.py
index 2d9477727e..c13d506a61 100644
--- a/src/transformers/file_utils.py
+++ b/src/transformers/file_utils.py
@@ -105,7 +105,7 @@ from .utils import (
     is_sentencepiece_available,
     is_seqio_available,
     is_sklearn_available,
-    is_soundfile_availble,
+    is_soundfile_available,
     is_spacy_available,
     is_speech_available,
     is_tensor,
diff --git a/src/transformers/utils/__init__.py b/src/transformers/utils/__init__.py
index 74b6d39fda..641899eb27 100755
--- a/src/transformers/utils/__init__.py
+++ b/src/transformers/utils/__init__.py
@@ -189,7 +189,7 @@ from .import_utils import (
     is_sentencepiece_available,
     is_seqio_available,
     is_sklearn_available,
-    is_soundfile_availble,
+    is_soundfile_available,
     is_spacy_available,
     is_speech_available,
     is_sudachi_available,
diff --git a/src/transformers/utils/import_utils.py b/src/transformers/utils/import_utils.py
index f880535dd6..5d18c5568a 100755
--- a/src/transformers/utils/import_utils.py
+++ b/src/transformers/utils/import_utils.py
@@ -1159,7 +1159,7 @@ def is_training_run_on_sagemaker():
     return "SAGEMAKER_JOB_NAME" in os.environ
 
 
-def is_soundfile_availble():
+def is_soundfile_available():
     return _soundfile_available
 
 


Test patch:
diff --git a/src/transformers/testing_utils.py b/src/transformers/testing_utils.py
index 00a7ee5966..6890a53688 100644
--- a/src/transformers/testing_utils.py
+++ b/src/transformers/testing_utils.py
@@ -116,7 +116,7 @@ from .utils import (
     is_scipy_available,
     is_sentencepiece_available,
     is_seqio_available,
-    is_soundfile_availble,
+    is_soundfile_available,
     is_spacy_available,
     is_sudachi_available,
     is_sudachi_projection_available,
@@ -1122,7 +1122,7 @@ def require_soundfile(test_case):
     These tests are skipped when soundfile isn't installed.
 
     """
-    return unittest.skipUnless(is_soundfile_availble(), "test requires soundfile")(test_case)
+    return unittest.skipUnless(is_soundfile_available(), "test requires soundfile")(test_case)
 
 
 def require_deepspeed(test_case):
diff --git a/tests/agents/test_agent_types.py b/tests/agents/test_agent_types.py
index 168ab1bbc9..5b54c83d0a 100644
--- a/tests/agents/test_agent_types.py
+++ b/tests/agents/test_agent_types.py
@@ -20,13 +20,13 @@ from pathlib import Path
 
 from transformers.agents.agent_types import AgentAudio, AgentImage, AgentText
 from transformers.testing_utils import get_tests_dir, require_soundfile, require_torch, require_vision
-from transformers.utils import is_soundfile_availble, is_torch_available, is_vision_available
+from transformers.utils import is_soundfile_available, is_torch_available, is_vision_available
 
 
 if is_torch_available():
     import torch
 
-if is_soundfile_availble():
+if is_soundfile_available():
     import soundfile as sf
 
 if is_vision_available():
diff --git a/tests/test_modeling_common.py b/tests/test_modeling_common.py
index 929bbb13a5..708a3a54e3 100755
--- a/tests/test_modeling_common.py
+++ b/tests/test_modeling_common.py
@@ -4255,7 +4255,7 @@ class ModelTesterMixin:
                     if isinstance(inp, torch.Tensor) and inp.dtype in [torch.float32, torch.float16]:
                         inputs_dict[name] = inp.to(torch.float16)
 
-                with torch.backends.cuda.sdp_kernel(enable_flash=True, enable_math=False, enable_mem_efficient=False):
+                with sdpa_kernel(enable_flash=True, enable_math=False, enable_mem_efficient=False):
                     _ = model(**inputs_dict)
 
     @require_non_xpu
@@ -4347,11 +4347,7 @@ class ModelTesterMixin:
                 model_sdpa = model_sdpa.eval()
 
                 with torch.no_grad():
-                    with torch.backends.cuda.sdp_kernel(
-                        enable_flash=False,
-                        enable_math=True,
-                        enable_mem_efficient=False,
-                    ):
+                    with sdpa_kernel(enable_flash=False, enable_math=True, enable_mem_efficient=False):
                         res_eager = model_eager(**inputs_dict, return_dict=False)[0]
                         res_sdpa = model_sdpa(**inputs_dict, return_dict=False)[0]