Triton-Kaldi 오프라인 전환 및 백엔드 구조 분석

Source

  • Field Notes/ReturnZero/Daily Notes/Day 198. 2022-01-14.md

Summary

이 노트는 Triton-Kaldi를 오프라인 디코딩 방식으로 전환하기 위한 기술적 탐색 과정을 기록한다. 주요 관심사는 온라인/오프라인 디코딩 파이프라인의 차이점(동적 배치, 콜백 처리, GPU/CPU 리소스 제약), Triton Inference Server의 커스텀 백엔드 통합 방식(config.pbtxt, 라이브러리 빌드 경로), 그리고 데이터셋 입력을 위한 SCP 파일 경로 매핑이다. 개발자는 소스 코드 구조(main 함수 부재, shared library 형태)와 실제 실행 흐름(tritonserver 명령어, entrypoint 스크립트)을 추적하며 시스템 아키텍처를 이해하려 했다.

Key Points

  • Triton-Kaldi 오프라인 전환을 위한 서비스 추가 요소(로거, Redis 큐, 이벤트 루프) 식별
  • 온라인 vs 오프라인 디코딩 흐름 비교: dynamic_batcher, cuda_pipeline, best_path_callback 역할 분석
  • Triton 커스텀 백엔드 통합 방식: config.pbtxt 설정, shared library 빌드 및 설치 경로(/backends/kaldi)
  • 실행 구조 이해: main 함수 부재, tritonserver 명령어를 통한 모델 레포지토리 기반 실행
  • 데이터 입력 처리: SCP 파일을 통한 오디오 파일 경로 매핑(LibriSpeech, Sommers TDF200812 테스트셋)