기본적으로 한국어와 파인튜닝을 지원하도록 수정하고 추론 webui를 추가한 깃헙 레포지토리

https://github.com/ouor/vits


사용법


레포지토리 readme에 적어놓은거 옮겨놓은거라 깃헙만 보고 따라해도 됨


1. 소스코드 클론

git clone https://github.com/ouor/vits

cd vits


2. 가상환경 생성 및 진입

python -m venv .venv

.venv/Scripts/activate


3. 파이토치 설치 (가상환경 상태에서)

pip3 install torch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 --index-url https://download.pytorch.org/whl/cu117

파이토치 2.0 올라가니까 별의별 오류가 나서 수정할거 아니면 1.13 계속 써야 할듯


4. 패키지 설치 (가상환경 상태에서)

pip install -r requirements.txt

(여기서 오류가 난다면 https://visualstudio.microsoft.com/downloads/?q=build+tools 에서 빌드툴을 설치하고 다시 시도하자)


5. monotonic_align 빌드

cd monotonic_align

mkdir monotonic_align

python setup.py build_ext --inplace

cd ..

(여기서 오류가 난다면 https://visualstudio.microsoft.com/downloads/?q=build+tools 에서 빌드툴을 설치하자)


※ 혹시 만들어진 모델 받아다가 음성만 만들어보고 싶다면, 바로 11번으로 건너뛰자




======================여기부터 학습의 영역========================


6. 데이터셋 만들기

https://github.com/ouor/vits/blob/main/example/filelists/korean_train.txt

이 링크 텍스트 파일처럼 음성 파일의 경로와 음성 번호(0부터 시작..) 대본을 작성해줌

사실 이게 제일 번거롭고 귀찮은 일임..


7. 전처리

단일 화자의 경우

python preprocess.py --text_index 1 --filelists path/to/filelist_train.txt path/to/filelist_val.txt --text_cleaners 'korean_cleaners'

다중 화자의 경우

python preprocess.py --text_index 2 --filelists path/to/filelist_train.txt path/to/filelist_val.txt --text_cleaners 'korean_cleaners'

전처리 끝나면 두개의 cleaned로 끝나는 파일이 만들어짐


8. config수정

config파일에 "training_files", "validation_files", "speakers"를 적절하게 수정해줌

아까 전처리로 만들어진 파일을 "training_files", "validation_files"에 넣고

"speakers"아까 데이터셋 작성할때 0번부터 순서대로 리스트로 넣어줌.

예를들어 0번이 민수, 1번이 영희, 2번이 수아라고 하면..

"speakers": ["minsu", "yunghe", "sua"], 처럼 넣어줌

편집이 끝나면 저장을 하고


9. 학습 시작

단일 화자의 경우

python train.py -c <config> -m <folder>

다중 화자의 경우

python train_ms.py -c <config> -m <folder>

파인튜닝을 하고 싶다면 모델이 만들어질 폴더에 미리 G_0 D_0파일을 넣어줌


10. 텐서보드로 학습 현황 확인하기

tensorboard --logdir checkpoints/<folder> --port 6006


======================드디어 학습 끝..========================


11. 학습이 끝나면 gradio web ui로 만들어진 모델을 테스트 해볼 수 있음

python server.py --config_path C:/path/to/config.json --model_path C:/path/to/G_XXXXX.pth