Model reference · open weights

canary-flash

Audio nvidia Speech→text 2 builds Open weights 4k dl/mo

canary-flash is an open-weight audio or speech model from NVIDIA. canary-1b-flash (FP32) weighs 1.6 GB; the smallest configuration that runs it is RTX 3060 12 GB.

  • NVIDIA canary-flash is a multilingual speech model designed for automatic speech recognition and translation.
  • It supports English, German, Spanish, and French, and features 811 million parameters.
  • The model is released under the CC-BY-4.0 license.

Summary of the nvidia/canary-1b-flash model card, 2026-10-01

What it is

Released byNVIDIA
Released2025-03-07
Parameters811M
VRAM1.6 GB for the weights

What it runs on

Memory and cards for canary-1b-flash (FP32)

1.6 GBweights, file size
1.6 GBruntime overhead
CardOne streamMemory
RTX 3060 12 GBfits11.6 GB
RTX 4060 Ti 16 GBfits15.4 GB
RTX 3090 24 GBfits23.4 GB
RTX 4090 24 GBfits23.4 GB
RTX 5090 32 GBfits31.0 GB
L40S 48 GBfits44.0 GB
A100 80 GBfits78.2 GB
H100 80 GBfits78.1 GB
RTX PRO 6000 Blackwell 96 GBfits93.8 GB
DGX Spark (GB10) 128 GB unifiedfits107 GB
H200 141 GBfits138 GB
B200 180 GBfits176 GB

Builds

Sizes, precisions & builds

BuildParamsPrecisionWeightsSmallest setup
canary-1b-flash (above) ↗ 811MFP32 1.6 GBRTX 3060 12 GB
canary-180m-flash ↗ —BF16 ——

From the model card

What NVIDIA says about canary-flash

Read the model card

img { display: inline; }

🎉 NEW: Canary 1B V2 is now available! 🌍 25 European Languages | ⏱️ Much Improved Timestamp Prediction | 🔄 Enhanced ASR & AST | 🔗 Try it here: nvidia/canary-1b-v2

Description:

NVIDIA NeMo Canary Flash [1] is a family of multilingual multi-tasking models based on Canary architecture [2] that achieve state-of-the-art performance on multiple speech benchmarks. With 883 million parameters and an inference speed of more than 1000 RTFx (on open-asr-leaderboard datasets), canary-1b-flash supports automatic speech-to-text recognition (ASR) in four languages (English, German, French, Spanish) and translation from English to German/French/Spanish and from German/French/Spanish to English with or without punctuation and capitalization (PnC). Additionally, canary-1b-flash offers an experimental feature for word-level and segment-level timestamps in English, German, French, and Spanish. This model is released under the permissive CC-BY-4.0 license and is available for commercial use.

Discover more from NVIDIA:

For documentation, deployment guides, enterprise-ready APIs, and the latest open models—including Nemotron and other cutting-edge speech, translation, and generative AI—visit the NVIDIA Developer Portal at developer.nvidia.com. Join the community to access tools, support, and resources to accelerate your development with NVIDIA’s NeMo, Riva, NIM, and foundation models.

Explore more from NVIDIA:

What is Nemotron? NVIDIA Developer Nemotron NVIDIA Riva Speech NeMo Documentation

Model Architecture:

Canary is an encoder-decoder model with FastConformer [3] Encoder and Transformer Decoder [4]. With audio features extracted from the encoder, task tokens such as , , \ and \ are fed into the Transformer Decoder to trigger the text generation process. Canary uses a concatenated tokenizer [5] from individual SentencePiece [6] tokenizers of each language, which makes it easy to scale up to more languages. The canary-1b-flash model has 32 encoder layers and 4 decoder layers, leading to a total of 883M parameters. For more details about the architecture, please refer to [1].

NVIDIA NeMo

To train, fine-tune or transcribe with canary-1b-flash, you will need to install NVIDIA NeMo.

How to Use this Model

The model is available for use in the NeMo Framework [7], and can be used as a pre-trained checkpoint for inference or for fine-tuning on another dataset.

