마이크로소프트 VibeVoice란? 오픈소스 음성 AI 모델 사용법

Ashley Innocent

Ashley Innocent

2 April 2026

마이크로소프트 VibeVoice란? 오픈소스 음성 AI 모델 사용법

요약 (TL;DR)

VibeVoice는 Microsoft의 오픈 소스 음성 AI 제품군으로 세 가지 모델이 포함됩니다: 텍스트 음성 변환(최대 90분, 4명 화자)을 위한 VibeVoice-1.5B, 스트리밍 TTS를 위한 VibeVoice-Realtime-0.5B, 그리고 음성 인식(60분 오디오, 50개 이상 언어, 7.77% WER)을 위한 VibeVoice-ASR. 모든 모델은 MIT 라이선스를 따르며 로컬에서 실행됩니다. 이 가이드에서는 설치, 사용법 및 API 통합에 대해 다룹니다.

소개

Microsoft는 VibeVoice를 2026년 초에 오픈 소스 음성 AI 프레임워크로 출시했습니다. 이 프레임워크에는 음성 합성(텍스트 음성 변환)과 음성 인식(자동 음성 인식)을 위한 모델이 모두 포함되어 있으며, 클라우드 종속성 없이 사용자의 하드웨어에서 로컬로 실행됩니다.

이 프레임워크에는 세 가지 모델이 있습니다:

TTS 모델은 출시 후 논란을 야기했습니다. Microsoft는 음성 복제 오용을 발견한 후 주 GitHub 저장소를 일시적으로 비활성화했습니다. 커뮤니티는 코드를 포크했고, Microsoft는 나중에 생성된 오디오에 삽입되는 가청 AI 고지 사항과 출처 확인을 위한 비가청 워터마킹과 같은 추가 안전 장치를 포함하여 저장소를 다시 활성화했습니다.

VibeVoice-ASR은 이제 클라우드 배포를 위해 Azure AI Foundry에서 사용할 수 있습니다. TTS 모델은 MIT 라이선스와 함께 연구 중심의 모델로 남아 있습니다.

이 가이드에서는 설치, 텍스트 음성 변환 생성, 음성 인식, API 통합 및 Apidog를 사용한 음성 AI 엔드포인트 테스트 방법을 안내합니다.

button

VibeVoice 작동 방식: 아키텍처 개요

토크나이저의 돌파구

VibeVoice의 핵심 발전은 7.5 Hz의 초저 프레임 속도로 작동하는 연속 음성 토크나이저입니다. 비교하자면, 대부분의 음성 모델은 50-100 Hz로 오디오를 처리합니다. 이러한 7-13배의 프레임 속도 감소는 모델이 컨텍스트를 벗어나지 않고 긴 시퀀스(90분 오디오)를 처리할 수 있음을 의미합니다.

시스템은 두 가지 토크나이저를 사용합니다:

다음 토큰 확산 (Next-token diffusion)

이 모델은 LLM 백본(Qwen2.5-1.5B)과 경량 확산 헤드(약 1억 2천 3백만 개 파라미터)를 결합합니다. LLM은 텍스트 컨텍스트와 대화 흐름을 처리합니다. 확산 헤드는 Classifier-Free Guidance를 사용하는 DDPM(Denoising Diffusion Probabilistic Models)을 통해 고충실도 음향 세부 정보를 생성합니다.

총 파라미터 수: 30억 (토크나이저 및 확산 헤드 포함).

훈련 접근 방식

VibeVoice는 커리큘럼 학습을 사용하여 4K, 16K, 32K, 그리고 64K 토큰과 같이 점진적으로 긴 시퀀스에서 훈련합니다. 이 단계 동안 사전 훈련된 토크나이저는 고정된 상태로 유지되며, LLM과 확산 헤드 파라미터만 업데이트됩니다. 이를 통해 모델은 단기 능력을 잊지 않고 점점 더 긴 오디오를 처리하는 방법을 배울 수 있습니다.

VibeVoice 모델 사양

모델 파라미터 용도 최대 길이 언어 라이선스
VibeVoice-1.5B 30억 (총) 텍스트 음성 변환 90분 영어, 중국어 MIT
VibeVoice-Realtime-0.5B ~0.5B 스트리밍 TTS 장문 영어, 중국어 MIT
VibeVoice-ASR ~9B 음성 인식 60분 50+개 언어 MIT

