cstr commited on
Commit
528537f
·
verified ·
1 Parent(s): c47a33f

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +92 -0
README.md ADDED
@@ -0,0 +1,92 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ language:
4
+ - ru
5
+ pipeline_tag: automatic-speech-recognition
6
+ tags:
7
+ - audio
8
+ - speech-recognition
9
+ - transcription
10
+ - russian
11
+ - ggml
12
+ - gguf
13
+ - gigaam
14
+ - conformer
15
+ - rnn-t
16
+ - ctc
17
+ library_name: ggml
18
+ base_model: ai-sage/GigaAM-v3
19
+ ---
20
+
21
+ # GigaAM-v3 — GGUF (ggml conversions)
22
+
23
+ GGUF conversions of [`ai-sage/GigaAM-v3`](https://huggingface.co/ai-sage/GigaAM-v3)
24
+ for use with the `gigaam` backend in
25
+ **[CrispStrobe/CrispASR](https://github.com/CrispStrobe/CrispASR)**.
26
+
27
+ GigaAM-v3 is a 220 M-parameter Conformer foundation model for **Russian** ASR,
28
+ pretrained with a HuBERT-CTC objective on ~700 K hours of Russian speech. The
29
+ upstream repo ships five checkpoints as git revisions; the four ASR ones are
30
+ converted here (the `ssl` encoder has no head and produces no transcript).
31
+
32
+ | File | Size | Head | Vocabulary | Output |
33
+ |---|---|---|---|---|
34
+ | `gigaam-v3-e2e-rnnt-{f16,q8_0,q4_k}.gguf` | 452 / 249 / 154 MB | RNN-T | SentencePiece 1024 | punctuation + casing + ITN — **best WER (8.4 % avg)** |
35
+ | `gigaam-v3-e2e-ctc-{f16,q8_0,q4_k}.gguf` | 449 / 247 / 152 MB | CTC | SentencePiece 256 | punctuation + casing + ITN, faster decode |
36
+ | `gigaam-v3-rnnt-{f16,q8_0,q4_k}.gguf` | 449 / 246 / 152 MB | RNN-T | 33 Cyrillic chars | lowercase, no punctuation |
37
+ | `gigaam-v3-ctc-{f16,q8_0,q4_k}.gguf` | 449 / 246 / 151 MB | CTC | 33 Cyrillic chars | lowercase, no punctuation |
38
+
39
+ ## Which one to pick
40
+
41
+ **`gigaam-v3-e2e-rnnt-q8_0.gguf`** unless you have a reason not to — it is the
42
+ lowest-WER variant, emits punctuation and casing, and its transcript is
43
+ identical to the PyTorch reference.
44
+
45
+ ## Usage
46
+
47
+ ```bash
48
+ crispasr --backend gigaam -m gigaam-v3-e2e-rnnt-q8_0.gguf -f audio.wav
49
+ # or let the registry fetch it:
50
+ crispasr --backend gigaam -m auto --auto-download -f audio.wav
51
+ ```
52
+
53
+ Audio is 16 kHz mono. Long inputs are sliced by the CLI's VAD/chunking; the
54
+ model itself has a ~25 s practical window (full attention, O(T²)).
55
+
56
+ ## Verification
57
+
58
+ Every file was checked against a per-stage PyTorch reference dumped from the
59
+ upstream `modeling_gigaam.py` (`crispasr-diff gigaam <model> <ref> <wav>`), on
60
+ GigaAM's own `example.wav`:
61
+
62
+ | variant | mel | encoder (cos) | transcript vs PyTorch |
63
+ |---|---|---|---|
64
+ | f16 (all four) | 1.000000 | **1.000000** | **byte-identical** |
65
+ | q8_0 (all four) | 1.000000 | 0.9974 – 0.9988 | **byte-identical** |
66
+ | q4_k `ctc`, `rnnt` | 1.000000 | 0.95 – 0.99 | **byte-identical** |
67
+ | q4_k `e2e_ctc` | 1.000000 | 0.982 | one spurious trailing `,` |
68
+ | q4_k `e2e_rnnt` | 1.000000 | 0.987 | content identical; 4 words lose their capital letter |
69
+
70
+ So: **q8_0 is the safe quant**; q4_k is fine for the charwise models and costs
71
+ a little casing/punctuation fidelity on the two SentencePiece ones.
72
+
73
+ In every quant the mel filterbank, Hann window, `encoder.pre.*` subsampling
74
+ convs and the decode head (`joint.*` / `decoder.*` / `head.ctc.*`) are kept at
75
+ source precision — the mel is un-normalized log-mel, so subsampling rounding
76
+ error would otherwise cascade through all 16 conformer blocks, and the head is
77
+ a blank-vs-token argmax where a flipped decision derails the greedy decode.
78
+
79
+ ## Conversion
80
+
81
+ ```bash
82
+ python models/convert-gigaam-to-gguf.py \
83
+ --model ai-sage/GigaAM-v3 --revision e2e_rnnt \
84
+ --output gigaam-v3-e2e-rnnt-f16.gguf
85
+ ./build/bin/crispasr-quantize gigaam-v3-e2e-rnnt-f16.gguf \
86
+ gigaam-v3-e2e-rnnt-q8_0.gguf q8_0
87
+ ```
88
+
89
+ ## License
90
+
91
+ MIT, inherited from [`ai-sage/GigaAM-v3`](https://huggingface.co/ai-sage/GigaAM-v3).
92
+ Please cite the upstream model when you use these weights.