Package org.pytorch

Class Module


  • public class Module
    extends Object
    Java wrapper for torch::jit::Module.
    • Method Detail

      • load

        public static Module load​(String modelPath,
                                  Map<String,​String> extraFiles,
                                  Device device)
        Loads a serialized TorchScript module from the specified path on the disk to run on specified device.
        Parameters:
        modelPath - path to file that contains the serialized TorchScript module.
        extraFiles - map with extra files names as keys, content of them will be loaded to values.
        device - Device to use for running specified module.
        Returns:
        new Module object which owns torch::jit::Module.
      • load

        public static Module load​(String modelPath)
        Loads a serialized TorchScript module from the specified path on the disk to run on CPU.
        Parameters:
        modelPath - path to file that contains the serialized TorchScript module.
        Returns:
        new Module object which owns torch::jit::Module.
      • forward

        public IValue forward​(IValue... inputs)
        Runs the 'forward' method of this module with the specified arguments.
        Parameters:
        inputs - arguments for the TorchScript module's 'forward' method.
        Returns:
        return value from the 'forward' method.
      • runMethod

        public IValue runMethod​(String methodName,
                                IValue... inputs)
        Runs the specified method of this module with the specified arguments.
        Parameters:
        methodName - name of the TorchScript method to run.
        inputs - arguments that will be passed to TorchScript method.
        Returns:
        return value from the method.
      • destroy

        public void destroy()
        Explicitly destroys the native torch::jit::Module. Calling this method is not required, as the native object will be destroyed when this object is garbage-collected. However, the timing of garbage collection is not guaranteed, so proactively calling destroy can free memory more quickly. See HybridData.resetNative().