class_docstr: Interface for the core of encoding logic.
  
  This core interface should support encoding being executed in a variety of
  contexts. For instance,
  * Both encoding and decoding can happen in the same location, such as for
    experimental evaluation of efficiency.
  * Both encoding and decoding can happen in different locations, but run in the
    same `Session`, such as distributed datacenter training.
  * Encoding and decoding can happen in multiple locations, and communication
    between them needs to happen outside of `TensorFlow`, such as compressing
    a state of a model which is sent to a mobile device to be later used for
    inference.
  
  This interface is designed such that its implementer need not worry about the
  potential communication patterns, and the implementation will support all.
  
  Each implementation of this interface is supposed to be a relatively
  elementary transformation. In particular, it does not need to realize any
  representation savings by itself. Instead, a particular compositions of these
  elementary transformations will realize the desired savings. These
  compositions are realized by the `Encoder` class.
  
  Each implementation should also be wrapped by `tf_style_encoding_stage` to
  ensure adherence to the TensorFlow style guide. The adherence is enforced by
  the `BaseEncodingStageTest` test class. See `test_utils.py` for more details.
  
  For an adaptive version with a broader interface, see
  `AdaptiveEncodingStageInterface`.
docstr: Returns the parameters needed for encoding.
  
  This method returns parameters controlling the behavior of the `encode` and
  `decode` methods.
  
  Implementation of this method should clearly document what are the keys of
  parameters returned by this method, in order for a potential stateful
  subclass being able to adaptively modify only existing keys.
  
  Note that this method is not purely functional in terms of `TensorFlow`. The
  params can be derived from an internal state of the compressor. For
  instance, if a constructor optionally takes a `Variable` as an input
  argument, which is allowed to change during iterative execution, that
  `Variable`, or a function of it, would be exposed via this method. However,
  only values that can be TensorFlow values should be exposed via params. If a
  parameter always needs to be a Python constant, for instance used for Python
  control flow, it should not be exposed via params, and accessed via `self`
  instead.
  
  Returns:
    A tuple `(encode_params, decode_params)`, where
    `encode_params`: A dictionary to be passed as argument to the `encode`
      method.
    `decode_params`: A dictionary to be passed as argument to the `decode`
      method.
    Each value of the dictionaries can be either a `Tensor` or any python
    constant.
docstr_tok: ["Returns","the","parameters","needed","for","encoding",".","This","method","returns","parameters","controlling","the","behavior","of","the","`","encode","`","and","`","decode","`","methods",".","Implementation","of","this","method","should","clearly","document","what","are","the","keys","of","parameters","returned","by","this","method",",","in","order","for","a","potential","stateful","subclass","being","able","to","adaptively","modify","only","existing","keys",".","Note","that","this","method","is","not","purely","functional","in","terms","of","`","TensorFlow","`",".","The","params","can","be","derived","from","an","internal","state","of","the","compressor",".","For","instance",",","if","a","constructor","optionally","takes","a","`","Variable","`","as","an","input","argument",",","which","is","allowed","to","change","during","iterative","execution",",","that","`","Variable","`",",","or","a","function","of","it",",","would","be","exposed","via","this","method",".","However",",","only","values","that","can","be","TensorFlow","values","should","be","exposed","via","params",".","If","a","parameter","always","needs","to","be","a","Python","constant",",","for","instance","used","for","Python","control","flow",",","it","should","not","be","exposed","via","params",",","and","accessed","via","`","self","`","instead",".","Returns",":","A","tuple","`","(","encode_params",",","decode_params",")","`",",","where","`","encode_params","`",":","A","dictionary","to","be","passed","as","argument","to","the","`","encode","`","method",".","`","decode_params","`",":","A","dictionary","to","be","passed","as","argument","to","the","`","decode","`","method",".","Each","value","of","the","dictionaries","can","be","either","a","`","Tensor","`","or","any","python","constant","."]
code: def get_params(self):
      """Returns the parameters needed for encoding.
  
      This method returns parameters controlling the behavior of the `encode` and
      `decode` methods.
  
      Implementation of this method should clearly document what are the keys of
      parameters returned by this method, in order for a potential stateful
      subclass being able to adaptively modify only existing keys.
  
      Note that this method is not purely functional in terms of `TensorFlow`. The
      params can be derived from an internal state of the compressor. For
      instance, if a constructor optionally takes a `Variable` as an input
      argument, which is allowed to change during iterative execution, that
      `Variable`, or a function of it, would be exposed via this method. However,
      only values that can be TensorFlow values should be exposed via params. If a
      parameter always needs to be a Python constant, for instance used for Python
      control flow, it should not be exposed via params, and accessed via `self`
      instead.
  
      Returns:
        A tuple `(encode_params, decode_params)`, where
        `encode_params`: A dictionary to be passed as argument to the `encode`
          method.
        `decode_params`: A dictionary to be passed as argument to the `decode`
          method.
        Each value of the dictionaries can be either a `Tensor` or any python
        constant.
      """
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import abc
  import enum
  import six
  import tensorflow
label_desc: Use image node_id 5 for calling the EncodingStageInterface obj's underlying member method code with example usage: obj.get_params() without return types