Instructions to use starkdmi/USS_MLX with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use starkdmi/USS_MLX with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir USS_MLX starkdmi/USS_MLX
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
| license: apache-2.0 | |
| base_model: RSNuts/Universal_Source_Separation | |
| tags: | |
| - mlx | |
| - audio | |
| - audio-to-audio | |
| - source-separation | |
| # USS ResUNet30 (MLX) | |
| Universal source separation β extracts a chosen sound class from a mixture. | |
| Converted to MLX from the [ByteDance USS](https://github.com/bytedance/uss) code | |
| and the published | |
| [RSNuts/Universal_Source_Separation](https://huggingface.co/RSNuts/Universal_Source_Separation) | |
| checkpoint. | |
| ## Files | |
| | file | size | | |
| | --- | ---: | | |
| | `resunet30_fp32.safetensors` | 102 MiB | | |
| | `resunet30_fp16.safetensors` | 51 MiB | | |
| ## Precision | |
| | precision | size | speed | peak memory | quality vs fp32 | | |
| | --- | ---: | ---: | ---: | ---: | | |
| | fp32 | 102 MiB | **27.2x** | **1203 MiB** | reference | | |
| | fp16 | **51 MiB** | 25.8x | 1259 MiB | 57.3 dB | | |
| Bold marks the best value in each column. Quality is fp16 against this model's own | |
| fp32 output β the cost of the precision change, not a score for the model. | |
| fp16 halves the download. On the machine below it was also slightly slower and | |
| used slightly more memory than fp32, since the forward pass dominates the | |
| footprint rather than the weights. | |
| Measured on an Apple M1 Pro (16 GB), 30 s of audio, three timed runs per | |
| configuration; speed is realtime factor. These are single-machine figures β expect | |
| different absolute numbers on other hardware, and treat the ordering as indicative | |
| rather than guaranteed. | |
| ## Conditioning | |
| USS is conditioned on a 527-dimensional vector over the | |
| [AudioSet](https://research.google.com/audioset/) classes, which selects what the | |
| separator extracts. It is an input rather than a model weight and is not shipped | |
| here: each vector is a normalised multi-hot indicator over a class group β zero | |
| everywhere, `1/n` at each of the `n` chosen indices β so a class list fully | |
| determines it. | |
| Class indices follow AudioSet's `class_labels_indices.csv`, published by Google | |
| with the dataset under CC BY 4.0. | |
| ## Used by | |
| [AudioToolSwift](https://github.com/starkdmi/AudioToolSwift) | |