Artificial intelligence technology is one of the core technologies in the era of intelligent industry.Artificial intelligence technology includes machine learning,deep learning,natural language processing,computer vision,and so on.The application of these technologies enables machines to learn,understand,and judge independently,and can help industrial enterprises achieve automated,intelligent,and efficient production and management.
由NativeImporter类实现。
因为此时传入的模型已经被转换成了计算图,所以不需要像载入onnx模型那样做遍历、解析、修改属性等操作了:
class NativeImporter(GraphBuilder):
def __init__(self)->None:
super().__init__()
def build(self,file_path:str,**kwargs)->BaseGraph:
def load_elements_from_file(file,num_of_elements:int)->list:
try:return[load(file)for _ in range(num_of_elements)]
except EOFError as e:
raise Exception('File format parsing error.Unexpected EOF found.')
with open(file_path,'rb')as file:
signature,version,graph=load_elements_from_file(file,3)
if signature!='PPQ GRAPH DEFINITION':
raise Exception('File format parsing error.Graph Signature has been damaged.')
if str(version)>PPQ_CONFIG.VERSION:
print(f'33[31mWarning:Dump file is created by PPQ({str(version)}),'
f'however you are using PPQ({PPQ_CONFIG.VERSION}).33[0m')
assert isinstance(graph,BaseGraph),(
'File format parsing error.Graph Definition has been damaged.')
try:
for op in graph.operations.values():
input_copy,_=op.inputs.copy(),op.inputs.clear()
for name in input_copy:op.inputs.append(graph.variables[name])
output_copy,_=op.outputs.copy(),op.outputs.clear()
for name in output_copy:op.outputs.append(graph.variables[name])
for var in graph.variables.values():
dest_copy,_=var.dest_ops.copy(),var.dest_ops.clear()
for name in dest_copy:var.dest_ops.append(graph.operations[name])
if var.source_op is not None:
var.source_op=graph.operations[var.source_op]
graph._graph_inputs={name:graph.variables[name]for name in graph._graph_inputs}
graph._graph_outputs={name:graph.variables[name]for name in graph._graph_outputs}
except Exception as e:
raise Exception('File format parsing error.Graph Definition has been damaged.')
return graph