code: def backend_run(self):
          
          key = self.model.hash
          if self.use_memory_cache and self.get_memory_cache(key):
              return self._results
          if self.use_disk_cache and self.get_disk_cache(key):
              return self._results
          results = self._backend_run()
          if self.use_memory_cache:
              self.set_memory_cache(results, key)
          if self.use_disk_cache:
              self.set_disk_cache(results, key)
          return results
docs: Check for cached results; then run the model if needed.