alt.freeweights.granite / granite-speech-5.0-470m-turboctc
From: ibm-granite <huggingface.co/ibm-granite>Newsgroups: alt.freeweights.graniteSubject:

granite-speech-5.0-470m-turboctc

Date: 2026-11-14Commit: 91dcb06Signed: 2DC28CC7B26A283B ✓

Automatic speech recognition model with 473M parameters. Safetensors weights, 949 MB in all. Published by ibm-granite under Apache-2.0.

473M params949MBgranite-speech-5.0-470m-turboctcsafetensorspermissive
FactsParams473MSize949 MBFormatssafetensorsTaskautomatic speech recognitionLicenseApache-2.0From sourcepermissive
$ fw get ibm-granite/granite-speech-5.0-470m-turboctc
# manifest sha256 a5b03cc9348a… · 949 MB · 14 files
$ fw verify ./granite-speech-5.0-470m-turboctc ibm-granite/granite-speech-5.0-470m-turboctc
From sourceHosted (signed)ibm-granite/granite-speech-5.0-470m-turboctcLast check: 2026-11-14 21:16 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Overview

Size
949 MB
Weights
946 MB (safetensors)
Parameters
473M
Formats
safetensors
Task
automatic speech recognition
License
Apache-2.0 (permissive)
Files
14, each with a sha256
Publisher
ibm-granite
Added
2026-11-14
Section
alt.freeweights.granite
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commitโ†’You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-14 21:16 UTCpassed

Model card

From the publisher at commit 91dcb06. Shown as plain text with links; images open at the publisher.

Granite-Speech-5.0-470M-TurboCTC#

๐ŸŽ‰ NEW (October 21, 2026): Granite Speech 5.0 TurboCTC is now multilingual! ๐ŸŒ 7 Languages (En, Fr, De, Es, Pt, It, Ja) โ“ Native punctuation & capitalization ๐Ÿš€ Better English WER (5.51% vs. 5.78%) โช Previous English-only release: revision 947f59a

Model Summary: Granite Speech 5.0 TurboCTC is a compact 470 million parameter multilingual ASR model for English, French, German, Spanish, Portuguese, Italian and Japanese with very high inference speed that is well suited for deployment on laptops, smartphones and other edge devices. The model consists of a conformer acoustic encoder with block self-attention, self-conditioning and temporal downsampling with an output layer corresponding to 16,384 multilingual BPE units. It was trained on approximately 153,000 hours of multilingual audio from public corpora using Connectionist Temporal Classification (CTC) and inference is done non-autoregressively with greedy decoding. The model outputs punctuated and capitalized transcripts.

Evaluations:

We evaluated granite-speech-5.0-470m-turboctc on standard short-form English ASR benchmarks from the Open ASR leaderboard. Despite adding six languages and native punctuation, the multilingual update improves the average English WER over the original English-only release (5.51% vs. 5.78%):

Image: granite-speech-5.0-470m-turboctc-wer-en

We also evaluated multilingual ASR on the Open ASR leaderboard multilingual benchmarks (FLEURS, CommonVoice, MLS) for German, Spanish, French, Italian and Portuguese, against the best open-weights model of each organization:

Image: granite-speech-5.0-470m-turboctc-wer-ml

For Japanese, which is not part of the Open ASR leaderboard multilingual benchmarks, we report the character error rate (CER) on CSJ eval1, CommonVoice-17 and FLEURS. The 470M-parameter granite-speech-5.0-470m-turboctc outperforms the 2B-parameter granite-speech-5.0-2b on all three test sets:

Image: granite-speech-5.0-470m-turboctc-cer-ja

Accuracy vs. speed on the Open ASR leaderboard (English short-form, average over 9 public test sets, official results as of October 21, 2026; the orange marker is this model's unofficial result, the leaderboard entry is still the English-only release):

Image: granite-speech-5.0-470m-turboctc-pareto-rtfx

Release Date: October 21, 2026 (original English-only release: August 25, 2026)

License: Apache 2.0

Supported Languages: English, French, German, Spanish, Portuguese, Italian, Japanese

Intended Use: The model is intended to be used in enterprise applications that involve accurate low-latency/high-throughput multilingual speech-to-text transcription.

Usage:#

Usage with transformers

Granite Speech 5.0 TurboCTC is supported natively in transformers>=5.16.0:

pip install transformers>=5.16.0 datasets
from datasets import Audio, load_dataset
from transformers import AutoModelForCTC, AutoProcessor

model_id = "ibm-granite/granite-speech-5.0-470m-turboctc"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForCTC.from_pretrained(model_id, device_map="auto")

ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))
speech_samples = [el["array"] for el in ds["audio"][:5]]

# `device` computes the log-mel front-end on the model's accelerator, saving a host-to-device copy
inputs = processor(
    speech_samples, sampling_rate=processor.feature_extractor.sampling_rate, device=model.device
)
inputs.to(model.device, dtype=model.dtype)
outputs = model.generate(**inputs)
print(processor.batch_decode(outputs, skip_special_tokens=True))

