--- license: apache-2.0 base_model: - FireRedTeam/FireRedPunc base_model_relation: quantized pipeline_tag: token-classification library_name: onnx language: - zh - en tags: - punctuation - onnx - int8 - bert - asr - 42model --- # FireRedPunc · Fully Local Chinese-English Automatic Punctuation [![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0) [![Runs Local](https://img.shields.io/badge/Runs-100%25_Local-brightgreen.svg)](https://42model.com) [![Platform](https://img.shields.io/badge/Platform-macOS_|_Windows_|_Linux-lightgrey.svg)](https://42model.com) [![ModelScope](https://img.shields.io/badge/ModelScope-42ailab-624AFF.svg)](https://modelscope.cn/models/42ailab/FireRedPunc-ONNX) **English** | [简体中文](./README_zh.md) · Also on [ModelScope](https://modelscope.cn/models/42ailab/FireRedPunc-ONNX) · [42ailab.com](https://42ailab.com) Give it **unpunctuated** speech-transcription text and this model adds the punctuation automatically (Chinese comma, period, question mark and exclamation mark; English `, . ? !` plus sentence capitalization) — turning the machine's undivided wall of text into readable sentences. All on your own computer. **No cloud, free, private.** > **The model was built by [Xiaohongshu's FireRedTeam](https://github.com/FireRedTeam/FireRedASR2S) and released under Apache-2.0** (FireRedPunc, a punctuation prediction model based on Chinese BERT). **This repo is not a new model**: the capability belongs to FireRedTeam; we (42ailab) **converted its original weights into an offline-runnable quantized ONNX file** (int8), verified the quality, and included it in the [42model](https://42model.com) engine's premium transcription tier — what we did was make it work out of the box on your computer. ## 1. The problem it solves Text coming out of speech recognition (ASR) often arrives **without punctuation** — one long stretch with no commas or periods, tiring to read and awkward for subtitles, summarization and search. Adding punctuation automatically is the key step that turns "machine text you can decipher" into "human text you can read", but good Chinese punctuation models usually face two hurdles: - **Mixed Chinese and English**: Chinese uses full-width `,。?!` while English uses half-width `, . ? !` with sentence-initial capitalization — different rules, and many models only handle one side; - **Whether to go to the cloud**: transcripts often carry privacy concerns (meetings, interviews, memos), and sending them to someone else's server a second time just for punctuation is uncomfortable. This model handles both: **accurate in Chinese and English**, and **fully local**. In the all-in-one premium transcription tier, punctuation is added right after transcription, without anything leaving your computer. ## 2. How it works **The capability comes from FireRedTeam's FireRedPunc** — a **sequence labeling** model built on **Chinese BERT** (a chinese-lert-base backbone): it reads the transcript token by token and decides whether punctuation belongs after each one, and which mark. It is the punctuation module of the FireRedASR2 family's all-in-one ASR system. **What we did**: converted FireRedTeam's open PyTorch weights into **a single int8-quantized ONNX file** (about 102 MB, down sharply from the original 388 MB) so it **runs smoothly on an ordinary CPU** with no GPU needed; **verified the output end to end inside the 42model engine** (see below); the license **remains upstream Apache-2.0, unchanged**. It runs locally across macOS / Windows / Linux. ## 3. How well it performs **For the full evaluation of the model itself, refer to FireRedTeam's official report** ([technical report](https://github.com/FireRedTeam/FireRedASR2S)). Their data shows FireRedPunc leading on Chinese-English punctuation prediction: | FireRedTeam official report | FireRedPunc | |---|---| | Average Chinese-English punctuation F1 (higher is better) | **78.90%**, ahead of FunASR-Punc (62.77%) | **Our own verification** (42model engine, CPU only): | What we verified | Result | |---|---| | Quantization fidelity (int8 ONNX vs the official full-precision PyTorch, value by value on the same batch of text) | Output is **character-for-character identical** (Chinese, English and mixed Chinese-English samples all passed) | | Hardware | No GPU required; an ordinary CPU suffices | In other words: once this local build is wired into our engine, punctuation output is **character-for-character identical** to the upstream full-precision model — quantization introduced no visible quality loss. ## 4. Limitations and what's next - **Punctuation is a prediction, not a rule**: the model gives the most likely segmentation based on corpus statistics, and occasionally differs from human habit (especially with colloquial speech, very long sentences, or dense technical terminology); the recognized text itself still comes from the main transcription, with punctuation layered on top. - **Designed for transcription text**: the input is continuous text from ASR, not arbitrary written prose; already-punctuated or formatted text is not what it is for. - **Used together with the premium transcription tier**: this model is not downloaded and used on its own — it is part of [42model](https://42model.com)'s premium **Smart Transcription** tier, adding punctuation automatically after transcription (toggleable in settings). ## 5. How to download and use it This model is packaged for [42model](https://42model.com) and comes with the premium transcription tier: **Desktop app**: open **Model Library → Smart Transcription**, download the premium **FireRedASR2-AED** (with punctuation), then enable **Punctuation** in the transcription parameters. ## Files and license | File | Role | |---|---| | `punc.int8.onnx` | Punctuation prediction model (int8-quantized BERT) | | `tokenizer.json` | Chinese BERT tokenizer (WordPiece) | | `out_dict` | Punctuation class table (none / `,。?!`, five classes) | Per-file sha256 values are on the repository Files page and can be verified independently. **License**: the model itself is FireRedPunc, © Xiaohongshu FireRedTeam, **Apache-2.0** (official sources: [GitHub](https://github.com/FireRedTeam/FireRedASR2S) · [ModelScope](https://modelscope.cn/models/xukaituo/FireRedPunc)). This repo is an int8 ONNX local build converted from it and is likewise governed by [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0). By using it you agree to the upstream license terms. ## Citation For **the model itself**, please cite upstream FireRedTeam: ```bibtex @article{xu2026fireredasr2s, title={FireRedASR2S: A State-of-the-Art Industrial-Grade All-in-One Automatic Speech Recognition System}, author={Xu, Kaituo and Jia, Yan and Huang, Kai and Chen, Junjie and Li, Wenpeng and Liu, Kun and Xie, Feng-Long and Tang, Xu and Hu, Yao}, journal={arXiv preprint arXiv:2603.10420}, year={2026} } ``` If **this repo's int8 ONNX local packaging** was useful to you, you may additionally cite: ```bibtex @misc{yang2026fireredpunconnx, title = {FireRedPunc-ONNX: A Local Quantized Build of FireRedTeam's FireRedPunc}, author = {Yang, Zhiping}, year = {2026}, howpublished = {\url{https://huggingface.co/42ailab/FireRedPunc-ONNX}}, organization = {42ailab}, note = {int8 ONNX quantization and local deployment packaging; the model itself is FireRedTeam's FireRedPunc (Apache-2.0). Contact: contact@42ailab.com} } ``` Contact us: **contact@42ailab.com** ## About us **[42ailab](https://42ailab.com)** — grown out of the 42ailab team founded in 2023, dedicated to advancing the deep integration of artificial and human intelligence, and scientific innovation, on a foundation of cognitive science. **[42model](https://42model.com)** — "your AI model engine", built by 42ailab, dedicated to bringing AI capabilities back onto your own device to run locally: translation, transcription, recognition, chat and coding, all free and private, across macOS / Windows / Linux; with optional cloud compute for fine-tuning your own model, which then comes back to run privately on your machine.