Function: load_from_file

Applicability

Product

Supported (√/x)

Atlas A3 training products / Atlas A3 inference products

Atlas A2 training products / Atlas A2 inference products

Atlas training products

Atlas inference products

Atlas 200I/500 A2 inference products

Function Usage

Loads an offline model (offline model adapted to the Ascend AI Processor) from a file. The memory is managed by the system.

Returns the model ID after the model is loaded. The model ID is used for model identification in subsequent operations.

Prototype

  • C Prototype
    1
    aclError aclmdlLoadFromFile(const char *modelPath, uint32_t *modelId)
    
  • Python Function
    1
    model_id, ret = acl.mdl.load_from_file(model_path)
    

Parameter Description

Parameter

Description

model_path

Str, directory of an offline model file, including the file name. The user who runs the app must have enough permission to access the directory.

The offline model file is an offline model (.om file) adapted to the Ascend AI Processor.

NOTE:
  • For details about how to obtain the .om file, see Model Building.
  • When you use ATC to generate an .om file, set --external_weight to 1, indicating that the weight of the Const/Constant node on the original network is saved in a separate file in the weight directory. Ensure that the weight directory is at the same level as the .om file so that it can search for the weight file in the weight directory when you call this API to load the .om file. If the weight directory is not correctly placed, the weight file may fail to be loaded.

Return Value Description

Return Value

Description

model_id

Int, pointer address of the model ID generated after the system loads the model.

ret

Int, error code: 0 on success; else, failure.

Restrictions

  • Before loading the model file, check whether the memory space is sufficient based on the file size. If the memory space is insufficient, the application will be abnormal.
  • The operations of loading, executing, and unloading a model must be performed in the same context. For details about how to create a context, see acl.rt.set_device and acl.rt.create_context.

Reference

For the API call sequence, see Loading a Model.