## tensorflow 2.8 code import os from tensorflow import keras class CircleLayer(keras.layers.Layer): def __init__(self, **kwargs): super().__init__(**kwargs) def call(self, inputs): return inputs * 3.1415 def get_config(self): return super().get_config() def get_model(): inputs = keras.layers.Input((6,)) circle = CircleLayer(name="circle") outputs = circle(inputs) return keras.models.Model(inputs, outputs) def save_model(model, path): cfg_file = os.path.join(path, f"{model.name}.json") with open(cfg_file, "w") as fp: fp.write(model.to_json(indent=2, sort_keys=True)) weights_file = os.path.join(path, f"{model.name}.h5") model.save_weights(weights_file, overwrite=True) if __name__ == "__main__": model_dir = "/tmp/tmp" os.makedirs(model_dir, exist_ok=True) model = get_model() save_model(model, model_dir)