def METHOD_NAME(self):
    """
    This method uses TFLite reference kernels to generate reference output.
    It returns randomized inputs and reference outputs.
    """
    assert self.serial_model is not None, "TFLite model was not created."
    output_tolerance = None
    if tf.__version__ < LooseVersion("2.5.0"):
        output_tolerance = 1
        interpreter = tf.lite.Interpreter(model_content=self.serial_model)
    else:
        output_tolerance = 0
        interpreter = tf.lite.Interpreter(
            model_content=self.serial_model,
            experimental_op_resolver_type=tf.lite.experimental.OpResolverType.BUILTIN_REF,
            experimental_preserve_all_tensors=False,
        )
    interpreter.allocate_tensors()
    input_details = interpreter.get_input_details()
    output_details = interpreter.get_output_details()
    # Generate predictable randomized input
    seed = 0
    input_data = {}
    for input_detail in input_details:
        input_values = self.generate_randomized_input_data(
            seed, input_detail["shape"], input_detail["dtype"]
        )
        interpreter.set_tensor(input_detail["index"], input_values)
        input_data.update({input_detail["name"]: input_values})
    interpreter.invoke()
    # Obtain the expected output from interpreter
    expected_output_data = {}
    for output_detail in output_details:
        expected_output_data.update(
            {output_detail["name"]: interpreter.get_tensor(output_detail["index"])}
        )
    return input_data, expected_output_data, output_tolerance