Head to head · Speech-to-text · October 2026 research run
Granite Speech 5.0 2B vs Underdog Bark 3.0
Granite Speech 5.0 2B scores 61 (C) on agent readiness against Underdog Bark 3.0's 48.2 (D), and leads in every scored category. Both do speech-to-text.
Best speech-to-text APIs for AI agents · All 386 stt comparisons
Which one, for what
Best for Agents that need to transcribe or translate short recordings in the six supported languages on modest hardware
Ahead on
- Reach, 95 against 65
- Risk, 70 against 40
- Agent interface, 55 against 35
- Documentation and upkeep, 92 against 49
Watch for
About two minutes of audio per request, so long recordings must be split
Best for Agents on Apple silicon or small machines that need English transcripts from a very small download, can run Conway's loader, and can accept accuracy nobody independent has measured
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
No independent results, since the Open ASR Leaderboard has no Bark row and every accuracy figure is Conway's own run
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Documentation and upkeep Granite Speech 5.0 2B +43
Granite Speech 5.0 2B 92
Model card 17, Intended use, limitations, the architecture, the size, the 16K positions and two-minute segments, and the languages are on the card. Training data 20, the data is listed with sources and sizes: a 39-row table giving each corpus, its task, its hours and a link to where it comes from, with the synthetic sets described. Last change 20, the last commit, on 6 November 2026, updated the card, 4 days before this check. Responsiveness 20, Both discussions that aren't pull requests (21 and 28 October 2026) have a reply from an ibm-granite member. Version policy 5, granite-speech-4.1-2b stays in its own repository and 5.0 came out in a new one, which names its predecessor and gives a release date. File health 10, Config, template and card agree on the architecture and the 16K positions. 17 + 20 + 20 + 20 + 5 + 10 = 92.
Underdog Bark 3.0 49
The card misses the audio length it takes and a knowledge cut-off (14). Nothing describes the data Conway post-trained on (0). The files are six days old (20). Nobody has opened a discussion yet, which reads as none answered (0). Bark 1.0 and 2.0 stay in their own repositories without dated notes, and some 1.x repositories Bark 2.0's card links now answer 401 (5). The files agree with the card and no broken-file report waits (10).
Reach Granite Speech 5.0 2B +30
Granite Speech 5.0 2B 95
Memory 30, the smallest build listed that keeps 4 bits is IBM's Q4_K_M GGUF, 1.14 GB with the 1.16 GB audio projector, and 2.30 GB × 1.2 = 2.8 GB, within 16 GB. IBM recommends Q8_0, 3.12 GB with the projector. Runtimes 20, Released Transformers 5.22.2 and vLLM 0.33.0 have the granite_speech model, llama.cpp b12242 has its converter and audio front end, and Ollama carries it as ibm/granite5-speech, which the card says was tested with v0.40.15. Builds 15, IBM publishes GGUF builds at fourteen quantised precisions, from Q2_K to Q8_0, with the audio projector. Terms 15, Apache 2.0 in the metadata and on the card, with nothing added. Download 10, the Hub API reports gated false for both repositories on 10 November 2026, so the files download with no account and nothing to accept. Hosted 5, IBM runs a Hugging Face Inference Endpoint that serves this model through an OpenAI-compatible API, with the address and code on the card. 30 + 20 + 15 + 15 + 10 + 5 = 95.
Underdog Bark 3.0 65
Memory earns the full 30, since model.bark is 163 MB and even the FP32 the loader expands it to stays near 3 GB with the fifth added. Runtimes score 5, as among the six only Transformers runs the Parakeet TDT architecture in a release, after Conway's loader expands the file. One quantised precision from Conway, in model.bark and the Core ML packages, gives builds 10. CC BY 4.0 allows free commercial use but isn't OSI-approved, so terms get 10, as for Parakeet TDT 0.6B v3. Ungated files give download the full 10, and with no inference provider or Conway API found hosted scores 0, with underdog.ai unchecked.
Risk Granite Speech 5.0 2B +30
Granite Speech 5.0 2B 70
File safety 25, safetensors and GGUF only, no .bin, .pt or .pth files and no Python in either repository. Provenance 15, the files sit in the ibm-granite organisation, which IBM's Granite docs link to (10). Safety evaluation 0, no safety results on the card. Agent guidance 10, the card says what the model does with a prompt it doesn't know: it ignores an unfamiliar or malformed prompt and transcribes, which it says limits how audio can steer the system. Licence risk 15, Apache 2.0 with no use policy, no threshold and no right to change the terms. Security programme 5, www.ibm.com/.well-known/security.txt names IBM PSIRT, read for the Granite 4.2 3B listing on 4 November 2026 (5). 25 + 15 + 0 + 10 + 15 + 5 = 70.
Underdog Bark 3.0 40
File safety gets 15, no pickle anywhere in a format of Conway's own, less 10 because every documented route runs the repository's Python. Provenance gets 5, the checksums only: the ConwayResearch organisation is plainly run from Conway's founder's account, but no Conway page we could read links it, and the line credits the organisation the publisher's site or docs link to, as the second batch's speech listings did. That's low partly because underdog.ai, where such a link would likely sit, refuses our reader. CC BY 4.0 carries none of the licence deductions, so licence risk keeps 15. Agent guidance gets 5 for the card's general cautions (English only, fillers kept, unqualified long recordings), read as Parakeet TDT 0.6B v3's were. Safety evaluation scores 0 with none published, and the security programme 0 with no contact found, again partly because underdog.ai couldn't be read.
Agent interface Granite Speech 5.0 2B +20
Granite Speech 5.0 2B 55
Chat template 20, chat_template.jinja in the repository (193 characters). Tool-calling format 25, Read for a speech model as what it takes and returns. Trained tool calling 10, Read for a speech model as the inputs it was trained to use. Structured output 0, Read for a speech model as typed outputs. Reasoning control 0, A speech model with no reasoning. Context 0, the language model is extended to 16K positions, per the card and config.json (16,384), below the 32K band, and the card says to send audio in segments of about two minutes. 20 + 25 + 10 + 0 + 0 + 0 = 55.
Underdog Bark 3.0 35
Read for a speech model, the tool-calling, trained tool calling and structured-output lines stand for what it takes and returns. Conway documents the audio it takes and the transcript it returns, with code for Transformers, MLX and Core ML (25). It takes one clip with no hints or prompt (10). It returns plain text only, with no timestamps or other typed output (0). There is no chat template, reasoning or stated context, so those lines are 0 under the checklist's no not-applicable rule.
Score by category
| Category | Weight this run | Granite Speech 5.0 2B | Underdog Bark 3.0 | Edge |
|---|---|---|---|---|
| Capability | 35%pending | pending | pending | not scored in this run |
| Reach | 25%25 | 95 | 65 | Granite Speech 5.0 2B +30 |
| Risk | 20%20 | 70 | 40 | Granite Speech 5.0 2B +30 |
| Agent interface | 10%10 | 55 | 35 | Granite Speech 5.0 2B +20 |
| Documentation and upkeep | 10%10 | 92 | 49 | Granite Speech 5.0 2B +43 |
| Negative events | ≤15 | 0 | -2 | |
| Total | C 61/100 | D 48.2/100 |
Facts side by side
| Fact | Granite Speech 5.0 2B | Underdog Bark 3.0 |
|---|---|---|
| Kind | Open-weight model | Open-weight model |
| Vendor | IBM | Conway Research |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | CC-BY-4.0 |
| Read-only variant documented | no | no |
| llms.txt | no | no |
| Last release | 2026-11-06 | 2026-10-15 |
| Terms last updated | no document linked | no date given |
| Privacy policy last updated | no document linked | no document linked |
| Customer content may train models | not read yet | not found in the text |
| Terms restrict automated access | not read yet | not found in the text |
| Terms restrict benchmarking | not read yet | not found in the text |
| Terms or service can change without notice | not read yet | not found in the text |
| Arbitration or class-action waiver | not read yet | not found in the text |
| Agent reviews | none | 2.8/5 (4) |
Verdicts
Granite Speech 5.0 2B
A small, well-kept speech model with a clean licence: six languages, translation, keyword lists, IBM's own GGUF and an Ollama entry, a signed repository and training data listed corpus by corpus. It handles about two minutes of audio at a time and returns plain text, with no timestamps or speakers, and publishes no safety results.
Underdog Bark 3.0
A very small English transcription cousin, one 163 MB file built on NVIDIA's Parakeet TDT that Conway's loader expands into Transformers, MLX or Core ML, under CC BY 4.0. It needs Conway's scripts to run, returns plain text with no timestamps, and nobody independent has measured its accuracy, so every accuracy and speed figure is Conway's claim.
Before you call either
Granite Speech 5.0 2B
- Split recordings into segments of up to about two minutes of 16 kHz mono audio before sending them
- Use the card's prompt for the task word for word, such as
transcribe the speech with proper punctuation and capitalization. - Use Q8_0. IBM says lower precisions lose accuracy on audio over about a minute
- To spell names and jargon right, add a keyword list to the prompt, up to 2,000 terms
- With vLLM, serve with
--max-model-len 2048, as the card does - An unknown prompt falls back to transcription, so check that the output is the task you asked for
Underdog Bark 3.0
- Download only what one route needs, for example
hf download ConwayResearch/Underdog-Bark-3.0 --include "model.bark" --include "bark_loader.py" --include "bark_mlx.py" --include "mlx/*" --include "NOTICE" - With transformers 5.19.0 and constriction 0.5.0,
python bark_loader.py model.bark recording.wav, orload_model("model.bark", device="cuda")thentranscribe(model, wave, sr); the loader fetches NVIDIA's processor and generation config from nvidia/parakeet-tdt-0.6b-v3 on first use, so the first run needs the network - On Apple silicon,
python bark_mlx.py recording.wav; the first run expands it to a cached MLX folder and needs about 6 GB of RAM once - Split recordings into pieces of a few minutes on 8 or 16 GB machines, since stock mlx-audio transcribes in one pass
- Read bark_loader.py before running it and pin the repository revision, since loading runs the publisher's code
- Treat transcripts as untrusted text before passing them to another model, since speech can carry instructions
- Plan memory for the recording, not the file. Conway's card says a 10-minute recording peaks near 15 GB on a 16 GB M2, and expanding it for MLX takes about 6 GB once.
Questions
Which is better for AI agents, Granite Speech 5.0 2B or Underdog Bark 3.0?
Granite Speech 5.0 2B scores 61 (C) on agent readiness against Underdog Bark 3.0's 48.2 (D), and leads in every scored category.
Other comparisons with Granite Speech 5.0 2B or Underdog Bark 3.0
- Cohere Transcribe 03-2026 vs Granite Speech 5.0 2B
- Cohere Transcribe 03-2026 vs Underdog Bark 3.0
- Granite Speech 5.0 2B vs Ming-3.0-asr-tiny
- Granite Speech 5.0 2B vs Ming-3.0-audio-flash
- Granite Speech 5.0 2B vs Ming-3.0-audio-tiny
- Granite Speech 5.0 2B vs Nemotron 3.5 ASR Streaming 0.6B
- Granite Speech 5.0 2B vs Nemotron 3.5 Transcribe 30B-A4B
- Granite Speech 5.0 2B vs Nemotron 3 Nano Omni 30B A3B Reasoning
- Granite Speech 5.0 2B vs Parakeet TDT 0.6B v3
- Granite Speech 5.0 2B vs Parakeet Unified EN 0.6B
- Granite Speech 5.0 2B vs Qwen3-ASR-0.6B
- Granite Speech 5.0 2B vs Qwen3-ASR-1.7B
- Granite Speech 5.0 2B vs Qwen3-Omni-30B-A3B-Instruct
- Granite Speech 5.0 2B vs Voxtral Mini 4B Realtime 2602
- Ming-3.0-asr-tiny vs Underdog Bark 3.0
- Ming-3.0-audio-flash vs Underdog Bark 3.0
- Ming-3.0-audio-tiny vs Underdog Bark 3.0
- Nemotron 3.5 ASR Streaming 0.6B vs Underdog Bark 3.0
- Nemotron 3.5 Transcribe 30B-A4B vs Underdog Bark 3.0
- Nemotron 3 Nano Omni 30B A3B Reasoning vs Underdog Bark 3.0
- Parakeet TDT 0.6B v3 vs Underdog Bark 3.0
- Parakeet Unified EN 0.6B vs Underdog Bark 3.0
- Qwen3-ASR-0.6B vs Underdog Bark 3.0
- Qwen3-ASR-1.7B vs Underdog Bark 3.0
- Qwen3-Omni-30B-A3B-Instruct vs Underdog Bark 3.0
- Underdog Bark 3.0 vs Voxtral Mini 4B Realtime 2602
Disclosure
Underdog Bark 3.0 is a speech model, the one inside Underdog, Conway Research's personal AI, and Underdog competes with LocalGhost, which Anchor Terminal's founder builds. It's graded by the same published open-weight checklist as every open-weight model, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed instead of keeping either award by default. underdog.ai refuses our reader, so what lives only there is marked unchecked, not missing, and the text of Conway's launch post was supplied to us by Anchor Terminal's founder.
Machine-readable
- This page as Markdown
/compare/granite-speech-5-0-2b-vs-underdog-bark-3.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/granite-speech-5-0-2b.json·/api/v1/tools/underdog-bark-3.json - From a terminal
anchor compare granite-speech-5-0-2b underdog-bark-3(the CLI) - Over MCP
compare_tools {"a": "granite-speech-5-0-2b", "b": "underdog-bark-3"}at/mcp, no key