zipformer-streaming-ctc-small-en

Streaming Zipformer2 encoder with a CTC head, trained on LibriSpeech by the k2-fsa / icefall project (--causal 1 --use-ctc 1, chunk sizes 16/32/64 at 50 Hz, left context 64/128/256), repackaged as safetensors for the maxi-ml native port (asr-models::zipformer).

  • Source checkpoint: csukuangfj/icefall-asr-librispeech-streaming-zipformer-small-2024-03-18, exp-ctc-rnnt-small, weights averaged over epochs 28–30 exactly as the upstream ctc-epoch-30-avg-3-chunk-16-left-128.onnx export (average_checkpoints_with_averaged_model(epoch-27.pt, epoch-30.pt)).
  • Converter: scripts/convert_zipformer_checkpoint.py in maxi-ml. Only the inference parameters are kept (encoder_embed.*, encoder.*, ctc_output.*); the transducer decoder/joiner are dropped.
  • Files: model.safetensors (fp32, 22.46 M parameters), config.json (architecture hyper-parameters), tokens.txt (BPE 500 + <blk>).
  • Features: 80-bin Kaldi fbank, 16 kHz, dither 0, snip_edges false, high_freq −400.
  • CoreML packages:
    • coreml/zipformer-chunk{16,8}-left128.mlpackage: the icefall streaming forward traced with coremltools (scripts/coreml/convert_zipformer_to_coreml.py), caches in MLState. Runs on the GPU; the ANE compiler rejects it.
    • coreml-ane/zipformer-chunk{16,8}-left128.mlpackage and …-stateless.mlpackage: the same step emitted directly as a MIL program in the (B, C, 1, S) layout the ANE accepts (maxi-ml convert-zipformer-ane, maxi_ml_compile_mil::zipformer_emitter, maxi-ml commit bc970670e), caches packed into 14 MLState tensors, or carried as inputs/outputs in the -stateless twin for macOS 27.0, which cannot load MLState programs. Both have the traced package's I/O (x: [1, 2·chunk+13, 80] fp32 in, log_probs: [1, chunk/2, 500] fp32 out; the stateless one adds <cache> inputs and <cache>_out outputs). Measured with examples/zipformer_latency.rs: 1.6–2.5 ms per 320 ms chunk on the ANE across M3 / M4 Pro / M5 Max, 4–6 ms at microphone pacing, same WER as the fp32 MLX port on the corpus (one near-tie word can differ at chunk 16 — fp16 end to end).
  • License: Apache-2.0, as upstream.
Downloads last month
-
Safetensors
Model size
22.5M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for maxiboch/zipformer-streaming-ctc-small-en