Upload README.md with huggingface_hub
Browse files
README.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
language:
|
| 4 |
+
- ru
|
| 5 |
+
library_name: onnxruntime
|
| 6 |
+
pipeline_tag: token-classification
|
| 7 |
+
base_model: RUPunct/RUPunct_big
|
| 8 |
+
tags:
|
| 9 |
+
- punctuation
|
| 10 |
+
- russian
|
| 11 |
+
- onnx
|
| 12 |
+
- token-classification
|
| 13 |
+
---
|
| 14 |
+
|
| 15 |
+
# RUPunct_big → ONNX (для «Navigator Speech to Text»)
|
| 16 |
+
|
| 17 |
+
Готовая к инференсу **ONNX-версия** русской пунктуационной модели
|
| 18 |
+
[`RUPunct/RUPunct_big`](https://huggingface.co/RUPunct/RUPunct_big)
|
| 19 |
+
(лицензия MIT). Модель расставляет запятые, точки, вопросительные и
|
| 20 |
+
восклицательные знаки, тире, двоеточия, многоточия и заглавные буквы.
|
| 21 |
+
|
| 22 |
+
Используется приложением **Navigator Speech to Text** для локальной (офлайн)
|
| 23 |
+
расстановки знаков на CPU через `onnxruntime` — без PyTorch и `transformers`.
|
| 24 |
+
|
| 25 |
+
## Файлы
|
| 26 |
+
|
| 27 |
+
| Файл | Назначение |
|
| 28 |
+
|---|---|
|
| 29 |
+
| `model.onnx` | граф token-classification (opset 17), входы `input_ids`, `attention_mask`, `token_type_ids`; выход `logits` (~0.7 ГБ) |
|
| 30 |
+
| `tokenizer.json` | быстрый токенизатор (`tokenizers`), `strip_accents=False`, `add_prefix_space=True` |
|
| 31 |
+
| `tokenizer_config.json` | конфиг токенизатора |
|
| 32 |
+
| `id2label.json` | индекс метки → имя метки |
|
| 33 |
+
|
| 34 |
+
Метки имеют вид `LOWER_*` / `UPPER_*` / `UPPER_TOTAL_*` с суффиксами
|
| 35 |
+
`O, PERIOD, COMMA, QUESTION, TIRE, DVOETOCHIE, VOSKL, PERIODCOMMA, DEFIS,
|
| 36 |
+
MNOGOTOCHIE, QUESTIONVOSKL`.
|
| 37 |
+
|
| 38 |
+
## Как это устроено
|
| 39 |
+
|
| 40 |
+
Экспорт выполняет `tools/export_rupunct_onnx.py` из исходного проекта
|
| 41 |
+
(нужны `torch` и `transformers`, запускается один раз на сборочной машине):
|
| 42 |
+
|
| 43 |
+
```bash
|
| 44 |
+
python export_rupunct_onnx.py --model RUPunct/RUPunct_big --output other/punctuation-onnx
|
| 45 |
+
```
|
| 46 |
+
|
| 47 |
+
Приложение скачивает эти 4 файла с базового URL
|
| 48 |
+
(`https://huggingface.co/IcPlus/rupunct-onnx/resolve/main`) с поддержкой
|
| 49 |
+
докачки по HTTP `Range` и держит их в локальном кэше.
|
| 50 |
+
|
| 51 |
+
## Постобработка (правила приложения)
|
| 52 |
+
|
| 53 |
+
Поверх выхода модели в приложении применяются правила на русском языке:
|
| 54 |
+
замена лишних тире на запятую (кроме «определительного» тире перед
|
| 55 |
+
«это / значит / вот»), строчная буква после тире и после `:`/`;`,
|
| 56 |
+
заглавная в начале предложения и подавление ошибочной заглавной у служебных
|
| 57 |
+
слов. Они живут в `tools/punctuate_worker.py` и к этой модели отношения не имеют.
|
| 58 |
+
|
| 59 |
+
## Атрибуция и лицензия
|
| 60 |
+
|
| 61 |
+
- Базовая модель: **RUPunct/RUPunct_big**, авторы — Russian Punctuation Research.
|
| 62 |
+
- Лицензия базы и этого экспорта: **MIT**.
|
| 63 |
+
- Это производная (конвертация формата), а не переобучение: веса не менялись.
|