Please refer to our tutorial for more details.

A few inference examples are listed below:

Loading the Model

from nemo.collections.asr.models import EncDecMultiTaskModel
# load model
canary_model = EncDecMultiTaskModel.from_pretrained('nvidia/canary-1b-flash')
# update decode params
decode_cfg = canary_model.cfg.decoding
decode_cfg.beam.beam_size = 1
canary_model.change_decoding_strategy(decode_cfg)

Input:

Input Type(s): Audio Input Format(s): .wav or .flac files Input Parameters(s): 1D Other Properties Related to Input: 16000 Hz Mono-channel Audio, Pre-Processing Not Needed

Input to canary-1b-flash can be either a list of paths to audio files or a jsonl manifest file.

If the input is a list of paths, canary-1b-flash assumes that the audio is English and transcribes it. I.e., canary-1b-flash default behavior is English ASR.

output = canary_model.transcribe(
    ['path1.wav', 'path2.wav'],
    batch_size=16,  # batch size to run the inference with
    pnc='yes',        # generate output with Punctuation and Capitalization
)

predicted_text_1 = output[0].text

canary-1b-flash can also generate word and segment level timestamps

output = canary_model.transcribe(
  ['filepath.wav'],
  timestamps='yes',  # generate output with timestamps
)

predicted_text = output[0].text
word_level_timestamps = output[0].timestamp['word']
segment_level_timestamps = output[0].timestamp['segment']

For audio files longer than 10 seconds, we recommend using longform inference script (explained in next section) with chunk_len_in_secs=10.0 to generate timestamps.

To use canary-1b-flash for transcribing other supported languages or perform Speech-to-Text translation or provide word-level timestamps, specify the input as jsonl manifest file, where each line in the file is a dictionary containing the following fields:

# Example of a line in input_manifest.json
{
    "audio_filepath": "/path/to/audio.wav",  # path to the audio file
    "source_lang": "en",  # language of the audio input, set `source_lang`==`target_lang` for ASR, choices=['en','de','es','fr']
    "target_lang": "en",  # language of the text output, choices=['en','de','es','fr']
    "pnc": "yes",  # whether to have PnC output, choices=['yes', 'no']
    "timestamp": "yes", # whether to output word-level timestamps, choices=['yes', 'no']
}

and then use:

output = canary_model.transcribe(
    "",
    batch_size=16,  # batch size to run the inference with
)

Longform inference with Canary-1B-flash:

Canary models are designed to handle input audio smaller than 40 seconds. In order to handle longer audios, NeMo includes speech_to_text_aed_chunked_infer.py script that handles chunking, performs inference on the chunked files, and stitches the transcripts.

The script will perform inference on all .wav files

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

Benchmarks

Reported results

As published on the model card: the maker's own numbers, not measured by AxForge.

TaskDatasetMetricScore
Automatic Speech RecognitionLibriSpeech (other)Test WER2.870
automatic-speech-recognitionSPGI SpeechTest WER1.950
automatic-speech-recognitionMozilla Common Voice 16.1Test WER (En)6.990
automatic-speech-recognitionMozilla Common Voice 16.1Test WER (De)4.090
automatic-speech-recognitionMozilla Common Voice 16.1Test WER (ES)3.620
automatic-speech-recognitionMozilla Common Voice 16.1Test WER (Fr)6.150
automatic-speech-translationFLEURSTest BLEU (En->De)32.270
automatic-speech-translationFLEURSTest BLEU (En->Es)22.600
automatic-speech-translationFLEURSTest BLEU (En->Fr)41.220
automatic-speech-translationFLEURSTest BLEU (De->En)35.500
automatic-speech-translationFLEURSTest BLEU (Es->En)23.320
automatic-speech-translationFLEURSTest BLEU (Fr->En)33.420
automatic-speech-translationCOVOSTTest BLEU (De->En)39.330
automatic-speech-translationCOVOSTTest BLEU (Es->En)41.860
automatic-speech-translationCOVOSTTest BLEU (Fr->En)41.430
© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms