MARS5: 혁신적인 음성 운율을 지원하는 새로운 음성 모델 / MARS5: A novel speech model for insane prosody
소개
MARS5는 CAMB.AI에서 개발한 최첨단 TTS 모델로, 두 단계의 AR-NAR 파이프라인을 통해 동작합니다. 단 5초의 오디오와 텍스트 조각만으로도 다양한 프로소디 시나리오에서 높은 품질의 음성을 생성할 수 있습니다.
이 모델은 텍스트와 참조 오디오를 입력 받아 다양한 프로소디 시나리오에서도 자연스러운 음성을 생성할 수 있습니다. 특히 스포츠 해설이나 애니메이션 같은 프로소디가 어려운 시나리오에서도 뛰어난 성능을 보입니다. MARS5의 독특한 점은 NAR 컴포넌트의 혁신적인 설계로, 자세한 내용은 Architecture 문서에서 확인할 수 있습니다.
MARS5는 기존의 TTS 모델들과 비교하여 몇 가지 혁신적인 특징을 갖추고 있습니다. 기존 모델들은 주로 단순한 텍스트-음성 변환에 중점을 두었던 반면, MARS5는 복잡한 프로소디를 처리할 수 있는 능력을 갖추고 있습니다. 예를 들어, DeepMind의 Tacotron2와 비교했을 때, MARS5는 더 짧은 참조 오디오로도 높은 품질의 음성을 생성할 수 있습니다.
주요 특징
-
AR-NAR 파이프라인: 두 단계의 파이프라인으로 텍스트와 참조 오디오를 입력 받아 고품질 음성을 생성.
-
프로소디(prosody, 운율) 제어: 쉼표나 대문자와 같은 단순한 텍스트 기호를 통해 자연스럽게 프로소디를 제어 가능.
-
심층 복제: 참조 오디오의 텍스트를 제공하여 더 높은 품질의 복제 음성을 생성.
-
다양한 활용: 스포츠 해설, 애니메이션 등 다양한 시나리오에서 사용 가능.
데모: 샘플 음성 듣기 & 내 음성으로 생성하기
https://179c54d254f7.ngrok.app/
사용 방법
설치
필수 라이브러리 설치:
pip install --upgrade torch torchaudio librosa vocos encodec
모델 사용
# 모델 불러오기
import torch, librosa
mars5, config_class = torch.hub.load('Camb-ai/mars5-tts', 'mars5_english', trust_repo=True)
# 참조 오디오와 텍스트 불러오기
wav, sr = librosa.load('<path to arbitrary 24kHz waveform>.wav', sr=mars5.sr, mono=True)
wav = torch.from_numpy(wav)
ref_transcript = "<transcript of the reference audio>"
# 음성 생성
deep_clone = True
cfg = config_class(deep_clone=deep_clone, rep_penalty_window=100, top_k=100, temperature=0.7, freq_penalty=3)
ar_codes, output_audio = mars5.tts("The quick brown rat.", wav, ref_transcript, cfg=cfg)
라이선스
이 프로젝트는 GNU AGPL 3.0으로 공개 및 배포되고 있습니다. 다른 라이선스로 사용을 원하시는 경우, help@camb.ai로 문의해 주세요.
MARS5 GitHub 저장소
https://github.com/Camb-ai/MARS5-TTS
더 읽어보기 / 참고 프로젝트들
TransFusion
https://github.com/RF5/transfusion-asr
Multinomial diffusion
https://github.com/ehoogeboom/multinomial_diffusion
Mistral-src
https://github.com/mistralai/mistral-src
minbpe
https://github.com/karpathy/minbpe
gemelo-ai's encodec Vocos
https://github.com/gemelo-ai/vocos
librosa for their .trim()
code
librosa.effects.trim — librosa 0.11.0rc0 documentation
이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다.
파이토치 한국 사용자 모임
이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일
로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~