[TensorFlow] TensorFlow Serving 다중 모델 로딩
- 인공지능
- 2022. 3. 22. 21:28
참조
소개
- TensorFlow Serving 에서 단일 모델이 아닌, 다중 모델 로딩 조사하는 방법에 대해서 조사합니다.
- Models.Config 파일 설정을 통해, TensorFlow Serving 에서 다중 모델 로딩 가능합니다.
- 해당 내용 조사 및 POC 진행합니다.
1. 로컬에 models.config 파일 생성 및 정보 작성
- TensorFlow Serving에서 다중 모델 로딩하려면, models.config 파일이 필요합니다.
- models.config 파일에는 모델 서버 구성 정보들을 설정합니다.
단일 모델 인 경우
- 아래 config 설정 파일은 현재 1개의 Xception 모델이 설정되어 있습니다.
- 해당 내용을 토대로 TensorFlow Serving Container 를 실행하게 되면, Xception 모델 1개만 로딩 됩니다.
model_config_list {
config {
name: 'Xception'
base_path: '/models/model/Xception/'
model_platform: 'tensorflow'
}
}
다중 모델 인 경우
- 아래 Config 설정 파일은 현재 2개의 Xception, vgg_19 모델이 설정되어 있습니다.
- 해당 내용을 토대로 TensorFlow Serving Container 를 실행하게 되면, Xception, vgg_19 2개의 모델이 로딩됩니다.
- 이와 같이 config 설정을 통해, 다중 모델 설정 가능합니다.
model_config_list {
config {
name: 'Xception'
base_path: '/models/model/Xception/'
model_platform: 'tensorflow'
}
config {
name: 'vgg_19'
base_path: '/models/model/vgg_19/'
model_platform: 'tensorflow'
}
}
2. 단일 모델 Config 설정 후, TensorFlow Serving Container 실행
- 단일 모델 Config 설정 후, TensorFlow Serving Container 실행하여 해당 모델이 정상적으로 Loading 되는지 확인 진행합니다.
- 다음 Docker 명령어를 통해 TensorFlow Serving Container 실행합니다.
docker run -t --rm --name=tf-serving-mnist \
-p 8500:8500 \
-p 8501:8501 \
-v "C:/src/test_data/save_model/tensorflow/:/models/model" \
tensorflow/serving \
--model_name=mnist-model \
--model_config_file=/models/model/models.config \
--model_config_file_poll_wait_seconds=60
- -v 볼륨 경로는 본인 로컬 환경에 맞춰서 설정해 주면 됩니다.
실행 결과
- 실행 결과 Xception 모델 1개만 Loading 된 것을 로그로 확인할 수 있습니다.
3. 다중 모델 Config 설정 후, TensorFlow Serving Container 실행
- 다중 모델 Config 설정 후, TensorFlow Serving Container 실행하여 해당 모델이 정상적으로 Loading 되는지 확인 진행합니다.
- 다음 Docker 명령어를 통해 TensorFlow Serving Container 실행합니다.
docker run -t --rm --name=tf-serving-mnist \
-p 8500:8500 \
-p 8501:8501 \
-v "C:/src/test_data/save_model/tensorflow/:/models/model" \
tensorflow/serving \
--model_name=mnist-model \
--model_config_file=/models/model/models.config \
--model_config_file_poll_wait_seconds=60
- -v 볼륨 경로는 본인 로컬 환경에 맞춰서 설정해 주면 됩니다.
실행 결과
- 실행 결과 XCeption, vgg_19 2개의 모델이 Loading 된 것을 로그로 확인할 수 있습니다.
728x90
'인공지능' 카테고리의 다른 글
[TensorFlow] TensorFlow Serving CPU, GPU 동작 확인 (0) | 2022.03.25 |
---|---|
[TensorFlow] gRPC 클라이언트에서 models.config 구성 된 Model Reloading (0) | 2022.03.23 |
[TensorFlow] TF Serving 1번 버전 없이 다른 버전 동작 기능 확인 (0) | 2022.03.22 |
[TensorFlow] Tensorflow Serving 모델 업데이트 방법 (0) | 2022.03.22 |
[Tensorflow] Tensorflow Serving models.config 설정 방법 (0) | 2022.03.21 |
이 글을 공유하기