클라우드 없이 내 기기에서 31개 언어를 실시간으로 음성으로 변환하는 오픈소스 도구
웹페이지를 읽거나 이북을 듣는 순간, 인터넷 연결 없이도 자연스러운 목소리가 귀에 들어옵니다. 텍스트를 음성으로 바꾸는 시스템이 내 컴퓨터나 스마트폰 안에서 직접 작동하기 때문입니다. Supertonic은 ONNX Runtime을 이용해 모델이 기기에 상주하며 추론을 수행하도록 설계되어, 데이터가 외부 서버로 나가지 않는 환경을 제공합니다.
아카이브 전환과 최신 버전
이 저장소는 현재 아카이브 상태로, 개발과 공식 지원이 종료되었습니다. 코드와 모델은 supertone-oss-archive 조직 아래에서 참조용으로 보존되며, 더 이상 업데이트나 보안 패치가 제공되지 않습니다. 최신 버전인 Supertonic 3은 31개 언어를 지원하며, 이전 버전 대비 반복이나 생략 오류가 줄고 발음 정확도가 개선되었습니다. 모델 가중치는 Hugging Face의 아카이브 네임스페이스에서 다운로드할 수 있으며, 기존 v2 호환 인터페이스를 유지하여 이전 통합 코드를 그대로 사용할 수 있습니다.
기기에서 돌아가는 이유
Supertonic은 99M 파라미터의 소형 모델로, 0.7B~2B 규모의 다른 오픈소스 TTS 시스템보다 훨씬 가볍습니다. 덕분에 라즈베리파이나 전자책 리더 같은 자원 제한 하드웨어에서도 GPU 없이 CPU만으로 실시간 합성이 가능합니다. 출력 오디오는 44.1kHz 16-bit WAV 파일로, 별도의 업샘플러 없이 바로 재생할 수 있는 품질을 유지합니다. 네트워크 의존성이 없어 프라이버시를 중시하는 환경이나 오프라인 작업에 적합합니다.
자연스러운 문장 처리와 표현 태그
금융 표기, 전화번호, 기술 단위 등 복잡한 텍스트를 사전 처리 없이 올바르게 발음하도록 학습되었습니다. 예를 들어 '$5.2M'이나 '(212) 555-0142 ext. 402' 같은 표기도 맥락에 맞게 읽습니다. 또한 <laugh>, <breath>, <sigh> 같은 10개의 인라인 태그를 사용해 웃음이나 숨소리 같은 인간적인 뉘앙스를 추가할 수 있습니다. 언어를 명시하지 않고 lang="na"를 전달하면 입력 텍스트의 언어를 자동으로 감지하여 처리합니다.
다양한 언어 생태계 지원
Python, Node.js, Java, C++, C#, Go, Swift, Rust, Flutter 등 주요 언어와 플랫폼에서 사용할 수 있는 예제 코드가 제공됩니다. 브라우저에서는 WebGPU를 활용해 클라이언트 사이드에서 추론을 수행할 수 있습니다. 각 언어별 디렉토리에 독립된 README가 있어 해당 환경에 맞는 설치와 실행 방법을 확인할 수 있습니다. Python SDK는 pip install supertonic으로 설치할 수 있지만, 아카이브 모델과 함께 사용하려면 로컬 assets/ 디렉토리를 지정해야 합니다.
사용 전 확인 사항
이 프로젝트는 더 이상 유지보수되지 않으므로, 새로운 버그 수정이나 기능 추가를 기대해서는 안 됩니다. 모델은 OpenRAIL-M 라이선스, 샘플 코드는 MIT 라이선스로 배포되며, 상업적 사용 전 라이선스 조항을 반드시 검토해야 합니다. 호스팅 데모나 Voice Builder 서비스는 아카이브에 포함되지 않으며, 해당 서비스는 2026년 8월 31일 이후 접근이 불가능해집니다. 로컬 환경에서 모델을 다운로드하고 실행하는 과정은 네트워크 연결이 필요하지만, 추론 단계에서는 인터넷이 필요 없습니다.