def initialize()

in container/neo_template_mxnet_byom.py [0:0]


    def initialize(self, context):
        self._context = context
        self._batch_size = context.system_properties.get('batch_size')
        model_dir = context.system_properties.get('model_dir')
        print('Loading the model from directory {}'.format(model_dir))
        USE_GPU = os.getenv('USE_GPU', None)
        if USE_GPU == '1':
            self.model = dlr.DLRModel(model_dir, dev_type='gpu', error_log_file=SAGEMAKER_ERROR_LOG_FILE)
        else:
            self.model = dlr.DLRModel(model_dir, error_log_file=SAGEMAKER_ERROR_LOG_FILE)

        # Load user module
        SAGEMAKER_SUBMIT_DIRECTORY = os.getenv('SAGEMAKER_SUBMIT_DIRECTORY', None)
        tempdir = tempfile.gettempdir()
        source_tar = os.path.join(tempdir, 'script.tar.gz')
        download_s3_resource(SAGEMAKER_SUBMIT_DIRECTORY, source_tar)
        script_name = None
        with tarfile.open(source_tar, 'r:*') as tar:
            for member_info in tar.getmembers():
                if member_info.name.endswith('.py'):
                    if script_name is not None:
                        raise RuntimeError('{} contains more than one *.py file'\
                                           .format(source_tar))
                    print('Importing user module from {}...'.format(member_info.name))
                    tar.extract(member_info, path=tempdir)
                    script_name = member_info.name
        if script_name is None:
            raise RuntimeError('{} contains no *.py file'.format(source_tar))
        cur_dir = tempdir
        script_path = script_name[:-3]
        if '/' in script_path:
            file_depth = len(script_path.split('/')) - 1
            for i in range(file_depth):
                cur_dir = os.path.join(cur_dir, script_name[:-3].split('/')[i])
            script_path = script_path.split('/')[file_depth]
        self.user_module = import_user_module(cur_dir, script_path)

        self.input_names = self.model.get_input_names()
        self.initialized = True