On this page
Attribute
- class torch.jit.Attribute(value, type)[source]
- 
    This method is a pass-through function that returns value, mostly used to indicate to the TorchScript compiler that the left-hand side expression is a class instance attribute with type oftype. Note thattorch.jit.Attributeshould only be used in__init__method ofjit.ScriptModulesubclasses.Though TorchScript can infer correct type for most Python expressions, there are some cases where type inference can be wrong, including: - Empty containers like []and{}, which TorchScript assumes to be container ofTensor
- Optional types like Optional[T]but assigned a valid value of typeT, TorchScript would assume it is typeTrather thanOptional[T]
 In eager mode, it is simply a pass-through function that returns valuewithout other implications.Example: import torch from typing import Dict class AttributeModule(torch.jit.ScriptModule): def __init__(self): super().__init__() self.foo = torch.jit.Attribute(0.1, float) # we should be able to use self.foo as a float here assert 0.0 < self.foo self.names_ages = torch.jit.Attribute({}, Dict[str, int]) self.names_ages["someone"] = 20 assert isinstance(self.names_ages["someone"], int) m = AttributeModule() # m will contain two attributes # 1. foo of type float # 2. names_ages of type Dict[str, int]Note: it’s now preferred to instead use type annotations instead of torch.jit.Attribute:import torch from typing import Dict class AttributeModule(torch.nn.Module): names: Dict[str, int] def __init__(self): super().__init__() self.names = {} m = AttributeModule()- Parameters
- 
      - value – An initial value to be assigned to attribute.
- type – A Python type
 
- Returns
- 
      Returns value
 - count(value, /)
- 
      Return number of occurrences of value. 
 - index(value, start=0, stop=9223372036854775807, /)
- 
      Return first index of value. Raises ValueError if the value is not present. 
 - type
- 
      Alias for field number 1 
 - value
- 
      Alias for field number 0 
 
- Empty containers like 
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
 https://pytorch.org/docs/2.1/generated/torch.jit.Attribute.html