Triton Inference Server ensemble model batch size error
Triton inference server는 ensemble model을 만들어서 backend에서 한번에 결과를 출력할 수 있다.
이때 ensemble model에서는 config.pbtxt를 작성하는데, config.pbtxt에 scheduling한 모델 순서대로 process가 진행되고 각 모델 별로 input과 output의 name을 설정한다.
그리고, scheduling에 포함되어 있는 각 모델의 폴더 내에 있는 config.pbtxt와 이름을 맞춰주고, input과 output의 shape를 지정해 주게 된다.
만약 ensemble 방법이 궁금하면 밑의 링크를 보면 된다.
[TIS] Triton Inference Server model ensemble
Triton Inference Server란 Nvidia에서 만든 Triton Inference Server는 여러 프레임워크에 대한 모델들을 사용할 수 있고, cpu와 gpu의 처리량과 활용도를 극대화 해준다. Triton Inference Server에서 모델을 en..
shuka.tistory.com
그런데, 모델들의 설정을 끝내고 test를 진행하면 밑의 이미지와 같이 batch size가 맞지 않는다는 오류가 뜰 때가 있다.
ensemble model batch size error에 대한 해결 방법
해당 오류는 이전의 모델에서 output으로 값들을 넘겨줄 때 batch size가 다르게 넘겨주면 해당 오류가 발생한다.
만약 output_0와 output_1이 있다고 할 때, output_0:3x30x30이고 output_1:5x30x30이면 batch size가 다르기 떄문에 오류가 발생한다.
그래서 다른 방법이 있을지는 모르겠지만, 해당 오류를 해결하기 위해 batch size shape를 맞춰주고, 다음 모델에서 input으로 받아서 다시 원래의 shape로 변환해주면 해결됐다.
댓글