torch.jit.annotate
-
torch.jit.annotate(the_type, the_value)[source] -
Этот метод является проходящей функцией, которая возвращает
the_value, используемой для подсказки компилятору TorchScript типаthe_value. Он является бесполезной операцией (no-op) при выполнении вне TorchScript.Хотя TorchScript может определить правильный тип для большинства Python-выражений, существуют некоторые случаи, когда вывод типа может быть неправильным, включая:
- Пустые контейнеры, такие как
[]и{}, которые TorchScript предполагает как контейнеры типаTensor - Типы по умолчанию, такие как
Optional[T], но присвоенное действительное значение типаT, TorchScript предположит, что это типTвместоOptional[T]
Обратите внимание, что
annotate()не помогает в__init__методе подклассовtorch.nn.Module, так как он выполняется в режиме жадного вычисления. Для аннотации типовtorch.nn.Moduleатрибутов используйтеAnnotate()вместо этого.Пример:
import torch from typing import Dict @torch.jit.script def fn(): # Telling TorchScript that this empty dictionary is a (str -> int) dictionary # instead of default dictionary type of (str -> Tensor). d = torch.jit.annotate(Dict[str, int], {}) # Without `torch.jit.annotate` above, following statement would fail because of # type mismatch. d["name"] = 20- Параметры
-
-
the_type – Тип Python, который должен быть передан компилятору TorchScript в качестве подсказки типа для
the_value - the_value – Значение или выражение для подсказки типа.
-
the_type – Тип Python, который должен быть передан компилятору TorchScript в качестве подсказки типа для
- Возвращает
-
the_valueвозвращается как значение.
- Пустые контейнеры, такие как
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.jit.annotate.html