Грифель

Почему нейросеть пишет русский текст с ошибками

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

Коротко: что делать

  1. 1Напишите каждую надпись отдельной строкой — заголовок, выгоду, условие
  2. 2Пишите их ровно так, как они должны выйти на картинке, вплоть до буквы
  3. 3Название товара тоже отправляйте надписью, а не только описанием
  4. 4Не рассчитывайте, что модель «поймёт и напишет похожее» — середины между «продиктовали» и «не будет на картинке» нет
  5. 5Берите разрешение 2K или выше: на дешёвом уровне русский текст выходит через раз

Как выглядела ошибка

На карточке повербанка выходило «Повегбанк» вместо «Повербанк» и «Заrиапет iPhone 4 paxs» вместо «Заряжает iPhone 4 раза». Латинские буквы вперемешку с кириллицей, пропущенные знаки, придуманные слова.

Естественный вывод — модели плохо знают русский. Мы проверили его на одном задании через четыре модели, и вывод не подтвердился: все четыре написали русский текст без единой ошибки.

Разгадка нашлась в том же прогоне. На картинке было два текста: подпись, переданная дословно, — верная, и заголовок, который модель сочиняла по смыслу описания, — с ошибками. Одна картинка, две надписи, разный результат.

Почему сочинённый текст ломается

Нейросеть не набирает буквы, а рисует изображение целиком, включая надписи. Когда строка дана дословно, у неё есть образец: она воспроизводит форму знаков.

Когда образца нет, ей приходится придумать слово по смыслу и нарисовать его по памяти — а память эта в основном латинская. Отсюда и латинская «p» вместо «р», «x» вместо «х»: буквы похожи по форме, и модель подставляет привычную.

Для покупателя это выглядит не как особенность технологии, а как опечатка продавца.

Что делаем мы, чтобы этого не было

В задание модели уходит жёсткое правило: на картинке может быть только то, что перечислено списком надписей, и ничего кроме. Либо строка есть в списке и воспроизводится побуквенно, либо её на картинке нет.

Для строк с кириллицей добавляется отдельное указание: текст русский, писать кириллицей, латинские двойники не подставлять.

Поэтому поле надписей у нас многострочное — по строке на надпись. Так продавец и думает о карточке: заголовок, под ним выгода, внизу условие.

Когда надпись лучше набрать самому

Если текст важен — например, это цена или состав, — надёжнее набрать его в редакторе поверх готовой картинки. Буквы будут ровными, шрифт свой, а поправить слово можно не переделывая изображение.

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

Что забрать с собой

  • Ломается только тот текст, который модель придумала сама. Продиктованный воспроизводится верно.
  • Название товара надо отправлять надписью, а не надеяться, что модель возьмёт его из описания.
  • На дешёвом уровне качества русский текст выходит через раз: на буквы нужны пиксели, и там их мало.
  • Важный текст — цену, состав — надёжнее набрать в редакторе поверх картинки.

Вопросы

Все ли нейросети одинаково плохо пишут по-русски?

Нет, и разница большая. Мы проверили девятнадцать моделей на трудной строке со всеми ь, ъ и ё: восемь написали без единой ошибки, восемь путают мягкий и твёрдый знак, три переходят на латиницу или не пишут надпись вовсе. Подробный замер — на отдельной странице.

Почему на маленьком разрешении текст хуже?

На буквы нужны пиксели. Мягкий знак от твёрдого отличается несколькими точками, и на низком разрешении их просто негде разместить. Одна и та же модель на 2K пишет верно, а на 1K выдаёт «бъется» и «мп» вместо «мл» — это свойство разрешения, а не модели.

Можно ли попросить модель не добавлять текст вообще?

Да, и часто это лучший вариант: чистая картинка плюс надписи, набранные поверх. Так текст получается ровным, его можно поменять за секунду, и переделывать изображение ради опечатки не придётся.

Попробовать

Выбираете задачу, а не нейросеть. Работает из России, без VPN, оплата в рублях. При регистрации даём пробный запас — хватит посмотреть на результат своими глазами.

Начать бесплатно