NeuralITN TRT 변환 성공 및 Triton 포팅 과정

Source

  • Field Notes/ReturnZero/Daily Notes/Day 575. 2023-01-26.md

Summary

NeuralITN 모델을 TensorRT(TRT)로 변환하는 과정에서 ONNX 최적화로 인한 입력값(input) 누락 문제를 해결하고, Triton Inference Server 환경에 성공적으로 포팅함. 주요 장애물은 PyTorch ONNXExporter 의 최적화로 인해 계산에 필요한 token ids 입력이 제거되어 오차가 발생했으나, 이를 확인하고 해결함. 또한 Triton 이미지 내 전/후처리 파이프라인 구성 및 Hydra 설정 파일 활용 방안을 정리함.

Key Points

  • NeuralITN 모델의 TensorRT 변환 성공 (약 1주일 소요)
  • 문제 원인: ONNX 변환 시 최적화로 인해 3 개 중 1 개의 입력 (token ids) 이 제거됨
  • 증상: ONNX 모델과 원본 PyTorch 모델 간 출력 오차 발생 (tolerance 0.001 초과)
  • 해결 과정: PyTorch/Lightning 버전 다운그레이드 시도 실패 후, 입력 누락 문제 확인 및 해결
  • Triton 포팅: Hydra 설정 파일 읽기, 전/후처리 (String-Tensor 변환) 파이프라인 구성
  • 성능 테스트 계획: trtexec 를 이용한 max batch size 탐색 및 성능 로그 저장