TFLite model produces wrong output for constant addition
Hi @dengyinlin 

Input/Output ordering is not guaranteed to be preserved during conversion when the model is a static computation graph . In case of input and outputs in which the ordering matters, please use signatures to map TF inputs/outputs to tflite inputs/outputs and convert using `from_concrete_functions()`. 

```
m = Model()
concrete_func = m.call.get_concrete_function(
    x1=tf.TensorSpec(shape=(1,), dtype=tf.float32),
    x2=tf.TensorSpec(shape=(1,), dtype=tf.float32)
)

converter = tf.lite.TFLiteConverter.from_concrete_functions([concrete_func])
```
Please check this working [gist](https://colab.research.google.com/gist/pjpratik/8754db6ed5acccd2c5205e77f3a7d4e3/61992.ipynb).

Thanks. This issue is stale because it has been open for 7 days with no activity. It will be closed if no further activity occurs. Thank you. Thanks @pjpratik ! closing the issue as intended behavior. Are you satisfied with the resolution of your issue?
<a href="https://docs.google.com/forms/d/e/1FAIpQLSfaP12TRhd9xSxjXZjcZFNXPGk4kc1-qMdv3gc6bEP90vY1ew/viewform?entry.85265664=Yes&entry.2137816233=https://github.com/tensorflow/tensorflow/issues/61992">Yes</a>
<a href="https://docs.google.com/forms/d/e/1FAIpQLSfaP12TRhd9xSxjXZjcZFNXPGk4kc1-qMdv3gc6bEP90vY1ew/viewform?entry.85265664=No&entry.2137816233=https://github.com/tensorflow/tensorflow/issues/61992">No</a>

### 1. System information

- OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 20.04
- TensorFlow installation (pip package or built from source): pip
- TensorFlow library (version, if pip package or github SHA, if built from source): 2.15.0-dev20230926

### 2. Code

The TensorFlow Lite model in the example below should output `x1+x2+x2=7+1+1=9`. However, it produces a wrong output `x1+x1+x2=7+7+1=15`. This indicates that it confuses the order of the two inputs.

```
import tensorflow as tf
import numpy as np

a = tf.constant(7.0, shape=[1])
b = tf.constant(1.0, shape=[1])
input_data = [a, b]


def _evaluateTFLiteModel(tflite_model, input_data):
    interpreter = tf.lite.Interpreter(model_content=tflite_model)
    interpreter.allocate_tensors()

    # Get input and output tensors.
    input_details = interpreter.get_input_details()
    output_details = interpreter.get_output_details()

    # Test model on random input data.
    for i in range(len(input_details)):
        # input_shape = input_details[i]['shape']
        # input_data_i = np.array(np.random.random_sample(input_shape), dtype=np.float32)
        interpreter.set_tensor(input_details[i]['index'], input_data[i])

    interpreter.invoke()

    # The function `get_tensor()` returns a copy of the tensor data.
    # Use `tensor()` in order to get a pointer to the tensor.
    output_data = [interpreter.get_tensor(output_details[i]['index'])
                   for i in range(len(output_details))]
    return output_data


class Model(tf.keras.Model):

    def __init__(self):
        super(Model, self).__init__()

    @tf.function(input_signature=[tf.TensorSpec(shape=x.shape, dtype=x.dtype) for x in input_data])
    def call(self, x1, x2):
        return ((x1 + x2) + x2)

m = Model()

converter = tf.lite.TFLiteConverter.from_keras_model(m)
tflite_model = converter.convert()

print(_evaluateTFLiteModel(tflite_model, input_data))
```
Output:
```
[array([15.], dtype=float32)]
```
Keras model:
```
import tensorflow as tf
print(tf.__version__)

import tensorflow as tf
import numpy as np


class Model(tf.keras.Model):

    def __init__(self):
        super(Model, self).__init__()

    def call(self, x1, x2):
        return ((x1 + x2) + x2)



m = Model()

a = tf.constant(7.0, shape=[1])
b = tf.constant(1.0, shape=[1])
input_data = [a, b]
print(m(a, b))
```
Output:
```
tf.Tensor([9.], shape=(1,), dtype=float32)
```

### 3. Failure after conversion
Wrong results.
