  
                  logger.debug("Compiling layer '%s': layer inputs: %s", layer.name, layer_inputs)
                  model = layer(layer_inputs)
              compiled_layers[layer.name] = model
              retval = KerasModel(model_inputs, model, name=f"{saved_model.name}_inference")
          logger.debug("Compiled inference model '%s': %s", retval.name, retval)
          return retval
  
      def _get_filtered_structure(self) -> OrderedDict:
          """ Obtain the structure of the inference model.
 
</s> remove     def _get_input_shape(self) -> Tuple[int, int, int]:
 </s> add     def _get_input_shape(self) -> T.Tuple[int, int, int]: </s> remove             retval = dict(a=decoder(inputs["a"]), b=decoder(inputs["b"]))
 </s> add             retval = {"a": decoder(inputs["a"]), "b": decoder(inputs["b"])} </s> remove             retval = dict(a=g_block((inputs["a"])), b=g_block((inputs["b"])))
 </s> add             retval = {"a": g_block((inputs["a"])), "b": g_block((inputs["b"]))} </s> remove         retval = np.stack([cast(np.ndarray, feed_face.face)[..., :3]
 </s> add         retval = np.stack([T.cast(np.ndarray, feed_face.face)[..., :3] </s> remove         retval = dict(a=encoder(inputs[0]), b=encoder(inputs[1]))
 </s> add         retval = {"a": encoder(inputs[0]), "b": encoder(inputs[1])}
            retval = KModel(model_inputs, model, name=f"{saved_model.name}_inference")
  
                  logger.debug("Compiling layer '%s': layer inputs: %s", layer.name, layer_inputs)
                  model = layer(layer_inputs)
              compiled_layers[layer.name] = model
            retval = KModel(model_inputs, model, name=f"{saved_model.name}_inference")
          logger.debug("Compiled inference model '%s': %s", retval.name, retval)
          return retval
  
      def _get_filtered_structure(self) -> OrderedDict:
          """ Obtain the structure of the inference model.
keep keep keep keep replace keep keep keep keep keep
 Remove plaidML support (#1325)

* Remove PlaidML reference from readme files

* Remove AMD option from installers

* remove amd requirements and update setup.py

* remove plaidml test from CI workflow

* gpustats: remove plaidml backend

* plaid removals:
  - faceswap.py - python version check
  - setup.cfg - plaidml typing ignore
  - lib.keras_utils - All plaid code
  - lib.launcher.py - All plaidml checks and configuration

* remove tf2.2 specific code from GUI event reader

* lib.model - remove all plaidml implementations

* plugins.extract - remove plaidml code

* plugins.train remove plaidml code

* lib.convert - remove plaidml code

* tools.model: remove plaidml code

* Remove plaidML tests from unit tests

* remove plaidml_utils and docsting cleanups

* Remove plaidML refs from configs

* fix keras imports 
plugins/train/model/_base/model.py