def boosted_trees_get_ensemble_states(tree_ensemble_handle, name=None):
    'Retrieves the tree ensemble resource stamp token, number of trees and growing statistics.\n\n  Args:\n    tree_ensemble_handle: A `Tensor` of type `resource`.\n      Handle to the tree ensemble.\n    name: A name for the operation (optional).\n\n  Returns:\n    A tuple of `Tensor` objects (stamp_token, num_trees, num_finalized_trees, num_attempted_layers, last_layer_nodes_range).\n\n    stamp_token: A `Tensor` of type `int64`.\n    num_trees: A `Tensor` of type `int32`.\n    num_finalized_trees: A `Tensor` of type `int32`.\n    num_attempted_layers: A `Tensor` of type `int32`.\n    last_layer_nodes_range: A `Tensor` of type `int32`.\n  '
    _ctx = _context._context
    if ((_ctx is None) or (not _ctx._eager_context.is_eager)):
        (_, _, _op) = _op_def_lib._apply_op_helper('BoostedTreesGetEnsembleStates', tree_ensemble_handle=tree_ensemble_handle, name=name)
        _result = _op.outputs[:]
        _inputs_flat = _op.inputs
        _attrs = None
        _execute.record_gradient('BoostedTreesGetEnsembleStates', _inputs_flat, _attrs, _result, name)
        _result = _BoostedTreesGetEnsembleStatesOutput._make(_result)
        return _result
    else:
        try:
            _result = _pywrap_tensorflow.TFE_Py_FastPathExecute(_ctx._context_handle, _ctx._eager_context.device_name, 'BoostedTreesGetEnsembleStates', name, _ctx._post_execution_callbacks, tree_ensemble_handle)
            _result = _BoostedTreesGetEnsembleStatesOutput._make(_result)
            return _result
        except _core._FallbackException:
            return boosted_trees_get_ensemble_states_eager_fallback(tree_ensemble_handle, name=name, ctx=_ctx)
        except _core._NotOkStatusException as e:
            if (name is not None):
                message = ((e.message + ' name: ') + name)
            else:
                message = e.message
            _six.raise_from(_core._status_to_exception(e.code, message), None)
Retrieves the tree ensemble resource stamp token, number of trees and growing statistics.

Args:
  tree_ensemble_handle: A `Tensor` of type `resource`.
    Handle to the tree ensemble.
  name: A name for the operation (optional).

Returns:
  A tuple of `Tensor` objects (stamp_token, num_trees, num_finalized_trees, num_attempted_layers, last_layer_nodes_range).

  stamp_token: A `Tensor` of type `int64`.
  num_trees: A `Tensor` of type `int32`.
  num_finalized_trees: A `Tensor` of type `int32`.
  num_attempted_layers: A `Tensor` of type `int32`.
  last_layer_nodes_range: A `Tensor` of type `int32`.
def boosted_trees_get_ensemble_states(tree_ensemble_handle, name=None):
    'Retrieves the tree ensemble resource stamp token, number of trees and growing statistics.\n\n  Args:\n    tree_ensemble_handle: A `Tensor` of type `resource`.\n      Handle to the tree ensemble.\n    name: A name for the operation (optional).\n\n  Returns:\n    A tuple of `Tensor` objects (stamp_token, num_trees, num_finalized_trees, num_attempted_layers, last_layer_nodes_range).\n\n    stamp_token: A `Tensor` of type `int64`.\n    num_trees: A `Tensor` of type `int32`.\n    num_finalized_trees: A `Tensor` of type `int32`.\n    num_attempted_layers: A `Tensor` of type `int32`.\n    last_layer_nodes_range: A `Tensor` of type `int32`.\n  '
    _ctx = _context._context
    if ((_ctx is None) or (not _ctx._eager_context.is_eager)):
        (_, _, _op) = _op_def_lib._apply_op_helper('BoostedTreesGetEnsembleStates', tree_ensemble_handle=tree_ensemble_handle, name=name)
        _result = _op.outputs[:]
        _inputs_flat = _op.inputs
        _attrs = None
        _execute.record_gradient('BoostedTreesGetEnsembleStates', _inputs_flat, _attrs, _result, name)
        _result = _BoostedTreesGetEnsembleStatesOutput._make(_result)
        return _result
    else:
        try:
            _result = _pywrap_tensorflow.TFE_Py_FastPathExecute(_ctx._context_handle, _ctx._eager_context.device_name, 'BoostedTreesGetEnsembleStates', name, _ctx._post_execution_callbacks, tree_ensemble_handle)
            _result = _BoostedTreesGetEnsembleStatesOutput._make(_result)
            return _result
        except _core._FallbackException:
            return boosted_trees_get_ensemble_states_eager_fallback(tree_ensemble_handle, name=name, ctx=_ctx)
        except _core._NotOkStatusException as e:
            if (name is not None):
                message = ((e.message + ' name: ') + name)
            else:
                message = e.message
            _six.raise_from(_core._status_to_exception(e.code, message), None)