Spaces:
No application file
No application file
# νμΈνλ | |
μ΄ νμ΄μ§λ₯Ό μ΄μλ€λ κ²μ, μ¬μ νμ΅λ ν¨μ·(Few-shot) λͺ¨λΈμ μ±λ₯μ λ§μ‘±νμ§ λͺ»νλ€λ μλ―ΈμΌ κ²μ λλ€. λ°μ΄ν°μ μ μ±λ₯μ ν₯μμν€κΈ° μν΄ λͺ¨λΈμ νμΈνλνκ³ μΆμΌμκ² μ£ . | |
νμ¬ λ²μ μμλ 'LLAMA' λΆλΆλ§ νμΈνλνμλ©΄ λ©λλ€. | |
## LLAMA νμΈνλ | |
### 1. λ°μ΄ν°μ μ€λΉ | |
``` | |
. | |
βββ SPK1 | |
β βββ 21.15-26.44.lab | |
β βββ 21.15-26.44.mp3 | |
β βββ 27.51-29.98.lab | |
β βββ 27.51-29.98.mp3 | |
β βββ 30.1-32.71.lab | |
β βββ 30.1-32.71.mp3 | |
βββ SPK2 | |
βββ 38.79-40.85.lab | |
βββ 38.79-40.85.mp3 | |
``` | |
μμ κ°μ νμμΌλ‘ λ°μ΄ν°μ μ λ³ννμ¬ `data` λλ ν 리 μμ λ°°μΉνμΈμ. μ€λμ€ νμΌμ νμ₯μλ `.mp3`, `.wav`, `.flac` μ€ νλμ¬μΌ νλ©°, μ£Όμ νμΌμ `.lab` νμ₯μλ₯Ό μ¬μ©ν΄μΌ ν©λλ€. | |
!!! info "λ°μ΄ν°μ νμ" | |
`.lab` μ£Όμ νμΌμ μ€λμ€μ μ μ¬ λ΄μ©λ§ ν¬ν¨νλ©΄ λλ©°, νΉλ³ν νμμ΄ νμνμ§ μμ΅λλ€. μλ₯Ό λ€μ΄, `hi.mp3`μμ "Hello, goodbye"λΌλ λμ¬λ₯Ό λ§νλ€λ©΄, `hi.lab` νμΌμλ "Hello, goodbye"λΌλ ν μ€μ ν μ€νΈλ§ μμ΄μΌ ν©λλ€. | |
!!! warning | |
λ°μ΄ν°μ μ λν μλ μ κ·ν(loudness normalization)λ₯Ό μ μ©νλ κ²μ΄ μ’μ΅λλ€. μ΄λ₯Ό μν΄ [fish-audio-preprocess](https://github.com/fishaudio/audio-preprocess)λ₯Ό μ¬μ©ν μ μμ΅λλ€. | |
```bash | |
fap loudness-norm data-raw data --clean | |
``` | |
### 2. μλ§¨ν± ν ν° λ°°μΉ μΆμΆ | |
VQGAN κ°μ€μΉλ₯Ό λ€μ΄λ‘λνλμ§ νμΈνμΈμ. λ€μ΄λ‘λνμ§ μμλ€λ©΄ μλ λͺ λ Ήμ΄λ₯Ό μ€ννμΈμ: | |
```bash | |
huggingface-cli download fishaudio/fish-speech-1.4 --local-dir checkpoints/fish-speech-1.4 | |
``` | |
μ΄ν μλ§¨ν± ν ν°μ μΆμΆνκΈ° μν΄ μλ λͺ λ Ήμ΄λ₯Ό μ€ννμΈμ: | |
```bash | |
python tools/vqgan/extract_vq.py data \ | |
--num-workers 1 --batch-size 16 \ | |
--config-name "firefly_gan_vq" \ | |
--checkpoint-path "checkpoints/fish-speech-1.4/firefly-gan-vq-fsq-8x1024-21hz-generator.pth" | |
``` | |
!!! note | |
μΆμΆ μλλ₯Ό λμ΄κΈ° μν΄ `--num-workers`μ `--batch-size` κ°μ μ‘°μ ν μ μμ§λ§, GPU λ©λͺ¨λ¦¬ νλλ₯Ό μ΄κ³Όνμ§ μλλ‘ μ£ΌμνμΈμ. | |
VITS νμμ κ²½μ°, `--filelist xxx.list`λ₯Ό μ¬μ©νμ¬ νμΌ λͺ©λ‘μ μ§μ ν μ μμ΅λλ€. | |
μ΄ λͺ λ Ήμ μ€ννλ©΄ `data` λλ ν 리 μμ `.npy` νμΌμ΄ μμ±λ©λλ€. λ€μκ³Ό κ°μ΄ νμλ©λλ€: | |
``` | |
. | |
βββ SPK1 | |
β βββ 21.15-26.44.lab | |
β βββ 21.15-26.44.mp3 | |
β βββ 21.15-26.44.npy | |
β βββ 27.51-29.98.lab | |
β βββ 27.51-29.98.mp3 | |
β βββ 27.51-29.98.npy | |
β βββ 30.1-32.71.lab | |
β βββ 30.1-32.71.mp3 | |
β βββ 30.1-32.71.npy | |
βββ SPK2 | |
βββ 38.79-40.85.lab | |
βββ 38.79-40.85.mp3 | |
βββ 38.79-40.85.npy | |
``` | |
### 3. λ°μ΄ν°μ μ protobufλ‘ ν¨νΉ | |
```bash | |
python tools/llama/build_dataset.py \ | |
--input "data" \ | |
--output "data/protos" \ | |
--text-extension .lab \ | |
--num-workers 16 | |
``` | |
λͺ λ Ήμ΄ μλ£λλ©΄ `data` λλ ν 리 μμ `quantized-dataset-ft.protos` νμΌμ΄ μμ±λ©λλ€. | |
### 4. λ§μ§λ§μΌλ‘, LoRAλ₯Ό μ΄μ©ν νμΈνλ | |
λ§μ°¬κ°μ§λ‘, `LLAMA` κ°μ€μΉλ₯Ό λ€μ΄λ‘λνλμ§ νμΈνμΈμ. λ€μ΄λ‘λνμ§ μμλ€λ©΄ μλ λͺ λ Ήμ΄λ₯Ό μ€ννμΈμ: | |
```bash | |
huggingface-cli download fishaudio/fish-speech-1.4 --local-dir checkpoints/fish-speech-1.4 | |
``` | |
λ§μ§λ§μΌλ‘, μλ λͺ λ Ήμ΄λ₯Ό μ€ννμ¬ νμΈνλμ μμν μ μμ΅λλ€: | |
```bash | |
python fish_speech/train.py --config-name text2semantic_finetune \ | |
project=$project \ | |
[email protected]_config=r_8_alpha_16 | |
``` | |
!!! note | |
`batch_size`, `gradient_accumulation_steps` λ±μ νμ΅ λ§€κ°λ³μλ₯Ό GPU λ©λͺ¨λ¦¬μ λ§κ² μ‘°μ νλ €λ©΄ `fish_speech/configs/text2semantic_finetune.yaml` νμΌμ μμ ν μ μμ΅λλ€. | |
!!! note | |
Windows μ¬μ©μμ κ²½μ°, `nccl` λ¬Έμ λ₯Ό νΌνλ €λ©΄ `trainer.strategy.process_group_backend=gloo`λ₯Ό μ¬μ©ν μ μμ΅λλ€. | |
νλ ¨μ΄ μλ£λλ©΄ [μΆλ‘ ](inference.md) μΉμ μ μ°Έκ³ νμ¬ μμ±μ μμ±ν μ μμ΅λλ€. | |
!!! info | |
κΈ°λ³Έμ μΌλ‘ λͺ¨λΈμ νμμ λ§νλ ν¨ν΄λ§ νμ΅νκ³ μμμ νμ΅νμ§ μμ΅λλ€. μμμ μμ μ±μ μν΄ ν둬ννΈλ₯Ό μ¬μ©ν΄μΌ ν©λλ€. | |
μμμ νμ΅νλ €λ©΄ νλ ¨ λ¨κ³λ₯Ό λ릴 μ μμ§λ§, μ΄λ κ³Όμ ν©μ μνμ μ΄λν μ μμ΅λλ€. | |
νλ ¨μ΄ λλλ©΄ LoRA κ°μ€μΉλ₯Ό μΌλ° κ°μ€μΉλ‘ λ³νν νμ μΆλ‘ μ μνν΄μΌ ν©λλ€. | |
```bash | |
python tools/llama/merge_lora.py \ | |
--lora-config r_8_alpha_16 \ | |
--base-weight checkpoints/fish-speech-1.4 \ | |
--lora-weight results/$project/checkpoints/step_000000010.ckpt \ | |
--output checkpoints/fish-speech-1.4-yth-lora/ | |
``` | |
!!! note | |
λ€λ₯Έ 체ν¬ν¬μΈνΈλ μλν΄ λ³Ό μ μμ΅λλ€. μꡬ μ¬νμ λ§λ κ°μ₯ μ΄κΈ° 체ν¬ν¬μΈνΈλ₯Ό μ¬μ©νλ κ²μ΄ μ’μ΅λλ€. μ΄λ€μ μ’ μ’ λΆν¬ λ°(OOD) λ°μ΄ν°μμ λ μ’μ μ±λ₯μ λ°νν©λλ€. | |