Skip to content
anecho.ai

Null Test v0.1: zehn Sprachverbesserungs-Engines, achtzehn Bedingungen, und im gepoolten Mittel schlug nichts das rohe Signal

Der Harness, der Datensatz, die Configs und jetzt die Ergebnisse. Zehn Engines zur Sprachverbesserung, bewertet gegen eine rohe Kontrolle auf WER, Fehlerzerlegung, VAD und Kosten. Bei der gepoolten WER gewann roh — aber in 11 der 18 Einzelbedingungen schlug mindestens eine Engine das rohe Signal, und die Einfügungen stiegen, statt zu sinken.

Anecho Engineering13. Aug. 202614 Min. Lesezeit
nulltestbenchmarkmethodologyopen-sourcerelease

Update vom 20. Oktober 2026: Ein separates Experiment vergleicht jetzt unser v8_2 mit ai-coustics Quail VF 2.2 S auf konstruierten Live-Gesprächen: Gleichstand mit faster-whisper base.en, ein Vorsprung von v8_2 mit der Eingangstranskription von Gemini Live, und die Bedingung entscheidet, wer vorn liegt. Siehe Live-Gespräche. An diesem Post ändert sich nichts.

Aktualisiert am 14. August 2026: Die Matrix wurde mit fünf zusätzlichen Telefonie-Carrier-Bedingungen neu generiert, von dreizehn auf achtzehn. Die Absolutwerte haben sich bewegt; die Reihenfolge nicht. Jede Zahl unten ist aus der veröffentlichten benchmark.json zitiert.

Heute veröffentlichen wir Null Test v0.1 — den Harness, das Datensatz-Manifest, die Configs, die Regeln und den ersten vollständigen Satz an Ergebnissen. Er misst, was mit der Speech-to-Text-Genauigkeit passiert, wenn man eine Engine zur Sprachverbesserung (speech enhancement) vor einen Recognizer setzt — über achtzehn akustische Bedingungen, gegen eine Nullhypothesen-Kontrolle, die gewinnen darf.

Auf den gepoolten Zahlen hat sie gewonnen — und in der Aufschlüsselung pro Bedingung darunter steckt das eigentliche Engineering.

Ein Nulltest ist die kanonische audiotechnische Messung: Man subtrahiert das verarbeitete Signal von der Referenz, und was übrig bleibt, ist exakt das, was der Prozessor getan hat — einschließlich des Schadens. Das ist der ganze Anspruch dieses Projekts, also ist es der Name.

Warum es das gibt

Die öffentlichen Behauptungen sind unvereinbar. Krisp bewirbt grob eine Reduktion der Wortfehlerrate (WER) um 46%. ai-coustics bewirbt grob 43%. Eine unabhängige Studie (arXiv:2512.17562) fand, dass verbessertes Audio in allen 40 getesteten Konfigurationen schlechter abschnitt als rohes — allerdings nur mit MetricGAN+, auf medizinischer Sprache, in semantischer WER. AssemblyAI, das die Studie zitiert, berichtete separat, dass Krisps Ausgabe die WER grob verdoppelte, wenn sie an dessen STT verfüttert wurde, während falsche Auslösungen der Sprachaktivitätserkennung (VAD) etwa um das 3.5-Fache sanken. Deepgram hat die Position veröffentlicht, dass Verbesserung der Genauigkeit schadet, und begleitende Daten dazu haben wir nicht gefunden. Niemand teilt ein Korpus, einen Bedingungssatz, eine Konfiguration oder eine Kontrolle. Die lange Fassung dieser Uneinigkeit steht in Hilft Rauschunterdrückung Speech-to-Text wirklich?.

Was gefahren wurde

Recognizerfaster-whisper base.en, CTranslate2 int8 CPU, greedy Decoding
VADSilero VAD, Schwelle 0.5, Blöcke zu 512 Samples
Testset10 Sprecher, 180 Clips, rund 1406 Sekunden Audio, Seed 20260101
Referenzwörteretwa 190 pro Bedingung, 3420 gesamt pro Backend
Bedingungen18
Backends12 (roh, Passthrough-Kontrolle und zehn Enhancer)
HostApple M1 Max, onnxruntime 1.28.0, festgenagelt auf 1 Intra-Op-Thread

