Hebrish
Experimental Early days, and every version gets better. Roadmap
Docs

Models · NVIDIA · Canary-Qwen 2.5B

Sabich-Canary-Qwen-2.5B desktop GPU

Sabich's training data on NVIDIA Canary-Qwen 2.5B, a speech encoder feeding the Qwen3-1.7B language model. For computers with a GPU and about 6 GB of VRAM in bf16. Of the Sabich variants it is the strongest on plain English; for Hebrew words inside English, Sabich-Qwen3-ASR-1.7B is better.

At a glance

Base modelnvidia/canary-qwen-2.5b (NVIDIA)
Current versionSabich-Canary-Qwen-2.5B v1.0, released 2026-10-21
Parameters2.56B (Hub safetensors count; the base is named 2.5B)
Evaluation6.9% code-switching WER (Sabich-Qwen3-ASR-1.7B 5.4%), 2.4% on the speaker's own English, on the held-out split at revision cf84f7e4
Results on this page · Model card
Downloadevery format and quant (Hugging Face)
CollectionHebrish/sabich on Hugging Face
LicenceCC-BY-4.0 (base model) · use governed by the terms of use
Used byYour own tools (NeMo 3.0.0); not in the Hebrish apps yet
DOIs10.57967/hf/11178

Formats and quants

RepositoryFormat and filesVersionForDOI
Hebrish/Sabich-Canary-Qwen-2.5B mainNeMo SALM (safetensors, bf16)
model.safetensors 5.12 GB (LoRA unmerged), config, training config; no GGUF or ONNX build · access request · files
v1.0NeMo 3.0.0 SALM on a GPU, about 6 GB of VRAM in bf16; audio in pieces of 40 s or less10.57967/hf/11178

Hugging Face issues a DOI per repository, so each format can be cited on its own. Repositories, sizes and DOIs checked on the Hub on 2026-10-21.

Versions

VersionReleasedRunWhereNotes
Sabich-Canary-Qwen-2.5B v1.0 current2026-10-21cq1-allSabich-Canary-Qwen-2.5BSabich's data (blend all, revision cf84f7e4): 602 min of the speaker's takes (388 min code-switching) plus 10% LibriSpeech-PC replay; NeMo's SALM recipe (LoRA on the LLM, encoder and projection trained), 3 epochs on one H100, final step kept

About Sabich-Canary-Qwen-2.5B

Sabich-Canary-Qwen-2.5B v1.0 (2026-10-21) is Sabich, the everything model (code-switching plus tech vocabulary, brand names, numbers and the other task recordings), trained on nvidia/canary-qwen-2.5b: a FastConformer speech encoder feeding Qwen3-1.7B, which is adapted with LoRA. It is not in the Hebrish apps yet: run it in your own tools.

Which one to pick. For code-switching, Sabich-Qwen3-ASR-1.7B is better, and smaller: lower code-switching WER and better recall of Hebrew words it never saw in training. This model is the strongest of the Sabich variants on plain English, the speaker's own and LibriSpeech.

On the held-out test split of the speaker's recordings at dataset revision cf84f7e4 (term-disjoint from training; normalised WER unless marked raw), beside Sabich-Qwen3-ASR-1.7B on the same test sets. Stock Canary-Qwen 2.5B was not scored on them.

Sabich-Canary-Qwen-2.5BSabich-Qwen3-ASR-1.7B
English-Hebrew code-switching, WER6.9%5.4%
English-Hebrew code-switching, raw WER (case and punctuation count)9.0%7.1%
Hebrew terms never seen in training, recall45.7%50%
Speaker's own English, WER2.4%2.5%
LibriSpeech test-clean (200 utterances), WER0.9%1.35%
Numbers written in digits8/88/8

Run cq1-all: Sabich's data (blend all) at revision cf84f7e4, 602 min of the speaker's takes (388 min code-switching) plus 10% LibriSpeech-PC replay. NeMo's official SALM training recipe: the LLM frozen with LoRA adapters, the speech encoder and projection trained, 3 epochs on one H100; the final step kept. These numbers are on a different test-set revision from Sabich's, so the two have not been compared head to head.

Long audio: cut it into pieces of 40 seconds or less. The model was trained on clips of 40 seconds or less, and on a whole 3-minute file it stops early. Split long recordings on pauses (a VAD works) and transcribe each piece. There is no long-form score for it yet.

Run it

NeMo 3.0.0 on a GPU, about 6 GB of VRAM in bf16 (the weights are about 5 GB). Prompt with Transcribe the following:, the prompt it was trained with:

import torch
from nemo.collections.speechlm2.models import SALM  # pip install "nemo_toolkit[asr]==3.0.0" peft

model = SALM.from_pretrained("Hebrish/Sabich-Canary-Qwen-2.5B").to(torch.bfloat16).to("cuda").eval()
prompt = [{"role": "user", "content": f"Transcribe the following: {model.audio_locator_tag}", "audio": ["note.wav"]}]
ids = model.generate(prompts=[prompt], max_new_tokens=256)
print(model.tokenizer.ids_to_text(ids[0].cpu()))
  • Audio: 16 kHz mono, 40 seconds or less per call. Loading also fetches the Qwen/Qwen3-1.7B tokenizer and config from the Hub.
  • Formats: NeMo safetensors only; there is no GGUF or ONNX build. For a GGUF on a GPU, use Sabich-Qwen3-ASR-1.7B.
  • Output is English, cased and punctuated, with Hebrew words in Latin letters, never Hebrew script. Numbers come out in digits.
  • Limits: more than half of the Hebrew words it never saw in training are still missed or misspelled. Full details on the model card.
  • Licence: CC-BY-4.0, from the base model (NVIDIA; its Qwen3-1.7B component is Apache-2.0), with use governed by the terms of use.

Cite

Cite Sabich-Canary-Qwen-2.5B with its DOI, 10.57967/hf/11178 (Hebrish/Sabich-Canary-Qwen-2.5B). To cite one format, use that repository's DOI from the table above.

@misc{rosehill_sabich_canary_qwen_2026,
  author    = {Daniel Rosehill},
  title     = {Sabich-Canary-Qwen-2.5B},
  year      = {2026},
  publisher = {Hugging Face},
  url       = {https://huggingface.co/Hebrish/Sabich-Canary-Qwen-2.5B},
  doi       = {10.57967/hf/11178}
}

Request access

Request access on Hugging Face first. The Sabich-Canary-Qwen-2.5B repositories are gated: open the repository, sign in, and fill in the short request form there. Requests are reviewed by hand. For non-commercial use, the attestation form covers what is asked.

No answer after a few days? Request access here instead, or write to access-requests@hebrish.app. Commercial use, including telephony, needs a commercial licence.

Request access here

Which model should I use? · All Sabich variants · All Hebrish models