_internally_replaced_utils.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import importlib.machinery
  2. import os
  3. from torch.hub import _get_torch_home
  4. _HOME = os.path.join(_get_torch_home(), "datasets", "vision")
  5. _USE_SHARDED_DATASETS = False
  6. IN_FBCODE = False
  7. def _download_file_from_remote_location(fpath: str, url: str) -> None:
  8. pass
  9. def _is_remote_location_available() -> bool:
  10. return False
  11. try:
  12. from torch.hub import load_state_dict_from_url # noqa: 401
  13. except ImportError:
  14. from torch.utils.model_zoo import load_url as load_state_dict_from_url # noqa: 401
  15. def _get_extension_path(lib_name):
  16. lib_dir = os.path.dirname(__file__)
  17. if os.name == "nt":
  18. # Register the main torchvision library location on the default DLL path
  19. import ctypes
  20. kernel32 = ctypes.WinDLL("kernel32.dll", use_last_error=True)
  21. with_load_library_flags = hasattr(kernel32, "AddDllDirectory")
  22. prev_error_mode = kernel32.SetErrorMode(0x0001)
  23. if with_load_library_flags:
  24. kernel32.AddDllDirectory.restype = ctypes.c_void_p
  25. os.add_dll_directory(lib_dir)
  26. kernel32.SetErrorMode(prev_error_mode)
  27. loader_details = (importlib.machinery.ExtensionFileLoader, importlib.machinery.EXTENSION_SUFFIXES)
  28. extfinder = importlib.machinery.FileFinder(lib_dir, loader_details)
  29. ext_specs = extfinder.find_spec(lib_name)
  30. if ext_specs is None:
  31. raise ImportError(f"Could not find module '{lib_name}' in {lib_dir}")
  32. return ext_specs.origin