Die achtzehn Bedingungen: clean; Breitbandrauschen bei -5, 0, 5, 10 und 20 dB SNR; babble_snr5; konkurrierender Sprecher bei 0 und 5 dB; reverb und reverb_snr10; und sieben Telefonie-Bedingungen — telephony (ein Round-Trip über G.711 µ-law), telephony_snr10, dazu A-law, G.722, Opus mit 12 kbps und bursty Paketverlust bei 3% und 10%.

Die zehn Enhancer: GTCRN (MIT), fünf FastEnhancer-Varianten T/S/B/M/L (MIT), DeepFilterNet3 in zwei Konfigurationen (MIT oder Apache-2.0) und zwei ai-coustics-Modelle, Quail L und Quail VF 2.2 L, gefahren über das lizenzierte SDK als proprietäre Referenz-Baseline.

Unsere eigenen Modelle stehen nicht in dieser Matrix. Chamber und Clearline werden Zeilen darin sein, unter denselben Regeln, gegen dieselbe Kontrolle, die gerade alle geschlagen hat. Den Schiedsrichter vor dem Teilnehmer zu veröffentlichen war der Sinn dieser Reihenfolge.

Die Ergebnisse

Gepoolt über alle achtzehn Bedingungen:

BackendWEREinfügungenAuslassungenRTFLatenz
Roh (keine Verarbeitung)14.77%10160—0 ms
ai-coustics Quail L15.56%126570.12430 ms
ai-coustics Quail VF 2.2 L18.10%161750.07630 ms
GTCRN (MIT)20.26%210400.05016 ms
FastEnhancer-L (MIT)20.44%1591070.37625.8 ms
FastEnhancer-M (MIT)22.40%217830.11022 ms
FastEnhancer-T (MIT)22.46%1451090.01316 ms
DeepFilterNet335.18%3801970.133100 ms

Kein Enhancer schlug roh bei der gepoolten WER. Der beste war ai-coustics Quail L mit 15.56% gegen 14.77% für roh — rund acht Zehntelpunkte schlechter, was wir bei dieser Stichprobengröße eher ein Unentschieden als eine Niederlage nennen würden. Alles darunter verlor um fünf Punkte oder mehr, und das ist kein Unentschieden.

Die gepoolte Zahl beantwortet „sollte Verbesserung standardmäßig an sein" und fast nichts sonst; handeln sollte man nach den Abschnitten pro Bedingung weiter unten, und die sagen etwas anderes.

Die Einfügungen stiegen, statt zu sinken. Roh produzierte 101. GTCRN produzierte 210. DeepFilterNet3 produzierte 380. Das ist das direkte Gegenteil der Herstellerbehauptung, Verbesserung entferne halluzinierte Wörter, und es lohnt, dabei zu verweilen: Eine Einfügung ist kein verstümmeltes Wort, sondern der Recognizer gibt ein Wort aus, das niemand gesagt hat. Unsere Lesart: Was ein Unterdrücker zurücklässt — Musical Noise, gegatete Stille, verschmierte Transienten — ist eher als Sprache decodierbar als das Rauschen, das er entfernt hat.

GTCRNs Zerlegung macht den Punkt: 210 Einfügungen gegen nur 40 Auslassungen, wo roh 101 und 60 hatte. Es frisst nicht Ihre Funktionswörter, es fügt Wörter hinzu, die niemand gesprochen hat. Entgegengesetzte Fehlermodi, und eine einzelne WER-Zahl verbirgt, welchen davon man sich eingekauft hat. Deshalb veröffentlicht jede Zelle S, D und I getrennt.

Wo die Herstellerbehauptung tatsächlich hält

Bei der gepoolten Zahl stehen zu bleiben wäre exakt das, was wir den Herstellern vorwerfen. Verbesserung gewinnt in spezifischen Bedingungen reale Margen — in 11 unserer 18 schlug mindestens eine Engine das rohe Signal — und es sind die Bedingungen, die man vorhersagen würde: dort, wo Rauschen oder eine konkurrierende Stimme phonetische Hinweise tatsächlich zerstört.