VibeVoice-1.5B (TTS)

사양
LLM 기반 Qwen2.5-1.5B
컨텍스트 길이 64K 토큰
최대 화자 수 4명 동시
오디오 출력 24kHz WAV 모노
텐서 유형 BF16
형식 Safetensors
HuggingFace 다운로드 월 62,630회
커뮤니티 포크 12개의 미세 조정 변형

VibeVoice-ASR

사양
아키텍처 기반 Qwen2.5
파라미터 ~9B
오디오 처리 단일 패스에서 최대 60분
프레임 속도 7.5 Hz
평균 WER 7.77% (8개 영어 데이터셋에서)
LibriSpeech Clean WER 2.20%
TED-LIUM WER 2.57%
언어 50+개
출력 구조화된 (누가 + 언제 + 무엇을)
지원 오디오 16kHz+의 WAV, FLAC, MP3

설치 및 설정

선행 조건

VibeVoice TTS 설치

# Clone the repository
git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice

# Install dependencies
pip install -r requirements.txt

모델은 첫 실행 시 HuggingFace에서 자동으로 다운로드됩니다. 사전 다운로드할 수도 있습니다:

from huggingface_hub import snapshot_download

# Download the 1.5B TTS model
snapshot_download(
    "microsoft/VibeVoice-1.5B",
    local_dir="./models/VibeVoice-1.5B",
    local_dir_use_symlinks=False
)

pip를 통한 설치 (커뮤니티 패키지)

pip install vibevoice

ASR용 설치

VibeVoice-ASR은 별도의 설정이 필요합니다:

git clone https://github.com/microsoft/VibeVoice.git
cd VibeVoice
pip install -r requirements-asr.txt

또는 관리형 클라우드 추론을 위해 Azure AI Foundry를 통해 배포합니다.

VibeVoice-1.5B로 음성 생성

단일 화자 생성

스크립트가 포함된 텍스트 파일을 만듭니다:

Alice: Welcome to the Apidog developer podcast. Today we're covering API testing strategies for 2026.

추론을 실행합니다:

python VibeVoice \
  --model_path microsoft/VibeVoice-1.5B \
  --txt_path script.txt \
  --speaker_names Alice \
  --cfg_scale 1.5

출력은 outputs/ 디렉토리에 .wav 파일로 저장됩니다.

다중 화자 팟캐스트 생성

VibeVoice는 전체 녹음에서 일관된 음성 정체성을 가진 최대 4명의 화자를 처리합니다:

Alice: Welcome back to the show. Today we have two API experts joining us.
Bob: Thanks for having me. I've been working on REST API design patterns for the past five years.
Carol: And I focus on GraphQL performance optimization. Happy to be here.
Alice: Let's start with the debate everyone wants to hear. REST versus GraphQL for microservices.
Bob: REST gives you clear resource boundaries. Each endpoint maps to a specific resource.
Carol: GraphQL gives you flexibility. One endpoint, and the client decides what data it needs.
python VibeVoice \
  --model_path microsoft/VibeVoice-1.5B \
  --txt_path podcast_script.txt \
  --speaker_names Alice Bob Carol \
  --cfg_scale 1.5

모델은 전체 대화에서 각 화자에 대해 90분 길이에서도 독특한 음성 특징을 유지합니다.

음성 복제 (제로샷)

참조 오디오 샘플에서 음성을 복제합니다:

오디오 요구 사항:

기존 오디오를 올바른 형식으로 변환합니다:

ffmpeg -i source_recording.m4a -ar 24000 -ac 1 reference_voice.wav

음성 복제를 위해 Gradio 데모 인터페이스를 사용합니다:

python demo/gradio_demo.py

이렇게 하면 http://127.0.0.1:7860에서 웹 UI가 시작되며, 여기서 참조 오디오를 업로드하고, 복제된 음성을 선택하고, 음성을 생성할 수 있습니다.

VibeVoice-Realtime-0.5B로 스트리밍

낮은 지연 시간 오디오 출력(약 300ms 첫 청크)이 필요한 애플리케이션의 경우:

python demo/streaming_inference_from_file.py \
  --model_path microsoft/VibeVoice-Realtime-0.5B \
  --txt_path script.txt \
  --speaker_name Alice

Realtime 모델은 더 작고 빠르지만, 전체 1.5B 모델보다 낮은 충실도의 오디오를 생성합니다. 인터랙티브 애플리케이션에는 이 모델을 사용하고, 사전 생성된 콘텐츠에는 1.5B 모델을 사용하세요.

Python에서 VibeVoice 사용

파이프라인 API

from transformers import pipeline
from huggingface_hub import snapshot_download

# Download model
model_path = snapshot_download("microsoft/VibeVoice-1.5B")

# Load pipeline
pipe = pipeline(
    "text-to-speech",
    model=model_path,
    no_processor=False
)

# Prepare multi-speaker script
script = [
    {"role": "Alice", "content": "How do you handle API versioning?"},
    {"role": "Bob", "content": "We use URL path versioning. v1, v2, and so on."},
]

# Apply chat template
input_data = pipe.processor.apply_chat_template(script)

# Generate audio
generate_kwargs = {
    "cfg_scale": 1.5,
    "n_diffusion_steps": 50,
}

output = pipe(input_data, generate_kwargs=generate_kwargs)

프로덕션용 FastAPI 래퍼

커뮤니티는 VibeVoice를 OpenAI 호환 TTS API로 노출하는 FastAPI 래퍼를 구축했습니다:

git clone https://github.com/ncoder-ai/VibeVoice-FastAPI.git
cd VibeVoice-FastAPI
docker compose up

이것은 OpenAI의 TTS 형식과 호환되는 API 엔드포인트를 제공합니다:

curl -X POST http://localhost:8000/v1/audio/speech \
  -H "Content-Type: application/json" \
  -d '{
    "model": "vibevoice-1.5b",
    "input": "Your API documentation should be a conversation, not a monologue.",
    "voice": "alice"
  }' \
  --output speech.wav

이 OpenAI 호환 엔드포인트를 사용하면 OpenAI의 TTS API에 사용하는 것과 동일한 요청 형식으로 Apidog를 사용하여 VibeVoice API 통합을 테스트할 수 있습니다. 엔드포인트를 가져오고, 요청 본문을 구성하고, 애플리케이션 코드를 작성할 필요 없이 음성 생성을 테스트하세요.

VibeVoice-ASR을 이용한 음성 인식

기본 전사

python asr_inference.py \
  --model_path microsoft/VibeVoice-ASR \
  --audio_path meeting_recording.wav

구조화된 출력 형식

VibeVoice-ASR은 세 가지 필드를 가진 구조화된 전사를 세그먼트별로 생성합니다:

출력 예시:

{
  "segments": [
    {
      "speaker": "Speaker 1",
      "start": 0.0,
      "end": 4.2,
      "text": "Let's review the API endpoints for the new release."
    },
    {
      "speaker": "Speaker 2",
      "start": 4.5,
      "end": 8.1,
      "text": "I've added three new endpoints for the billing module."
    }
  ]
}

MCP 서버로서의 ASR

VibeVoice-ASR은 Claude Code, Cursor 및 기타 AI 코딩 도구에 직접 연결되는 MCP(Model Context Protocol) 서버로 실행될 수 있습니다:

# Install the MCP server
pip install vibevoice-mcp-server

# Run it
vibevoice-mcp serve

이를 통해 코딩 에이전트는 작업 흐름의 일부로 회의, 음성 메모 또는 오디오 녹음을 전사할 수 있습니다. 요구 사항을 지시하면 MCP 서버가 이를 전사하고 코딩 에이전트가 텍스트를 처리합니다.

VibeVoice-ASR과 Whisper 중 언제 사용할 것인가

사용 사례 최고의 선택 이유
긴 회의 (30-60분) VibeVoice-ASR 단일 패스 60분 처리, 화자 ID
여러 화자가 있는 인터뷰 VibeVoice-ASR 내장된 화자 분리
타임스탬프가 필요한 팟캐스트 VibeVoice-ASR 구조화된 누가/언제/무엇을 출력
다국어 콘텐츠 (50개 이상 언어) VibeVoice-ASR 더 넓은 언어 지원
시끄러운 환경의 짧은 클립 Whisper 더 나은 노이즈 견고성
에지/모바일 배포 Whisper 더 작은 모델 크기, 더 넓은 장치 지원
비영어 언어 (전문화) Whisper 더 성숙한 다국어 미세 조정

Apidog로 음성 AI API 테스트하기

VibeVoice FastAPI 래퍼, Azure AI Foundry 엔드포인트 또는 자체 음성 AI API를 구축하는 경우 Apidog는 이러한 통합을 테스트하고 디버그하는 데 도움을 줍니다.

TTS 엔드포인트 테스트

  1. Apidog에서 VibeVoice FastAPI 서버를 가리키는 새 POST 요청을 생성합니다.
  2. 요청 본문을 OpenAI 호환 형식으로 설정합니다:
{
  "model": "vibevoice-1.5b",
  "input": "Test speech synthesis with proper intonation and pacing.",
  "voice": "alice",
  "response_format": "wav"
}
  1. 요청을 보내고 응답 헤더에 audio/wav 콘텐츠 유형이 포함되어 있는지 확인합니다.
  2. 오디오 품질을 확인하기 위해 응답을 WAV 파일로 저장합니다.

ASR 엔드포인트 테스트

음성-텍스트 API의 경우:

  1. multipart/form-data를 사용하여 POST 요청을 설정합니다.
  2. 오디오 파일을 양식 필드로 첨부합니다.
  3. 구조화된 JSON 응답에 화자 ID, 타임스탬프 및 전사된 텍스트가 포함되어 있는지 확인합니다.

오디오 API 계약 유효성 검사

음성 AI API는 JSON 메타데이터와 함께 바이너리 데이터(오디오 파일)를 처리합니다. Apidog의 요청 빌더는 둘 다 처리합니다:

프로덕션에 배포하기 전에 음성 AI 통합을 테스트하려면 Apidog를 다운로드하세요.

button

안전 및 책임감 있는 사용

Microsoft는 초기 오용 사고 후 여러 안전 장치를 추가했습니다:

허용되는 사항

허용되지 않는 사항

알아두어야 할 제한 사항

TTS의 언어 지원은 제한적입니다. VibeVoice-1.5B는 영어와 중국어를 지원합니다. 다른 언어는 이해할 수 없는 출력을 생성합니다. VibeVoice-ASR은 50개 이상의 언어를 지원하여 더 넓은 범위를 커버합니다.

ASR의 하드웨어 요구 사항은 높습니다. ASR 모델은 24GB+ VRAM (A100/H100 등급 GPU)이 필요합니다. TTS 모델은 7-8GB VRAM이 있는 소비자용 GPU에서 실행됩니다.

겹치는 음성 처리는 지원하지 않습니다. TTS 모델은 화자들이 서로 말을 겹치게 하는 것을 모델링하지 않습니다. 모든 대화는 순서대로 진행됩니다.

모델의 내재된 편향. 두 모델 모두 Qwen2.5 기반에서 편향을 상속합니다. 출력에는 예상치 못한, 편향된 또는 부정확한 내용이 포함될 수 있습니다.

연구 등급 소프트웨어. 이 소프트웨어는 프로덕션 준비가 되지 않았습니다. 예외 상황, 오류 처리 및 비영어 출력에서 미흡한 부분이 있을 수 있습니다.

Azure AI Foundry에 VibeVoice-ASR 배포

GPU 인프라 관리를 원치 않는 팀을 위해 Microsoft는 Azure AI Foundry를 통해 VibeVoice-ASR을 제공했습니다. 이를 통해 하드웨어 프로비저닝 없이 관리형 API 엔드포인트를 얻을 수 있습니다.

Azure 배포는 확장, 모델 업데이트 및 인프라 유지 관리를 처리합니다. 오디오 파일을 받아 로컬 모델과 동일한 누가/언제/무엇을 형식으로 구조화된 전사를 반환하는 HTTPS 엔드포인트를 얻을 수 있습니다.

