Documentation#

Applied Brain Research (ABR) builds speech software that runs entirely on your own hardware. This site documents the ABR SDK, which runs ABR models on a device, and the two model families it executes: Niagara for automatic speech recognition (ASR) and Nith for text-to-speech (TTS). No audio and no text leaves the device.

ABR SDK

Install the SDK, activate a license, and run the models in your application.

ABR SDK Introduction
Niagara ASR

Streaming speech recognition with 150ms average latency, in models from 8M to 38M parameters.

Niagara Automatic Speech Recognition
Nith TTS

Streaming text-to-speech that starts speaking as soon as the first text arrives.

Nith Text-to-Speech

What ABR provides#

  • The ABR SDK is an API over a stable C application binary interface. Install it, download an application package built for your target platform, and create an Asr or Tts object. The Python package installs as abr-sdk and imports as abr_sdk.

  • Speech models ship inside those application packages, together with the compiled inference library and the model weights. Niagara recognizes speech with 8M to 38M parameters. Nith synthesizes speech with 5M parameters.

Niagara is built on state-space models (SSMs), an architecture ABR introduced in 2019 with the Legendre Memory Unit. An SSM processes input one step at a time and holds a fixed-size internal state, so it needs no look-ahead or batch accumulation before producing output. The result is small models, low and predictable latency, and a flat memory profile on constrained hardware. You do not need to understand SSMs to use the SDK; ABR SDK Introduction has the longer explanation.

Get a developer account#

Running ABR software on a device takes three things:

  • The SDK, which is public. See Installation.

  • An application package, downloaded from the ABR developer portal. Registration is self-serve, and evaluation is free.

  • A license key, also from the developer portal, which activates an application package on a device. Packages are licensed per device; activate each device once. See License activation.

Where to start#

Model and package naming#

An application package name encodes the model family, size, variant, language, and target platform:

niagara-38m-live.en-linux-x86_64

This is the 38M-parameter streaming English ASR model, packaged for Linux on x86-64. TTS packages add a voice after the language, as in nith-5m-live.en-f1-linux-x86_64. Download the package matching the device the SDK will run on. Package naming describes every field.

Common questions#

Support#

For anything not answered here, email support@appliedbrainresearch.com. Company and product information is at appliedbrainresearch.com.