Am klarsten ist die Sprecherisolation (speaker isolation). ai-coustics Quail VF ist ein Voice-Focus-Modell: Seine Aufgabe ist, den Primärsprecher zu isolieren und andere Stimmen zu verwerfen. Bei konkurrierendem Sprecher mit 5 dB senkte es die Einfügungen von 19 auf 10 und die WER von 26.3% auf 20.5%. Bei Babble mit 5 dB 24.7% auf 20.5%, mit Einfügungen von 10 auf 7 herunter. Das sind die stärksten Ergebnisse, die hier irgendein Enhancer eingefahren hat. Breitbandrauschen bei niedrigem SNR zeigt dieselbe Gestalt — bei 0 dB schlagen acht der zehn Engines das rohe Signal, die beste um 4.7 Punkte.

Die sieben Bedingungen, in denen nichts roh schlug, sind genauso informativ: die beiden halligen und die fünf Telefonie-Carrier-Bedingungen. In vier dieser fünf ist das Beste, was eine Engine schafft, ein exaktes Unentschieden mit dem Nichtstun — was eine eigene Art von Antwort ist.

Was nichts davon stützt, ist die allgemeine Behauptung. Gepoolt ist Quail VF mehr als drei Punkte schlechter als roh, weil es auch auf sauberem, halligem und schmalbandigem Material läuft, wo es nur Information entfernen kann. Verbesserung zahlt sich aus, wo das Audio wirklich schlecht ist, und kostet dort, wo es das nicht ist — und ein einzelner Skalar, unserer eingeschlossen, verbirgt, auf welcher Seite dieser Linie Ihr Traffic sitzt.

VAD: Die Metrik, die alle zitieren, bewegt sich kaum; die, die zählt, bewegt sich stark

Derselbe Lauf bewertete Silero VAD auf jedem Stream. Gepoolte VAD-F1: 0.950 roh gegen 0.947 für den besten verbesserten Stream. Wer Verbesserung an der VAD-F1 misst, folgert: Sie tut nichts.

Die Fehlalarmrate ist eine andere Geschichte, und ein Fehlalarm ist das, was ein unechtes Barge-in tatsächlich ist:

BedingungFehlalarmrate, rohVerbessertEngine
Babble bei 5 dB97.7%68.2%FastEnhancer-L
Konkurrierender Sprecher bei 5 dB58.1%37.2%ai-coustics Quail VF

Unter Babble bei 5 dB löst der rohe Stream auf praktisch jedem Nicht-Sprach-Frame falsch aus — eine VAD, die aufgehört hat, als Gate zu funktionieren. Verbesserung bringt das auf 68.2% — immer noch schlecht, und dreißig Punkte besser.

Derselbe Lauf sagt also: Verbesserung kostet Sie fünf Punkte gepoolte WER und kauft Ihnen ein Drittel Ihrer Fehlalarmrate zurück. Das ist kein Widerspruch, das ist eine Architektur: verbessertes Audio an den Turn-Detektor, rohes Audio an den Recognizer. Wir haben das als SDK-Default ausgeliefert, und die Begründung steht in Die geteilte Pipeline.

Telefonie: Kein Enhancer half, und mehrere schadeten erheblich

Auf dem Round-Trip über G.711 µ-law liegt roh bei 5.8% WER. Dagegen: ai-coustics Quail L +1.6 Punkte, Quail VF +2.6, GTCRN +3.2, FastEnhancer-T +6.8, DeepFilterNet3 +9.5. Auf demselben Round-Trip mit Rauschen bei 10 dB liegt roh bei 10.5%, und die Spanne reicht von +0.5 bis +9.5.

Kein Enhancer brachte auf Telefonie-Audio eine nennenswerte Verbesserung, und mehrere verursachten große Verschlechterungen. Zwei Zeilen kommen knapp unter roh heraus, und keine davon ist ein Ergebnis: FastEnhancer-S liegt auf der sauberen Zeile bei -0.5 — bei 190 Referenzwörtern innerhalb eines einzelnen Worts vom Nichtstun — und bei +3.7 auf der verrauschten; Quail VF liegt bei -1.1 auf der verrauschten Zeile und bei +2.6 auf der sauberen. Unentschieden, in beide Richtungen.

