docstr: Checks TFLite conversion and inference.
code: def testTfLiteRagged(self):
      """Checks TFLite conversion and inference."""
  
      class NgramModel(tf.keras.Model):
          def __init__(self, **kwargs):
              super().__init__(**kwargs)
              self.tokenizer = tf_text.WhitespaceTokenizer()
  
          @tf.function(
              input_signature=[
                  tf.TensorSpec(
                      shape=[1], dtype=tf.string, name="input"
                  )
              ]
          )
          def call(self, input_tensor):
              input_tensor = self.tokenizer.tokenize(input_tensor)
              x = ngrams_op.ngrams(
                  input_tensor,
                  width=2,
                  axis=-1,
                  reduction_type=ngrams_op.Reduction.STRING_JOIN,
                  string_separator="|",
              )
              return {"result": x.flat_values}
  
      # Test input data.
      input_data = np.array(["foo bar"])
  
      # Define a Keras model.
      model = NgramModel()
      # Do TF.Text inference.
      tf_result = model(tf.constant(input_data))["result"]
      print(tf_result.shape)
  
      # Convert to TFLite.
      converter = tf.lite.TFLiteConverter.from_keras_model(model)
      converter.target_spec.supported_ops = [
          tf.lite.OpsSet.TFLITE_BUILTINS
      ]
      converter.allow_custom_ops = True
      tflite_model = converter.convert()
  
      # Do TFLite inference.
      interp = interpreter.InterpreterWithCustomOps(
          model_content=tflite_model,
          custom_op_registerers=tf_text.tflite_registrar.SELECT_TFTEXT_OPS,
      )
      print(interp.get_signature_list())
      tn = interp.get_signature_runner("serving_default")
      output = tn(input=input_data)
      if tf.executing_eagerly():
          tflite_result = output["result"]
      else:
          tflite_result = output["output_1"]
  
      # Assert the results are identical.
      self.assertAllEqual(tflite_result, tf_result)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numpy
  import tensorflow
  import tensorflow_text
  from tensorflow.lite.python import interpreter
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops.ragged import ragged_factory_ops
  from tensorflow.python.platform import test
  from tensorflow_text.core.pybinds import tflite_registrar
  from tensorflow_text.python.ops import ngrams_op
label_desc: Use image node_id 21 for calling the NgramsV2OpTest obj's underlying member method code with example usage: obj.testTfLiteRagged() and returns: dict