class_docstr: HiFiC autoencoder architecture.
  
  This implements the HiFiC autoencoder as described in the following paper:
  
  High-Fidelity Generative Image Compression
  F. Mentzer, G. Toderici, M. Tschannen, E. Agustsson
  
  Args:
      in_channels: The number of channels in the input image.
      latent_features: The number of features to use as input to the
          conditional Gaussian layer.
      hyper_feautures: The number of features to use for the hyperprior.
      num_residual_blocks: Number of residual blocks to use at the start of
          generator decoding.
      freeze_encoder: Whether to freeze training of the encoder.
      freeze_bottleneck: Whether to freeze training of the bottleneck (both
          conditional Gaussian and hyperprior).
class_docstr_tok: ["HiFiC","autoencoder","architecture",".","This","implements","the","HiFiC","autoencoder","as","described","in","the","following","paper",":","High-Fidelity","Generative","Image","Compression","F.","Mentzer",",","G.","Toderici",",","M.","Tschannen",",","E.","Agustsson","Args",":","in_channels",":","The","number","of","channels","in","the","input","image",".","latent_features",":","The","number","of","features","to","use","as","input","to","the","conditional","Gaussian","layer",".","hyper_feautures",":","The","number","of","features","to","use","for","the","hyperprior",".","num_residual_blocks",":","Number","of","residual","blocks","to","use","at","the","start","of","generator","decoding",".","freeze_encoder",":","Whether","to","freeze","training","of","the","encoder",".","freeze_bottleneck",":","Whether","to","freeze","training","of","the","bottleneck","(","both","conditional","Gaussian","and","hyperprior",")","."]
code: def _check_compress_devices(self) -> bool:
      result = True
      cpu = torch.device("cpu")
      for module in [
          self.hyper_bottleneck,
          self.latent_bottleneck,
          self.hyper_analysis,
          self.hyper_synthesis_mean,
          self.hyper_synthesis_scale,
      ]:
          for param in module.parameters():
              if not param.device == cpu:
                  result = False
  
      return result
  
imports: import logging
  import torch
  import torch.nn
  from compressai.entropy_models import EntropyBottleneck, GaussianConditional
  from torch import Tensor
  import neuralcompression.functional
  from neuralcompression import HyperpriorCompressedOutput, HyperpriorOutput
  from ._hific_encoder_decoder import HiFiCEncoder, HiFiCGenerator
  from ._hyperprior_autoencoder import HyperpriorAutoencoderBase
label_desc: Use image node_id 7 for calling the HiFiCAutoencoder obj's underlying member method code with example usage: obj._check_compress_devices() and returns: result