Die fünf in diesem Update ergänzten Carrier-Bedingungen sagen dasselbe, nur unverblümter. Auf A-law, G.722, Opus mit 12 kbps und 3% bursty Verlust ist das Beste, was irgendeine Engine schafft, ein exaktes Unentschieden mit roh; bei 10% Verlust erreicht nichts das rohe Signal. Die schlimmsten Zellen sind gravierend — FastEnhancer-M steht bei 49.0% auf A-law gegen 7.4% für roh, mit 61 Einfügungen, wo roh 2 hat. Kompandiertes Quantisierungsrauschen liegt außerhalb dessen, was dieses Modell erwartet, und es antwortet mit Halluzinationen.

Das zählt, weil Telefonie der Ort ist, an dem das Anrufvolumen liegt, und die Gestalt des Ergebnisses kein Zufall ist: Die DNS Challenge, die Benchmark-Reihe, gegen die die meisten veröffentlichten Denoiser getunt sind, hatte nie einen Schmalband-Track. Das Feld hat für 16 und 48 kHz optimiert, weil das bewertet wurde.

Es zählt mit einem großen Sternchen. Eine rohe WER von 5.8% auf der Basis-Telefonie-Bedingung heißt: Es ist eine leichte Bedingung, und nicht das, was produktive Telefon-Deployments bricht — siehe die Vorbehalte. Die vollständige Schmalband-Geschichte, einschließlich eines separaten End-to-End-Experiments bei 8 kHz mit nativen Schmalband-Engines und einer Resample-Round-Trip-Kontrolle, steht in 8 kHz ist die Stelle, an der Voice AI wirklich bricht. Die Kurzfassung: Nativ bei 8 kHz schlägt Resampeln-und-Hoffen beim selben Anbieter um 0.7 Punkte, und gar nichts schlägt das unangetastete Anrufer-Audio.

Die Vorbehalte, vollständig

Ein Ergebnis ohne seine Grenzen ist eine Werbeanzeige. Diese hier gehören zu jeder Zahl oben.

  • Ein einziger Recognizer. faster-whisper base.en. Ein anderer Recognizer liefert andere Absolutwerte. Der Harness unterstützt Deepgram und AssemblyAI, damit die Reihenfolge nachgeprüft werden kann, und wir hätten gern, dass das jemand tut, der uns nicht traut.
  • Etwa 190 Referenzwörter pro Bedingung, 3420 gepoolt. Genug, um große Effekte zu trennen, nicht genug, um ein oder zwei WER-Punkte aufzulösen: Ein Wort ist rund 0.5 Punkte pro Bedingung wert und 0.03 gepoolt. Lesen Sie die Lücke zwischen roh und Quail L als Unentschieden; die Lücken von fünf bis zwanzig Punkten darunter sind keines.
  • DeepFilterNet3 wird durch einen Block-Online-Adapter gemessen. Kein öffentlicher ONNX-Export führt rekurrente Zustandstensoren mit, Streaming pro Frame ist mit den veröffentlichten Gewichten also unmöglich. Seine 35.18% sind eine Untergrenze der Qualität und eine Obergrenze der Kosten, und seine 100 ms Latenz liegen weit über dem, was eine native Rust-Laufzeit erreicht. Zitieren Sie die Zahl nie ohne diesen Satz. Es läuft außerdem mit 48 kHz über Material mit 16 kHz, hochgetastet auf 48 kHz — die ehrliche VoIP-Situation, nicht die Bedingung, für die es entworfen wurde.
  • Die ai-coustics-Zeilen sind eine proprietäre Baseline, gefahren über das lizenzierte SDK. Ein Referenzpunkt, nie ein produktiver Codepfad für uns.
  • Lizenzen beschränken die Weiterverwendung. Das ESC-50-Rauschen ist CC-BY-NC-3.0, diese Bedingungen sind also nur Evaluation. LibriSpeech ist CC-BY-4.0, und die Babble- und Konkurrenzsprecher-Bedingungen sind ausschließlich aus LibriSpeech gebaut, tragen also keine NC-Beschränkung.
  • onnxruntime festgenagelt auf 1 Intra-Op-Thread, sequentielle Ausführung. Die RTF-Spalte ist ein Stream auf einem Kern, kein Fan-out.
  • Nur Englisch, Batch-Bewertung, kein Hörpanel, keine Metriken auf Turn-Ebene. Die Verbesserung wird Block für Block getrieben, mit über die Blöcke hinweg mitgeführtem Zustand, aber der Recognizer wird auf vollständigen Äußerungen bewertet, und die VAD arbeitet auf Frame-Ebene. „Weniger falsche Barge-ins" als Produktmetrik braucht gelabelte Turn-Grenzen und eine vereinbarte Definition.
  • Die Telefonie-Bedingungen sind realistischer als zuvor, und immer noch kein Telefonanruf. Sie enthalten jetzt A-law- und G.722-Strecken, Opus mit 12 kbps und bursty Zwei-Zustands-Paketverlust bei 3% und 10% mit Attenuated-Repeat-Concealment — statt unabhängigen Zufallsverlusts mit Stillefüllung, der Decodern schmeichelt beziehungsweise den Schaden überzeichnet. Es fehlen weiterhin: akustisches Echo mit nichtlinearer Lautsprecherverzerrung, Unterdrückung auf Seiten des Endgeräts und AMR-WB- oder EVS-Strecken. Echo ist die Lücke, die uns am meisten kümmert, weil es die Störung hinter dem Teil unserer eigenen Roadmap ist, der sich nicht mit einem Patch schließen lässt.
  • Diese achtzehn Bedingungen sind mit 16 kHz gespeichert, nach einer Carrier-Strecke mit 8 kHz, sodass jedes Backend sie mit seiner eigenen nativen Rate sieht. Das wirklich schmalbandige Experiment — 60 Clips, durchgehend 8 kHz, nichts resampelt, native 8-kHz-Engines eingeschlossen — ist ein separates Artefakt mit einer eigenen Auflösungsgrenze von 1,140 Referenzwörtern, bei der ein Wort 0.09 Punkte wert ist.

