aoiandroid
/

File size: 3,281 Bytes
88287a0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Orukeet for transcribe.cpp

This Q8_0 export uses transcribe.cpp's existing Parakeet TDT v3 implementation. The 12,288 fitted Gabor kernels are materialized as ordinary convolution weights. There are no additional runtime operators or dependencies.

- File: `orukeet-transcribe-cpp-Q8_0.gguf` (739,508,608 bytes)
- SHA-256: `cad2f52ac91cad829279422301989687c2cf02e19157352ed25ea501b90dbb7e`
- Source: Orukeet r3, SHA-256 `031c8ddab4845aeced904a7cde8e8aa57993b2e344716cf83a545b079c473b56`
- Weights: [CC BY-SA 4.0](../LICENSE-WEIGHTS). Orukeet is an adaptation of NVIDIA Parakeet TDT v3; retain [attribution](../NOTICE.md).

The root-level filename follows Handy's existing cache and delete layout. The earlier `transcribe-cpp/orukeet-Q8_0.gguf` path remains available and contains identical bytes.

## Run

Build [transcribe.cpp](https://github.com/cjpais/transcribe.cpp/tree/585b98f7e66777d16f2da734ceedaa7398060fa7) normally, then run:

```sh
./build/bin/transcribe-cli --model orukeet-transcribe-cpp-Q8_0.gguf recording.wav
```

Use 16 kHz mono audio. This is offline transcription in 25 languages, with language detection and token timestamps. Translation and streaming recognition are not supported. Use this layout with transcribe.cpp; the root-level `orukeet-v0.1.0-q8.gguf` is for NeMo-Speech.cpp.

## Reproduce the export

At the converter commit in [manifest.json](manifest.json), apply [convert-orukeet.patch](convert-orukeet.patch), then:

```sh
uv run --no-project --python 3.11 --with torch --with omegaconf --with sentencepiece --with gguf scripts/convert-parakeet.py orukeet-v0.1.0.nemo orukeet-F32.gguf --repo-id oruk/orukeet
./build/bin/transcribe-quantize orukeet-F32.gguf orukeet-Q8_0.gguf --quant Q8_0
```

## Validation

The exact transcribe-cpp 0.2.0 Rust dependency pinned by Handy loads and transcribes this file on CPU and Apple Metal. Each device passed 120 multilingual clips, repeated decoding, 0.1/1/5-second silence, cancellation, and successful session reuse after cancellation. The supporting C++ build passed all 38 tests.

On the fixed six-language FLEURS validation sample (120 clips, 2,433 reference words), Q8 Metal and the NeMo FP32 source both score **5.34% pooled WER**; Q8 CPU scores **5.30%**. Metal matches the source text exactly on 108 clips and after word normalization on 112. The NeMo reference uses transcribe.cpp's pinned NeMo 2.8.0rc0 environment. [All paired language scores and edit counts](validation.json).

| Q8 Metal WER | Parakeet TDT v3 | Orukeet |
| --- | ---: | ---: |
| English | 4.19% | 3.40% |
| German | 3.56% | 4.07% |
| Spanish | 3.41% | 3.01% |
| French | 4.07% | 4.50% |
| Russian | 7.77% | 7.51% |
| Ukrainian | 9.40% | 11.60% |
| Pooled | 5.14% | 5.34% |

Standard source/export tensor comparisons pass the existing upstream Parakeet tolerances and the JFK reference transcript matches exactly. Four additional sub-block probes exceed generic strict tolerances, with the largest differences at sequence boundaries. The runtime and NeMo use different valid-length padding paths; no runtime code or numerical tolerance was changed for this export.

These are integration checks for this export and runtime, separate from the report's NeMo benchmark. No Windows/Vulkan or comparative speed claim is made here.