Affinez ACE-Step avec des adaptateurs LoRA personnalisés pour générer de la musique dans votre style unique.
Dernière mise à jour : Février 2026
LoRA (Adaptation de Bas Rang) est une technique permettant d'affiner efficacement les grands modèles en n'entraînant qu'un petit ensemble de poids d'adaptateurs. Pour ACE-Step, cela signifie que vous pouvez enseigner un style musical spécifique au modèle en utilisant seulement 20-50 pistes de référence.
Des données de qualité sont le facteur le plus important dans l'entraînement LoRA. Chaque fichier audio doit faire 30-120 secondes, être un seul instrument ou clairement mixé, et représenter de manière cohérente le style cible.
# Using Demucs for stem separation
pip install demucs
python -m demucs --two-stems=vocals audio/mixed_track.wavStem separation with Demucs for cleaner vocal isolation
# Normalize to -14 LUFS using ffmpeg
ffmpeg -i input.wav -filter:a loudnorm=I=-14:TP=-1.5:LRA=11 output.wavLoudness normalization to -14 LUFS
Ces paramètres recommandés fonctionnent pour la plupart des LoRAs de style musical. Ajustez selon la taille de votre dataset et la spécificité du style cible.
| Parameter | Recommended | Range | Note |
|---|---|---|---|
| LoRA Rank | 16 | 4–64 | Higher = more capacity, slower training |
| LoRA Alpha | 32 | 8–128 | Usually 2× rank value |
| Learning Rate | 1e-4 | 5e-5 – 5e-4 | Lower for small datasets |
| Batch Size | 4 | 1–16 | Reduce if OOM errors occur |
| Epochs | 50–150 | 20–500 | Monitor for overfitting |
| Warmup Steps | 50 | 0–200 | Stabilizes early training |
Collectez 20-100 échantillons audio représentant votre style cible. Utilisez la séparation de stems pour un signal d'entraînement plus propre. Exportez en WAV/FLAC à 44,1kHz.
# Recommended directory structure:
dataset/
audio/
track_001.wav
track_002.wav
...
metadata.jsonÉcrivez des légendes descriptives précises pour chaque fichier audio : genre, instruments, tempo, ambiance, tonalité. La qualité des légendes impacte directement l'efficacité du LoRA.
[
{
"file": "audio/track_001.wav",
"caption": "upbeat indie folk, acoustic guitar, female vocals, 120 BPM, C major, energetic"
},
{
"file": "audio/track_002.wav",
"caption": "melancholic jazz, piano and double bass, slow tempo, 70 BPM, F minor, introspective"
}
]Copiez configs/lora_training_template.yaml vers configs/my_lora.yaml. Définissez data_dir vers votre chemin de dataset et ajustez num_epochs selon la taille du dataset.
# configs/my_lora.yaml
model:
base_model: "ace-step-1.5"
lora_rank: 16
lora_alpha: 32
target_modules: ["q_proj", "v_proj", "k_proj", "out_proj"]
training:
num_epochs: 100
batch_size: 4
learning_rate: 1.0e-4
warmup_steps: 50
save_every: 25
data:
data_dir: "./dataset"
sample_rate: 44100
max_duration: 120Exécutez : python train_lora.py --config configs/my_lora.yaml. Surveillez les courbes de perte — la perte d'entraînement doit diminuer régulièrement sans pics.
python train_lora.py \
--config configs/my_lora.yaml \
--data_dir ./dataset \
--output_dir ./lora_output \
--num_epochs 100 \
--batch_size 4 \
--learning_rate 1e-4 \
--lora_rank 16Chargez votre checkpoint LoRA et testez avec des prompts variés. Si les sorties ne correspondent pas au style cible, augmentez les données d'entraînement ou les epochs.
# Load and use your trained LoRA
python generate.py \
--prompt "upbeat indie folk with acoustic guitar" \
--lora_path ./lora_output/checkpoint-100 \
--lora_weight 0.8L'entraînement LoRA nécessite 20-50 pistes de référence, un GPU avec 8Go+, et des heures de calcul. FM9 vous permet de contrôler le style musical avec des prompts descriptifs — sans entraînement, sans collecte de données, sans attente.
Commencer à Créer Gratuitement