The model corrects spelling errors and typos by bringing all the words in the text to the norm of the Russian language.
The proofreader was trained based on the
FredT5-large
model.
An extensive dataset with “artificial” errors was taken as a training corpus: the corpus was assembled on the basis of the Russian-language Wikipedia and transcripts of Russian-language videos, then typos and spelling errors were automatically introduced into it using the functionality of the
SAGE library
.
*Examples are given with default generation parameters
Input
Output
Думю ешцъа лет череа 10 ретроспективно просматривотьэ то будкетцц мне невероя тна ин те р но
Думаю еще лет через 10 ретроспективно просматривать это будет мне невероятно интересно. Думаю это лет через 10 ретроспективно просматривать это будет мне невероятно интересно.
Основая цель мероприятия - практическая отработка навыков по оказанию помощи гражданам, попавшим в ДТП, а также повышение и совершенствование уровня профессиональной подготовки сотрудников МЧС при проведении аварийно-спасательных работ по ликвидации последствий дорожно-транспортных проишествий, сокращение временных показателей реагирования.
Основная цель мероприятия - практическая отработка навыков по оказанию помощи гражданам, попавшим в ДТП, а также повышение и совершенствование уровня профессиональной подготовки сотрудников МЧС при проведении аварийно-спасательных работ по ликвидации последствий дорожно-транспортных происшествий, сокращение временных показателей реагирования. Основная цель мероприятия
прийдя в МГТУ я был удивлен никого необноружив там…
прийдя в МГТУ я был удивлен никого не обнаружив там.. «при
Metrics
Quality
Below are automatic metrics for determining the correctness of the spell checkers.
We compare our solution with both open automatic spell checkers and the ChatGPT family of models on all four available datasets:
RUSpellRU
: texts collected from (
LiveJournal
), with manually corrected typos and errors;
MultidomainGold
: examples from 7 text sources, including the open web, news, social media, reviews, subtitles, policy documents and literary works;
MedSpellChecker
: texts with errors from medical anamnesis;
GitHubTypoCorpusRu
: spelling errors and typos in commits from
GitHub
;
RUSpellRU
Model
Precision
Recall
F1
FredT5-large-spell
58.5
42.4
49.2
ChatGPT gpt-3.5-turbo-0301
55.8
75.3
64.1
ChatGPT gpt-4-0314
57.0
75.9
63.9
ChatGPT text-davinci-003
55.9
75.3
64.2
Yandex.Speller
83.0
59.8
69.5
JamSpell
42.1
32.8
36.9
HunSpell
31.3
34.9
33.0
MultidomainGold
Model
Precision
Recall
F1
FredT5-large-spell
42.5
42.0
42.2
ChatGPT gpt-3.5-turbo-0301
33.8
72.1
46.0
ChatGPT gpt-4-0314
34.0
73.2
46.4
ChatGPT text-davinci-003
33.6
72.0
45.8
Yandex.Speller
52.9
51.4
52.2
JamSpell
25.7
30.6
28.0
HunSpell
16.2
40.1
23.0
MedSpellChecker
Model
Precision
Recall
F1
FredT5-large-spell
37.2
51.7
43.3
ChatGPT gpt-3.5-turbo-0301
53.2
67.6
59.6
ChatGPT gpt-4-0314
54.2
69.4
60.9
ChatGPT text-davinci-003
47.8
68.4
56.3
Yandex.Speller
80.6
47.8
60.0
JamSpell
24.6
29.7
26.9
HunSpell
10.3
40.2
16.4
GitHubTypoCorpusRu
Model
Precision
Recall
F1
FredT5-large-spell
52.7
41.7
46.6
ChatGPT gpt-3.5-turbo-0301
43.8
57.0
49.6
ChatGPT gpt-4-0314
45.2
58.2
51.0
ChatGPT text-davinci-003
46.5
58.1
51.7
Yandex.Speller
67.7
37.5
48.3
JamSpell
49.5
29.9
37.3
HunSpell
28.5
30.7
29.6
How to use
from transformers import T5ForConditionalGeneration, AutoTokenizer
path_to_model = "ai-forever/FRED-T5-large-spell"
model = T5ForConditionalGeneration.from_pretrained(path_to_model)
tokenizer = AutoTokenizer.from_pretrained(path_to_model, eos_token="</s>")
prefix = "Исправь: "
sentence = "прийдя в МГТУ я был удивлен никого необноружив там…"
sentence = prefix + sentence
encodings = tokenizer(sentence, return_tensors="pt")
generated_tokens = model.generate(
**encodings, eos_token_id=tokenizer.eos_token_id, early_stopping=True)
answer = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)
print(answer)
# ["прийдя в МГТУ я был удивлен никого не обнаружив там.. «при"]
Model
FRED-T5-large
, on the basis of which our solution is made, and its source code are supplied under the APACHE-2.0 license.
Our solution also comes with MIT license.
FRED-T5-large-spell huggingface.co is an AI model on huggingface.co that provides FRED-T5-large-spell's model effect (), which can be used instantly with this ai-forever FRED-T5-large-spell model. huggingface.co supports a free trial of the FRED-T5-large-spell model, and also provides paid use of the FRED-T5-large-spell. Support call FRED-T5-large-spell model through api, including Node.js, Python, http.
FRED-T5-large-spell huggingface.co is an online trial and call api platform, which integrates FRED-T5-large-spell's modeling effects, including api services, and provides a free online trial of FRED-T5-large-spell, you can try FRED-T5-large-spell online for free by clicking the link below.
ai-forever FRED-T5-large-spell online free url in huggingface.co:
FRED-T5-large-spell is an open source model from GitHub that offers a free installation service, and any user can find FRED-T5-large-spell on GitHub to install. At the same time, huggingface.co provides the effect of FRED-T5-large-spell install, users can directly use FRED-T5-large-spell installed effect in huggingface.co for debugging and trial. It also supports api for free installation.
FRED-T5-large-spell install url in huggingface.co: