Speech Enhancement β€” ai-coustics

Real-time, ASR-optimized speech enhancement models for machines.

Quail and Rook are production speech-to-speech models by ai-coustics that remove noise, reverb, and competing speakers from microphone audio in real time β€” 30 ms latency, no GPU needed, no ONNX dependency. They run on the contact side of Voice AI stacks to make downstream STT, VAD, turn-taking, and speech-to-speech models reliable: real-time audio intelligence that makes Voice AI work in production. Not just in the lab. Inference runs through the aic-sdk Python package (also available for Rust, C/C++, Node.js, and WebAssembly).

Setup

  1. Install the SDK:
    pip install aic-sdk
    
  2. Create a free SDK key on the ai-coustics playground β€” 30-day trial included, no credit card required.

Usage

# initialize the speech enhancement processor
import aic_sdk as aic

model = aic.Model.from_file(aic.Model.download("quail-vf-2.2-l-16khz", "./models"))
config = aic.ProcessorConfig.optimal(model)
processor = aic.Processor(model, "{aic-sdk-key}", config)  # get a free SDK key: https://developers.ai-coustics.com/login

# enhance mono float32 audio, one block at a time β€” real-time safe
enhanced_block = processor.process(audio_block)  # shape: (config.block_size,)

Complete example: enhance a WAV file

import wave
import numpy as np
import aic_sdk as aic

license_key = "YOUR_SDK_KEY"  # get a free SDK key: https://developers.ai-coustics.com/login
model = aic.Model.from_file(aic.Model.download("quail-vf-2.2-l-16khz", "./models"))

with wave.open("input.wav", "rb") as wf:
    assert wf.getnchannels() == 1, "mono input required"
    sample_rate = wf.getframerate()
    pcm = np.frombuffer(wf.readframes(wf.getnframes()), dtype=np.int16).astype(np.float32) / 32768.0

config = aic.ProcessorConfig.optimal(model, sample_rate=sample_rate)
processor = aic.Processor(model, license_key, config)

enhanced = np.concatenate([
    processor.process(pcm[i : i + config.block_size])
    for i in range(0, len(pcm) - config.block_size + 1, config.block_size)
])

with wave.open("enhanced.wav", "wb") as wf:
    wf.setnchannels(1)
    wf.setsampwidth(2)
    wf.setframerate(sample_rate)
    wf.writeframes((enhanced * 32767).astype(np.int16).tobytes())

Tune the enhancement strength at runtime (useful to optimize for a specific STT engine):

ctx = processor.get_context()
ctx.set_parameter(aic.ProcessorParameter.EnhancementLevel, 0.8)  # 0.0–1.0

Which model should I use?

Family Use it for Notes
Quail Voice Focus Voice agents with one primary speaker Voice isolation: suppresses competing voices and background speech, isolates the foreground speaker. Up to 43% fewer word errors across major STT providers. 16 kHz (usable in 8 kHz pipelines). v2.2 adds far-field single-speaker support. Not suited for multi-speaker scenarios.
Quail Multi Speaker Speech-to-text primer in noisy, far-field, multi-speaker conditions Denoiser optimized for STT accuracy; up to 30% word-error-rate reduction. 8 and 16 kHz.
Rook Human-to-human listening: conferencing, telephony Perceptual enhancement of noise, reverb, and distortion at up to 48 kHz. Not recommended for Voice AI use cases β€” use Quail there.

Model variants

Weights are hosted on the ai-coustics artifact CDN. aic.Model.download() fetches the latest compatible artifact and verifies its checksum automatically; the direct links below are for manual download. L = best quality, S = smaller/faster.

Quail Voice Focus (16 kHz)

SDK model ID Artifact SHA-256 (prefix)
quail-vf-2.2-l-16khz β€” latest, recommended v7 9645543da790
quail-vf-2.2-s-16khz v7 59a57bae4bcf
quail-vf-2.1-l-16khz v5 e3f6cd3fda62
quail-vf-2.1-s-16khz v5 7d0cc51114b7
quail-vf-2.0-l-16khz v2 c33a73442e25
quail-vf-1.1-l-16khz v1 e0337ec3388f
quail-vf-l-16khz v1 1509e36bd30c

Quail Multi Speaker (speech-to-text primer)

SDK model ID Sample rate Artifact SHA-256 (prefix)
quail-ms-l-16khz β€” recommended 16 kHz v7 6c55eab06add
quail-ms-s-16khz 16 kHz v7 c468df3f0687
quail-ms-l-8khz 8 kHz v7 9943a0e57123
quail-ms-s-8khz 8 kHz v7 2f0c21c45972
quail-l-16khz (legacy) 16 kHz v6 80d212880568
quail-s-16khz (legacy) 16 kHz v6 c41e369e7a33
quail-l-8khz (legacy) 8 kHz v6 e9d0768cc276
quail-s-8khz (legacy) 8 kHz v6 e666888f67c0

Rook Multi Speaker (human listening)

SDK model ID Sample rate Artifact SHA-256 (prefix)
rook-ms-l-48khz β€” recommended 48 kHz v7 e53fb6151ac5
rook-ms-s-48khz 48 kHz v7 d08b1b773722
rook-l-48khz 48 kHz v6 be355b90be0e
rook-s-48khz 48 kHz v6 8e2ac9750b10
rook-xs-48khz 48 kHz v1 63bffca72730
rook-xxs-48khz 48 kHz v1 914b8deb45a4
rook-ms-l-16khz 16 kHz v7 c85d729aca04
rook-ms-s-16khz 16 kHz v7 b3d4c49b6184
rook-l-16khz 16 kHz v6 85bd01c975e9
rook-s-16khz 16 kHz v6 b6d129e32f79
rook-ms-l-8khz 8 kHz v7 3b617e2d122e
rook-ms-s-8khz 8 kHz v7 ca0734051114
rook-l-8khz 8 kHz v6 07eca5332b03
rook-s-8khz 8 kHz v6 0a1e0ff071ea

Full SHA-256 checksums for every artifact are listed next to each download at artifacts.ai-coustics.io.

Related ai-coustics models

  • πŸŽ™οΈ Voice Activity Detection β€” real-time, noise-robust turn-taking for voice agents
  • πŸ” Audio Insight β€” predict and diagnose downstream failures in Voice AI stacks

Resources

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support