Почему искусственному интеллекту трудно даётся узбекский язык
Модель свободно пишет по-английски и спотыкается на узбекском. Причина не в «незнании»: объём текстов, два алфавита, апостроф и само словообразование создают барьер.

Каждый узбекоязычный пользователь языковых моделей это замечал: на английский запрос приходит гладкий ответ, а на узбекский — то со странными окончаниями, то будто дословно переведённый с русского. Причины технические и хорошо известны.
Первая причина: мало текста
Модель учит язык не по правилам, а по текстам. Огромная часть текстов в интернете — на английском. Узбекский относится к «малоресурсным» языкам: объём качественных цифровых текстов на порядки меньше. Если модели показали в разы меньше примеров, таким будет и результат.
Вторая причина: два алфавита
Узбекский пишется и латиницей, и кириллицей. Для модели это часто выглядит как два разных языка: формы одного слова в разных письменностях могут не связаться. В итоге и без того небольшой корпус делится надвое, и каждая половина по отдельности оказывается недостаточной.
Третья причина: длинное слово, много токенов
Модель делит текст не на слова, а на токены. В английском большинство слов укладывается в один-два токена. Узбекский агглютинативный — смысл наращивается цепочкой аффиксов, и такое слово нередко дробится на несколько частей.
У этого два практических следствия. Первое — цена: API-сервисы считают по токенам, поэтому узбекский текст того же содержания обходится дороже английского. Второе — качество: если слово разбито неудачно, модель хуже улавливает смысл аффиксов, и появляются ошибки в падежах.
Четвёртая причина: апостроф
Мелкая, но очень упрямая проблема. В узбекской латинице буквы oʻ и gʻ, а также разделительный знак пишутся особыми символами. На практике пользователи набирают обычный апостроф, обратную кавычку или типографскую. Для компьютера это разные символы: у одного слова возникает несколько написаний, и поиск их не связывает.
Это не теоретическая проблема. На любом узбекоязычном сайте, чтобы поиск работал, текст приходится нормализовать заранее — приводить все варианты к одной форме. Иначе пользователь напишет «Oʻzbekiston», а в базе окажется «Ozbekiston».
Что помогает
Решение не в смене модели, а в наведении порядка на входе. Нормализуйте текст, поставьте надёжную транслитерацию между двумя алфавитами, формулируйте запросы полно и точно — короткий запрос заставляет модель достраивать смысл догадками. Если важны термины, приводите их прямо в запросе.
В долгую решает одно: открытые, качественные и корректно размеченные корпуса узбекских текстов. Чем больше язык показан модели, тем лучше она на нём пишет — никакой магии здесь нет.
