Fails to convert SplitV with quantization
This issue can be labeled with "Ubuntu20.04" so that it is easier for contributors to find this OS-specific issue. @DiXcipuli 
I tried to replicate the issue on Colab using TF v2.11 but facing a different error. Could you please provide the code with all dependencies(saved_model_dir & representative_dataset) to replicate the issue reported here and find the gist [here](https://colab.research.google.com/gist/tiruk007/87756d2912a44b7c4a9825cafc630579/untitled106.ipynb) for reference.

Thank you!
 Sorry, I may have confuse myself, to reproduce the error, I need to add the **allow_custom_ops = True**, so we have:
(I am not allowed to share my code, so I have to keep it basic)

```
import tensorflow as tf

quant = False

converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
converter.allow_custom_ops = True
converter.experimental_new_converter = True

if quant:
  converter.optimizations = [tf.lite.Optimize.DEFAULT]
  converter.representative_dataset = representative_dataset
  converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
  converter.inference_input_type = tf.int8  # or tf.uint8
  converter.inference_output_type = tf.int8  # or tf.uint8
else:
  converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS]

tflite_quant_model = converter.convert()
```
Which works with **quant = False**, but not with **quant=True**, giving the original error:
`There are unresolved custom ops: [SplitV]Encountered unresolved custom op: SplitV.`

But moreover, after some test, I realized that turning to **False** the **allow_custom_ops** , no matter the state of **quant**, gives me this error:

```
Some ops are not supported by the native TFLite runtime, you can enable TF kernels fallback using TF Select. See instructions: https://www.tensorflow.org/lite/guide/ops_select
TF Select ops: SplitV
```

But I can see on the TF website: https://www.tensorflow.org/mlir/tfl_ops#tflsplit_v_mlirtflsplitvop that **tfl.split_v** is implemented. However, I can't find out from which version of tensorflow it is available. @DiXcipuli The MLIR based conversion is supported and it can be enabled by adding `converter.experimental_new_converter = True` which is true by default in latest versions.

Can you please try in latest version(v2.11), also try adding the aforementioned flag and let us know if it helps.  Thanks! This issue has been automatically marked as stale because it has no recent activity. It will be closed if no further activity occurs. Thank you.
 Closing as stale. Please reopen if you'd like to work on this further.
 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/59535">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/59535">No</a>
 @pjpratik @tiruk007 I'd like to re-open the issue because I am still meeting errors when converting models having SplitV in it.

The setup is the same as describe in the first post, but as a summary:

Converting model from **Torch** to **TFlite** (**Torch** -> **Onnx** -> **Tensorflow** -> **TFlite**. The error occurs from **Tensorflow** to **TFlite**.
In the converter parameter, I only enable **tf.lite.OpsSet.TFLITE_BUILTINS_INT8** and set **allow_custom_ops** to **False,** as I want to run my model on the basic **TFlite** engine. I have been using **Tensorflow 2.8.1** and **2.11.1**, and both return this error:

```
Some ops are not supported by the native TFLite runtime, you can enable TF kernels fallback using TF Select. See instructions: https://www.tensorflow.org/lite/guide/ops_select
TF Select ops: SplitV
Details:
        tf.SplitV(tensor<1x62x13x13xf32>, tensor<2xi64>, tensor<i32>) -> (tensor<1x30x13x13xf32>, tensor<1x32x13x13xf32>) : {device = ""}
        tf.SplitV(tensor<1x62x26x26xf32>, tensor<2xi64>, tensor<i32>) -> (tensor<1x30x26x26xf32>, tensor<1x32x26x26xf32>) : {device = ""}
        tf.SplitV(tensor<1x62x52x52xf32>, tensor<2xi64>, tensor<i32>) -> (tensor<1x30x52x52xf32>, tensor<1x32x52x52xf32>) : {device = ""}
        tf.SplitV(tensor<1x62x7x7xf32>, tensor<2xi64>, tensor<i32>) -> (tensor<1x30x7x7xf32>, tensor<1x32x7x7xf32>) : {device = ""}
```

From what I understood, there is a a **TFlite SplitV Ops**: https://www.tensorflow.org/mlir/tfl_ops#tflsplit_v_mlirtflsplitvop 
So I am wondering why it is not being converted into this equivalent.

I am also a bit confused by the documentation. This error refers to **tf.SplitV**, but from what I have seen, SplitV is under **tf.raw_ops.SplitV**, and not **tf.SplitV**? (https://www.tensorflow.org/versions/r2.8/api_docs/python/tf/raw_ops/SplitV)
Thanks!

(Here is a simplified sample to reproduce:)

```
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir=path_tf,
                                                       signature_keys=None,
                                                       tags=None)
converter.allow_custom_ops = False
converter.experimental_new_converter = True
converter.target_spec.supported_ops = tf.lite.OpsSet.TFLITE_BUILTINS,

model_tflite = converter.convert()
```
 Hi @DiXcipuli 

Could you please share the saved model dir or a toy model to reproduce the issue? That will help us to better investigate the cause.

Thanks. Here is a pre-trained model from Nanodet (**NanoDet-m** in their Zoo) that I converted to **Torch->Onnx->Tensroflow**:
[NanoDet-m.zip](https://github.com/tensorflow/tensorflow/files/11661301/NanoDet-m.zip)

I could replicate the error with it.
Thanks! Hi @DiXcipuli 

Thanks for sharing.

I was a able to reproduce this issue. Please find the gist [here](https://colab.research.google.com/gist/pjpratik/f5e5dd51db7e292296596871cd128a12/59535.ipynb).

The `SplitV` is  listed as builtin op as I can see
https://github.com/tensorflow/tensorflow/blob/0eeb07804e67c12e05c954b581333bca322ebf99/tensorflow/lite/builtin_ops.h#L132

@pkgoogle Can you please look into this issue?

Thanks.
 Hi @zichuan-wei, can you please take a look?
 Hi @pjpratik & @DiXcipuli,

Although we have support for splitV op in TFLite, the datatype for this is not complete: for the size_split, split_dim inputs, TFLite need them to be in int32, but the source model is having int64 as input. 

source:https://github.com/tensorflow/tensorflow/blob/14f08e56d46936de39a9a0e09225eebd9ad836d9/tensorflow/compiler/mlir/lite/ir/tfl_ops.td#L3728 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. This issue was closed because it has been inactive for 7 days since being marked as stale. Please reopen if you'd like to work on this further. 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/59535">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/59535">No</a>

### 1. System information

- Ubuntu20.04
- TensorFlow installation : conda
- TensorFlow library 2.8.1

### 2. Code

When converting a model from Tensorflow to TFlite, I run into errors (regarding SplitV, check error below) when setting the pipeline with Int8 quantization, but not when using regular conversion (without quantization).

I basically follow those instructions:

```
import tensorflow as tf
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
converter.representative_dataset = representative_dataset
converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
converter.inference_input_type = tf.int8  # or tf.uint8
converter.inference_output_type = tf.int8  # or tf.uint8
tflite_quant_model = converter.convert()
```

I get the following error:

`There are unresolved custom ops: [SplitV]Encountered unresolved custom op: SplitV.`

It works fine if I add the SELECT_TF_OPS, but I want to keep the interpreter as small and fast as possible.
So my assumption is that the SplitV operator in TFlite is not available with the Int8 quantization?
How can I know beforehand which operator is available with the Int8 quantization?
