Instructions to use OpenASR/firered-punc with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- OpenASR
How to use OpenASR/firered-punc with OpenASR:
# Install the openasr CLI: https://github.com/QuintinShaw/openasr/releases openasr pull firered-punc openasr transcribe audio.wav --model firered-punc
- Notebooks
- Google Colab
- Kaggle
File size: 5,516 Bytes
61306bc | 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 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | ---
license: apache-2.0
base_model: FireRedTeam/FireRedPunc
pipeline_tag: automatic-speech-recognition
library_name: openasr
tags:
- openasr
- oasr
- firered-punc
---
<div align="center">
# FireRedPunc Β· OpenASR
**Chinese punctuation restoration for OpenASR -- a BERT token classifier that adds full-width marks to unpunctuated transcripts, fully on-device**
[](https://huggingface.co/FireRedTeam/FireRedPunc)
[](https://github.com/QuintinShaw/openasr)
[](https://openasr.org)
[](https://huggingface.co/FireRedTeam/FireRedPunc)
A capability-pack support model for the **[OpenASR](https://github.com/QuintinShaw/openasr)**
runtime β pure-Rust inference, **no Python at inference time**. Not a standalone
transcription model: it augments another OpenASR ASR model's own decode path.
</div>
---
## β¨ Highlights
- πΆ **Chinese punctuation restoration** -- restores full-width `οΌγοΌοΌ` on an unpunctuated ASR transcript (e.g. Dolphin, FireRedASR2-AED) in a finalize-only post-processing pass
- π§ **BERT token classifier** -- a 12-layer `chinese-lert-base` encoder with a 5-class head predicting which of none/οΌγοΌοΌ follows each subword
- π¨π³ **Chinese-only by construction** -- the released label set has no English half-width marks, so only Chinese text is punctuated
- π **Opt-in and auto-gated** -- runs only when the ASR model is unpunctuated and this pack is installed, so punctuating families are never double-punctuated
- π¦ **Native in OpenASR** β `.oasr` packs run with no Python at inference, engineered for peak performance on CPU & GPU
## π Quickstart
```bash
# 1. Install the OpenASR CLI Β· https://openasr.org
# 2. Pull the pack
openasr pull firered-punc:fp16
# 3. Use it as an opt-in refinement for another model's transcribe call
openasr transcribe meeting.wav --model <asr-model> --word-timestamps=aligned
```
## π¦ Pack
| Quant | File (`.oasr`) | Size |
|:------|:---------------|-----:|
| fp16 | `firered-punc-fp16.oasr` | 204 MB |
## π§ About FireRedPunc
FireRedPunc is a **punctuation-prediction** model from **FireRedTeam**, part of the
FireRedASR2S all-in-one ASR system. It adopts a BERT-style encoder initialized from
`chinese-lert-base` (a 12-layer, 768-hidden, 12-head BERT) with a token-classification head
that predicts, for each subword, which of five classes follows it: none, or one of the four
Chinese full-width marks `οΌ`, `γ`, `οΌ`, `οΌ`. It is a text-in / labels-out post-processor,
not an ASR model -- no audio frontend, no autoregressive decode.
In OpenASR it is packaged as an optional **punctuation capability pack**: an unpunctuated
family's finished transcript (e.g. Dolphin or FireRedASR2-AED) is passed through the classifier
once, and the predicted marks are re-inserted into the original characters. The stage is
auto-gated on the ASR model's catalog `emits_punctuation == false` and only runs when this pack
is installed, so punctuating families are never double-punctuated. Because the released label
set is Chinese-only, the integration is Chinese-only by construction (the architecture cannot
emit English half-width marks).
This OpenASR repo repackages the upstream weights as `.oasr` packs that run natively in the
OpenASR runtime -- no Python at inference, all decoding local. It ships in **fp16**.
**Not a standalone transcription model.** This pack cannot transcribe audio by itself; it is an
opt-in post-process applied to an unpunctuated ASR model's output.
**Verification status:** this is a brand-new catalog entry (no prior public listing). Local
verification covers exact per-token label parity against the upstream PyTorch forward across a
set of Chinese golden sentences (all four punctuation classes plus the no-mark class). This
pack is staged in a private repo, not yet publicly listed.
## βοΈ How this pack was made
Converted from [FireRedTeam/FireRedPunc](https://huggingface.co/FireRedTeam/FireRedPunc) with the OpenASR local-source
converter (`convert_local_qwen_forced_aligner_source_to_runtime_pack`, not yet wired
to a public `openasr model-pack import` subcommand -- the pack format and tensor
mapping are stable, but CLI/family-registry wiring is a separate stage).
The `.oasr` container is GGUF-backed; packs use zero-copy mmap weight binding.
## βοΈ License
This pack **inherits the upstream model's license: Apache-2.0**
([source](https://huggingface.co/FireRedTeam/FireRedPunc)). OpenASR packaging retains the upstream copyright;
the only modifications are format conversion and quantization.
## π Acknowledgements
This pack is a redistribution of **FireRedPunc**, created and open-sourced by **FireRedTeam**
([FireRedTeam/FireRedPunc](https://huggingface.co/FireRedTeam/FireRedPunc)). All credit for the
original architecture, training, and weights belongs to the authors; the license is inherited
from and identical to the upstream model (Apache-2.0). OpenASR only performs format conversion,
runtime verification, and local-inference adaptation.
## π Links
- π¦ **OpenASR** β <https://github.com/QuintinShaw/openasr>
- π **Website** β <https://openasr.org>
- π€ **Upstream model** β [FireRedTeam/FireRedPunc](https://huggingface.co/FireRedTeam/FireRedPunc)
|