Closed unhochoi closed 2 years ago
따라서, NLP 모델별 입력 형식을 파악 중
import tensorflow as tf
run_model = tf.function(lambda x: model(x))
concrete_func = run_model.get_concrete_function(
tf.TensorSpec(model.inputs[0].shape, model.inputs[0].dtype))
model.save('lstm_idmb_model', save_format="tf", include_optimizer=False, signatures=concrete_func)
TFLite 모델을 사용하기 위해선, [import tflite_runtime.interpreter as tflite] 를 호출해야함
import tflite_runtime.interpreter as tflite
model = tflite.Interpreter(
"./model.tflite",
experimental_delegates=[tflite.load_delegate('libedgetpu.so.1')])
또한, TFLite 모델이 정상적으로 Convert 되었는지 확인하기 위해선, 실제 데이터를 사용해 추론해봐야하며, 이때 [import tensorflow as tf] 를 호출함
import tensorflow as tf
num_words = 20000
maxlen = 80
(X_train, y_train), (X_test, y_test) = tf.keras.datasets.imdb.load_data(num_words=num_words)
하지만, [import tensorflow as tf] 라인 실행 시, 아래와 같은 에러가 발생함
ImportError: generic_type: type "InterpreterWrapper" is already registered!
원인을 파악해본 결과, [import tflite_runtime.interpreter as tflite] 와 [import tensorflow as tf] 가 같이 Import 되면서 생긴 오류로 파악
두 가지 라이브러리 중 하나만 사용한다면 오류가 발생하지 않지만, 그렇게 되면 데이터를 다른 방식으로 가져와야하므로, 적절한 해결 방안을 고안 중
오케이. 운호야 다양한 에러가 발생하는구나. 이 이슈의 코멘트가 별개의 이슈로 만들어진것 같으니 이건 그냥 close 하고 각 세부 이슈별로 트래킹 하는게 좋아보이기는 한다.
넵, 알겠습니다.
Nano 에서 BERT 추론 중 아래와 같은 에러가 발생하고 있으며, 원인 파악 중