Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Introduction

Status: Current Last updated: 2026-08-30 21:00 EDT

Batchalign is a toolkit for language sample analysis (LSA) from the TalkBank project. It processes conversation audio files and their transcripts in CHAT format, providing automatic speech recognition, forced alignment, morphosyntactic analysis, translation, utterance segmentation, and audio feature extraction.

The standalone batchalign3 binary (written in Rust) provides the CLI and an HTTP server for offloading work to a central machine. Python ML workers (Stanza, Whisper, etc.) handle inference and are managed automatically by the server.

batchalign3 is the supported public Batchalign surface today. It is a public preview product line with wheels for Windows, macOS, and Linux. The separate Batchalign Desktop shell in apps/dashboard-desktop/ is still experimental and should not be described as the supported first-time-user entry point. For current platform details, see Platform Support and the Release Contract.

batchalign3 is installed from GitHub releases (there is no PyPI package): run the installer one-liner from the Installation guide, which bootstraps uv and installs the CLI with a uv-managed Python. Repo-hosted .command / .bat double-click wrappers run the same installer.

Who is Batchalign for?

Batchalign is designed for researchers and clinicians who work with conversation transcripts – particularly those stored in TalkBank’s CHAT format. Typical workflows include:

  • Transcribing recorded conversations into CHAT files via ASR (Rev.AI or OpenAI Whisper).
  • Aligning existing transcripts against audio to produce word-level and utterance-level timestamps.
  • Tagging transcripts with morphological and dependency analyses (%mor and %gra tiers) using Stanford Stanza.
  • Translating non-English transcripts to English.
  • Segmenting unsegmented text into utterances.
  • Extracting acoustic features (OpenSMILE, AVQI) from speech recordings.

Key features

  • Rust-backed CHAT parsing. All CHAT reading and writing goes through a Rust AST (batchalign_core), ensuring correct handling of CHAT’s complex encoding, escaping, and continuation rules.
  • Per-utterance caching. Morphosyntax, forced alignment, and utterance segmentation results are cached in a local SQLite database so that reprocessing the same corpus is nearly instant.
  • Server mode. A built-in HTTP server lets you offload processing to a central lab machine. Clients send small CHAT files (~2 KB each); the server resolves media from configured volume mounts and does all the heavy computation.
  • Automatic concurrency tuning. The CLI auto-tunes worker counts based on available RAM and GPU resources, and manages a persistent local daemon so model loads are amortized across successive commands.

How to use this book

This book is organized into six sections:

  1. Migration Book – the authoritative public crosswalk from the previous release to the current version, anchored to the January 9, 2026 baseline 84ad500... and, where needed, the February 9, 2026 released BA2 master point e8f8bfa....
  2. User Guide – Installation, quick start, CLI reference, Python API, server setup, and troubleshooting.
  3. Architecture – How the pipeline, engine, dispatch, caching, and validation systems work internally.
  4. Technical Reference – Detailed documentation on CHAT format, morphosyntax, forced alignment, multilingual support, and more.
  5. Developer Guide – Building from source, testing conventions, adding new engines, and working with the Rust core.
  6. Design Decisions – ADRs and accepted design notes on the implemented Rust control plane, correctness work, and server orchestration.

If you are a new user, start with Installation and Quick Start. If you are migrating from a previous version, start with Migration Guide. There is no public Python API, the supported integration path from Python is subprocess-into-batchalign3. See No Python API for the full statement.

Acknowledgments

The TalkBank Project, of which Batchalign is a part, is supported by NIH grant HD082736.

If you have questions or encounter issues, please open an issue in the repository’s issue tracker.


This page last changed: 2026-08-30 (commit 0964e762). The whole book last changed: 2026-09-16 (commit 34d249d8).