Instructions to use smcleod/resemble-enhance-mlx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use smcleod/resemble-enhance-mlx with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir resemble-enhance-mlx smcleod/resemble-enhance-mlx
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- LM Studio
resemble-enhance-mlx
MLX-compatible safetensors for resemble-enhance, converted for use with resemble-enhance-swift on Apple Silicon.
These are the original Resemble AI weights, transformed for the MLX layout. No retraining or fine-tuning has been done.
Files
| File | Size | Purpose |
|---|---|---|
denoiser.safetensors |
41 MB | 2D UNet spectral-mask denoiser |
lcfm_ae.safetensors |
390 MB | IRMAE encoder/decoder (mel <-> 64-dim latent) |
lcfm_cfm.safetensors |
264 MB | Conditional flow matching, 30-layer WaveNet velocity field |
vocoder.safetensors |
662 MB | UnivNet vocoder (LVCNet generator) |
normalizer.safetensors |
160 B | Mel running mean/variance |
Total: ~1.4 GB at float32.
Usage
With resemble-enhance-swift:
huggingface-cli download sammcj/resemble-enhance-mlx
The CLI and example SwiftUI app auto-discover weights from the HuggingFace hub cache (~/.cache/huggingface/hub/models--sammcj--resemble-enhance-mlx/snapshots/<commit>/). You can also pass the directory explicitly:
resemble-enhance enhance \
--model-dir ~/.cache/huggingface/hub/models--sammcj--resemble-enhance-mlx/snapshots/<commit>/ \
input.wav output.wav
Or from Swift:
import ResembleEnhance
let engine = try ResembleEnhance(modelDirectory: weightsURL)
let enhanced = engine.enhance(samples: samples, sampleRate: 24_000)
Conversion
Produced by Scripts/convert_weights.py in resemble-enhance-swift. The script:
- Loads
mp_rank_00_model_states.ptfrom the upstream PyTorch checkpoint (DeepSpeed format, wrapped in["module"]) - Fuses
weight_normparametrisations into plainweighttensors (handles both oldweight_g/weight_vand newparametrizations.weight.original*formats) - Transposes conv kernels from PyTorch NCHW to MLX NHWC layout (
Conv1dO,I,K -> O,K,I;Conv2dO,I,H,W -> O,H,W,I;ConvTranspose1dI,O,K -> O,K,I) - Transposes FIR filter buffers used by the alias-free resampler (same layout, since they're applied as conv kernels)
- Splits the monolithic checkpoint into one safetensors file per component
- Strips unused buffers (
dummy,mel_fn,mrstft, training-onlyestimator)
To reproduce:
huggingface-cli download ResembleAI/resemble-enhance
python Scripts/convert_weights.py
The output then matches what's in this repo.
Source
Derived from ResembleAI/resemble-enhance. The original PyTorch checkpoint is mp_rank_00_model_states.pt from the enhancer_stage2 training run.
Licence and credit
Released under CC-BY-NC-4.0, inheriting the upstream licence. Non-commercial use only.
The model architecture, training data, training code, and original weights are the work of Resemble AI. This repo only contains the format conversion required to run the model on Apple Silicon via MLX. All credit for the model itself belongs to the original authors:
Quantized
Model tree for smcleod/resemble-enhance-mlx
Base model
ResembleAI/resemble-enhance