  
      @property
      def _url_download(self):
          """ strL Base download URL for models. """
          tag = "v{}.{}.{}".format(self._url_section, self._git_model_id, self._model_version)
          retval = "{}/{}/{}.zip".format(self._url_base, tag, self._model_full_name)
          self.logger.trace("Download url: %s", retval)
          return retval
  
      @property
      def _url_partial_size(self):
 
</s> remove         retval = os.path.join(self._cache_dir, "{}.zip".format(self._model_full_name))
 </s> add         retval = os.path.join(self._cache_dir, f"{self._model_full_name}.zip") </s> remove             retval = KerasModel(model_inputs, model, name="{}_inference".format(saved_model.name))
 </s> add             retval = KerasModel(model_inputs, model, name=f"{saved_model.name}_inference") </s> remove         self._funcs = dict()
 </s> add         self._funcs = {} </s> remove         self.return_file = getattr(self, "_{}".format(self._handletype.lower()))()
 </s> add         self.return_file = getattr(self, f"_{self._handletype.lower()}")()
        self._remove_dummy_master()
 </s> remove         epsilon = np.finfo(self._dtype).tiny
 </s> add         epsilon = np.finfo(self._dtype).tiny  # pylint:disable=no-member
        tag = f"v{self._url_section}.{self._git_model_id}.{self._model_version}"
        retval = f"{self._url_base}/{tag}/{self._model_full_name}.zip"
  
      @property
      def _url_download(self):
          """ strL Base download URL for models. """
        tag = f"v{self._url_section}.{self._git_model_id}.{self._model_version}"
        retval = f"{self._url_base}/{tag}/{self._model_full_name}.zip"
        tag = f"v{self._url_section}.{self._git_model_id}.{self._model_version}"
        retval = f"{self._url_base}/{tag}/{self._model_full_name}.zip"
          self.logger.trace("Download url: %s", retval)
          return retval
  
      @property
      def _url_partial_size(self):
keep keep keep keep replace replace keep keep keep keep keep
 Update code to support Tensorflow versions up to 2.8 (#1213)

* Update maximum tf version in setup + requirements

* - bump max version of tf version in launcher
- standardise tf version check

* update keras get_custom_objects  for tf>2.6

* bugfix: force black text in GUI file dialogs (linux)

* dssim loss - Move to stock tf.ssim function

* Update optimizer imports for compatibility

* fix logging for tf2.8

* Fix GUI graphing for TF2.8

* update tests

* bump requirements.txt versions

* Remove limit on nvidia-ml-py

* Graphing bugfixes
  - Prevent live graph from displaying if data not yet available

* bugfix: Live graph. Collect loss labels correctly

* fix: live graph - swallow inconsistent loss errors

* Bugfix: Prevent live graph from clearing during training

* Fix graphing for AMD 
lib/utils.py