pytorch
88baf470 - [JIT] Provide more info when attribute fails to convert (#50870)

Commit
4 years ago
[JIT] Provide more info when attribute fails to convert (#50870) Summary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/50870 **Summary** Module attributes whose types cannot be determined based on annotations or inference based on their values at script time are added to the concrete type of the corresponding module as "failed attributes". Any attempt to access them in scripted code produces an error with a message explaining that the attribute could not be contributed to a corresponding attribute on the TorchScript module. However, this error is not more specific than that. This commit modifies `infer_type` in `_recursive.py` so that it returns `c10::InferredType` instead, which allows more information about typing failures to be communicated to the caller through the `reason()` method on this class. This information is appended to the hint added to the module concrete type for failed attributes. **Testing** This commit adds a unit test to `test_module_containers.py` that checks that extra information is provided about the reason for the failure when a module attribute consisting of a list of `torch.nn.Module` fails to convert. Test Plan: Imported from OSS Reviewed By: pbelevich Differential Revision: D26091472 Pulled By: SplitInfinity fbshipit-source-id: fcad6588b937520f250587f3d9e005662eb9af0d
Author
Meghan Lele
Parents
Loading