torch.utils.generate_methods_for_privateuse1_backend
-
torch.utils.generate_methods_for_privateuse1_backend(for_tensor, for_module, for_storage, unsupported_dtype) → None[source] -
Автоматически генерирует атрибуты и методы для пользовательского бэкенда после переименования бэкенда privateuse1. В стандартном случае методы, связанные с хранилищем, не будут генерироваться автоматически.
Когда вы реализуете ядра для различных операций torch и зарегистрируете их в ключе PrivateUse1. И вызовете функцию torch.rename_privateuse1_backend(“foo”) для переименования имени вашего бэкенда. В этот момент вы можете легко зарегистрировать конкретные методы и атрибуты, вызвав эту функцию. Например, как torch.Tensor.foo(), torch.Tensor.is_foo, torch.Storage.foo(), torch.Storage.is_foo.
Примечание: Мы рекомендуем использовать универсальные функции (проверять, равны ли устройства, или использовать to(device=)). Мы предоставляем эти методы только для удобства, и они будут «подменяться» в объектах, поэтому их тип не будет правильно определён. Для генерируемых методов хранилища, если вам нужно поддерживать хранилище разреженных данных, вам нужно самостоятельно расширить реализацию.
- Параметры
-
- for_tensor (bool) – нужно ли регистрировать связанные методы для класса torch.Tensor.
- for_module (bool) – нужно ли регистрировать связанные методы для класса torch.nn.Module.
- for_storage (bool) – нужно ли регистрировать связанные методы для класса torch.Storage.
- unsupported_dtype (Список[torch.dtype]) – действует только когда необходимо сгенерировать метод хранилища, указывая, что хранилище не поддерживает тип torch.dtype.
Пример:
>>> torch.utils.rename_privateuse1_backend("foo") >>> torch.utils.generate_methods_for_privateuse1_backend() # Then automatically generate backend-related attributes and methods. >>> a = torch.tensor(2).foo() >>> a.is_foo >>> hasattr(torch.nn.Module, 'foo')
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.utils.generate_methods_for_privateuse1_backend.html