class_docstr: Base Model class.
  This is the class from which all Models inherit.
  A model is a special layer with training and inference features.
  Users will just instantiate a model and then treat it as a callable.
  We recommend that descendants of `BaseModel` implement the following methods:
  * `__init__()`: Save configuration in member variables.
  * `call()`: model forward propagate.
  * `backward()`: model backward propagate.
  * `compile()`: set optimizer and loss.
class_docstr_tok: ["Base","Model","class",".","This","is","the","class","from","which","all","Models","inherit",".","A","model","is","a","special","layer","with","training","and","inference","features",".","Users","will","just","instantiate","a","model","and","then","treat","it","as","a","callable",".","We","recommend","that","descendants","of","`","BaseModel","`","implement","the","following","methods",":","*","`","__init__","(",")","`",":","Save","configuration","in","member","variables",".","*","`","call","(",")","`",":","model","forward","propagate",".","*","`","backward","(",")","`",":","model","backward","propagate",".","*","`","compile","(",")","`",":","set","optimizer","and","loss","."]
code: def make_test_function(self):
      @tfe.function
      def test_step(x):
          return self.call(x).reveal().to_native()
  
      return test_step
  
imports: import time
  from abc import abstractmethod
  from typing import Iterator
  import numpy
  import tensorflow
  from tensorflow.keras import utils
  import tf_encrypted
  from tf_encrypted.keras.engine.base_layer import Layer
  from tf_encrypted.protocol.protocol import TFEPrivateTensor
label_desc: Use image node_id 11 for calling the BaseModel obj's underlying member method code with example usage: obj.make_test_function() and returns: test_step, self