Usage with mlx-audio for Apple Silicon M series chips

Install a recent version of mlx-audio (0.5.1 or later):

pip install -U mlx-audio

Sample use:

python -m mlx_audio.stt.generate --model ibm-granite/granite-speech-5.0-470m-turboctc --verbose --audio "audio.wav" --output-path "transcript"

Usage with transcribe.cpp for local GGUF inference

transcribe.cpp runs the model from a quantized GGUF on Metal, Vulkan, CUDA, ROCm, or CPU, with no Python at runtime. Build it (tested with release 0.4.1), then fetch a pre-quantized GGUF of this multilingual release from vladers/granite-speech-5.0-470m-turboctc-GGUF (community conversion; Q8_0 recommended, Q6_K to Q4_K_M also available):

git clone --branch v0.4.1 https://github.com/handy-computer/transcribe.cpp
cd transcribe.cpp && cmake -B build && cmake --build build --target transcribe-cli
hf download vladers/granite-speech-5.0-470m-turboctc-GGUF \
  granite-speech-5.0-470m-turboctc-Q8_0.gguf --local-dir models

Sample use (16 kHz mono WAV; -o writes only the transcript to a file):

build/bin/transcribe-cli -q -m models/granite-speech-5.0-470m-turboctc-Q8_0.gguf -o transcript.txt audio.wav

On silence or non-speech audio, transcribe.cpp returns the model's <|nospeech|> control token as the transcript; treat that output as no speech.

Model Architecture:

The architecture of granite-speech-5.0-470m-turboctc is unchanged from the original English-only release, apart from the multilingual output vocabulary, and consists of 16 conformer blocks trained with Connectionist Temporal Classification (CTC) with a 16,384 multilingual BPE classification head (see configuration below). We perform temporal subsampling by a factor of 8 to reduce frame rates from 100Hz to 12.5Hz: first by stacking and skipping consecutive logmel+delta frames (2x) followed by strided convolutions and pooled residuals in the first two conformer blocks (4x) as shown in the figure below. In addition, the encoder uses block-attention with blocks of 128 frames and self-conditioned CTC from the middle layer.

Configuration parameterValue
Input dimension320 (80 logmels + 80 deltas) x 2
Nb. of layers16
Hidden dimension1024
Nb. of attention heads8
Attention head size128
Attention block size128
Convolution kernel size7
Output dimension (multilingual BPE)16384

Image: conformer_blocks

Training Data:#

Our training data is entirely composed of publicly available datasets or of synthetic data generated from public corpora targeting English and multilingual ASR. A detailed description of the training datasets can be found in the table below:

NameNb. hoursSource
CommonVoice-17 En,De,Es,Fr,It,Pt,Ja5,660https://huggingface.co/datasets/mozilla-foundation/common_voice_17_0
MLS English (subset)31,640https://huggingface.co/datasets/facebook/multilingual_librispeech
MLS De,Es,Fr,It,Pt3,890https://huggingface.co/datasets/facebook/multilingual_librispeech
Librispeech-PC English950https://huggingface.co/datasets/yoom618/librispeech_pc
LibriHeavy Large English45,750https://huggingface.co/datasets/anyspeech/libri-heavy
VoxPopuli En,De,Es,Fr,It1,170https://huggingface.co/datasets/facebook/voxpopuli
VoxPopuli Granary English23,730https://huggingface.co/datasets/nvidia/Granary
YODAS English1,230https://huggingface.co/datasets/espnet/yodas
YODAS Granary English (filler-only segments removed)16,220https://huggingface.co/datasets/nvidia/Granary
YODAS Granary Spanish2,290https://huggingface.co/datasets/nvidia/Granary
YODAS Granary French1,650https://huggingface.co/datasets/nvidia/Granary
YODAS Granary German2,130https://huggingface.co/datasets/nvidia/Granary
YODAS Granary Portuguese1,170https://huggingface.co/datasets/nvidia/Granary
YODAS Granary Italian770https://huggingface.co/datasets/nvidia/Granary
AMI English150https://huggingface.co/datasets/edinburghcstr/ami
Earnings-22 English105https://huggingface.co/datasets/esb/datasets
YODAS Japanese1,420https://huggingface.co/datasets/espnet/yodas
ReazonSpeech Japanese (filtered)8,130https://huggingface.co/datasets/reazon-research/reazonspeech
Multi-speaker mixtures English (synthetic)2,500Internal: overlapped-speech mixtures built from AMI, CommonVoice and VoxPopuli
Written-form TTS English (numbers, codes, URLs; 16 kHz + 8 kHz)240Internal TTS
CommonVoice-17 Japanese paraphrase TTS130Internal TTS of paraphrased CommonVoice-17 Japanese text
Granite-text TTS Japanese1,860Internal TTS of Granite-generated Japanese text
MUSAN noise + music (non-speech, empty target)43https://www.openslr.org/17/

Infrastructure: We train Granite Speech TurboCTC using IBM's super computing cluster, Blue Vela, which is outfitted with NVIDIA H100 GPUs. This cluster provides a scalable and efficient infrastructure for training our models over thousands of GPUs. The training of this particular model was completed in 24 days on 8 H100 GPUs.

