@earendil-works/pi-voice 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +86 -0
  3. package/catalog/recommendations.json +710 -0
  4. package/index.ts +1 -0
  5. package/package.json +69 -0
  6. package/src/async-limiter.ts +77 -0
  7. package/src/audio-constants.ts +1 -0
  8. package/src/audio.ts +193 -0
  9. package/src/catalog.generated.ts +1305 -0
  10. package/src/catalog.ts +89 -0
  11. package/src/chinese.ts +52 -0
  12. package/src/deferred.ts +30 -0
  13. package/src/dictation-controller.ts +204 -0
  14. package/src/file-audio.ts +164 -0
  15. package/src/file-transcription.ts +212 -0
  16. package/src/index.ts +114 -0
  17. package/src/install-migration.ts +47 -0
  18. package/src/keybindings.ts +118 -0
  19. package/src/languages.ts +22 -0
  20. package/src/microphone-picker.ts +99 -0
  21. package/src/model-activation.ts +74 -0
  22. package/src/model-cells.ts +218 -0
  23. package/src/model-picker.ts +1026 -0
  24. package/src/model-ratings-help.md +41 -0
  25. package/src/model-ratings-help.ts +146 -0
  26. package/src/model-selection-controller.ts +185 -0
  27. package/src/models.ts +263 -0
  28. package/src/onboarding.ts +314 -0
  29. package/src/pcm-chunker.ts +42 -0
  30. package/src/pcm.ts +19 -0
  31. package/src/recommendation-picker.ts +512 -0
  32. package/src/recommendations.ts +423 -0
  33. package/src/runtime.ts +501 -0
  34. package/src/settings-menu.ts +410 -0
  35. package/src/settings-path.ts +13 -0
  36. package/src/settings.ts +235 -0
  37. package/src/shortcut-core.ts +85 -0
  38. package/src/shortcuts.ts +167 -0
  39. package/src/startup-shortcut.ts +24 -0
  40. package/src/transcript-preview.ts +52 -0
  41. package/src/transcription-service.ts +548 -0
  42. package/src/transcription.ts +186 -0
  43. package/src/try-it.ts +327 -0
  44. package/src/ui-components.ts +432 -0
  45. package/src/visualizer.ts +269 -0
