torch.jit.isinstance
-
torch.jit.isinstance(obj, target_type)[source] -
Эта функция обеспечивает уточнение типа контейнера в TorchScript. Она может уточнять параметризованные контейнеры типов List, Dict, Tuple и Optional. Например,
List[str],Dict[str, List[torch.Tensor]],Optional[Tuple[int,str,int]]. Она также может уточнять базовые типы, такие как bools и ints, доступные в TorchScript.- Параметры:
-
- obj – объект, тип которого нужно уточнить
- target_type – тип, к которому нужно попытаться уточнить obj
- Возвращаемое значение:
-
- True, если obj успешно уточнен до типа target_type,
-
False в противном случае без нового уточнения типа
- Тип возвращаемого значения:
-
bool
Пример (используя
torch.jit.isinstanceдля уточнения типа): .. testcode:import torch from typing import Any, Dict, List class MyModule(torch.nn.Module): def __init__(self): super(MyModule, self).__init__() def forward(self, input: Any): # note the Any type if torch.jit.isinstance(input, List[torch.Tensor]): for t in input: y = t.clamp(0, 0.5) elif torch.jit.isinstance(input, Dict[str, str]): for val in input.values(): print(val) m = torch.jit.script(MyModule()) x = [torch.rand(3,3), torch.rand(4,3)] m(x) y = {"key1":"val1","key2":"val2"} m(y)
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.jit.isinstance.html