Methodik, detailliert genug, um sie anzugreifen

Streaming wird ehrlich simuliert. Jeder Enhancer wird Block für Block mit seiner deklarierten Blockgröße getrieben, mit über die Blöcke hinweg mitgeführtem Zustand und ohne Lookahead über seine deklarierte algorithmische Latenz hinaus. Offline-Verarbeitung ganzer Dateien schmeichelt einem Enhancer und ist nicht das, was ein Live-Agent bekommt. Latenz wird als algorithmische Latenz berichtet — Frame plus Lookahead —, eine Eigenschaft des Modells, nicht unseres Laptops.

RTF wird gemessen, nicht zitiert. Ein einzelner festgenagelter Kern, Warmup-Durchläufe verworfen, der Hardware-String in jeder Zeile festgehalten. Ein Modell, das bei 4x Echtzeit auf WER gewinnt, ist keine lieferbare Option — die Genauigkeitszahl und die Kostenzahl reisen also zusammen.

Rauschen wird gemischt, nicht vorgemischt bezogen. Saubere Sprache plus Rauschen bei einem Ziel-SNR, berechnet ausschließlich über aktive Sprachregionen, damit führende und abschließende Stille das Verhältnis nicht verzerren. Hall ist Faltung mit gemessenen Raumimpulsantworten. Telefonie ist ein echter Codec-Round-Trip — Resampling auf 8 kHz, G.711-µ-law-Encodieren und -Decodieren, Resampling zurück — statt eines Tiefpassfilters, das einen Kanal vertritt. Eine echte Codec-Strecke, und trotzdem kein echter Telefonanruf; der Vorbehalt oben listet, was sie auslässt.

Die Textnormalisierung ist fixiert und veröffentlicht. WER ist (S + D + I) / N nach einem Normalizer, der identisch auf jede Hypothese und jede Referenz angewandt wird: Case-Folding, Entfernen von Interpunktion, Zahlenexpansion, Behandlung von Kontraktionen. Normalisierung kann die WER um mehrere Punkte bewegen, also ist sie im Repo versioniert und in jeder Zeile festgehalten.

