/ Модель

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

Контекст
262 144 токена
Параметры
3,7 млрд
Размер весов
8 ГБ
Лицензия
Apache 2.0
Архитектура
qwen3 · dense
Базовая модель
RuadaptQwen3-4B-Instruct
Библиотека
transformers
Опубликована
31 мая 2026

Spell-Corrector-RU-4B

Генерация текстаТекст → текст5 профессий

Русскоязычная модель на базе Qwen3 для исправления орфографии, пунктуации и регистра в текстах.

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

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Spell-Corrector-RU-4B — русскоязычная модель для исправления орфографии, пунктуации и регистра текста, разработанная melsmm. Это дообученная с помощью LoRA модель RefalMachine/RuadaptQwen3-4B-Instruct на архитектуре Qwen3; адаптер объединён с базовой моделью. Модель содержит 3,7 млрд параметров, принимает текст и выдаёт его исправленную версию. Для работы используется библиотека Transformers; заявленная длина контекста — 262144 токена.

Модель предназначена для корректуры русскоязычных текстов в пользовательских приложениях и производственных системах. Она обучалась на синтетических и реальных парах ошибок и исправлений; автор рекомендует vLLM для развёртывания через OpenAI-совместимый API. На приведённых бенчмарках качество различается по доменам: модель уступает SAGE по орфографии в нескольких наборах, а на технических и специализированных текстах точность может снижаться. Лицензия — Apache-2.0.

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

  • исправление опечаток и орфографических ошибок в русском тексте
  • восстановление пунктуации в черновиках
  • исправление заглавных и строчных букв и буквы «ё»
  • автоматическая корректура пользовательских сообщений
  • пакетная очистка русскоязычных текстовых данных

Ограничения

В бенчмарках модель уступает SAGE по орфографии на нескольких доменах; качество также может снижаться на узкоспециализированных текстах. Она предназначена для русского языка.

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

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

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

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

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

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

Открыть на Hugging Face

Spell-Corrector-RU-4B

Spell-Corrector-RU-4B — языковая модель для автоматического исправления орфографических, пунктуационных и регистровых ошибок в русскоязычных текстах.

Модель дообучена на базе RefalMachine/RuadaptQwen3-4B-Instruct (адаптированная под русский язык версия Qwen/Qwen3-4B-Instruct-2507) методом LoRA в фреймворке LLaMA-Factory. LoRA-адаптер уже смержен с базовой моделью — её можно использовать напрямую.

📦 Код, ноутбуки и полное описание проекта: github.com/melsmm/llm-spell-corrector 📚 Датасеты для обучения: melsmm/spell-correction-ru

Для чего модель

Модель принимает текст с ошибками и возвращает его исправленную версию. Она умеет:

  • 🔤 исправлять орфографические ошибки и опечатки;
  • ❓ восстанавливать и исправлять пунктуацию;
  • 🔠 восстанавливать регистр букв (заглавные/строчные) и букву «ё».

Основное преимущество перед существующими решениями (например, SAGE на архитектуре T5) — высокая скорость инференса (через vLLM, ~в 6 раз быстрее), простота внедрения в продакшен через OpenAI-совместимый API и лёгкость дообучения под новые домены с помощью LoRA.

На чём обучалась

Обучение проходило в две стадии:

СтадияДатасетОбъёмОписание
Stage 1synth_spell_correction_1m~1 млнСинтетические ошибки, внесённые в чистые корпусы (nerus, gazeta, wikipedia) с помощью SAGE (SBSC, CharAug, WordAug) и собственного алгоритма пунктуационной порчи.
Stage 2spell_correction_30k~30 тыс.Объединение готовых пар «ошибка → исправление» из открытых датасетов (RUSpellRU, MultidomainGold, GEC).

Сначала модель учится на большом объёме разнообразных синтетических ошибок, затем «дошлифовывается» на меньшем, но более качественном наборе реальных пар. Оба датасета доступны в репозитории melsmm/spell-correction-ru.

Гиперпараметры LoRA: rank=32, alpha=64, dropout=0, bf16, cutoff length=4000.

Использование

Промпт

Модель ожидает следующий формат запроса:

Исходный текст:
{текст с ошибками}

Отредактируй исходный текст, исправив ошибки.

Рекомендуемые параметры генерации: temperature=0.1, top_p=0.7.

Через transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "melsmm/Spell-Corrector-RU-4B"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype="auto", device_map="auto")

text = "привет как дила, что делаеш севодня"
prompt = f"Исходный текст:\n{text}\n\nОтредактируй исходный текст, исправив ошибки."

messages = [{"role": "user", "content": prompt}]
inputs = tokenizer.apply_chat_template(
    messages, add_generation_prompt=True, return_tensors="pt"
).to(model.device)

outputs = model.generate(inputs, max_new_tokens=512, temperature=0.1, top_p=0.7, do_sample=True)
print(tokenizer.decode(outputs[0][inputs.shape[1]:], skip_special_tokens=True))

Через vLLM (рекомендуется для продакшена)

Запуск OpenAI-совместимого сервера:

vllm serve melsmm/Spell-Corrector-RU-4B \
    --gpu-memory-utilization 0.95 \
    --host 0.0.0.0 \
    --port 9900 \
    --served-model-name spell_correction \
    --max-model-len 4096

Обращение к серверу:

from openai import OpenAI

client = OpenAI(base_url="http://localhost:9900/v1", api_key="EMPTY")

text = "привет как дила"
resp = client.chat.completions.create(
    model="spell_correction",
    messages=[{"role": "user", "content":
        f"Исходный текст:\n{text}\n\nОтредактируй исходный текст, исправив ошибки."}],
    temperature=0.1,
    top_p=0.7,
)
print(resp.choices[0].message.content)

Качество

Оценка на бенчмарке ai-forever/spellcheck_punctuation_benchmark (F1 по орфографии / пунктуации / регистру):

RUSpellRU

ModelF1 (spell)F1 (punc)F1 (case)
Spell-Corrector-RU-4B64.784.594.2
sage-fredt5-large84.586.894.7
gpt-464.083.290.9
gpt-3.5-turbo42.773.779.0

MultidomainGold

ModelF1 (spell)F1 (punc)F1 (case)
Spell-Corrector-RU-4B62.666.580.0
sage-fredt5-large77.667.779.3
gpt-437.056.060.0
gpt-3.5-turbo27.136.249.1

MedSpellchecker

ModelF1 (spell)F1 (punc)F1 (case)
Spell-Corrector-RU-4B42.870.476.3
sage-fredt5-large72.370.382.1
gpt-449.671.967.1
gpt-3.5-turbo22.359.832.3

GitHubTypoCorpusRu

ModelF1 (spell)F1 (punc)F1 (case)
Spell-Corrector-RU-4B49.734.845.8
sage-fredt5-large59.542.642.7
gpt-435.738.230.2
gpt-3.5-turbo29.428.725.3

Полные таблицы (Precision / Recall / F1 + сравнение со Stage 1) — в репозитории проекта.

Скорость инференса

На RUSpellRU (2008 примеров) через vLLM: 45 с (0.022 с/пример) против 284 с (0.141 с/пример) у sage-fredt5-large — ~в 6 раз быстрее.

Ограничения

  • Модель уступает SAGE по орфографии на ряде доменов, но конкурентна по пунктуации и регистру.
  • Качество может снижаться на узкоспециализированных доменах (например, медицина) — там рекомендуется дообучение под домен с помощью LoRA.
  • Модель работает с русским языком; для других языков не предназначена.

Ссылки

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей