CSM-1B: 대화형 음성 모델 설정 및 사용 완벽 가이드 (2025)
목차
CSM-1B 소개
CSM-1B(Conversational Speech Model 1B)는 2025년 3월 13일에 Sesame에서 출시한 고급 음성 생성 모델입니다. 기존의 텍스트-음성 변환 모델과 달리 CSM-1B는 자연스러운 억양과 흐름을 유지하는 대화형 음성 생성에 특화되어 있어 대화 기반 애플리케이션에 특히 적합합니다.
이 모델은 텍스트와 오디오 입력을 모두 받아 RVQ(Residual Vector Quantization) 오디오 코드를 생성하고, 이를 고품질 음성 출력으로 변환합니다. Llama 백본과 특수 Mimi 오디오 디코더를 결합한 아키텍처로, 강력하면서도 상대적으로 작은 1.55B 파라미터 모델을 구현했습니다.
기술 사양
특징 사양
모델명 | CSM-1B (대화형 음성 모델) |
개발사 | Sesame |
파라미터 수 | 1.55B |
아키텍처 | Llama 백본 + Mimi 오디오 디코더 |
입력 형식 | 텍스트, 오디오(선택 사항) |
출력 형식 | RVQ 오디오 코드 → WAV 오디오 |
출시일 | 2025년 3월 13일 |
텐서 타입 | F32 |
주요 지원 언어 | 영어(다른 언어는 제한적 지원) |
샘플 레이트 | 24,000 Hz(기본값) |
설치 가이드
시스템 요구사항
- 하드웨어: CUDA 호환 GPU(CUDA 12.4 및 12.6에서 테스트됨)
- 소프트웨어: Python 3.10(권장)
- 종속성: ffmpeg(일부 오디오 작업용)
- 저장 공간: 모델 가중치용 약 3GB
단계별 설정
- 모델 저장소 접근하기
# Hugging Face 계정 로그인 또는 생성 # https://huggingface.co/sesame/csm-1b에서 약관 검토 및 수락
- 모델 저장소는 접근이 제한되어 있습니다. Hugging Face에서 연락처 정보 공유에 동의해야 파일에 접근할 수 있습니다.
- GitHub 저장소 클론하기
- git clone git@github.com:SesameAILabs/csm cd csm
- 가상 환경 설정하기
- python3.10 -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
- 필요한 패키지 설치하기Windows 사용자 참고사항: 호환성 문제로 triton 대신 triton-windows를 설치하세요:
- pip install triton-windows
- pip install -r requirements.txt
- Hugging Face 로그인하기
huggingface-cli login # 프롬프트가 표시되면 Hugging Face 토큰 입력
- CSM-1B 및 Llama-3.2-1B 모델에 접근하려면:
사용법 튜토리얼
기본 텍스트-오디오 생성
CSM-1B의 가장 기본적인 사용법은 추가 컨텍스트 없이 텍스트를 음성으로 변환하는 것입니다:
from generator import load_csm_1b
import torch
import torchaudio
# 적절한 장치 선택
device = "mps" if torch.backends.mps.is_available() else "cuda" if torch.device("cuda").type != "cpu" else "cpu"
# 모델 로드
generator = load_csm_1b(device)
# 텍스트에서 오디오 생성
audio = generator.generate(
text="안녕하세요, Sesame입니다. CSM-1B의 시연입니다.",
speaker=0, # 화자 ID(0 또는 1)
context=[],
max_AUDIO_LENGTH_MS=10000 # 최대 오디오 길이(밀리초)
)
# 생성된 오디오 저장
torchaudio.save("generated_audio.wav", audio.unsqueeze(0).cpu(), generator.SAMPLE_RATE)
컨텍스트 기반 오디오 생성
특히 대화 상황에서 더 자연스러운 음성을 위해 이전 대화 세그먼트에서 컨텍스트를 제공할 수 있습니다:
from generator import load_csm_1b, Segment
import torch
import torchaudio
# 모델 로드
device = "cuda" if torch.cuda.is_available() else "cpu"
generator = load_csm_1b(device)
# 이전 대화 세그먼트 정의
speakers = [0, 1, 0, 0]
transcripts = [
"안녕, 어떻게 지내?",
"잘 지내, 잘 지내.",
"나도 잘 지내.",
"너랑 대화하게 되어 정말 기뻐."
]
audio_paths = [
"utterance_0.wav",
"utterance_1.wav",
"utterance_2.wav",
"utterance_3.wav"
]
# 오디오 로드 함수
def load_audio(path):
return torchaudio.load(path)[0][0]
# 세그먼트 객체 생성
segments = [
Segment(text=t, speaker=s, audio=load_audio(p))
for t, s, p in zip(transcripts, speakers, audio_paths)
]
# 컨텍스트 기반 오디오 생성
audio = generator.generate(
text="나도 그래, 이거 정말 멋진 기술이지?",
speaker=1, # 다른 화자 ID
context=segments, # 대화 컨텍스트 제공
max_AUDIO_LENGTH_MS=10000
)
# 생성된 오디오 저장
torchaudio.save("contextual_response.wav", audio.unsqueeze(0).cpu(), generator.SAMPLE_RATE)
실용적 응용 분야
CSM-1B는 다음과 같은 여러 사용 사례에서 탁월한 성능을 발휘합니다:
- 가상 비서: 더 자연스러운 소리를 내는 대화형 에이전트 생성
- 오디오북: 여러 캐릭터 목소리로 역동적인 내레이션 생성
- 접근성 도구: 스크린 리더를 위해 텍스트를 더 자연스러운 음성으로 변환
- 콘텐츠 제작: 비디오나 팟캐스트용 음성 내레이션 제작
- 언어 학습: 언어 학습자를 위한 발음 예시 생성
제한 사항 및 고려사항
CSM-1B를 구현하기 전에 다음과 같은 중요한 제한 사항을 숙지하세요:
- 음성 최적화: 이 모델은 특정 음성에 최적화되지 않았으며 범용 생성 모델로 기능합니다.
- 텍스트 생성 불가: CSM-1B는 오디오 생성에만 특화되어 있으며 텍스트 출력을 생성할 수 없습니다.
- 언어 지원: 비영어 언어에 대한 지원은 제한적이며, 학습 데이터 오염으로 인해 성능이 저하될 수 있습니다.
- 윤리적 사용: 모델은 사기, 허위 정보, 불법 또는 유해한 활동에 사용해서는 안 됩니다.
추가 리소스
자주 묻는 질문
Q: CSM-1B가 CPU에서 실행될 수 있나요?
A: 네, 하지만 생성 속도가 크게 느려집니다. 실용적인 사용을 위해서는 GPU를 강력히 권장합니다.
Q: 모델이 생성할 수 있는 다양한 목소리/화자는 몇 명인가요?
A: 모델은 기본적으로 두 개의 화자 ID(0과 1)를 지원합니다.
Q: CSM-1B가 생성할 수 있는 오디오의 최대 길이는 얼마인가요?
A: max_AUDIO_LENGTH_MS 파라미터로 제어할 수 있으며, 일반적으로 생성당 최대 30초까지 가능합니다.
Q: CSM-1B를 특정 목소리에 맞게 파인튜닝할 수 있나요?
A: 현재 릴리스에는 파인튜닝 문서가 포함되어 있지 않지만, 모델 아키텍처는 이론적으로 이를 지원해야 합니다.
Q: 모델이 실시간 생성을 지원하나요?
A: 명시적으로 실시간 사용을 위해 설계되지는 않았지만, 모델은 Livekit과 같은 프레임워크와 통합하여 거의 실시간 애플리케이션에 사용할 수 있습니다.
기술 다이어그램: CSM-1B 아키텍처
┌─────────────────────────────────────────────────────────┐
│ CSM-1B 아키텍처 │
└─────────────────────────────────────────────────────────┘
│
┌───────────────┴───────────────┐
▼ ▼
┌───────────────────────┐ ┌─────────────────────────┐
│ Llama 백본 │ │ Mimi 오디오 디코더 │
│ (텍스트 처리) │ │ (오디오 생성) │
└───────────────────────┘ └─────────────────────────┘
│ │
└───────────────┬───────────────┘
▼
┌─────────────────────────┐
│ RVQ 오디오 코드 │
└─────────────────────────┘
│
▼
┌─────────────────────────┐
│ 오디오 출력 │
└─────────────────────────┘
'영상생성AI > 비디오 오디오 생성 Site' 카테고리의 다른 글
Remade Effects: 이미지를 생동감 있는 비디오로 변환하는 AI 도구 완벽 가이드 (0) | 2025.03.18 |
---|---|
Captions.ai API 완벽 가이드: 비디오 생성부터 편집까지 모든 것 (1) | 2025.03.18 |
Tight Inversion 텍스트 기반 이미지 편집 완벽 가이드: 단계별 튜토리얼 (1) | 2025.03.18 |
DiffRhythm: 최신 AI 기반 풀렝스 노래 생성 모델 완벽 가이드 (6) | 2025.03.17 |
"fal.ai 클라우드 vs 로컬 GPU AI 이미지 생성 비용 효율성 비교 - 2025년 최신 성능 및 가격 분석" (3) | 2025.03.14 |