-
Notifications
You must be signed in to change notification settings - Fork 26.4k
Closed
pytorch/test-infra
#6575Closed
Copy link
Labels
module: regressionIt used to work, and now it doesn'tIt used to work, and now it doesn'tmodule: third_partyoncall: relengIn support of CI and Release EngineeringIn support of CI and Release Engineeringtriage review
Description
🐛 Describe the bug
There seems to be a bug in the new release of torch (2.7.0) when using py 3.9. This is caused by the usage of networkx which is not pinned in the dependencies, while it has dropped the support for py 3.9. Example error log from huggingface/transformers#37695
File "/usr/local/lib/python3.9/site-packages/transformers/modeling_utils.py", line 62, in <module>
from .integrations.flex_attention import flex_attention_forward
File "/usr/local/lib/python3.9/site-packages/transformers/integrations/flex_attention.py", line 39, in <module>
from torch.nn.attention.flex_attention import BlockMask, flex_attention
File "/usr/local/lib/python3.9/site-packages/torch/nn/attention/flex_attention.py", line 15, in <module>
from torch._dynamo._trace_wrapped_higher_order_op import TransformGetItemToIndex
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/__init__.py", line 53, in <module>
from .polyfills import loader as _ # usort: skip # noqa: F401
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/polyfills/loader.py", line 25, in <module>
POLYFILLED_MODULES: tuple["ModuleType", ...] = tuple(
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/polyfills/loader.py", line 26, in <genexpr>
importlib.import_module(f".{submodule}", package=polyfills.__name__)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/polyfills/builtins.py", line 31, in <module>
def all(iterable: Iterable[object], /) -> bool:
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/decorators.py", line 427, in wrapper
rule_map: dict[Any, type[VariableTracker]] = get_torch_obj_rule_map()
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/trace_rules.py", line 2870, in get_torch_obj_rule_map
obj = load_object(k)
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/trace_rules.py", line 2901, in load_object
val = _load_obj_from_str(x[0])
File "/usr/local/lib/python3.9/site-packages/torch/_dynamo/trace_rules.py", line 2885, in _load_obj_from_str
return getattr(importlib.import_module(module), obj_name)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/usr/local/lib/python3.9/site-packages/torch/_higher_order_ops/map.py", line 6, in <module>
from torch._functorch.aot_autograd import AOTConfig, create_joint
File "/usr/local/lib/python3.9/site-packages/torch/_functorch/aot_autograd.py", line 135, in <module>
from .partitioners import default_partition
File "/usr/local/lib/python3.9/site-packages/torch/_functorch/partitioners.py", line 37, in <module>
from ._activation_checkpointing.graph_info_provider import GraphInfoProvider
File "/usr/local/lib/python3.9/site-packages/torch/_functorch/_activation_checkpointing/graph_info_provider.py", line 3, in <module>
import networkx as nx
File "/usr/local/lib/python3.9/site-packages/networkx/__init__.py", line 19, in <module>
from networkx import utils
File "/usr/local/lib/python3.9/site-packages/networkx/utils/__init__.py", line 7, in <module>
from networkx.utils.backends import *
File "/usr/local/lib/python3.9/site-packages/networkx/utils/backends.py", line 258, in <module>
backends = _get_backends("networkx.backends")
File "/usr/local/lib/python3.9/site-packages/networkx/utils/backends.py", line 234, in _get_backends
items = entry_points(group=group)
TypeError: entry_points() got an unexpected keyword argument 'group'
For a deeper dive, see huggingface/transformers#37695 (comment) - I'd suggest pinning the version or something of the sort.
Versions
torch==2.7.0
python==3.9
Metadata
Metadata
Assignees
Labels
module: regressionIt used to work, and now it doesn'tIt used to work, and now it doesn'tmodule: third_partyoncall: relengIn support of CI and Release EngineeringIn support of CI and Release Engineeringtriage review
Type
Projects
Status
Done