File size: 3,263 Bytes
8cd67a9 | 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 | ---
license: mit
language:
- ru
library_name: onnxruntime
pipeline_tag: token-classification
base_model: RUPunct/RUPunct_big
tags:
- punctuation
- russian
- onnx
- token-classification
---
# RUPunct_big → ONNX (для «Navigator Speech to Text»)
Готовая к инференсу **ONNX-версия** русской пунктуационной модели
[`RUPunct/RUPunct_big`](https://huggingface.co/RUPunct/RUPunct_big)
(лицензия MIT). Модель расставляет запятые, точки, вопросительные и
восклицательные знаки, тире, двоеточия, многоточия и заглавные буквы.
Используется приложением **Navigator Speech to Text** для локальной (офлайн)
расстановки знаков на CPU через `onnxruntime` — без PyTorch и `transformers`.
## Файлы
| Файл | Назначение |
|---|---|
| `model.onnx` | граф token-classification (opset 17), входы `input_ids`, `attention_mask`, `token_type_ids`; выход `logits` (~0.7 ГБ) |
| `tokenizer.json` | быстрый токенизатор (`tokenizers`), `strip_accents=False`, `add_prefix_space=True` |
| `tokenizer_config.json` | конфиг токенизатора |
| `id2label.json` | индекс метки → имя метки |
Метки имеют вид `LOWER_*` / `UPPER_*` / `UPPER_TOTAL_*` с суффиксами
`O, PERIOD, COMMA, QUESTION, TIRE, DVOETOCHIE, VOSKL, PERIODCOMMA, DEFIS,
MNOGOTOCHIE, QUESTIONVOSKL`.
## Как это устроено
Экспорт выполняет `tools/export_rupunct_onnx.py` из исходного проекта
(нужны `torch` и `transformers`, запускается один раз на сборочной машине):
```bash
python export_rupunct_onnx.py --model RUPunct/RUPunct_big --output other/punctuation-onnx
```
Приложение скачивает эти 4 файла с базового URL
(`https://huggingface.co/IcPlus/rupunct-onnx/resolve/main`) с поддержкой
докачки по HTTP `Range` и держит их в локальном кэше.
## Постобработка (правила приложения)
Поверх выхода модели в приложении применяются правила на русском языке:
замена лишних тире на запятую (кроме «определительного» тире перед
«это / значит / вот»), строчная буква после тире и после `:`/`;`,
заглавная в начале предложения и подавление ошибочной заглавной у служебных
слов. Они живут в `tools/punctuate_worker.py` и к этой модели отношения не имеют.
## Атрибуция и лицензия
- Базовая модель: **RUPunct/RUPunct_big**, авторы — Russian Punctuation Research.
- Лицензия базы и этого экспорта: **MIT**.
- Это производная (конвертация формата), а не переобучение: веса не менялись.
|