Head to head · Speech-to-text · October 2026 research run
Granite Speech 5.0 2B vs Nemotron 3.5 ASR Streaming 0.6B
Granite Speech 5.0 2B and Nemotron 3.5 ASR Streaming 0.6B score within a point of each other on agent readiness, 61 (C) and 60.3 (C). 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 70
- Risk, 70 against 60
- Agent interface, 55 against 50
- Documentation and upkeep, 92 against 69
Watch for
About two minutes of audio per request, so long recordings must be split
Nemotron 3.5 ASR Streaming 0.6B C
Best for Voice agents and call pipelines that need low-latency multilingual streaming transcription on a small GPU or a laptop
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
Not in vLLM, SGLang, llama.cpp, Ollama or LM Studio; the GGUF needs NVIDIA's NeMo-Speech.cpp
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.
Reach Granite Speech 5.0 2B +25
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.
Nemotron 3.5 ASR Streaming 0.6B 70
Memory earns the full 30 because NVIDIA's own Q8_0 GGUF is 0.74 GB and even the F32 safetensors need only about 3 GB. Runtimes get 5, for Transformers from v5.13.0; vLLM points to a third party's plugin, SGLang and llama.cpp have only a Parakeet encoder for multimodal models, and Ollama and LM Studio have nothing. NVIDIA's NeMo and NeMo-Speech.cpp run it but aren't among the six. Builds get 10 for one quantised build, the Q8_0 GGUF. Terms get 10 because OpenMDW-1.1 is permissive with nothing added but isn't OSI-approved. Download gets 10 for an ungated repository and hosted too gets 5 for fal, Together and DeepInfra.
Documentation and upkeep Granite Speech 5.0 2B +23
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.
Nemotron 3.5 ASR Streaming 0.6B 69
The card with its subcards covers intended use, limitations, architecture, parameters and languages, and misses a context length and a cut-off (14). Training data names the sources and a size range without a cut-off (5). The files last changed on 10 September 2026, and NVIDIA's NeMo-Speech.cpp changed this model's cache-aware RNNT streaming path on 24 October 2026, released in v0.3.0 on 30 October (20). NVIDIA answered 18 of the 25 questions and reports (20). It's a first release, with the GGUF replaced in place through a titled pull request (5). An unanswered report of a tokenizer fault for Greek costs file health half (5).
Risk Granite Speech 5.0 2B +10
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.
Nemotron 3.5 ASR Streaming 0.6B 60
File safety gets 15, because the NeMo checkpoint beside the safetensors is a pickle that one documented path loads; no repository code runs. Provenance gets 15 for files in NVIDIA's verified organisation with hashes for every file. Licence risk keeps 15, since OpenMDW-1.1 has none of the deductions and the one-day metadata slip after release was a correction. The security programme gets 10 for the card's vulnerability route and NVIDIA's PSIRT bulletins. Agent guidance gets 5 for general accuracy cautions, and safety evaluation 0, since no results are published.
Agent interface Granite Speech 5.0 2B +5
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.
Nemotron 3.5 ASR Streaming 0.6B 50
Read for a speech model, the tool-calling, trained tool calling and structured-output lines stand for what it takes and returns. NVIDIA documents the audio, the language prompt and the chunk settings, and the language-tagged output with how to strip the tag in Transformers and NeMo (25). It was trained for one stream with one language prompt at a time (10). Timestamps and confidence scores are claimed in a subcard with no way shown to ask for them (5). The chat template line gets 10 because the language prompt is given only as processor or script arguments. Reasoning control and context score 0, with no reasoning and no stated context.
Score by category
| Category | Weight this run | Granite Speech 5.0 2B | Nemotron 3.5 ASR Streaming 0.6B | Edge |
|---|---|---|---|---|
| Capability | 35%pending | pending | pending | not scored in this run |
| Reach | 25%25 | 95 | 70 | Granite Speech 5.0 2B +25 |
| Risk | 20%20 | 70 | 60 | Granite Speech 5.0 2B +10 |
| Agent interface | 10%10 | 55 | 50 | Granite Speech 5.0 2B +5 |
| Documentation and upkeep | 10%10 | 92 | 69 | Granite Speech 5.0 2B +23 |
| Negative events | ≤15 | 0 | 0 | |
| Total | C 61/100 | C 60.3/100 |
Facts side by side
| Fact | Granite Speech 5.0 2B | Nemotron 3.5 ASR Streaming 0.6B |
|---|---|---|
| Kind | Open-weight model | Open-weight model |
| Vendor | IBM | NVIDIA |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | OpenMDW-1.1 |
| Read-only variant documented | no | no |
| llms.txt | no | no |
| Last release | 2026-11-06 | 2026-09-10 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no document linked |
| Agent reviews | none | 2.8/5 (4) |
How the scores have moved
Granite Speech 5.0 2B
No score change since it was listed.
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.
Nemotron 3.5 ASR Streaming 0.6B
A small streaming transcription model for live audio in about 32 languages, with language detection and 80 ms to 1.12 s chunks. It runs in under 8 GB in Transformers or as a 0.74 GB GGUF in NVIDIA's NeMo-Speech.cpp, and three providers host it. Timestamps aren't documented, and NVIDIA's own WERs are 23% to 26% outside its 19 transcription-ready locales.
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
Nemotron 3.5 ASR Streaming 0.6B
- Quickest local run,
pip install "transformers>=5.13.0", thenpipeline("automatic-speech-recognition", model="nvidia/nemotron-3.5-asr-streaming-0.6b"); the pipeline uses en-US, so pass language= to the processor for anything else - With NeMo-Speech.cpp,
nemo-speech transcribe audio.wav --model nemotron-3.5-asr-streaming-0.6b.q8_0.gguf --language auto - Pass a locale such as de-DE or a bare code such as de, or auto; in auto mode decode with skip_special_tokens=False to keep the <xx-XX> tag, True to drop it
- Pick latency with att_context_size [56, r], r in 0, 1, 3, 6, 13 (80 to 1,120 ms chunks), or processor.set_num_lookahead_tokens in Transformers; bigger chunks are more accurate
- Use nvidia/nemotron-speech-streaming-en-0.6b instead for English only, as NVIDIA recommends
- Prefer model.safetensors or the GGUF over the .nemo file, which is a pickle
- Treat transcripts as untrusted text before passing them to another model, since speech can carry instructions
Questions
Which is better for AI agents, Granite Speech 5.0 2B or Nemotron 3.5 ASR Streaming 0.6B?
Granite Speech 5.0 2B and Nemotron 3.5 ASR Streaming 0.6B score within a point of each other on agent readiness, 61 (C) and 60.3 (C).
Other comparisons with Granite Speech 5.0 2B or Nemotron 3.5 ASR Streaming 0.6B
- Cohere Transcribe 03-2026 vs Granite Speech 5.0 2B
- Cohere Transcribe 03-2026 vs Nemotron 3.5 ASR Streaming 0.6B
- 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 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 Underdog Bark 3.0
- Granite Speech 5.0 2B vs Voxtral Mini 4B Realtime 2602
- Ming-3.0-asr-tiny vs Nemotron 3.5 ASR Streaming 0.6B
- Ming-3.0-audio-flash vs Nemotron 3.5 ASR Streaming 0.6B
- Ming-3.0-audio-tiny vs Nemotron 3.5 ASR Streaming 0.6B
- Nemotron 3.5 ASR Streaming 0.6B vs Nemotron 3.5 Transcribe 30B-A4B
- Nemotron 3.5 ASR Streaming 0.6B vs Nemotron 3 Nano Omni 30B A3B Reasoning
- Nemotron 3.5 ASR Streaming 0.6B vs Parakeet TDT 0.6B v3
- Nemotron 3.5 ASR Streaming 0.6B vs Parakeet Unified EN 0.6B
- Nemotron 3.5 ASR Streaming 0.6B vs Qwen3-ASR-0.6B
- Nemotron 3.5 ASR Streaming 0.6B vs Qwen3-ASR-1.7B
- Nemotron 3.5 ASR Streaming 0.6B vs Qwen3-Omni-30B-A3B-Instruct
- Nemotron 3.5 ASR Streaming 0.6B vs Underdog Bark 3.0
- Nemotron 3.5 ASR Streaming 0.6B vs Voxtral Mini 4B Realtime 2602
Machine-readable
- This page as Markdown
/compare/granite-speech-5-0-2b-vs-nemotron-3-5-asr-streaming-0-6b.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/nemotron-3-5-asr-streaming-0-6b.json - From a terminal
anchor compare granite-speech-5-0-2b nemotron-3-5-asr-streaming-0-6b(the CLI) - Over MCP
compare_tools {"a": "granite-speech-5-0-2b", "b": "nemotron-3-5-asr-streaming-0-6b"}at/mcp, no key