이는 자체 호스팅 GPU 추론으로는 제공할 수 없는 일관된 가동 시간과 SLA 보증이 필요한 프로덕션 워크로드에 특히 유용합니다. 현재 가격 및 배포 옵션에 대해서는 Azure AI Foundry의 모델 카탈로그를 확인하십시오.

애플리케이션에 통합하기 전에 Azure 호스팅 VibeVoice 엔드포인트를 테스트하려면 Apidog에서 엔드포인트 URL 및 인증 헤더를 설정하고 샘플 오디오 파일을 대상으로 테스트 전사를 실행하십시오.

커뮤니티 및 생태계

VibeVoice는 활발한 커뮤니티를 가지고 있습니다:

주목할 만한 커뮤니티 프로젝트:

자주 묻는 질문

VibeVoice는 무료로 사용할 수 있나요?

네. 세 가지 모델(TTS 1.5B, Realtime 0.5B, ASR) 모두 MIT 라이선스입니다. 상업적 및 비상업적 목적으로 사용할 수 있습니다. Azure AI Foundry 호스팅은 관리형 클라우드 추론에 대해 별도의 요금을 부과합니다.

VibeVoice는 Apple Silicon Mac에서 실행될 수 있나요?

커뮤니티에서 M-시리즈 Mac 추론을 위한 스크립트를 기여했습니다. VibeVoice-1.5B 모델에 대한 HuggingFace 토론을 확인하십시오. 성능은 CUDA GPU보다 느리지만 기능적으로는 작동합니다.

VibeVoice는 ElevenLabs와 어떻게 비교되나요?

VibeVoice는 로컬에서 실행되며 API 비용이 들지 않고 데이터가 컴퓨터를 벗어나지 않습니다. ElevenLabs는 더 높은 품질, 더 많은 음성, 더 쉬운 설정을 제공하지만 유료 구독과 클라우드 처리가 필요합니다. 개인 정보 보호에 민감한 애플리케이션이나 오프라인 사용의 경우 VibeVoice가 더 좋습니다. 프로덕션 품질과 사용 편의성 면에서는 ElevenLabs가 앞섭니다.

GitHub 저장소가 일시적으로 비활성화된 이유는 무엇인가요?

Microsoft는 사람들이 음성 복제를 사칭 및 딥페이크에 사용하는 것을 발견했습니다. 저장소를 비활성화하고, 안전 기능(가청 고지 사항, 워터마킹)을 추가한 후 다시 활성화했습니다. 커뮤니티 포크는 비활성화 기간 동안 개발을 계속했습니다.

사용자 지정 음성으로 VibeVoice를 미세 조정할 수 있나요?

네. 커뮤니티는 HuggingFace에 12개의 미세 조정된 변형을 생성했습니다. 훈련을 위해 음성 샘플(24kHz 모노 WAV 오디오로 30-60초의 깨끗한 음성)과 GPU 리소스가 필요합니다.

VibeVoice는 어떤 오디오 형식을 출력하나요?

24,000 Hz 모노 WAV 파일입니다. 생성 후 ffmpeg를 사용하여 MP3, OGG, FLAC 또는 다른 형식으로 변환할 수 있습니다.

VibeVoice-ASR을 Whisper 대체품으로 사용할 수 있나요?

화자 식별이 포함된 장문 오디오의 경우 가능합니다. VibeVoice-ASR은 내장된 화자 분리 기능을 통해 60분 길이의 녹음을 단일 패스로 처리합니다. Whisper는 화자 식별을 위해 외부 도구가 필요하며 청크 분할 없이 30분 이상의 녹음에서 어려움을 겪습니다. 짧고 시끄러운 클립이나 에지 배포의 경우 Whisper가 더 나은 선택입니다.

VibeVoice는 실시간 음성 채팅을 지원하나요?

VibeVoice-Realtime-0.5B는 약 300ms의 첫 청크 지연 시간으로 스트리밍 텍스트 입력을 지원합니다. 거의 실시간 애플리케이션에 사용할 수 있지만, 전이중 음성 대화를 위해 설계된 것은 아닙니다. 이를 위해서는 Azure OpenAI의 GPT-Realtime 또는 유사한 호스팅 솔루션을 고려하십시오.

button

Apidog에서 API 설계-첫 번째 연습

API를 더 쉽게 구축하고 사용하는 방법을 발견하세요