Spec-Zone.ru › PyTorch 2

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]]. Она также может уточнять базовые типы, такие как болы и инты, доступные в 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().__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/2.1/generated/torch.jit.isinstance.html

Spec-Zone.ru

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