Kronk — open source AI tooling for Go Local inference. Fewer moving parts. Explore Kronk

Local speech-to-text for Go

OpenAI-compatible /v1/audio/transcriptions and /v1/audio/translations powered by Bucky (whisper.cpp). Transcribe files, translate to English, stream live audio, and run models from tiny to large-v3-turbo with Metal, CUDA, and Vulkan — without sending audio to the cloud.

Bucky — local speech-to-text for Go
kronk — bucky example
$ git clone https://github.com/ardanlabs/kronk.git
$ cd kronk
$ make example-bucky

✓ installed whisper.cpp libraries
✓ downloaded ggml-tiny.bin
- text       : And so my fellow Americans…

Why Bucky

Built for production-minded Go teams

Bucky brings local speech-to-text into the Kronk stack so Go teams can transcribe and translate audio on their own hardware — without CGo or a cloud STT vendor.

  1. 01

    Stay local

    Transcribe and translate audio on your machines. Keep sensitive speech data inside your network.

  2. 02

    Familiar endpoints

    OpenAI-compatible /v1/audio/transcriptions and /v1/audio/translations so existing clients and agents can plug in with less friction.

  3. 03

    Hardware accelerated

    Metal, CUDA, and Vulkan acceleration for whisper.cpp models from tiny through large-v3-turbo.

  4. 04

    Go-native path

    No CGo. Pure-Go WAV, MP3, and FLAC decoding, plus a 1-to-1 whisper.h-style API for in-process use.

What you can do

Speech workflows Bucky is built for

Use the Go SDK inside your process, or expose the same capabilities through Kronk’s OpenAI-compatible audio APIs and Browser UI Translator.

File transcription

Upload or decode WAV, MP3, or FLAC and get a transcript back through the SDK or HTTP API.

Translate to English

Use /v1/audio/translations (or SDK translate mode) to turn supported source speech into English.

Live streaming

Feed audio blocks and consume partial and final transcript events as speech arrives.

Multi-speaker channels

Transcribe separate audio channels as separate speakers for meetings and call recordings.

Capabilities

What you get

whisper.cpp powered

Production-minded bindings for local transcription with models sized for your hardware and workload.

Streaming & VAD

Live streaming transcription with voice-activity detection — including Silero VAD for cleaner speech boundaries.

Diarization-ready

Channel-separated diarization in the SDK so multi-speaker recordings can map to separate speakers.

Flexible outputs

Return plain text, JSON, verbose JSON, SRT, or WebVTT — including optional word-level timestamps.

Works with Kronk server

Use Bucky through the Kronk model server, Browser UI Translator, or the Go SDK inside your process.

No cloud required

Run inference where your audio already is — laptops, workstations, or private infrastructure.

Kronk and Bucky — local speech-to-text in the Kronk ecosystem

Get started

Run Bucky with Kronk

Install Kronk, pull whisper.cpp libraries and a model, then run the Bucky example — or hit the transcriptions API once the model server is up.

Install Kronk

brew install ardanlabs/kronk/kronk
# or: go install github.com/ardanlabs/kronk/cmd/kronk@latest

Install whisper libraries + a model

kronk bucky libs
kronk bucky model pull tiny

Run the example

git clone https://github.com/ardanlabs/kronk.git
cd kronk
make example-bucky

Or transcribe through the API

kronk server start

curl -X POST http://localhost:11435/v1/audio/transcriptions \
  -F file=@samples/jfk.wav \
  -F model=tiny \
  -F response_format=json

Deeper docs: Bucky manual chapter · Kronk on GitHub · Bucky SDK repo

Platforms

Where Bucky runs

Compatible whisper.cpp library bundles are downloaded per host. Use the CLI as the source of truth for supported combinations on your install.

macOS

CPU amd64, arm64 · GPU Metal on Apple Silicon

Linux

CPU amd64, arm64 · GPU CUDA and Vulkan

Windows

CPU amd64 · GPU CUDA

Models

Size the model to the job

GGML Whisper models from the bundled catalog — pull what you need with kronk bucky model pull.

tiny / tiny.en

75 MB

Fastest path for prototyping and short clips

base / base.en

142 MB

Strong speed-to-quality balance for everyday use

small / small.en

466 MB

Better accuracy when latency still matters

medium / large-v3-turbo

1.5 GB

Higher accuracy without always paying full large-model cost

large-v3

2.9 GB

Highest accuracy multilingual transcription when quality comes first

Build AI systems you can own

Talk with Ardan Labs about local inference, private AI infrastructure, and production systems beyond API prototypes.

Explore AI Engineering