Determinismus, und Ausgaben pro Äußerung. Feste Seeds für Rauschauswahl, SNR-Ziehung und RIR-Auswahl; das Datensatz-Manifest ist inhaltsadressiert mit SHA-256 pro Datei, beim Abruf verifiziert — dieselbe Config auf demselben Commit produziert also dieselben Zeilen. Jeder Lauf emittiert außerdem neben den Aggregaten Hypothesen und Referenzen pro Äußerung, sodass jeder nachrechnen, anders schneiden oder die zehn Dateien finden kann, die ein Ergebnis tragen. Benchmarks, die nur Aggregate liefern, lassen sich nicht prüfen — was ein Gutteil dessen ist, wie das Feld hierher gekommen ist.

Die Regeln, die daraus einen Schiedsrichter machen

  1. Die rohe Kontrolle steht immer in der Matrix und darf gewinnen. In v0.1 hat sie gewonnen.
  2. Wir bewerten uns selbst unter denselben Regeln, in denselben Tabellen. Chamber und Clearline werden Zeilen sein, keine separate Marketingseite.
  3. Jede Zelle wird veröffentlicht, auch die, in denen wir verlieren. Keine Bedingung fliegt raus, nachdem wir das Ergebnis gesehen haben.
  4. Die Configs liegen im Repo. Glaubt ein Hersteller, wir hätten seine Engine schlecht konfiguriert, ist der Fix ein Pull Request gegen eine YAML-Datei, und wir fahren neu und veröffentlichen neu.
  5. Recht auf Erwiderung. Jeder Maintainer oder Hersteller kann einen erneuten Lauf mit einer anderen Einstellung anfordern. Wir veröffentlichen beide.
  6. Die Lizenz wird pro Zeile ausgewiesen. Wo die Bedingungen eines Herstellers die Veröffentlichung von Benchmark-Ergebnissen verbieten, sagen wir, dass die Zelle blockiert ist, und nennen den Grund, statt sie stillschweigend wegzulassen.

Das Ausgabeformat

Das vollständige Dokument liegt unter /benchmark. Die Zusammenfassung eines Backends:

{
  "id": "gtcrn",
  "label": "GTCRN",
  "license": "MIT",
  "wer": 0.2026,
  "werSubstitutions": 443,
  "werInsertions": 210,
  "werDeletions": 40,
  "werRefWords": 3420,
  "vadF1": 0.9472,
  "vadFalseAlarm": 0.1638,
  "rtf": 0.0498,
  "latencyMs": 16.0
}

Jedes Backend führt außerdem ein conditions-Objekt mit derselben Zerlegung pro Bedingung — dort leben die interessanten Uneinigkeiten.

Selbst laufen lassen

git clone https://github.com/anecho/nulltest
cd nulltest
uv sync

# fetch and verify the dataset against the content-addressed manifest
python -m nulltest.data fetch --manifest data/manifest.json

# one condition, two backends, one recogniser — a few minutes on a laptop
python -m nulltest.run \
  --condition babble_snr5 \
  --backend gtcrn --backend raw \
  --stt faster-whisper:base.en \
  --out out/

python -m nulltest.report out/ --format md

Eine Engine zu ergänzen ist eine Datei. Der Benchmark spricht ausschließlich mit diesem Interface:

class Enhancer(Protocol):
    id: str
    sample_rate: int
    block_size: int              # samples per process() call
    algorithmic_latency_ms: float

    def reset(self) -> None: ...

    def process(self, block: np.ndarray) -> np.ndarray:
        """block: float32 mono, shape (block_size,), range -1 to 1. Returns same shape."""

Wenn Ihre Engine reset und process implementiert, kann sie in der Matrix stehen. Besonders gern hätten wir, dass die Hersteller, deren veröffentlichte Behauptungen wir zitiert haben, ihre eigenen Adapter und Konfigurationen einreichen.

Was als Nächstes passiert, und der kommerzielle Teil

v0.2 ergänzt Endpointing-Metriken auf Turn-Ebene via Onset, Streaming-STT mit Latency-to-Final, einen zweiten und dritten Recognizer, damit die Reihenfolge geprüft statt geglaubt werden kann, mehrsprachige Bedingungen und eine Echo-Bedingung mit nichtlinearer Lautsprecherverzerrung. Chamber und Clearline treten in die Matrix ein, wenn sie etwas haben, das sich zu bewerten lohnt.

