Spec-Zone.ru › PyTorch 2

torch.jit.unused

torch.jit.unused(fn) [source]

Этот декоратор указывает компилятору, что функция или метод должны быть проигнорированы и заменены на вызов исключения. Это позволяет вам оставить в вашей модели код, который ещё не совместим с TorchScript, и всё равно экспортировать вашу модель.

Пример (используя @torch.jit.unused на методе):

import torch
import torch.nn as nn

class MyModule(nn.Module):
    def __init__(self, use_memory_efficient):
        super().__init__()
        self.use_memory_efficient = use_memory_efficient

    @torch.jit.unused
    def memory_efficient(self, x):
        import pdb
        pdb.set_trace()
        return x + 10

    def forward(self, x):
        # Use not-yet-scriptable memory efficient mode
        if self.use_memory_efficient:
            return self.memory_efficient(x)
        else:
            return x + 10

m = torch.jit.script(MyModule(use_memory_efficient=False))
m.save("m.pt")

m = torch.jit.script(MyModule(use_memory_efficient=True))
# exception raised
m(torch.rand(100))

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.jit.unused.html

Spec-Zone.ru

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