From 42168e95e074346445242b0fd35b13d052845333 Mon Sep 17 00:00:00 2001 From: ZhidanLiu Date: Thu, 4 Nov 2021 10:27:11 +0800 Subject: [PATCH] add add_model.py --- .../serving/server/export_model/add_model.py | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 examples/natural_robustness/serving/server/export_model/add_model.py diff --git a/examples/natural_robustness/serving/server/export_model/add_model.py b/examples/natural_robustness/serving/server/export_model/add_model.py new file mode 100644 index 0000000..7a14404 --- /dev/null +++ b/examples/natural_robustness/serving/server/export_model/add_model.py @@ -0,0 +1,58 @@ +# Copyright 2021 Huawei Technologies Co., Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================ +"""add model generator""" +import os +from shutil import copyfile +import numpy as np + +import mindspore.context as context +import mindspore.nn as nn +import mindspore.ops as ops +import mindspore as ms + +context.set_context(mode=context.GRAPH_MODE, device_target="Ascend") + + +class Net(nn.Cell): + """Define Net of add""" + + def __init__(self): + super(Net, self).__init__() + self.add = ops.Add() + + def construct(self, x_, y_): + """construct add net""" + return self.add(x_, y_) + + +def export_net(): + """Export add net of 2x2 + 2x2, and copy output model `tensor_add.mindir` to directory ../add/1""" + x = np.ones([2, 2]).astype(np.float32) + y = np.ones([2, 2]).astype(np.float32) + add = Net() + ms.export(add, ms.Tensor(x), ms.Tensor(y), file_name='tensor_add', file_format='MINDIR') + dst_dir = '../perturbation/1' + try: + os.mkdir(dst_dir) + except OSError: + pass + + dst_file = os.path.join(dst_dir, 'tensor_add.mindir') + copyfile('tensor_add.mindir', dst_file) + print("copy tensor_add.mindir to " + dst_dir + " success") + + +if __name__ == "__main__": + export_net()