Zu diesem letzten Punkt, unumwunden: Eine Zeile hier ist keine Pressemitteilung, und wir werden keine veröffentlichen, bevor sie lesenswert ist. Architektur- und Korpus-Experimente laufen gegen dieselben zurückgehaltenen Bedingungen, die die Tabellen oben produziert haben, und Clearline tritt in die Matrix ein, wenn es sich die Zeile verdient hat — gemessen auf Telefonie-Bedingungen, die den Namen verdienen, gegen eine Kontrolle, die es schlagen darf.

Der kommerzielle Teil, einmal gesagt und ohne Dekoration: Dieser Benchmark ist nicht das Produkt. Ein Benchmark hat keinen Käufer und keine Retention — niemand verlängert ein Leaderboard. Was wir verkaufen wollen, ist Clearline, ein Telefonie-Audiopfad: native Primärsprecher-Isolation bei 8 kHz, Unterdrückung von Restecho, pro Minute, mit sofortigem API-Key und ohne Vertriebsanruf. Beachten Sie genau, was v0.1 uns darüber zu sagen erlaubt. Es sagt, dass nichts auf dem Regal auf einem Schmalbandkanal hilft und dass niemand überhaupt Sprecherisolation bei 8 kHz ausliefert. Es sagt noch nicht, dass unsere besser ist — diese Zahl gehört in die Tabelle, nicht in einen Absatz, und dort landet sie, wenn sie gemessen ist. Null Test ist, wie wir herausgefunden haben, was zu bauen ist — und wie Sie prüfen, ob wir dabei lügen.

Harness und Issues: github.com/anecho. Vollständige Matrix: /benchmark. Quickstart: /docs. Wenn Sie eine Bedingung, eine Engine oder einen Recognizer ergänzt haben wollen, eröffnen Sie ein Issue — auch dann, wenn Sie erwarten, dass es uns schlecht aussehen lässt.

Weiter
  • 24. Okt. 2026

    ai-coustics-Alternativen für Voice-Agents und Callcenter (2026)

    Warum Teams über ai-coustics Quail Voice Focus hinausschauen, und eine belegte Shortlist mit Stand Oktober 2026: Krisp VIVA, AssemblyAI Voice Focus, LiveKit Cloud voice isolation, NVIDIA Speaker Focus, Anecho und Open-Source-Baselines. Wir haben ai-coustics bei Live-Gesprächen gegen unser eigenes Modell gebenchmarkt: Gleichstand mit faster-whisper, ein Vorsprung von v8_2 mit Gemini Live, weniger falsche Barge-ins bei ai-coustics, und die Bedingung entscheidet, wer vorn liegt.

  • 22. Okt. 2026

    Krisp-Alternativen für Voice-Agents und Callcenter (2026)

    Warum Teams über Krisp VIVA hinausschauen, und eine belegte Shortlist mit Stand Oktober 2026: ai-coustics Quail Voice Focus, AssemblyAI Voice Focus, LiveKit Cloud voice isolation, NVIDIA Speaker Focus, Anecho und Open-Source-Baselines, jeweils mit Einsatzort, öffentlichem Preis und der Angabe, ob wir es gemessen haben. Krisp haben wir nicht gemessen.

  • 20. Okt. 2026

    Speaker-Isolation-SDKs im Vergleich (2026): Krisp, ai-coustics, AssemblyAI, LiveKit und Anecho

    Ein belegter Vergleich der Sprecherisolation für Voice-Agents und Callcenter, Stand der Angaben Oktober 2026: wo jedes Produkt läuft, deklarierte Latenz, Abtastraten, Integration, öffentlicher Preis und Lizenzierung. Krisp VIVA und Anecho deklarieren 15 ms auf der CPU; ai-coustics nennt unter 30 ms; AssemblyAI und LiveKit verkaufen Isolation innerhalb eines Cloud-Dienstes. Qualitätszahlen nur aus unserem eigenen Benchmark.