unblend model artifacts
Model weights and browser-ready ONNX graphs for unblend, an audio source-separation library for Python and the browser.
These artifacts support music stem separation at 44.1 kHz using HTDemucs, BS-RoFormer, and Mel-Band RoFormer architectures.
Models
| Model | Output stems | Python | Browser | Weight terms |
|---|---|---|---|---|
htdemucs |
drums, bass, other, vocals | Yes | Yes | No explicit license grant identified for the released weights |
htdemucs_ft |
four-stem specialist ensemble | Yes | No | No explicit license grant identified for the released weights |
htdemucs_6s |
drums, bass, other, vocals, guitar, piano | Yes | Yes | No explicit license grant identified for the released weights |
bs_roformer_sw |
bass, drums, other, vocals, guitar, piano | Yes | Yes | CC-BY-NC-SA-4.0 |
melband_roformer_kim |
vocals, other | Yes | Yes | CC-BY-NC-SA-4.0 |
Artifact formats
Safetensors
The .safetensors files are pickle-free Python checkpoint weights consumed by
the unblend model repository. Their exact sizes and SHA-256 values are
registered in unblend/metadata.json.
The HTDemucs releases distributed by Meta stored their checkpoint state in
FP16. The corresponding Safetensors preserve that released precision.
HTDemucs inference may still run with FP32 parameters and computation depending
on the selected device and dtype.
The RoFormer Safetensors contain FP32 weights.
ONNX
Each browser-supported model has two ONNX variants:
*_fp32.onnx— weights stored as FP32.*_fp16.onnx— eligible weights stored as FP16 and cast back to FP32 before use. Inputs, outputs, activations, and computation remain FP32.
The FP16 ONNX variants reduce download size; they are not true FP16-compute graphs. This avoids the audible numerical degradation observed with native FP16 accumulation in ONNX Runtime Web/WASM.
The exact ONNX sizes and SHA-256 values are registered in
web/demucs/src/model-artifacts.ts.
All model URLs used by the package are pinned to immutable Hugging Face
revisions.
Usage and API documentation
The GitHub documentation is the maintained source for installation, usage, and API details:
- Project README and Python quick start
- Python API reference
- ONNX export and runtime notes
- Browser/npm package API
Integrity verification
Repository maintainers can stream every published ONNX artifact and verify its size and SHA-256 without retaining an additional full model copy in memory:
cd web
npm run verify:model-artifacts -w unblend
Python downloads are independently verified against the exact sizes and
SHA-256 values in unblend/metadata.json before model construction.
Licensing
The unblend source code is MIT-licensed. This does not relicense the model
weights.
HTDemucs
HTDemucs was developed by Alexandre Défossez and Meta. The released model weights were trained using MUSDB18-HQ and additional proprietary training material. No explicit license grant for the released HTDemucs weights has been identified, so users should not assume that the code's MIT license applies to those weights.
RoFormer
The BS-RoFormer and Mel-Band RoFormer weights are labeled CC-BY-NC-SA-4.0 in their release metadata. They are non-commercial and require attribution and share-alike treatment.
- BS-RoFormer-SW: model by jarredou; checkpoint provenance includes the enerjazzer mirror.
- Mel-Band RoFormer: vocals model by Kimberley Jensen.
Users are responsible for ensuring that their use complies with the applicable weight terms and the rights associated with their input audio.
Limitations
- Source separation is imperfect and may introduce bleed, artifacts, or missing content.
- Model behavior depends on the source material and selected architecture.
- RoFormer weights are non-commercial.
- Browser inference requires substantial memory and can be slow on unsupported or low-memory devices.
- The ONNX FP16 variants reduce transfer size but do not guarantee lower runtime memory consumption, because ONNX Runtime may materialize FP32 constants when creating a session.