Большинство современных ИИ-сервисов – от ChatGPT до Gemini – лучше всего работают на английском языке. Для казахского языка готовых инструментов значительно меньше. Исправить эту ситуацию решили два казахстанских школьника. Ученики школы цифровых технологий Skillset Schools Қадыр Сапарбай и Айбол Жүсіп создали библиотеку QazNLTK для обработки казахского языка, получили на нее авторское свидетельство и собрали более 15 тысяч скачиваний. О том, как появился проект и где он применяется сегодня, команда рассказала Digital Business.
Четыре человека и полтора месяца работы
Проект создавался в 2023 году как образовательное исследование. Над ним работала команда из четырех человек. Қадыр Сапарбай и Айбол Жүсіп, которым на тот момент было по 16 лет, выступили разработчиками-исследователями. Руководителями проекта стали учитель казахского языка Акмарал Рахимова и координатор проектов школы Skillset Арман Жалғасбаев.
По словам команды, идея родилась во время изучения методов обработки естественного языка (Natural Language Processing, NLP) и проектирования библиотек на Python.
«В 2023 году было не так много инструментов для работы с текстом на казахском языке, которые можно было использовать сразу после установки. Поэтому решили создать собственную библиотеку с базовыми функциями для работы с казахским языком и сделать ее доступной для всех желающих», – рассказывает Арман Жалғасбаев.
Арман Жалғасбаев
Активная фаза разработки заняла около одного-двух месяцев.
Что такое QazNLTK простыми словами
Если объяснять максимально просто, QazNLTK помогает компьютеру понимать тексты на казахском языке. Например, если система получает фразу «Бүгін мен өте қуаныштымын», библиотека способна определить, что текст несет позитивный эмоциональный оттенок.
Кроме того, QazNLTK умеет:
- анализировать тональность текста;
- искать похожие документы с помощью алгоритмов TF-IDF и KNN;
- определять схожесть предложений;
- выполнять транслитерацию между кириллицей и латиницей по стандарту ISO-9;
- работать с казахским алфавитом и стоп-словами;
- преобразовывать числа в текстовую форму на казахском языке;
- использовать дообученную языковую модель для диалогов на казахском языке.
Одна из самых наглядных функций – запись чисел словами. Например, число 1465 библиотека автоматически преобразует в фразу «мың төрт жүз алпыс бес».
«Все реализовано максимально просто. Пользователь может открыть исходный код, посмотреть, как работает алгоритм, и доработать его под свои задачи. Главная цель проекта – обучение. То, что кажется сложным на первый взгляд, можно разобрать и понять», – отмечают разработчики.
Внутри проекта есть даже собственная языковая модель
Одним из самых интересных компонентов стала работа с большими языковыми моделями. В рамках проекта команда дообучила модель Gemma-2-2b на казахском датасете saillab/alpaca_kazakh_taco. В результате появилась возможность использовать QazNLTK для Q&A-инференса – то есть ответов на вопросы на казахском языке в формате диалога. Фактически это был эксперимент по адаптации современных LLM-подходов для казахоязычной среды.
Айбол Жүсіп
Самым сложным оказался дизайн библиотеки
По словам авторов, проблема была не в алгоритмах. Большинство базовых методов обработки текста существуют уже давно. Гораздо сложнее оказалось правильно спроектировать архитектуру продукта.
«Нужно было упаковать код так, чтобы пользователь мог вызвать сложную функцию буквально одной строчкой, а сама библиотека оставалась удобной для расширения в будущем», – рассказывает команда.
Именно проектирование архитектуры стало главным техническим вызовом во время разработки.
Как тестировали библиотеку
Для проверки работы алгоритмов команда использовала сразу несколько типов данных. С одной стороны – классические произведения казахской литературы, содержащие сложную лексику и разнообразные языковые конструкции. С другой – современные тексты из социальных сетей.
Кроме того, разработчики написали собственные unit-тесты. Каждая новая функция попадала в релиз только после проверки на пограничных сценариях использования. Такой подход позволил убедиться, что библиотека корректно работает как с литературным, так и с разговорным казахским языком.
Более 15 тысяч скачиваний
Проект распространяется бесплатно по лицензии MIT. Весь исходный код, документация и примеры доступны в открытом доступе на GitHub. Сегодня библиотека имеет более 15 тысяч скачиваний через платформу PyPI.
Қадыр Сапарбай
По словам авторов, это говорит о том, что отдельные модули проекта используются сторонними разработчиками в собственных решениях. В основном QazNLTK применяется в образовательной и академической среде. С ее помощью студенты изучают методы компьютерной лингвистики и NLP на примере родного языка.
Где библиотека может пригодиться бизнесу
Несмотря на образовательный характер проекта, некоторые функции могут использоваться и в коммерческих продуктах. Например:
- анализировать отзывы клиентов на казахском языке и автоматически определять, доволен человек услугой или оставляет жалобу;
- организовывать интеллектуальный поиск по корпоративным документам;
- автоматически записывать суммы прописью в договорах, счетах и актах.
Сам Арман Жалғасбаев использует отдельные модули библиотеки в работе с OCR-моделями – системами распознавания текста на фотографиях. По его словам, инструменты очистки данных и удаления стоп-слов помогают оценивать качество распознавания казахоязычных текстов.
Почему казахскому языку нужны собственные ИИ-инструменты
По мнению команды, развитие казахского языка в цифровой среде невозможно без собственных технологических решений. Сегодня ИИ-системы сталкиваются сразу с несколькими сложностями:
- агглютинативной структурой языка;
- особенностями алфавита и символов;
- нехваткой специализированной технической лексики;
- ограниченным количеством качественных датасетов.
«Собственные инструменты критически важны для укрепления позиций казахского языка в цифровом мире», – считают авторы проекта.
При этом они подчеркивают, что QazNLTK никогда не задумывался как корпоративное production-решение. Скорее это образовательный фундамент для молодых разработчиков, который показывает, как устроены современные технологии обработки языка и как создавать собственные казахоязычные сервисы.
Авторское свидетельство и поступление в ведущие университеты
Разработка принесла школьникам не только технический опыт. Команда получила авторское свидетельство Национального института интеллектуальной собственности Казахстана на библиотеку как программный комплекс для анализа и обработки казахских текстов.
Кроме того, проект успешно выступил на Республиканском конкурсе научных проектов и международном соревновании INFOMATRIX.
«Получение авторского свидетельства и победы в конкурсах значительно усилили портфолио ребят и помогли им поступить в ведущие университеты», – говорит Акмарал Рахимова.
Акмарал Рахимова
Сегодня Қадыр Сапарбай учится в Coventry University, а Айбол Жүсіп– в Nazarbayev University.
Планы на будущее
Сейчас проект находится в стадии развития, а активная разработка новых модулей приостановлена. За последние три года рынок искусственного интеллекта изменился кардинально. Многие задачи, для решения которых раньше требовались отдельные инструменты, сегодня выполняются с помощью Claude, OpenAI и других генеративных систем. Поэтому роль QazNLTK постепенно сместилась в образовательную сферу.
«Сегодня это скорее наглядное пособие, которое показывает, как устроена подкапотная часть работы с языком и обработки текста», – объясняет Арман Жалғасбаев.
Говоря о будущем казахского языка в эпоху ИИ, команда считает, что главным вызовом станет создание независимых динамических бенчмарков для оценки качества моделей. По мнению разработчиков, через десять лет важнее будет не количество новых моделей, а появление быстрых и прикладных решений, которые смогут эффективно работать на казахском языке в реальном бизнесе.