일반 소개
CSM 보이스 클로닝은 이사야 비요크가 개발하고 깃허브에서 호스팅하는 오픈 소스 프로젝트입니다. 이 도구는 사용자가 오디오 샘플을 제공하기만 하면 자신의 목소리를 복제하고 자신만의 목소리를 생성할 수 있는 Sesame CSM-1B 모델을 기반으로 합니다. 이 도구는 로컬 GPU 실행과 모달 클라우드 실행을 모두 지원하므로 콘텐츠 제작자, 개발자 또는 음성 기술에 관심이 있는 모든 사람에게 적합합니다. 복제 결과가 가장 완벽하지는 않지만, 생성된 음성은 대상 음성의 일부 특성을 유지하며 그 효과는 알아볼 수 있습니다. 파이썬 설치 및 환경 구성과 같은 기술적 기반이 필요하지만 자세한 가이드가 공식적으로 제공됩니다. 이 프로젝트는 완전히 무료이며 커뮤니티에서 코드 개선에 기여할 수 있습니다.

기능 목록
- 음성 복제: 오디오 샘플을 업로드하여 샘플과 비슷한 소리를 내는 음성을 생성합니다.
- 텍스트 음성 변환: 텍스트를 입력하고 복제된 음성으로 오디오 파일을 생성합니다.
- 로컬에서 실행: 개인 GPU를 사용하여 음성 생성 작업을 처리합니다.
- 클라우드에서 실행: 모달 플랫폼을 통해 클라우드 GPU로 가속화됩니다.
- 오픈 소스 지원: 코드는 공개되어 있으며 사용자가 수정하거나 최적화할 수 있습니다.
- 일반적인 오디오 형식 지원: MP3 또는 WAV 파일을 샘플로 사용할 수 있습니다.
- 매개변수 조정: 사용자가 다양한 길이의 오디오를 수용하도록 모델 설정을 조정할 수 있습니다.
도움말 사용
설치 프로세스
CSM 음성 복제를 사용하려면 먼저 런타임 환경을 설정해야 합니다. 자세한 단계는 다음과 같습니다:
로컬에서 설치 실행
- 하드웨어 및 소프트웨어 요구 사항 확인
- Python 3.10 이상이 필요합니다.
- 로컬에서 작동하려면 NVIDIA CUDA 호환 그래픽 카드와 충분한 비디오 메모리가 필요합니다.
- 모델 및 종속성을 다운로드할 수 있도록 인터넷에 연결되어 있는지 확인합니다.
- 복제 코드 리포지토리
- 터미널을 엽니다(Windows의 경우 CMD 또는 PowerShell, Linux/Mac의 경우 Bash).
- 명령을 입력합니다:
git clone https://github.com/isaiahbjork/csm-voice-cloning.git cd csm-voice-cloning
- 종속성 설치
- 터미널에서 실행됩니다:
pip install -r requirements.txt
- 파이토치, 허깅 페이스 등과 같은 필요한 라이브러리가 설치됩니다.
- 터미널에서 실행됩니다:
클라우드 실행 설치(모달)
- 모달 설치
- 터미널에서 실행됩니다:
pip install modal
- 터미널에서 실행됩니다:
- 모달 인증 구성
- 명령을 입력합니다:
modal token new
- 메시지에 따라 모달 계정에 로그인하거나 새 계정을 만듭니다.
- 명령을 입력합니다:
허깅 페이스 계정 구성하기
- 등록하고 토큰 받기
- 허깅 페이스 웹사이트를 방문하여 등록하거나 로그인하세요.
- 존재 Sesame CSM-1B 모델 페이지 '리포지토리 액세스'를 클릭하고 약관에 동의합니다.
- API 토큰 생성: 오른쪽 상단 모서리에서 아바타 클릭-> 설정-> 토큰 -> 새 토큰.
- 설정 토큰
- 방법 1: 터미널에 입력합니다:
export HF_TOKEN="你的令牌"
- 방법 2: 수정
voice_clone.py
파일에서os.environ["HF_TOKEN"]
를 클릭하고 토큰을 입력합니다.
- 방법 1: 터미널에 입력합니다:
오디오 샘플 준비하기
- 오디오 녹음
- 가급적 배경 소음 없이 선명한 2~3분 오디오 클립을 녹음하세요.
- 예를 들어 MP3 또는 WAV 형식으로 저장합니다.
sample.mp3
.
- 텍스트 전사
- 비용 또는 지출 Whisper 또는 기타 도구를 사용하여 오디오 콘텐츠를 텍스트로 변환하고 정확한 텍스트(예: "안녕하세요, 이것은 제 테스트 오디오입니다.")를 기록합니다.
주요 기능
원어민 클론(컴퓨팅)
- 매개변수 편집
- 쇼(티켓)
voice_clone.py
파일을 열고 다음을 수정합니다:context_audio_path = "sample.mp3"
(오디오 경로).context_text = "你好,这是我的测试音频"
(필사된 텍스트).text = "今天天气很好"
(생성할 텍스트)를 입력합니다.output_filename = "output.wav"
(출력 파일 이름)을 입력합니다.
- 쇼(티켓)
- 실행 중인 프로그램
- 터미널에 입력합니다:
python voice_clone.py
- 생성된 오디오는 프로젝트 폴더에 저장됩니다.
- 터미널에 입력합니다:
클라우드 기반 음성 복제(모달)
- 매개변수 편집
- 쇼(티켓)
modal_voice_cloning.py
파일에 로컬과 동일한 매개변수를 설정합니다:context_audio_path = "sample.mp3"
.context_text = "你好,这是我的测试音频"
.text = "今天天气很好"
.output_filename = "output.wav"
.
- 쇼(티켓)
- 실행 중인 프로그램
- 터미널에 입력합니다:
modal run modal_voice_cloning.py
- 모달은 클라우드 GPU를 사용하여 작업을 처리하고 완료되면 출력 파일을 다운로드합니다.
- 터미널에 입력합니다:
모델 시퀀스 길이 조정하기
- 오디오 샘플이 길면(2~3분 이상) 텐서 차원 오류가 발생할 수 있습니다.
- 솔루션:
- 쇼(티켓)
models.py
문서화. - 찾기
llama3_2_1B()
함수를 수정하여max_seq_len
매개변수:def llama3_2_1B(): return llama3_2.llama3_2(max_seq_len=4096, ...)
- 보안
llama3_2_100M()
값이 동일하면 저장하고 다시 실행하세요.
- 쇼(티켓)
주요 기능 작동
클라우드 가속(모달)
- 모달은 강력한 로컬 디바이스가 없는 사용자를 위해 클라우드 GPU를 제공합니다.
- 모달을 설치하고 적절한 스크립트를 실행하기만 하면 로컬 처리보다 빠르게 사용할 수 있습니다.
긴 오디오 처리
- 기본 설정은 최대 2분 50초의 샘플입니다.
- 더 긴 오디오를 조정해야 합니다.
max_seq_len
(위에 설명된 대로)를 클릭하거나 샘플을 권장 길이로 자릅니다.
자주 묻는 질문
- 텐서 차원 오류
증가max_seq_len
값을 변경하거나 오디오 샘플을 줄이세요. - CUDA 메모리 부족
더 짧은 샘플을 사용하거나 모달 클라우드 실행으로 전환하세요. - 모델 다운로드 실패
허깅 페이스 토큰과 네트워크를 확인하여 모델 약관이 수락되었는지 확인합니다.
애플리케이션 시나리오
- 콘텐츠 제작
- 장면 설명
앵커는 자신의 목소리로 동영상 내레이션을 생성할 수 있습니다. 자기소개 오디오를 업로드하고 대본을 입력하면 몇 분 안에 목소리를 생성할 수 있으므로 반복해서 녹음할 필요가 없습니다.
- 장면 설명
- 교육 지원
- 장면 설명
교사는 자신의 목소리를 복제하고 코스 강의를 입력하여 강의용 오디오를 생성합니다. 학생들은 언제든지 다시 들을 수 있어 원격 학습에 적합합니다.
- 장면 설명
- 게임 개발
- 장면 설명
개발자가 게임 캐릭터의 목소리를 녹음합니다. 캐릭터의 사실감을 높이기 위해 몇 가지 샘플을 녹음하여 여러 대사를 생성하세요.
- 장면 설명
QA
- 오디오 샘플은 얼마나 길어야 하나요?
2~3분 권장. 너무 짧으면 결과가 좋지 않고, 너무 길면 매개변수를 조정할 수 없습니다. - 생성된 음성이 저와 많이 닮지 않은 이유는 무엇인가요?
모델링은 제한적이며 사운드 특성을 유지하지만 완벽하지는 않습니다. 샘플이 선명한지 확인하고 다른 텍스트로 여러 번 시도해 보세요. - 모달과 로컬에서 실행하는 것의 차이점은 무엇인가요?
모달은 클라우드 GPU를 사용하므로 강력한 장치가 없는 사용자도 빠르게 실행할 수 있습니다. 로컬 실행은 무료이지만 좋은 그래픽 카드가 필요합니다.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...