/ Модель

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

Контекст
8 192 токена
Параметры
395 млн
Лицензия
Apache 2.0
Архитектура
modernbert · dense
Базовая модель
extract-base
Библиотека
solvi
Опубликована
26 сен 2026

extract-receipts

Ответы на вопросыТекст → текст5 профессий

Модель Solvi на базе ModernBERT извлекает суммы, налоги, даты и другие поля из OCR-текста чеков по текстовому описанию.

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

Бенчмарки

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

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

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

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

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

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

solvi-ai/extract-receipts — англоязычная модель Solvi на базе ModernBERT-large, дообученная на чеках для извлечения полей по текстовому описанию. Она принимает текст OCR и возвращает точный фрагмент текста с границами и оценкой уверенности либо сообщает, что поле отсутствует; извлечение выполняется через библиотеку solvi. Модель обучали два эпоха на 800 чеках CORD v2 и поддерживает поля вроде позиций товаров, цен, количества, налогов, скидок, итоговой суммы, наличных и сдачи. Размер — 394,7 млн параметров, контекст — до 8192 токенов; доступны веса Safetensors и ONNX, включая запуск на CPU и WebGPU.

Модель особенно хорошо извлекает суммы, налоги, наличные, сдачу и даты: в описанной оценке на тесте CORD точность по указанным группам вопросов составила 97,3%. Для названий магазинов она уступает базовой модели, поскольку CORD не содержит таких меток. Модель рассчитана на английские и индонезийского типа чеки в виде OCR-текста; другие форматы чеков проверены ограниченно. Лицензия Apache-2.0.

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

  • извлечение итоговой суммы из текста чека
  • поиск суммы налога, подытога и скидки в чеке
  • определение суммы наличных и сдачи
  • извлечение товаров, цен и количества из чека
  • поиск даты покупки в OCR-тексте чека

Ограничения

Лучше работает с суммами и датами; качество извлечения названий магазинов снизилось относительно базовой модели. Поддерживаются английские и индонезийского типа чеки из OCR-текста, а макеты, заметно отличающиеся от CORD, не проверены.

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

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

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

Также подходит для

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

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

Открыть на Hugging Face

solvi extract-receipts

solvi-ai/extract-base fine-tuned on receipts — an example of adapting the general field-by-description extractor to one document type. Use it with solvi: each field comes back as the exact span of the OCR text (or "absent"), and plain Python rules decide.

from solvi.extract_long import LongSpanExtractor
ex = LongSpanExtractor.load("solvi-ai/extract-receipts")      # pip install "solvi[model]"
total = ex.field("total", "the total amount to pay")         # an @extract part for a solvi Catalog
print(total(receipt_text))                                    # Quote(value, start, end, confidence)

Per-field thresholds for total, subtotal, tax, cash and change (with the descriptions below) are stored in solvi_extract.json: "the total amount to pay", "the subtotal before tax and service", "the tax amount", "the cash amount given by the customer", "the change returned to the customer".

Training

Two epochs on the 800 training receipts of CORD v2 (CC BY 4.0): all 22 field types with written descriptions (items, prices, quantities, subtotal, service, tax, discount, total, cash, change, card and e-money payments, item counts) plus the five fields above. No SROIE data was used.

Evaluation (one seed)

testresult
CORD test (100 receipts): typed questions via solvi rules — total band, tax charged, paid in cash, change correct97.3%; ECE 0.011; 98.6% of questions answered at ≥ 99% precision
SROIE test (361 receipts, never trained): company / date / total by description34% / 87% / 68%

It is strong on amounts (total, tax, cash, change) and dates. It lost the base model's zero-shot skill on shop names (company 71% → 34%) because CORD does not label shop names — use solvi-ai/extract-base or fine-tune on your own receipts (~25–100 labeled) for fields CORD lacks.

Limitations

English/Indonesian-style receipts from OCR text; layouts far from CORD are untested. Confidences are span scores — calibrate per question with System.calibrate.

ONNX (browser and CPU)

onnx/model_fp16.onnx — the encoder and span head in one graph (inputs input_ids, attention_mask int64 [batch, length] → logits float [batch, length, 2]: start and end scores), fp16 weights with float32 inputs and outputs. On 175 test fields it returns exactly the same spans as the PyTorch model. Runs with onnxruntime (CPU) and onnxruntime-web (WebGPU); windowing and span decoding follow LongSpanExtractor.predict. Export your own fine-tuned model with tools/export_onnx.py in the solvi repo. (Dynamic int8 quantization is not provided: it changed half of the spans.)

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

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

GPU в ailist

Универсальный рантайм · solvi · question-answering

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

Подбираем GPU…

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

0 моделей