parameters: (features, feature_columns)
docstring: Helper function to convert the input points into a usable format.
  
    Args:
      features: The input features.
      feature_columns: An optionable iterable containing all the feature columns
        used by the model. All items in the set should be feature column instances
        that can be passed to `tf.compat.v1.feature_column.input_layer`. If this
        is None, all features will be used.
  
    Returns:
      If `features` is a dict of `k` features (optionally filtered by
      `feature_columns`), each of which is a vector of `n` scalars, the return
      value is a Tensor of shape `(n, k)` representing `n` input points, where the
      items in the `k` dimension are sorted lexicographically by `features` key.
      If `features` is not a dict, it is returned unmodified.
docstring_summary: Helper function to convert the input points into a usable format.
docstring_tokens: Helper function to convert the input points into a usable format .
function: def _parse_features_if_necessary(features, feature_columns):
    """Helper function to convert the input points into a usable format.
  
    Args:
      features: The input features.
      feature_columns: An optionable iterable containing all the feature columns
        used by the model. All items in the set should be feature column instances
        that can be passed to `tf.compat.v1.feature_column.input_layer`. If this
        is None, all features will be used.
  
    Returns:
      If `features` is a dict of `k` features (optionally filtered by
      `feature_columns`), each of which is a vector of `n` scalars, the return
      value is a Tensor of shape `(n, k)` representing `n` input points, where the
      items in the `k` dimension are sorted lexicographically by `features` key.
      If `features` is not a dict, it is returned unmodified.
    """
    if not isinstance(features, dict):
      return features
  
    if feature_columns:
      return fc.input_layer(features, feature_columns)
  
    keys = sorted(features.keys())
    with ops.colocate_with(features[keys[0]]):
      return array_ops.concat([features[k] for k in keys], axis=1)
function_tokens: def _parse_features_if_necessary ( features , feature_columns ) : if not isinstance ( features , dict ) : return features if feature_columns : return fc . input_layer ( features , feature_columns ) keys = sorted ( features . keys ( ) ) with ops . colocate_with ( features [ keys [ 0 ] ] ) : return array_ops . concat ( [ features [ k ] for k in keys ] , axis = 1 )