마이크로소프트에서 오픈 소스로 공개한 최첨단 다자간 대화 음성 합성 AI 모델로, 최대 90분 길이의 최대 4명의 다른 화자가 표현하는 대화 오디오 생성을 지원합니다.
VibeVoice - 마이크로소프트의 최첨단 오픈소스 음성 합성 프레임워크
프로젝트 개요
VibeVoice는 마이크로소프트 리서치에서 개발한 혁신적인 오픈소스 프레임워크로, 텍스트에서 팟캐스트와 같이 표현력이 풍부한 장문의 다중 화자 대화 오디오를 생성하는 데 특화되어 있습니다. 이 프레임워크는 기존 텍스트 음성 변환(TTS) 시스템이 확장성, 화자 일관성, 자연스러운 전환 측면에서 겪는 주요 과제들을 해결합니다.
핵심 기술 혁신
연속 음성 토크나이저
VibeVoice의 핵심 혁신은 7.5Hz의 초저프레임률로 작동하는 연속 음성 토크나이저(음향 및 의미론적)를 사용하는 것입니다. 이 토크나이저는 긴 시퀀스 처리의 계산 효율성을 크게 향상시키면서 오디오 충실도를 효과적으로 유지합니다.
Next-Token 확산 프레임워크
VibeVoice는 텍스트 컨텍스트와 대화 흐름을 이해하기 위해 대규모 언어 모델(LLM)을 활용하고, 고충실도 음향 세부 정보를 생성하기 위해 확산 헤드를 사용하는 next-token 확산 프레임워크를 채택합니다.
주요 기능
🎯 핵심 기능
- 초장문 오디오 생성: 최대 90분 길이의 음성 합성 가능
- 다중 화자 대화 지원: 최대 4명의 다른 화자 지원, 기존 많은 모델의 1-2명 화자 제한 돌파
- 교차 언어 합성: 영어 및 중국어 지원, 교차 언어 내레이션 가능 (예: 영어 프롬프트 → 중국어 음성)
- 기본 노래 합성: 기본적인 노래 합성 기능 제공
🏗️ 기술 아키텍처
VibeVoice는 1.5B 매개변수의 LLM(Qwen2.5-1.5B)을 기반으로 하며, 계산 효율성과 긴 시퀀스의 일관성을 위해 모두 낮은 프레임률(7.5Hz)로 작동하도록 설계된 두 가지 새로운 토크나이저(음향 및 의미론적)를 통합합니다.
기술 구성 요소:
- 음향 토크나이저: 미러 인코더-디코더 구조(각 약 340M 매개변수)를 가진 σ-VAE 변형으로, 24kHz 원본 오디오에서 3200배 다운샘플링을 구현
- 의미론적 토크나이저: ASR 프록시 작업을 통해 훈련된 이 인코더 전용 아키텍처는 음향 토크나이저의 설계를 미러링
- 확산 디코더 헤드: 경량(약 123M 매개변수) 조건부 확산 모듈이 음향 특징 예측
모델 버전
모델 | 컨텍스트 길이 | 생성 길이 | 다운로드 링크 |
---|---|---|---|
VibeVoice-1.5B | 64K | ~90분 | HuggingFace |
VibeVoice-7B | 64K | ~90분 | HuggingFace |
VibeVoice-0.5B-Streaming | - | - | 출시 예정 |
설치 및 사용
환경 준비
CUDA 환경 관리를 위해 NVIDIA Deep Learning Container 사용을 권장합니다:
# Docker 컨테이너 시작
sudo docker run --privileged --net=host --ipc=host --ulimit memlock=-1:-1 --ulimit stack=-1:-1 --gpus all --rm -it nvcr.io/nvidia/pytorch:24.07-py3
# 환경에 flash attention이 없는 경우 수동으로 설치해야 합니다.
pip install flash-attn --no-build-isolation
설치 단계
# 프로젝트 클론
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice/
# 의존성 설치
pip install -e .
apt update && apt install ffmpeg -y
사용 방법
Gradio 데모 인터페이스
# 1.5B 모델
python demo/gradio_demo.py --model_path microsoft/VibeVoice-1.5B --share
# 7B 모델
python demo/gradio_demo.py --model_path WestZhang/VibeVoice-Large-pt --share
파일에서 추론
# 단일 화자 음성
python demo/inference_from_file.py --model_path microsoft/VibeVoice-1.5B --txt_path demo/text_examples/1p_abs.txt --speaker_names Alice
# 다중 화자 음성
python demo/inference_from_file.py --model_path microsoft/VibeVoice-1.5B --txt_path demo/text_examples/2p_zh.txt --speaker_names Alice Yunfan
활용 시나리오
- 팟캐스트 제작: 최대 4개의 목소리로 최대 90분 길이의 다중 진행자 대화 오디오 생성
- 오디오북 제작: 감성 풍부한 내레이션을 생성하여 오디오북을 더욱 생생하게 만듦
- 대화 시스템: 다중 턴 대화 시나리오에서 자연스러운 음성 생성
- 콘텐츠 제작: 오디오 콘텐츠 자동 생성
기술적 한계
현재 제한 사항
- 언어 제한: 영어 및 중국어만 지원
- 비음성 오디오: 모델은 음성 합성에 중점을 두며, 배경 음악이나 음향 효과는 처리하지 않음
- 겹치는 음성: 현재 모델은 겹치는 대화 구간 생성을 지원하지 않음
중국어 음성 관련 유의사항
중국어 음성 합성 시 간헐적인 불안정성이 발생할 수 있으며, 다음을 권장합니다:
- 중국어 텍스트에도 영어 구두점(쉼표와 마침표만 사용하는 것이 가장 좋음)을 사용하십시오.
- 7B 모델 버전을 사용하십시오. 안정성이 훨씬 더 좋습니다.
사용 책임 및 제한
연구 목적
VibeVoice를 추가 테스트 및 개발 없이 상업적 또는 실제 응용 프로그램에 사용하는 것을 권장하지 않습니다. 이 모델은 연구 및 개발 목적으로만 사용됩니다.
잠재적 위험
딥페이크 및 허위 정보의 잠재력: 고품질 합성 음성은 사칭, 사기 또는 허위 정보 유포를 위한 설득력 있는 가짜 오디오 콘텐츠를 만드는 데 악용될 수 있습니다. 사용자는 텍스트 스크립트가 신뢰할 수 있는지 확인하고, 내용의 정확성을 검토하며, 생성된 콘텐츠를 오해의 소지가 있는 방식으로 사용하지 않도록 해야 합니다.
문의처
제안, 질문 또는 기술 내 비정상적이거나 불쾌한 행동을 발견하시면 다음으로 연락 주십시오: VibeVoice@microsoft.com