Download lib/python3.12/site-packages/torchvision/_utils.py from meccatronis/pytorch_rocm_env: direct link, hf CLI and curl.
- Browser
- Download file 934 Bytes
-
https://huggingface.co/meccatronis/pytorch_rocm_env/resolve/main/lib/python3.12/site-packages/torchvision/_utils.py
- Command line
-
hf download hf://meccatronis/pytorch_rocm_env/lib/python3.12/site-packages/torchvision/_utils.py
-
curl -L -o _utils.py https://huggingface.co/meccatronis/pytorch_rocm_env/resolve/main/lib/python3.12/site-packages/torchvision/_utils.py
934 Bytes
| import enum | |
| from typing import Sequence, Type, TypeVar | |
| T = TypeVar("T", bound=enum.Enum) | |
| class StrEnumMeta(enum.EnumMeta): | |
| auto = enum.auto | |
| def from_str(self: Type[T], member: str) -> T: # type: ignore[misc] | |
| try: | |
| return self[member] | |
| except KeyError: | |
| # TODO: use `add_suggestion` from torchvision.prototype.utils._internal to improve the error message as | |
| # soon as it is migrated. | |
| raise ValueError(f"Unknown value '{member}' for {self.__name__}.") from None | |
| class StrEnum(enum.Enum, metaclass=StrEnumMeta): | |
| pass | |
| def sequence_to_str(seq: Sequence, separate_last: str = "") -> str: | |
| if not seq: | |
| return "" | |
| if len(seq) == 1: | |
| return f"'{seq[0]}'" | |
| head = "'" + "', '".join([str(item) for item in seq[:-1]]) + "'" | |
| tail = f"{'' if separate_last and len(seq) == 2 else ','} {separate_last}'{seq[-1]}'" | |
| return head + tail | |