Views
No views yet
openbmb/VoxCPM-0.5B (OpenBMB),
a tokenizer-free TTS model. This repo holds only the LoRA delta (~28 MB) —
you also need the base model.LoRALinear, so this loads through the
baby-mynah loader, not peft. The weights file stores, per target Linear,
<prefix>.lora_A (r, in) and <prefix>.lora_B (out, r); the layer applies
out += (alpha/r) * (x @ A^T @ B^T).| Method | LoRA (rank 32, alpha 32, dropout 0) |
| Target modules | q/k/v/o_proj on both the LM and the DiT |
| Steps | 800 (effective batch 4 = batch 1 x grad-accum 4) |
| LR | 1e-4, 50 warmup, weight decay 0.01 |
| Audio | ~8 min, 16 kHz mono |
load_adapter / blend_into_model helpers
(see scripts/blend.py):1from blend import load_adapter, blend_into_model, restore_weights, scaling_from_config
2from voxcpm import VoxCPM
3
4model = VoxCPM.from_pretrained(hf_model_id="openbmb/VoxCPM-0.5B", optimize=False, device="cuda")
5adapter = load_adapter("path/to/this/adapter") # {prefix: (A, B)}
6scaling = scaling_from_config("path/to/this/adapter") # alpha / r
7
8# alpha=1.0 applies this expert fully; restore afterwards (surgery is in-place).
9snap = blend_into_model(model.tts_model, adapter, adapter, alpha=1.0, scaling=scaling)
10wav = model.generate(text="Hello! I am a very small bird.", normalize=True)
11restore_weights(model.tts_model, snap)