ark-asr-3B-mlx / VALIDATION.md
leope's picture
Add files using upload-large-folder tool
c3ac013 verified
|
Raw
History Blame Contribute Delete
1.87 kB
# Validation
Validation was run on 2026-08-01 with an Apple M5 Pro, 24 GB unified memory,
macOS 26.6, Python 3.12.13, and MLX 0.32.0.
## Checkpoint conversion
- Source: `AutoArk-AI/ARK-ASR-3B`
- Revision: `1e28271b79edc97635783bea65abc89195a09ed3`
- Source tensors: 926
- Intentionally dropped tensors: 2
- Retained parameter tensors: 924
- Missing, unexpected, or shape-mismatched tensors: 0
- Output dtype: BF16
- Output size: 7.0 GiB
- Output SHA-256:
`a5e9431bdd648340a40c092e385c4fe1d445d8ad3311dd94609e72af36b0256d`
Source shard hashes are recorded in `conversion.json`.
## PyTorch parity
The original remote-code model and native MLX model were run on the pinned
`Narsil/asr_dummy/1.flac` LibriSpeech sample.
- Prompt token IDs: identical
- BF16 input features: maximum absolute difference `0.0`
- Adapted audio feature cosine similarity: `0.998567558665821`
- Initial decoder logits cosine similarity: `0.9999223476845636`
- Greedy generation token IDs: identical
- Final decoded text: identical
Both implementations produced:
> he hoped there would be stew for dinner turnips and carrots and bruised
> potatoes and fat mutton pieces to be ladled out in thick peppered flour
> fattened sauce
The validation command was:
```bash
python scripts/validate_parity.py /path/to/1.flac \
--model . \
--source AutoArk-AI/ARK-ASR-3B \
--revision 1e28271b79edc97635783bea65abc89195a09ed3 \
--min-adapter-cosine 0.998
```
## MLX benchmark
The same 12.1-second audio sample was measured after the checkpoint was already
present in the operating-system file cache:
- Model load: `1.011 s`
- Audio preprocessing: `0.499 s`
- First token: `0.885 s`
- Full 34-token generation: `1.965 s`
- Generation throughput: `17.30 tokens/s`
- MLX peak memory: `7.820 GB`
These numbers describe this machine and test clip; they are not portable
performance guarantees.