class_docstr: A visitor that inspects the graph and looks for combine nodes.
  
  As this visitor visits the TFT Beam Graph, we group together all the
  packable combine nodes. Specifically, we look for the following path:
             ExtractFromDict --> CacheableCombineAccumulate
  The combines under the same grand parent can be packed together.
  In this visitor, we group all the packable combines for each unique
  grand parent node and save their reference in the `packable_combines` class
  attribute.
class_docstr_tok: ["A","visitor","that","inspects","the","graph","and","looks","for","combine","nodes",".","As","this","visitor","visits","the","TFT","Beam","Graph",",","we","group","together","all","the","packable","combine","nodes",".","Specifically",",","we","look","for","the","following","path",":","ExtractFromDict","--",">","CacheableCombineAccumulate","The","combines","under","the","same","grand","parent","can","be","packed","together",".","In","this","visitor",",","we","group","all","the","packable","combines","for","each","unique","grand","parent","node","and","save","their","reference","in","the","`","packable_combines","`","class","attribute","."]
code: def visit(self, operation_def, input_values):
      self.validate_operation_def(operation_def)
      self._maybe_add_packable_combine(operation_def, input_values)
      return nodes.OperationNode(operation_def, input_values).outputs
  
imports: import collections
  import dataclasses
  from typing import Sequence
  from tensorflow_transform import analyzer_nodes
  from tensorflow_transform import nodes
  from tensorflow_transform.beam import beam_nodes
label_desc: Use image node_id 2 for calling the _InspectAccumulateCombineVisitor obj's underlying member method code with example usage: obj.visit(operation_def, input_values) and returns: nodes