@@ -0,0 +1,1305 @@
1
+ // Generated from catalog/catalog.json by scripts/generate-catalog.mjs.
2
+ // Do not edit by hand.
3
+
4
+ export const CATALOG_MODELS_GENERATED = [
5
+ {
6
+ "id": "parakeet-unified-en-0.6b",
7
+ "name": "Parakeet Unified EN 0.6B",
8
+ "description": "Best all-around choice for English dictation",
9
+ "repository": "handy-computer/parakeet-unified-en-0.6b-gguf",
10
+ "revision": "7e948f21b7bdbac698d3318db9d350f1096f3b6c",
11
+ "license": "other",
12
+ "family": "parakeet",
13
+ "parameters": "0.6B",
14
+ "languages": [
15
+ "en"
16
+ ],
17
+ "capabilities": {
18
+ "streaming": true,
19
+ "translate": false,
20
+ "languageDetection": false
21
+ },
22
+ "quant": "Q8_0",
23
+ "filename": "parakeet-unified-en-0.6b-Q8_0.gguf",
24
+ "size": 731357568,
25
+ "sha256": "4b50b6dd862bf6e346929aaf4f5eaacec003bfa3f56462d6c874b41ef2f38795"
26
+ },
27
+ {
28
+ "id": "nemotron-3.5-asr-streaming-0.6b",
29
+ "name": "Nemotron Streaming 3.5",
30
+ "description": "Fast and accurate transcription in many European languages",
31
+ "repository": "handy-computer/nemotron-3.5-asr-streaming-0.6b-gguf",
32
+ "revision": "6d44e540bc31b0de1dbe174a3cea87f53a7f22fb",
33
+ "license": "other",
34
+ "family": "nemotron",
35
+ "parameters": "0.6B",
36
+ "languages": [
37
+ "en-US",
38
+ "en-GB",
39
+ "es-US",
40
+ "es-ES",
41
+ "fr-FR",
42
+ "fr-CA",
43
+ "it-IT",
44
+ "pt-BR",
45
+ "pt-PT",
46
+ "nl-NL",
47
+ "de-DE",
48
+ "tr-TR",
49
+ "ru-RU",
50
+ "ar-AR",
51
+ "hi-IN",
52
+ "ja-JP",
53
+ "ko-KR",
54
+ "vi-VN",
55
+ "uk-UA",
56
+ "pl-PL",
57
+ "sv-SE",
58
+ "cs-CZ",
59
+ "nb-NO",
60
+ "da-DK",
61
+ "bg-BG",
62
+ "fi-FI",
63
+ "hr-HR",
64
+ "sk-SK",
65
+ "zh-CN",
66
+ "hu-HU",
67
+ "ro-RO",
68
+ "et-EE"
69
+ ],
70
+ "capabilities": {
71
+ "streaming": true,
72
+ "translate": false,
73
+ "languageDetection": true
74
+ },
75
+ "quant": "Q8_0",
76
+ "filename": "nemotron-3.5-asr-streaming-0.6b-Q8_0.gguf",
77
+ "size": 751094240,
78
+ "sha256": "b94545b313b3223fda7b2857a52681da813935c2127643d1e9ff0c23d988089c"
79
+ },
80
+ {
81
+ "id": "canary-180m-flash",
82
+ "name": "Canary 180M Flash",
83
+ "description": "Tiny, fast, and runs well on any hardware",
84
+ "repository": "handy-computer/canary-180m-flash-gguf",
85
+ "revision": "b147f9dc52b59f0998e410540a84727bd86457fd",
86
+ "license": "cc-by-4.0",
87
+ "family": "canary",
88
+ "parameters": "180M",
89
+ "languages": [
90
+ "en",
91
+ "de",
92
+ "es",
93
+ "fr"
94
+ ],
95
+ "capabilities": {
96
+ "streaming": false,
97
+ "translate": true,
98
+ "languageDetection": false
99
+ },
100
+ "quant": "Q8_0",
101
+ "filename": "canary-180m-flash-Q8_0.gguf",
102
+ "size": 218447552,
103
+ "sha256": "e13c7f5d0952b056a027cfffec13e3a3a134d1608babed24f983568f141e297c"
104
+ },
105
+ {
106
+ "id": "cohere-transcribe-03-2026",
107
+ "name": "Cohere Transcribe",
108
+ "description": "Consistently strong in many languages, best for Greek and Polish",
109
+ "repository": "handy-computer/cohere-transcribe-03-2026-gguf",
110
+ "revision": "dfa4adebb64f3076b7b6b90b721275cc069cb421",
111
+ "license": "apache-2.0",
112
+ "family": "cohere",
113
+ "parameters": "2.0B",
114
+ "languages": [
115
+ "en",
116
+ "fr",
117
+ "de",
118
+ "es",
119
+ "it",
120
+ "pt",
121
+ "nl",
122
+ "pl",
123
+ "el",
124
+ "ar",
125
+ "ja",
126
+ "zh",
127
+ "vi",
128
+ "ko"
129
+ ],
130
+ "capabilities": {
131
+ "streaming": false,
132
+ "translate": false,
133
+ "languageDetection": false
134
+ },
135
+ "quant": "Q8_0",
136
+ "filename": "cohere-transcribe-03-2026-Q8_0.gguf",
137
+ "size": 2410655232,
138
+ "sha256": "931916663432fd895423a4291a8400221802b288967ca2d435fc5e3141c9e71e"
139
+ },
140
+ {
141
+ "id": "whisper-medium",
142
+ "name": "Whisper Medium",
143
+ "description": "Broadest language support, but may run a bit slow",
144
+ "repository": "handy-computer/whisper-medium-gguf",
145
+ "revision": "ec78f06fded51aa82cde751678b78f76f78c8b7f",
146
+ "license": "apache-2.0",
147
+ "family": "whisper",
148
+ "parameters": "764M",
149
+ "languages": [
150
+ "af",
151
+ "am",
152
+ "ar",
153
+ "as",
154
+ "az",
155
+ "ba",
156
+ "be",
157
+ "bg",
158
+ "bn",
159
+ "bo",
160
+ "br",
161
+ "bs",
162
+ "ca",
163
+ "cs",
164
+ "cy",
165
+ "da",
166
+ "de",
167
+ "el",
168
+ "en",
169
+ "es",
170
+ "et",
171
+ "eu",
172
+ "fa",
173
+ "fi",
174
+ "fo",
175
+ "fr",
176
+ "gl",
177
+ "gu",
178
+ "haw",
179
+ "ha",
180
+ "he",
181
+ "hi",
182
+ "hr",
183
+ "ht",
184
+ "hu",
185
+ "hy",
186
+ "id",
187
+ "is",
188
+ "it",
189
+ "ja",
190
+ "jw",
191
+ "ka",
192
+ "kk",
193
+ "km",
194
+ "kn",
195
+ "ko",
196
+ "la",
197
+ "lb",
198
+ "ln",
199
+ "lo",
200
+ "lt",
201
+ "lv",
202
+ "mg",
203
+ "mi",
204
+ "mk",
205
+ "ml",
206
+ "mn",
207
+ "mr",
208
+ "ms",
209
+ "mt",
210
+ "my",
211
+ "ne",
212
+ "nl",
213
+ "nn",
214
+ "no",
215
+ "oc",
216
+ "pa",
217
+ "pl",
218
+ "ps",
219
+ "pt",
220
+ "ro",
221
+ "ru",
222
+ "sa",
223
+ "sd",
224
+ "si",
225
+ "sk",
226
+ "sl",
227
+ "sn",
228
+ "so",
229
+ "sq",
230
+ "sr",
231
+ "su",
232
+ "sv",
233
+ "sw",
234
+ "ta",
235
+ "te",
236
+ "tg",
237
+ "th",
238
+ "tk",
239
+ "tl",
240
+ "tr",
241
+ "tt",
242
+ "uk",
243
+ "ur",
244
+ "uz",
245
+ "vi",
246
+ "yi",
247
+ "yo",
248
+ "zh"
249
+ ],
250
+ "capabilities": {
251
+ "streaming": false,
252
+ "translate": true,
253
+ "languageDetection": true
254
+ },
255
+ "quant": "Q8_0",
256
+ "filename": "whisper-medium-Q8_0.gguf",
257
+ "size": 831538144,
258
+ "sha256": "09e6a65e7de377aa5b10bae24608bc6f8ca2ed04b3993ef10d4a02bcd9a82adf"
259
+ },
260
+ {
261
+ "id": "Voxtral-Mini-4B-Realtime-2602",
262
+ "name": "Voxtral Mini 4B Realtime",
263
+ "description": "Multilingual, very accurate in Italian and Spanish. Best on Apple Silicon or discrete GPUs",
264
+ "repository": "handy-computer/Voxtral-Mini-4B-Realtime-2602-gguf",
265
+ "revision": "b3e1c979e3775cbd0a49a65878a0ec7f06789ed7",
266
+ "license": "apache-2.0",
267
+ "family": "voxtral",
268
+ "parameters": "4.8B",
269
+ "languages": [
270
+ "en",
271
+ "fr",
272
+ "es",
273
+ "de",
274
+ "ru",
275
+ "zh",
276
+ "ja",
277
+ "it",
278
+ "pt",
279
+ "nl",
280
+ "ar",
281
+ "hi",
282
+ "ko"
283
+ ],
284
+ "capabilities": {
285
+ "streaming": true,
286
+ "translate": false,
287
+ "languageDetection": true
288
+ },
289
+ "quant": "Q8_0",
290
+ "filename": "Voxtral-Mini-4B-Realtime-2602-Q8_0.gguf",
291
+ "size": 4731791648,
292
+ "sha256": "6fb22249463c1e7a600d920ad732e2dd0a231510e9db59fb8061d3d1d48d0c67"
293
+ },
294
+ {
295
+ "id": "parakeet-tdt-0.6b-v3",
296
+ "name": "Parakeet TDT 0.6B v3",
297
+ "description": "Fast and accurate, great overall multilingual pick",
298
+ "repository": "handy-computer/parakeet-tdt-0.6b-v3-gguf",
299
+ "revision": "85ac09ea12fc4b1112fa76810059364bc6adc9de",
300
+ "license": "cc-by-4.0",
301
+ "family": "parakeet",
302
+ "parameters": "0.6B",
303
+ "languages": [
304
+ "bg",
305
+ "hr",
306
+ "cs",
307
+ "da",
308
+ "nl",
309
+ "en",
310
+ "et",
311
+ "fi",
312
+ "fr",
313
+ "de",
314
+ "el",
315
+ "hu",
316
+ "it",
317
+ "lv",
318
+ "lt",
319
+ "mt",
320
+ "pl",
321
+ "pt",
322
+ "ro",
323
+ "ru",
324
+ "sk",
325
+ "sl",
326
+ "es",
327
+ "sv",
328
+ "uk"
329
+ ],
330
+ "capabilities": {
331
+ "streaming": false,
332
+ "translate": false,
333
+ "languageDetection": true
334
+ },
335
+ "quant": "Q8_0",
336
+ "filename": "parakeet-tdt-0.6b-v3-Q8_0.gguf",
337
+ "size": 739508576,
338
+ "sha256": "5859f77944efcd8eafa23a6350731960b2b55b2203df51f319665c807d802cc7"
339
+ },
340
+ {
341
+ "id": "parakeet-tdt-0.6b-v2",
342
+ "name": "Parakeet TDT 0.6B v2",
343
+ "description": "Excellent English only model, runs on any hardware",
344
+ "repository": "handy-computer/parakeet-tdt-0.6b-v2-gguf",
345
+ "revision": "07cee0616125a08ef619729bb47f40ef747e4bc4",
346
+ "license": "cc-by-4.0",
347
+ "family": "parakeet",
348
+ "parameters": "0.6B",
349
+ "languages": [
350
+ "en"
351
+ ],
352
+ "capabilities": {
353
+ "streaming": false,
354
+ "translate": false,
355
+ "languageDetection": false
356
+ },
357
+ "quant": "Q8_0",
358
+ "filename": "parakeet-tdt-0.6b-v2-Q8_0.gguf",
359
+ "size": 729574912,
360
+ "sha256": "f0d0e99cebb6d3b83f1f7069b82b5d3c2e39a54545b0da039cb4bafd9c4e5caa"
361
+ },
362
+ {
363
+ "id": "Qwen3-ASR-0.6B",
364
+ "name": "Qwen3-ASR 0.6B",
365
+ "description": "Best for Chinese, Cantonese, and Asian languages with English",
366
+ "repository": "handy-computer/Qwen3-ASR-0.6B-gguf",
367
+ "revision": "e4e16599b900eb0cb36e524514756bb92eb092b7",
368
+ "license": "apache-2.0",
369
+ "family": "qwen3",
370
+ "parameters": "782M",
371
+ "languages": [
372
+ "zh",
373
+ "en",
374
+ "yue",
375
+ "ar",
376
+ "de",
377
+ "fr",
378
+ "es",
379
+ "pt",
380
+ "id",
381
+ "it",
382
+ "ko",
383
+ "ru",
384
+ "th",
385
+ "vi",
386
+ "ja",
387
+ "tr",
388
+ "hi",
389
+ "ms",
390
+ "nl",
391
+ "sv",
392
+ "da",
393
+ "fi",
394
+ "pl",
395
+ "cs",
396
+ "fil",
397
+ "fa",
398
+ "el",
399
+ "ro",
400
+ "hu",
401
+ "mk"
402
+ ],
403
+ "capabilities": {
404
+ "streaming": false,
405
+ "translate": false,
406
+ "languageDetection": true
407
+ },
408
+ "quant": "Q8_0",
409
+ "filename": "Qwen3-ASR-0.6B-Q8_0.gguf",
410
+ "size": 850423456,
411
+ "sha256": "f081b2d5e23bd669d92cc331d722a8a0681943b8e6f34b48996fd5c319b5acd8"
412
+ },
413
+ {
414
+ "id": "Fun-ASR-MLT-Nano-2512",
415
+ "name": "Fun-ASR Nano Multilingual",
416
+ "description": "Best for Japanese, good at Thai, Indonesian, Malay",
417
+ "repository": "handy-computer/Fun-ASR-MLT-Nano-2512-gguf",
418
+ "revision": "0b8f9c7bc545a219658aeb1dd4eeaa55d1cf89f3",
419
+ "license": "apache-2.0",
420
+ "family": "fun",
421
+ "parameters": "985M",
422
+ "languages": [
423
+ "zh",
424
+ "en",
425
+ "yue",
426
+ "ja",
427
+ "ko",
428
+ "vi",
429
+ "id",
430
+ "th",
431
+ "ms",
432
+ "tl",
433
+ "ar",
434
+ "hi",
435
+ "bg",
436
+ "hr",
437
+ "cs",
438
+ "da",
439
+ "nl",
440
+ "et",
441
+ "fi",
442
+ "el",
443
+ "hu",
444
+ "ga",
445
+ "lv",
446
+ "lt",
447
+ "mt",
448
+ "pl",
449
+ "pt",
450
+ "ro",
451
+ "sk",
452
+ "sl",
453
+ "sv"
454
+ ],
455
+ "capabilities": {
456
+ "streaming": false,
457
+ "translate": false,
458
+ "languageDetection": false
459
+ },
460
+ "quant": "Q8_0",
461
+ "filename": "Fun-ASR-MLT-Nano-2512-Q8_0.gguf",
462
+ "size": 891271232,
463
+ "sha256": "d12476d8d9f2baa0ebf738fa955fa05ed33a654f1567289033a810c45d9d9002"
464
+ },
465
+ {
466
+ "id": "canary-1b-v2",
467
+ "name": "Canary 1B v2",
468
+ "description": "Most accurate small model for European languages",
469
+ "repository": "handy-computer/canary-1b-v2-gguf",
470
+ "revision": "58d13c2c0102229aad45f7e19a77ddc42b41dd9a",
471
+ "license": "cc-by-4.0",
472
+ "family": "canary",
473
+ "parameters": "1B",
474
+ "languages": [
475
+ "bg",
476
+ "hr",
477
+ "cs",
478
+ "da",
479
+ "nl",
480
+ "en",
481
+ "et",
482
+ "fi",
483
+ "fr",
484
+ "de",
485
+ "el",
486
+ "hu",
487
+ "it",
488
+ "lv",
489
+ "lt",
490
+ "mt",
491
+ "pl",
492
+ "pt",
493
+ "ro",
494
+ "sk",
495
+ "sl",
496
+ "es",
497
+ "sv",
498
+ "ru",
499
+ "uk"
500
+ ],
501
+ "capabilities": {
502
+ "streaming": false,
503
+ "translate": true,
504
+ "languageDetection": false
505
+ },
506
+ "quant": "Q8_0",
507
+ "filename": "canary-1b-v2-Q8_0.gguf",
508
+ "size": 1144290016,
509
+ "sha256": "224f83d1bc487b3303b495a7d6874912fdece93de19d1a04b550829c30a5d289"
510
+ },
511
+ {
512
+ "id": "canary-qwen-2.5b",
513
+ "name": "Canary-Qwen 2.5B",
514
+ "description": "Very accurate English. Slow without a GPU.",
515
+ "repository": "handy-computer/canary-qwen-2.5b-gguf",
516
+ "revision": "3370d4e2f28cc70eea79dfc9f2f43fb91eef3163",
517
+ "license": "cc-by-4.0",
518
+ "family": "canary",
519
+ "parameters": "2.5B",
520
+ "languages": [
521
+ "en"
522
+ ],
523
+ "capabilities": {
524
+ "streaming": false,
525
+ "translate": false,
526
+ "languageDetection": false
527
+ },
528
+ "quant": "Q8_0",
529
+ "filename": "canary-qwen-2.5b-Q8_0.gguf",
530
+ "size": 2797548928,
531
+ "sha256": "d89aad1285d5bd5aa441c464d3a4cf37bd5474f70705408e71558d8627415b34"
532
+ },
533
+ {
534
+ "id": "cohere-transcribe-arabic-07-2026",
535
+ "name": "Cohere Transcribe Arabic",
536
+ "description": "Best for Arabic and Arabic/English speakers",
537
+ "repository": "handy-computer/cohere-transcribe-arabic-07-2026-gguf",
538
+ "revision": "715cbe09ca9b60fc1e497db1e4478fa9fcf4ac21",
539
+ "license": "apache-2.0",
540
+ "family": "cohere",
541
+ "parameters": "2.0B",
542
+ "languages": [
543
+ "en",
544
+ "ar"
545
+ ],
546
+ "capabilities": {
547
+ "streaming": false,
548
+ "translate": false,
549
+ "languageDetection": false
550
+ },
551
+ "quant": "Q8_0",
552
+ "filename": "cohere-transcribe-arabic-07-2026-Q8_0.gguf",
553
+ "size": 2410655136,
554
+ "sha256": "910de5c9c57f9fd8a280e1701f9cd96f63768878c1ca9e4ecf23638a5e0fef16"
555
+ },
556
+ {
557
+ "id": "Fun-ASR-Nano-2512",
558
+ "name": "Fun-ASR Nano",
559
+ "description": "Good for Mandarin, English, Japanese",
560
+ "repository": "handy-computer/Fun-ASR-Nano-2512-gguf",
561
+ "revision": "30360f003f99929c1e25c3f6222d02eccb04663c",
562
+ "license": "apache-2.0",
563
+ "family": "fun",
564
+ "parameters": "985M",
565
+ "languages": [
566
+ "zh",
567
+ "en",
568
+ "ja"
569
+ ],
570
+ "capabilities": {
571
+ "streaming": false,
572
+ "translate": false,
573
+ "languageDetection": false
574
+ },
575
+ "quant": "Q8_0",
576
+ "filename": "Fun-ASR-Nano-2512-Q8_0.gguf",
577
+ "size": 891270912,
578
+ "sha256": "681caef6df15a2c0e153b40ca7fe4087fdf65751fa5e6fe605d8a75dff969e61"
579
+ },
580
+ {
581
+ "id": "gigaam-v3-e2e-ctc",
582
+ "name": "GigaAM v3 E2E-CTC",
583
+ "description": "Russian only.",
584
+ "repository": "handy-computer/gigaam-v3-e2e-ctc-gguf",
585
+ "revision": "075dff81f843cf23d22b4ce943ffdc4dd8650cd7",
586
+ "license": "mit",
587
+ "family": "gigaam",
588
+ "parameters": "221M",
589
+ "languages": [
590
+ "ru"
591
+ ],
592
+ "capabilities": {
593
+ "streaming": false,
594
+ "translate": false,
595
+ "languageDetection": false
596
+ },
597
+ "quant": "Q8_0",
598
+ "filename": "gigaam-v3-e2e-ctc-Q8_0.gguf",
599
+ "size": 272151136,
600
+ "sha256": "9ccce4750dc813a493d96ca15ee251712bedec15ac9a02fa3d2bd732f08ae5eb"
601
+ },
602
+ {
603
+ "id": "gigaam-v3-e2e-rnnt",
604
+ "name": "GigaAM v3 E2E-RNN-T",
605
+ "description": "Best for Russian dictation. English may be unreliable.",
606
+ "repository": "handy-computer/gigaam-v3-e2e-rnnt-gguf",
607
+ "revision": "f719d70812344f4d0fb8c11c0887b190501a7465",
608
+ "license": "mit",
609
+ "family": "gigaam",
610
+ "parameters": "223M",
611
+ "languages": [
612
+ "ru"
613
+ ],
614
+ "capabilities": {
615
+ "streaming": false,
616
+ "translate": false,
617
+ "languageDetection": false
618
+ },
619
+ "quant": "Q8_0",
620
+ "filename": "gigaam-v3-e2e-rnnt-Q8_0.gguf",
621
+ "size": 273724832,
622
+ "sha256": "78d63b47723b7f8d78c6113a6ef983b5a86e2a86f6c273e1f5cb6967b1c4467a"
623
+ },
624
+ {
625
+ "id": "granite-speech-4.1-2b",
626
+ "name": "Granite Speech 4.1 2B",
627
+ "description": "Accurate with translation support. Best with GPU",
628
+ "repository": "handy-computer/granite-speech-4.1-2b-gguf",
629
+ "revision": "58e7710fd7039ded5a185668eef5f71ca5d9d919",
630
+ "license": "apache-2.0",
631
+ "family": "granite",
632
+ "parameters": "2.3B",
633
+ "languages": [
634
+ "en",
635
+ "fr",
636
+ "de",
637
+ "es",
638
+ "pt",
639
+ "ja"
640
+ ],
641
+ "capabilities": {
642
+ "streaming": false,
643
+ "translate": true,
644
+ "languageDetection": false
645
+ },
646
+ "quant": "Q8_0",
647
+ "filename": "granite-speech-4.1-2b-Q8_0.gguf",
648
+ "size": 2559878848,
649
+ "sha256": "8c0b2dce2861feb1dba91e9d59f2ab4a9c23ad808bff86465151576e096ec7a6"
650
+ },
651
+ {
652
+ "id": "medasr",
653
+ "name": "MedASR",
654
+ "description": "For clinicians dictating notes. Poor on general speech",
655
+ "repository": "handy-computer/medasr-gguf",
656
+ "revision": "6f481df085bb50ae922cea918fb578e664237126",
657
+ "license": "other",
658
+ "family": "medasr",
659
+ "parameters": "105M",
660
+ "languages": [
661
+ "en"
662
+ ],
663
+ "capabilities": {
664
+ "streaming": false,
665
+ "translate": false,
666
+ "languageDetection": false
667
+ },
668
+ "quant": "Q8_0",
669
+ "filename": "medasr-Q8_0.gguf",
670
+ "size": 127712448,
671
+ "sha256": "5a391a2154416b96241b829ac2c7eed8b64d197f00372512c9bbf63f4849c978"
672
+ },
673
+ {
674
+ "id": "parakeet-tdt_ctc-110m",
675
+ "name": "Parakeet TDT-CTC 110M",
676
+ "description": "Tiny English model, virtually instant even on CPU",
677
+ "repository": "handy-computer/parakeet-tdt_ctc-110m-gguf",
678
+ "revision": "9d66d34f9e1594075c5dd72c90c0f4c321b29f21",
679
+ "license": "cc-by-4.0",
680
+ "family": "parakeet",
681
+ "parameters": "110M",
682
+ "languages": [
683
+ "en"
684
+ ],
685
+ "capabilities": {
686
+ "streaming": false,
687
+ "translate": false,
688
+ "languageDetection": false
689
+ },
690
+ "quant": "Q8_0",
691
+ "filename": "parakeet-tdt_ctc-110m-Q8_0.gguf",
692
+ "size": 135373280,
693
+ "sha256": "7dd44c74a331d788a4e5f8b16913b3feb29ced22cf5613aad0e0f6cd30516296"
694
+ },
695
+ {
696
+ "id": "multitalker-parakeet-streaming-0.6b-v1",
697
+ "name": "Parakeet Multitalker EN",
698
+ "description": "For overlapping speakers in meetings, not for solo dictation",
699
+ "repository": "handy-computer/multitalker-parakeet-streaming-0.6b-v1-gguf",
700
+ "revision": "0314bc0d2f4be9a0d79fa5eeb36ad1f3962cfcbb",
701
+ "license": "other",
702
+ "family": "parakeet",
703
+ "parameters": "0.6B",
704
+ "languages": [
705
+ "en"
706
+ ],
707
+ "capabilities": {
708
+ "streaming": true,
709
+ "translate": false,
710
+ "languageDetection": false
711
+ },
712
+ "quant": "Q8_0",
713
+ "filename": "multitalker-parakeet-streaming-0.6b-v1-Q8_0.gguf",
714
+ "size": 734123712,
715
+ "sha256": "4748deea0222eb9057ebdac1679eebb970bbe882ee10a96ae34596ffe83615c7"
716
+ },
717
+ {
718
+ "id": "Qwen3-ASR-1.7B",
719
+ "name": "Qwen3-ASR 1.7B",
720
+ "description": "Top accuracy across languages. Best on Apple Silicon or a GPU",
721
+ "repository": "handy-computer/Qwen3-ASR-1.7B-gguf",
722
+ "revision": "92282af1610a2db19d66f2bef1e260f5deca782d",
723
+ "license": "apache-2.0",
724
+ "family": "qwen3",
725
+ "parameters": "2.0B",
726
+ "languages": [
727
+ "zh",
728
+ "en",
729
+ "yue",
730
+ "ar",
731
+ "de",
732
+ "fr",
733
+ "es",
734
+ "pt",
735
+ "id",
736
+ "it",
737
+ "ko",
738
+ "ru",
739
+ "th",
740
+ "vi",
741
+ "ja",
742
+ "tr",
743
+ "hi",
744
+ "ms",
745
+ "nl",
746
+ "sv",
747
+ "da",
748
+ "fi",
749
+ "pl",
750
+ "cs",
751
+ "fil",
752
+ "fa",
753
+ "el",
754
+ "ro",
755
+ "hu",
756
+ "mk"
757
+ ],
758
+ "capabilities": {
759
+ "streaming": false,
760
+ "translate": false,
761
+ "languageDetection": true
762
+ },
763
+ "quant": "Q8_0",
764
+ "filename": "Qwen3-ASR-1.7B-Q8_0.gguf",
765
+ "size": 2185030624,
766
+ "sha256": "9a0d81792dfea2d5f278b8a63deb3ea6e02139ce42c2301f32ea19c4f77526b7"
767
+ },
768
+ {
769
+ "id": "SenseVoiceSmall",
770
+ "name": "SenseVoice Small",
771
+ "description": "Instant Mandarin, Japanese, Korean on any machine. Weak Cantonese",
772
+ "repository": "handy-computer/SenseVoiceSmall-gguf",
773
+ "revision": "4a08b8e900b38a977e32eb08d5d0697d6e72ba04",
774
+ "license": "other",
775
+ "family": "sensevoice",
776
+ "parameters": "234M",
777
+ "languages": [
778
+ "zh",
779
+ "yue",
780
+ "en",
781
+ "ja",
782
+ "ko"
783
+ ],
784
+ "capabilities": {
785
+ "streaming": false,
786
+ "translate": false,
787
+ "languageDetection": true
788
+ },
789
+ "quant": "Q8_0",
790
+ "filename": "SenseVoiceSmall-Q8_0.gguf",
791
+ "size": 252684608,
792
+ "sha256": "6c759ee4c9748c9b3f7a5a60ca74f0f7e685fb9d45d1378fce7cfd62f59adf29"
793
+ },
794
+ {
795
+ "id": "Voxtral-Mini-3B-2507",
796
+ "name": "Voxtral Mini 3B",
797
+ "description": "Accurate with translation support. Best on Apple Silicon or a GPU.",
798
+ "repository": "handy-computer/Voxtral-Mini-3B-2507-gguf",
799
+ "revision": "5690205813042c07cbaa86d2a9dcc585fcd31304",
800
+ "license": "apache-2.0",
801
+ "family": "voxtral",
802
+ "parameters": "4.7B",
803
+ "languages": [
804
+ "en",
805
+ "fr",
806
+ "de",
807
+ "es",
808
+ "it",
809
+ "pt",
810
+ "nl",
811
+ "hi"
812
+ ],
813
+ "capabilities": {
814
+ "streaming": false,
815
+ "translate": true,
816
+ "languageDetection": true
817
+ },
818
+ "quant": "Q8_0",
819
+ "filename": "Voxtral-Mini-3B-2507-Q8_0.gguf",
820
+ "size": 5000084128,
821
+ "sha256": "06b4dd04e32953ccab0d417125bdd728ec031431596ed5e80123c3c66f29ddc2"
822
+ },
823
+ {
824
+ "id": "whisper-small",
825
+ "name": "Whisper Small",
826
+ "description": "Wide language support in a relatively small model.",
827
+ "repository": "handy-computer/whisper-small-gguf",
828
+ "revision": "c0214bd34be9296695486f838e0142f900803159",
829
+ "license": "apache-2.0",
830
+ "family": "whisper",
831
+ "parameters": "242M",
832
+ "languages": [
833
+ "af",
834
+ "am",
835
+ "ar",
836
+ "as",
837
+ "az",
838
+ "ba",
839
+ "be",
840
+ "bg",
841
+ "bn",
842
+ "bo",
843
+ "br",
844
+ "bs",
845
+ "ca",
846
+ "cs",
847
+ "cy",
848
+ "da",
849
+ "de",
850
+ "el",
851
+ "en",
852
+ "es",
853
+ "et",
854
+ "eu",
855
+ "fa",
856
+ "fi",
857
+ "fo",
858
+ "fr",
859
+ "gl",
860
+ "gu",
861
+ "haw",
862
+ "ha",
863
+ "he",
864
+ "hi",
865
+ "hr",
866
+ "ht",
867
+ "hu",
868
+ "hy",
869
+ "id",
870
+ "is",
871
+ "it",
872
+ "ja",
873
+ "jw",
874
+ "ka",
875
+ "kk",
876
+ "km",
877
+ "kn",
878
+ "ko",
879
+ "la",
880
+ "lb",
881
+ "ln",
882
+ "lo",
883
+ "lt",
884
+ "lv",
885
+ "mg",
886
+ "mi",
887
+ "mk",
888
+ "ml",
889
+ "mn",
890
+ "mr",
891
+ "ms",
892
+ "mt",
893
+ "my",
894
+ "ne",
895
+ "nl",
896
+ "nn",
897
+ "no",
898
+ "oc",
899
+ "pa",
900
+ "pl",
901
+ "ps",
902
+ "pt",
903
+ "ro",
904
+ "ru",
905
+ "sa",
906
+ "sd",
907
+ "si",
908
+ "sk",
909
+ "sl",
910
+ "sn",
911
+ "so",
912
+ "sq",
913
+ "sr",
914
+ "su",
915
+ "sv",
916
+ "sw",
917
+ "ta",
918
+ "te",
919
+ "tg",
920
+ "th",
921
+ "tk",
922
+ "tl",
923
+ "tr",
924
+ "tt",
925
+ "uk",
926
+ "ur",
927
+ "uz",
928
+ "vi",
929
+ "yi",
930
+ "yo",
931
+ "zh"
932
+ ],
933
+ "capabilities": {
934
+ "streaming": false,
935
+ "translate": true,
936
+ "languageDetection": true
937
+ },
938
+ "quant": "Q8_0",
939
+ "filename": "whisper-small-Q8_0.gguf",
940
+ "size": 269751136,
941
+ "sha256": "9b9c8811bbcc82a7766f0fb0925614bdacb0923b2cc630daeac17108b655b860"
942
+ },
943
+ {
944
+ "id": "whisper-large-v3-turbo",
945
+ "name": "Whisper Large v3 Turbo",
946
+ "description": "Accurate in many languages. Slow without a GPU",
947
+ "repository": "handy-computer/whisper-large-v3-turbo-gguf",
948
+ "revision": "5eaf945c7978e564bae5b28a5b1639dd93c2bfb1",
949
+ "license": "apache-2.0",
950
+ "family": "whisper",
951
+ "parameters": "809M",
952
+ "languages": [
953
+ "af",
954
+ "am",
955
+ "ar",
956
+ "as",
957
+ "az",
958
+ "ba",
959
+ "be",
960
+ "bg",
961
+ "bn",
962
+ "bo",
963
+ "br",
964
+ "bs",
965
+ "ca",
966
+ "cs",
967
+ "cy",
968
+ "da",
969
+ "de",
970
+ "el",
971
+ "en",
972
+ "es",
973
+ "et",
974
+ "eu",
975
+ "fa",
976
+ "fi",
977
+ "fo",
978
+ "fr",
979
+ "gl",
980
+ "gu",
981
+ "haw",
982
+ "ha",
983
+ "he",
984
+ "hi",
985
+ "hr",
986
+ "ht",
987
+ "hu",
988
+ "hy",
989
+ "id",
990
+ "is",
991
+ "it",
992
+ "ja",
993
+ "jw",
994
+ "ka",
995
+ "kk",
996
+ "km",
997
+ "kn",
998
+ "ko",
999
+ "la",
1000
+ "lb",
1001
+ "ln",
1002
+ "lo",
1003
+ "lt",
1004
+ "lv",
1005
+ "mg",
1006
+ "mi",
1007
+ "mk",
1008
+ "ml",
1009
+ "mn",
1010
+ "mr",
1011
+ "ms",
1012
+ "mt",
1013
+ "my",
1014
+ "ne",
1015
+ "nl",
1016
+ "nn",
1017
+ "no",
1018
+ "oc",
1019
+ "pa",
1020
+ "pl",
1021
+ "ps",
1022
+ "pt",
1023
+ "ro",
1024
+ "ru",
1025
+ "sa",
1026
+ "sd",
1027
+ "si",
1028
+ "sk",
1029
+ "sl",
1030
+ "sn",
1031
+ "so",
1032
+ "sq",
1033
+ "sr",
1034
+ "su",
1035
+ "sv",
1036
+ "sw",
1037
+ "ta",
1038
+ "te",
1039
+ "tg",
1040
+ "th",
1041
+ "tk",
1042
+ "tl",
1043
+ "tr",
1044
+ "tt",
1045
+ "uk",
1046
+ "ur",
1047
+ "uz",
1048
+ "vi",
1049
+ "yi",
1050
+ "yo",
1051
+ "yue",
1052
+ "zh"
1053
+ ],
1054
+ "capabilities": {
1055
+ "streaming": false,
1056
+ "translate": false,
1057
+ "languageDetection": true
1058
+ },
1059
+ "quant": "Q8_0",
1060
+ "filename": "whisper-large-v3-turbo-Q8_0.gguf",
1061
+ "size": 886381760,
1062
+ "sha256": "b2e30cc286bc9f3aba4db9099fc7403543497c05ce7100d0d83091ddfd25a183"
1063
+ },
1064
+ {
1065
+ "id": "Breeze-ASR-25",
1066
+ "name": "Breeze-ASR-25",
1067
+ "description": "Taiwan Mandarin with English mixed in. Traditional script, no punctuation",
1068
+ "repository": "handy-computer/Breeze-ASR-25-gguf",
1069
+ "revision": "1e5e8d7295110e1e14e305e9cf7411d82711beaa",
1070
+ "license": "apache-2.0",
1071
+ "family": "whisper",
1072
+ "parameters": "1.5B",
1073
+ "languages": [
1074
+ "af",
1075
+ "am",
1076
+ "ar",
1077
+ "as",
1078
+ "az",
1079
+ "ba",
1080
+ "be",
1081
+ "bg",
1082
+ "bn",
1083
+ "bo",
1084
+ "br",
1085
+ "bs",
1086
+ "ca",
1087
+ "cs",
1088
+ "cy",
1089
+ "da",
1090
+ "de",
1091
+ "el",
1092
+ "en",
1093
+ "es",
1094
+ "et",
1095
+ "eu",
1096
+ "fa",
1097
+ "fi",
1098
+ "fo",
1099
+ "fr",
1100
+ "gl",
1101
+ "gu",
1102
+ "haw",
1103
+ "ha",
1104
+ "he",
1105
+ "hi",
1106
+ "hr",
1107
+ "ht",
1108
+ "hu",
1109
+ "hy",
1110
+ "id",
1111
+ "is",
1112
+ "it",
1113
+ "ja",
1114
+ "jw",
1115
+ "ka",
1116
+ "kk",
1117
+ "km",
1118
+ "kn",
1119
+ "ko",
1120
+ "la",
1121
+ "lb",
1122
+ "ln",
1123
+ "lo",
1124
+ "lt",
1125
+ "lv",
1126
+ "mg",
1127
+ "mi",
1128
+ "mk",
1129
+ "ml",
1130
+ "mn",
1131
+ "mr",
1132
+ "ms",
1133
+ "mt",
1134
+ "my",
1135
+ "ne",
1136
+ "nl",
1137
+ "nn",
1138
+ "no",
1139
+ "oc",
1140
+ "pa",
1141
+ "pl",
1142
+ "ps",
1143
+ "pt",
1144
+ "ro",
1145
+ "ru",
1146
+ "sa",
1147
+ "sd",
1148
+ "si",
1149
+ "sk",
1150
+ "sl",
1151
+ "sn",
1152
+ "so",
1153
+ "sq",
1154
+ "sr",
1155
+ "su",
1156
+ "sv",
1157
+ "sw",
1158
+ "ta",
1159
+ "te",
1160
+ "tg",
1161
+ "th",
1162
+ "tk",
1163
+ "tl",
1164
+ "tr",
1165
+ "tt",
1166
+ "uk",
1167
+ "ur",
1168
+ "uz",
1169
+ "vi",
1170
+ "yi",
1171
+ "yo",
1172
+ "zh"
1173
+ ],
1174
+ "capabilities": {
1175
+ "streaming": false,
1176
+ "translate": true,
1177
+ "languageDetection": true
1178
+ },
1179
+ "quant": "Q8_0",
1180
+ "filename": "Breeze-ASR-25-Q8_0.gguf",
1181
+ "size": 1667964224,
1182
+ "sha256": "1650c163cd1623d13b585368ffd87d7e669c5ff23014511e0fa91bb4ce994756"
1183
+ },
1184
+ {
1185
+ "id": "whisper-large-v3",
1186
+ "name": "Whisper Large v3",
1187
+ "description": "Most languages at usable accuracy. Best on Apple Silicon or a GPU.",
1188
+ "repository": "handy-computer/whisper-large-v3-gguf",
1189
+ "revision": "e3e29bee6389c7da4a141406f07bb80ddac5337c",
1190
+ "license": "apache-2.0",
1191
+ "family": "whisper",
1192
+ "parameters": "1.5B",
1193
+ "languages": [
1194
+ "af",
1195
+ "am",
1196
+ "ar",
1197
+ "as",
1198
+ "az",
1199
+ "ba",
1200
+ "be",
1201
+ "bg",
1202
+ "bn",
1203
+ "bo",
1204
+ "br",
1205
+ "bs",
1206
+ "ca",
1207
+ "cs",
1208
+ "cy",
1209
+ "da",
1210
+ "de",
1211
+ "el",
1212
+ "en",
1213
+ "es",
1214
+ "et",
1215
+ "eu",
1216
+ "fa",
1217
+ "fi",
1218
+ "fo",
1219
+ "fr",
1220
+ "gl",
1221
+ "gu",
1222
+ "haw",
1223
+ "ha",
1224
+ "he",
1225
+ "hi",
1226
+ "hr",
1227
+ "ht",
1228
+ "hu",
1229
+ "hy",
1230
+ "id",
1231
+ "is",
1232
+ "it",
1233
+ "ja",
1234
+ "jw",
1235
+ "ka",
1236
+ "kk",
1237
+ "km",
1238
+ "kn",
1239
+ "ko",
1240
+ "la",
1241
+ "lb",
1242
+ "ln",
1243
+ "lo",
1244
+ "lt",
1245
+ "lv",
1246
+ "mg",
1247
+ "mi",
1248
+ "mk",
1249
+ "ml",
1250
+ "mn",
1251
+ "mr",
1252
+ "ms",
1253
+ "mt",
1254
+ "my",
1255
+ "ne",
1256
+ "nl",
1257
+ "nn",
1258
+ "no",
1259
+ "oc",
1260
+ "pa",
1261
+ "pl",
1262
+ "ps",
1263
+ "pt",
1264
+ "ro",
1265
+ "ru",
1266
+ "sa",
1267
+ "sd",
1268
+ "si",
1269
+ "sk",
1270
+ "sl",
1271
+ "sn",
1272
+ "so",
1273
+ "sq",
1274
+ "sr",
1275
+ "su",
1276
+ "sv",
1277
+ "sw",
1278
+ "ta",
1279
+ "te",
1280
+ "tg",
1281
+ "th",
1282
+ "tk",
1283
+ "tl",
1284
+ "tr",
1285
+ "tt",
1286
+ "uk",
1287
+ "ur",
1288
+ "uz",
1289
+ "vi",
1290
+ "yi",
1291
+ "yo",
1292
+ "yue",
1293
+ "zh"
1294
+ ],
1295
+ "capabilities": {
1296
+ "streaming": false,
1297
+ "translate": true,
1298
+ "languageDetection": true
1299
+ },
1300
+ "quant": "Q8_0",
1301
+ "filename": "whisper-large-v3-Q8_0.gguf",
1302
+ "size": 1668741440,
1303
+ "sha256": "2fa1a5f179f8a511a53e2108db270aa4af3ce08cd976af4180e2854666bb4ba3"
1304
+ }
1305
+ ] as const;