Spec-Zone.ru › PyTorch 1

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API