Triton-Kaldi Rescore Lattice Postprocessor 통합 및 빌드 이슈 해결

Source

  • Field Notes/ReturnZero/Daily Notes/Day 246. 2022-03-03.md

Summary

이 노트는 Triton-Kaldi 백엔드에 Rescore Lattice Postprocessor를 통합하는 과정에서 발생한 빌드 오류와 설계 문제를 기록한다. 주요 이슈는 HAVE_CUDA 매크로 누락으로 인한 링크 에러로, CMake에 -DHAVE_CUDA=1을 추가하거나 헤더 포함 전 정의로 해결했다. 또한 Rescore 사용 여부를 요청(Request) 단위로 결정하는 아키텍처를 논의하며, RescoreLatticePostprocessor의 초기화 방식과 입력 파라미터 구조를 정의했다. 마지막으로 word_boundary.int 파일 경로 관련 설정 파일 파싱 에러를 확인했다.

Key Points

  • HAVE_CUDA 매크로 누락으로 인한 rescore-lattice-postprocessor 링크 에러 발생
  • 해결책: CMake add_definitions(-DHAVE_CUDA=1) 또는 헤더 포함 전 define HAVE_CUDA 1 적용
  • RescoreLatticePostprocessor는 LatticePostprocessor와 _rescore 객체를 받아 초기화
  • Triton-Kaldi 입력(Request)에 Rescore 사용 여부를 결정하는 필드 추가 필요
  • rescore-lattice-postprocessor.conf 파일에서 word_boundary.int 경로 관련 Invalid option 에러 발생