/ Модель

Характеристики

Контекст
512 токенов
Архитектура
vision-encoder-decoder · dense
Базовая модель
trocr-base-handwritten-ru
Библиотека
transformers
Опубликована
31 мая 2026

trocr-rukopys

Описание изображенийИзображение → текст4 профессии

Модель на базе TrOCR распознаёт рукописные строки и фрагменты украинских архивных документов по изображениям.

41скачиваний за 30 дней1лайквеса обновлены30 июл 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Распознавание текста» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Hukyl разработала trocr-rukopys — модель распознавания текста на изображениях на базе TrOCR-base с архитектурой VisionEncoderDecoderModel, включающей энкодер ViT-B/16 и декодер TrOCR; в модели около 334 млн параметров. Она дообучена на наборе Rukopys для распознавания строк и областей с рукописным украинским текстом в архивных документах и рассчитана на работу после детектора макета страницы. В обучении также использовались печатный текст, аннотации и табличные области, но для этих классов приведено мало оценочных примеров.

На 1000 примерах валидации для рукописного текста указаны CER 0,1126 и WER 0,3036; авторы предупреждают, что разбиение выполнено по фрагментам, а не по страницам, поэтому оценка может быть оптимистичной. Модель хуже подходит для других языков и письменностей, современного цифрового текста и точной транскрипции без нормализации. Датасет Rukopys распространяется по лицензии CC BY 4.0; базовая модель не указывает явную лицензию, поэтому условия её использования и распространения следует проверить отдельно.

Сценарии применения

  • Распознавание рукописных строк в архивных документах на украинском языке
  • Преобразование вырезанных фрагментов рукописных документов в текст
  • Распознавание украинского текста после обнаружения областей на странице
  • Извлечение текста из рукописных архивных изображений

Ограничения

Модель ориентирована на архивный рукописный украинский текст; качество может снижаться на других языках и письменностях, а также на современном печатном тексте. Валидация по фрагментам, а не по страницам, может завышать качество; для аннотаций и таблиц оценочных примеров мало. Базовая модель не указывает явную лицензию.

Для каких профессий подходит4

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

trocr-rukopys

A TrOCR-base (VisionEncoderDecoderModel, ~334M params) line recognizer for handwritten Ukrainian document text, fine-tuned on the Rukopys dataset.

The training data included handwritten, printed, annotation and table region crops from Rukopys.

TL;DR

value
ArchitectureTrOCR-base (ViT-B/16 encoder + TrOCR decoder), VisionEncoderDecoderModel
Parameters~334M
Init fromkazars24/trocr-base-handwritten-ru
Handleshandwritten, printed, table, annotation
Gold-val CER / WER0.1146 / 0.3089
Inputa single cropped text region/line (RGB)
Outputthe transcribed string (metric-normalized character set)

Intended use

Recognizing cropped line/region images from handwritten Ukrainian documents, downstream of a layout detector.

For a stronger recognizer from a later, larger training generation, see Hukyl/trocr-large-rukopys.

How to use

from PIL import Image
from transformers import VisionEncoderDecoderModel, TrOCRProcessor

repo = "Hukyl/trocr-rukopys"
processor = TrOCRProcessor.from_pretrained(repo)
model = VisionEncoderDecoderModel.from_pretrained(repo).eval()

crop = Image.open("region_crop.png").convert("RGB")          # one detected line/region
pixel_values = processor(images=crop, return_tensors="pt").pixel_values
generated = model.generate(pixel_values, max_new_tokens=256)  # greedy
text = processor.batch_decode(generated, skip_special_tokens=True)[0]
print(text)

Lineage & training curriculum

Two-stage silver→gold fine-tuning from a Russian handwriting base. Optimizer: AdamW via the 🤗 Seq2SeqTrainer, linear LR decay, max_target_length 256, online augmentation, seed 42.

  1. Base — kazars24/trocr-base-handwritten-ru: microsoft/trocr-base-handwritten fine-tuned for Russian handwriting.
  2. Silver pretrain (5 ep): partial-freeze pretrain on the Rukopys silver split (~119.8k auto-labeled crops).
  3. Gold fine-tune (up to 15 ep, early stopping with patience 3): full encoder + decoder unfreeze on the human-labeled gold train split, 19,069 train / 3,366 val crops, stratified at crop level.

Hyperparameters (as launched)

hyperparametervalue
epochs (max)15 (early stopping, patience 3)
batch size32
learning rate1e-4
warmup ratio0.1
max target length256 tokens
optimizer / scheduleAdamW, linear decay
online augmentationon (default profile)
evalgreedy (num_beams=1), eval batch 64
precision / devicebf16, CUDA
seed42

The full recorded recipe ships in this repo's training_meta.json.

Online data augmentation

Online augmentation was applied during training. Only training crops were augmented (no augmented validation was measured).

Each crop was transformed once per epoch by one geometric + one or two photometric operations at random. Each class received a separate augmentation profile that was selected to minimize the distribution shift.

poolhandwritten / annotationprinted
geometric (pick 1)margin pad/trim, rotation ±1–5°, elastic distortion, baseline warpmargin pad/trim, rotation ±1–3°
photometric (pick 1–2)paper colour shift, Gaussian noise, JPEG recompression (q30–65), contrast/gamma, morphological oppaper colour shift, Gaussian noise, JPEG recompression (q40–70), contrast/gamma, morphological op

These simulate scanner/paper variation, ink thinning/bleed, and natural handwriting deformation, widening the range of appearances beyond the raw training crops.

Results

Protocol: greedy decode, max_new_tokens=512, 1000-sample draw from the gold validation split, seed 42. Labels are metric-normalized (LaTeX → Unicode, table PSV canonicalized) so CER/WER reflect the scored character set.

Overall

metricvalue
CER0.1146
WER0.3089
exact-match accuracy0.3830
n_samples1000

Per class

classCERWERaccuracyn
handwritten0.11260.30360.3841958
printed0.09870.28260.416712
table0.19150.50000.50002
annotation0.42780.92680.321428

We also acknowledge that printed/table/annotation n is quite small, so measuring CER against them is quite noisy.

Limitations & biases

  • Handwritten Ukrainian archival document material only; expect degradation on other scripts, languages, or modern born-digital text.
  • The character set and normalization are tuned to the document-OCR metric — outputs are normalized text, not faithful transcription.
  • The train/val split is stratified at crop level, not page level — crops from the same page (and writer) appear on both sides, so the reported val CER is optimistic compared to a page-level protocol.
  • annotation and table classes are weak.
  • Single seed and validation split — no across-run variance estimate.

Training data & attribution

datasetsourcelicenserole
RukopysUkrainianCatholicUniversity/rukopysCC BY 4.0silver pretrain (auto-labeled) + gold fine-tune

The base model kazars24/trocr-base-handwritten-ru declares no explicit license — verify upstream terms before redistribution.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
VisionEncoderDecoderModel
Ревизия весов
dab1d38

0 моделей