Plan de implementación por fases¶
Timeline realista para construir suno-local con presupuesto Colab Pro + M4 Pro 24 GB.
| Fase | Semanas | Objetivo | Entregables | Métrica | Créditos Colab |
|---|---|---|---|---|---|
| 0 | 1 | Setup repo, exploración datasets | setup_env.sh, device.py, manifests FMA/Jamendo/MUSDB/Slakh |
dataset stats notebook | ~5 CU |
| 1 | 2–5 | Neural Audio Codec (RVQ 24 kHz, 8 cb, ~50 M) | src/codec/{model,train,encode,losses}.py, ckpt |
SI-SDR ≥ 6 dB, ViSQOL ≥ 3.5 | 600–1200 CU (50–100 h A100) |
| 2 | 6 | Lyric generator (50 M + SP propio) | src/lyrics/{train,generate,sampling}.py |
BLEU hold-out, rhyme rate manual | 100–150 CU |
| 3 | 7–10 | Melody/Score (REMI 80 M) | src/melody/{tokenizer,model,train,sample}.py |
KL vs LMD, % progresiones válidas | 250–400 CU |
| 4 | 11–18 | SVS DiffSinger-like + HiFi-GAN | src/svs/{acoustic,vocoder,pitch,alignment,g2p}.py |
MCD ≤ 6.0, MOS ≥ 3.5 | 1200–2400 CU (100–200 h A100) |
| 5 | 19–26 | Instrumental AR (300 M – 1 B) | src/instrumental/{model,conditioner,train}.py |
FAD-VGGish ≤ 5, CLAP ≥ 0.30 | 2400–6000 CU (200–500 h A100) |
| 6 | 27–30 | Mixing/Mastering automático | src/mixing/{presets,mixer,master,loudness}.py |
LUFS error ≤ 0.5 | <50 CU (DSP CPU) |
| 7 | 31–34 | Pipeline integrado + UI Gradio + Docker | src/pipeline/song_generator.py, demo notebook |
E2E latency, demo pass-rate ≥ 80 % | 100–200 CU |
Total honesto: ~5.000–10.000 CU ≈ $700–1.400 en Colab Pro+ (~$50/mes × 6–10 meses) o mezcla Colab Pro + Lambda/RunPod. Súmale ~2× por ablations y errores → presupuesto realista $1.400–2.000.
Hitos clave¶
- Mes 1: demo de letras estructuradas en español condicionadas por género/mood/rima.
- Mes 3: demo MIDI con melodías por género/BPM/key/progresión.
- Mes 4: vocoder HiFi-GAN universal preentrenado (LJSpeech + LibriTTS) reutilizado.
- Mes 6: SVS "robótica VOCALOID-style" en español comprensible y entonada con 1 h de canto propio.
- Mes 9: instrumental coherente local de 20-30 s tipo MusicGen-small.
- Mes 12: pipeline E2E funcional con Gradio.
Estrategia mes-a-mes (M1-M12)¶
M1¶
- Repo + setup + manifests FMA-large.
- Tokenizer SentencePiece de letras con corpus Gutenberg/Wikisource + sintético.
- LyricLM 50 M en Colab Pro: 1 GPU A100 24 h ≈ 80 K steps con bs=32.
M2-M3¶
- Codec ~48 M sobre 200-500 h de FMA mono 24 kHz.
- A100 ~50 h training. Validar SI-SDR/ViSQOL.
- REMI tokenizer + ScoreLM 80 M sobre LMD + POP909.
M4-M5¶
- HiFi-GAN universal: pre-entrenar 2-3 días sobre LibriTTS para vocoder mel→wav.
- Acoustic SVS sobre M4Singer/Opencpop (mandarín) como pre-train cross-lingual.
- Empezar grabaciones dataset propio español (3-5 h, 2 cantantes neutros).
M6¶
- Fine-tune SVS acoustic con dataset propio español (1-3 h).
- Primera demo end-to-end con voz robótica entendible.
M7-M9¶
- Instrumental LM 300 M sobre 5-10 K h FMA-large + Jamendo.
- Iteraciones de calidad: ajuste CFG, top-k, scheduler.
M10¶
- Mixing presets por género finos. Sidechain compression. Mastering automático.
- UI Gradio + watermarking AudioSeal.
M11-M12¶
- Ablations: comparar AR vs latent diffusion (futuro DiT).
- Documentación final, Docker, demo público.
Plan B si se acaban créditos¶
- Quedarte con vocoder HiFi-GAN preentrenado (LibriTTS) sin re-entrenar.
- Reducir LM instrumental a 150 M y entrenar sobre 1-2 K h.
- SVS sólo acoustic + vocoder universal.
- Mezcla DSP determinística (no learnable).
Resultado: demo MVP en 4-6 meses con ~$700.