Audio-to-Audio
MLX
Safetensors
speech-enhancement
speech-denoising
gtcrn
apple-silicon
onnx-conversion
Instructions to use agentable/gtcrn-simple-mlx with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use agentable/gtcrn-simple-mlx with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir gtcrn-simple-mlx agentable/gtcrn-simple-mlx
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
add deterministic GTCRN Simple MLX weights
Browse files- LICENSE +21 -0
- README.md +63 -0
- conversion.json +11 -0
- model.safetensors +3 -0
LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2024 Rong Xiaobin
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 7 |
+
in the Software without restriction, including without limitation the rights
|
| 8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 9 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 10 |
+
furnished to do so, subject to the following conditions:
|
| 11 |
+
|
| 12 |
+
The above copyright notice and this permission notice shall be included in all
|
| 13 |
+
copies or substantial portions of the Software.
|
| 14 |
+
|
| 15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 21 |
+
SOFTWARE.
|
README.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
library_name: mlx
|
| 4 |
+
pipeline_tag: audio-to-audio
|
| 5 |
+
tags:
|
| 6 |
+
- speech-enhancement
|
| 7 |
+
- speech-denoising
|
| 8 |
+
- gtcrn
|
| 9 |
+
- mlx
|
| 10 |
+
- apple-silicon
|
| 11 |
+
- onnx-conversion
|
| 12 |
+
---
|
| 13 |
+
|
| 14 |
+
# GTCRN Simple - MLX
|
| 15 |
+
|
| 16 |
+
Apple MLX conversion of the GTCRN Simple streaming speech-enhancement model.
|
| 17 |
+
This repository contains FP32 safetensors deterministically converted from the
|
| 18 |
+
pinned Sherpa-ONNX release asset. It is a layout conversion only: there is no
|
| 19 |
+
retraining, quantization, fusion, or weight modification beyond the layout
|
| 20 |
+
required by MLX convolutions.
|
| 21 |
+
|
| 22 |
+
## Files
|
| 23 |
+
|
| 24 |
+
- `model.safetensors` - 208,427-byte FP32 MLX weight file. Its SHA-256 is
|
| 25 |
+
`d503ed83a35b91f66af97a6a1b07a76425988db7d9744556d0565c336a7e6e3b`.
|
| 26 |
+
- `conversion.json` - deterministic conversion record binding the source ONNX,
|
| 27 |
+
audit, converter revision, weight SHA-256, byte count, and 179 tensors.
|
| 28 |
+
- `LICENSE` - the upstream GTCRN MIT license.
|
| 29 |
+
|
| 30 |
+
## Provenance
|
| 31 |
+
|
| 32 |
+
- Upstream implementation and model: [Xiaobin-Rong/gtcrn](https://github.com/Xiaobin-Rong/gtcrn)
|
| 33 |
+
at `9202557caa577baf2ec2220bef82ba9f4b589dc1`.
|
| 34 |
+
- Pinned ONNX source: the Sherpa-ONNX `gtcrn_simple.onnx` release asset, SHA-256
|
| 35 |
+
`e77603ac0c23dac3227dd2d7135b3a585cbee2679048aecfa886657d3ae1b534`.
|
| 36 |
+
- Conversion: [model-gtcrn](https://github.com/agentable/model-gtcrn)
|
| 37 |
+
`scripts/convert_onnx_to_mlx.py`, using its committed conversion audit.
|
| 38 |
+
|
| 39 |
+
The converted file preserves ONNX initializer names. ONNX Conv weights become
|
| 40 |
+
MLX OHWI; grouped ConvTranspose weights use the audited group-aware layout
|
| 41 |
+
transform. GRU, normalization, PReLU, matrix, and structural parameters retain
|
| 42 |
+
their source layouts as required by the MLX runner.
|
| 43 |
+
|
| 44 |
+
## Validation
|
| 45 |
+
|
| 46 |
+
The MLX runner replays the pinned one-frame GTCRN graph, including all three
|
| 47 |
+
recurrent cache families. It is validated against the committed ONNX frame and
|
| 48 |
+
cache oracle with maximum absolute error below `5e-5` on Metal FP32 execution.
|
| 49 |
+
End-to-end waveform and corpus-quality qualification are not part of this
|
| 50 |
+
artifact release; they remain required gates in the consumer library before a
|
| 51 |
+
production release.
|
| 52 |
+
|
| 53 |
+
## Usage
|
| 54 |
+
|
| 55 |
+
This artifact is consumed by the `engine: mlx` backend in
|
| 56 |
+
[model-gtcrn](https://github.com/agentable/model-gtcrn) on Apple Silicon with
|
| 57 |
+
the `mlx` build tag. The consumer manifest pins this repository at an immutable
|
| 58 |
+
commit and verifies the asset SHA-256 and byte count before MLX allocation.
|
| 59 |
+
|
| 60 |
+
## License
|
| 61 |
+
|
| 62 |
+
The upstream GTCRN model is distributed under the MIT license. This derived
|
| 63 |
+
format conversion is redistributed under that same license; see `LICENSE`.
|
conversion.json
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"asset_bytes": 208427,
|
| 3 |
+
"asset_filename": "model.safetensors",
|
| 4 |
+
"asset_sha256": "d503ed83a35b91f66af97a6a1b07a76425988db7d9744556d0565c336a7e6e3b",
|
| 5 |
+
"audit_sha256": "23e83d7bc95de4ea3b8ee2940ec12592284b33ed05e8bcea3d51349a04fa7918",
|
| 6 |
+
"converter_sha256": "45bd6d99d87f4a4667642e9bec0f6f21c384e5c7dc6e19167e9d595ead4a579c",
|
| 7 |
+
"generated_by": "scripts/convert_onnx_to_mlx.py",
|
| 8 |
+
"schema_version": "gtcrn-mlx-conversion-v1",
|
| 9 |
+
"source_onnx_sha256": "e77603ac0c23dac3227dd2d7135b3a585cbee2679048aecfa886657d3ae1b534",
|
| 10 |
+
"tensor_count": 179
|
| 11 |
+
}
|
model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d503ed83a35b91f66af97a6a1b07a76425988db7d9744556d0565c336a7e6e3b
|
| 3 |
+
size 208427
|