RE-USE browser distribution for Reco Gecko

Browser inference assets derived from NVIDIA's RE-USE speech enhancement model. The trained weights are unchanged. This is an inference port and ONNX export, not a newly trained or fine-tuned model. It is an experimental browser deployment.

Upstream: NVIDIA-NemotronLabs-RE-USE, revision 31f82f2efad1095034492f236e8dac9239ba713b. Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. Model materials use OpenMDW-1.1; see LICENSE. ONNX Runtime 1.31.1 uses the MIT license; see ONNX-RUNTIME-LICENSE.txt and ONNX-RUNTIME-NOTICES.txt.

Contents

Asset Purpose
model.safetensors Original FP32 parameters (9,607,747 parameters; 38.6 MB)
encoder-split.onnx, decoder-split.onnx WebGPU encoder/decoder graphs (5.1 MB combined)
reuse.onnx Complete CPU/WASM ONNX graph (40.3 MB)
runtime/ort-wasm-simd-threaded.asyncify.wasm ONNX Runtime 1.31.1 binary (28.7 MB)
browser/ Browser worker, spectral transforms, WGSL model kernels and scheduler
checksums.json SHA-256 and byte length of every large binary

The GPU path uses ONNX encoder/decoder graphs plus custom WGSL kernels for the sequence blocks. The CPU path runs the complete ONNX graph. This avoids requiring CUDA or an NVIDIA GPU. Hardware/browser support and speed vary; WebGPU and WASM SIMD are required by their respective paths. Apple Silicon has not been validated on physical hardware for this release.

Both paths use mono 16 kHz audio, a 640-point periodic Hann STFT, 80-sample hop, reflected centering and log1p magnitude. Reconstructed frames with mostly nonpositive predicted magnitudes are blanked to suppress reconstruction sweeps, matching this browser implementation's tested output. This is not Doppler repair.

Long takes use an 8-second stride, one second of context on either side and 0.25 seconds of blending on either side of a boundary (maximum 10-second input window). Shorter takes run as a whole. The weights are FP32, without quantization. First-use backend downloads including the runtime are about 72.5 MB (GPU) or 69.1 MB (CPU). A fallback from GPU to CPU can require both sets of model assets.

Using the browser worker

Serve browser/ on your HTTPS origin as /speech-cleanup/v1/. Create its release.json with repo: "AnWoj/recogecko-reuse-web", a pinned Hugging Face commit as revision, and the contents of checksums.json as assets. The app distribution supplies this pinned manifest. Serve with Cross-Origin-Opener-Policy: same-origin and Cross-Origin-Embedder-Policy: require-corp for CPU multithreading.

const worker = new Worker('/speech-cleanup/v1/worker.js', { type: 'module' });
worker.onmessage = ({ data }) => {
  if (data.type === 'ready') {
    // samples: a Float32Array of mono 16 kHz PCM, finite samples.
    worker.postMessage({ type: 'process', samples }, [samples.buffer]);
  }
  if (data.type === 'done') {
    console.log(data.audio, data.inferenceSeconds);
    worker.terminate();
  }
  if (data.type === 'error') {
    console.error(data.message);
    worker.terminate();
  }
};
worker.postMessage({ type: 'init', backend: 'gpu' }); // Or 'cpu'

The caller must handle progress, cancellation, resampling, and GPU fallback by starting a fresh CPU worker. Never silently substitute unprocessed audio after a failed cleanup. The worker processes sequential requests, not concurrent takes. Model downloads are verified and cached through the browser Cache API when possible. Audio is processed locally and is not sent to Hugging Face.

Intended use and limitations

Intended for optional microphone speech cleanup after recording. Process full takes before timeline cuts to preserve context. Preserve system audio separately. The 16 kHz path limits output bandwidth to 8 kHz; it is intended for speech, not music or transparent full-band audio restoration. Enhancement can introduce artifacts and can retain other speakers. It is not target-speaker extraction.

Evaluate with your own recordings, inspect spectra and listen to the outputs. Original recordings should remain available for recovery and comparison.

Downloads last month

-

Downloads are not tracked for this model. How to track
Safetensors
Model size
9.61M params
Tensor type
F32
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for AnWoj/recogecko-reuse-web

Quantized
(8)
this model