피드로 돌아가기
ให้ AI พูดภาษาไทยได้ด้วย Garudust Agent + iApp TTS
Dev.toDev.to
AI/ML

Pluggable Script Tool 기반의 iApp TTS 통합 및 PCM-to-WAV 변환 설계

ให้ AI พูดภาษาไทยได้ด้วย Garudust Agent + iApp TTS

Garudust2026년 5월 19일2intermediate

Context

Garudust Agent 내 텍스트 응답을 음성으로 확장하기 위한 TTS 인터페이스 필요성 증대. 하드코딩 없는 유연한 Provider 교체와 API 기반의 외부 TTS 서비스 연동 구조 설계가 요구됨.

Technical Solution

  • Pluggable Script Tool 구조를 통한 런타임 시 tool.yaml 및 run.py 동적 로딩 체계 구축
  • Provider Profile 설정을 통해 API Endpoint와 Key를 분리하여 코드 수정 없는 Provider 스위칭 구현
  • iApp TTS API의 Raw PCM 데이터 포맷을 범용 재생이 가능한 RIFF WAV 16-bit mono 24kHz로 변환하는 pcm_to_wav 래퍼 로직 설계
  • struct.pack를 활용한 바이너리 헤더 직접 생성을 통해 오디오 파일의 호환성 확보
  • Environment Variable을 통한 API Key 주입으로 보안성과 환경별 설정 유연성 강화

1. 외부 API 연동 시 Provider Profile 패턴을 적용해 코드 수정 없이 환경 설정을 통한 서비스 교체 가능 여부 검토

2. Raw 바이너리 데이터를 처리할 때 표준 헤더(WAV 등)를 추가하는 변환 레이어 설계로 클라이언트 호환성 확보

3. 플러그인 아키텍처 도입 시 Registry 기반의 자동 등록 시스템을 통해 확장성 확보

원문 읽기