Resources

Citation

@misc{granite-speech-5.0-470m-turboctc,
  title={Granite Speech 5.0 TurboCTC},
  author={IBM Granite Speech Team},
  year={2026},
  url={https://huggingface.co/ibm-granite/granite-speech-5.0-470m-turboctc}
}

Files

14 files ยท 949 MBWeights 946 MB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 14 files with their sha256
FileSizesha256
.gitattributes1.94 KB6c3f7c5b88456f3ab808ddfa4a91955c68df534d4ce3142da3b9491687f0cbdd
README.md11.2 KB549314723b94b57309c28194fe867e577b6b07f04a436db043893e3097dbb0ab
assets/conformer_blocks.png154 KB297e132365ad251b61de5ebcc69b5c98e5ab735b065ec70364d52c416d43cead
assets/granite-speech-5.0-470m-turboctc-cer-ja.png108 KBafe36b89bd136a0296a8ee64d70b4797c3051b7bc38d553bff865a279902a32e
assets/granite-speech-5.0-470m-turboctc-pareto-rtfx.png363 KBb596dc143bff536d33940303bc5485a375da128484f955c4e98db24ee9ae356a
assets/granite-speech-5.0-470m-turboctc-wer-en.png163 KB9db705cd28f53a0f4955424450b8e65fedb82190c0fa123086959c1f7c598522
assets/granite-speech-5.0-470m-turboctc-wer-ml.png522 KBa8394af67113daa6bf952d69dfc21c42ddee60c4cc4620b88afb5ab647780b07
config.json921 Baabd64a2da736a1a1c21237c896b71628f6dd7364f1f5ec8a77f5e04b3ef1011
generation_config.json153 Bad32e8b87734e621ede4a52e64072a90b42b1599973a7c008efc1268541ea034
model.safetensors946 MB5b569c3744c42a9172ac976881539926b66176d03fbaaa3c51b5d2960067f6fc
model.sig8.37 KB0f97dcb3d74db96c3f87f7d3e57434bc293865cbb11090b9a719b81d8aac90e4
processor_config.json430 B3d7c14d3ed7a5218b2fd6797eaa5b3aa615c681938bd1734a510d7a6f8c1b9fb
tokenizer.json1.70 MBa1c3ca763ce0690faf0df3456365358547acfdf766122c9e4a69be8e8708042e
tokenizer_config.json223 B2f61ece3468bf7ca7a1b6dd3fd5b809814315bea9c298feea035fda4931b9f02
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
91dcb0605d pinned now manifest updated, same commit2026-11-14 21:16 UTC14 files ยท 949 MB
91dcb0605d2026-11-14 21:16 UTC14 files ยท 949 MB

Use it

$ fw get ibm-granite/granite-speech-5.0-470m-turboctc
# manifest sha256 a5b03cc9348a… · 949 MB · 14 files
$ fw verify ./granite-speech-5.0-470m-turboctc ibm-granite/granite-speech-5.0-470m-turboctc
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/ibm-granite/granite-speech-5.0-470m-turboctc.json --dir ./granite-speech-5.0-470m-turboctc $ python3 fw.py verify ./granite-speech-5.0-470m-turboctc ./ibm-granite__granite-speech-5.0-470m-turboctc.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download ibm-granite/granite-speech-5.0-470m-turboctc --revision 91dcb0605daf65f88dbb04fef015c423241d941d --local-dir ./granite-speech-5.0-470m-turboctc
transformersSpeech recognition with the transformers pipeline.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import pipeline asr = pipeline("automatic-speech-recognition", model="ibm-granite/granite-speech-5.0-470m-turboctc", revision="91dcb0605daf65f88dbb04fef015c423241d941d") print(asr("audio.wav")["text"])

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-14
Text in
README.md
Text sha256
549314723b94b57309c28194fe867e577b6b07f04a436db043893e3097dbb0ab
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: ibm-granite <huggingface.co/ibm-granite>Newsgroups: alt.freeweights.graniteSubject: granite-speech-5.0-470m-turboctcDate: 2026-11-14Commit: 91dcb06Signed: 2DC28CC7B26A283B ✓
Upstream
ibm-granite/granite-speech-5.0-470m-turboctc
Pinned commit
91dcb0605daf65f88dbb04fef015c423241d941d
Manifest
granite-speech-5.0-470m-turboctc.json ยท .minisig
Manifest sha256
a5b03cc9348afa9f0e040fe5e4634f30f60c58e511a408f7109ef6e1f387b5a5
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-14 21:16 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/ibm-granite/granite-speech-5.0-470m-turboctc.json $ curl -O https://freeweights.allternit.com/manifests/ibm-granite/granite-speech-5.0-470m-turboctc.json.minisig $ minisign -Vm granite-speech-5.0-470m-turboctc.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download ibm-granite/granite-speech-5.0-470m-turboctc
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. granite-speech-5.0-470m-turboctc.json. Provenance. Takedown history: none.
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed3
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed3