В эпоху глобализации английский язык стал ключевым навыком, необходимым для личного и профессионального развития. В то же время, современные технологии, такие как искусственный интеллект и сервисы распознавания речи, открывают новые возможности для изучения языка. В этой статье я расскажу о том, как я создавал чат-бот Thought, который помогает пользователям улучшить английский язык с акцентом на произношение и грамматику, и поделюсь техническими деталями, стоящими за этим проектом.

Основная идея и выбор технологий

Идея Thought возникла из необходимости создания удобного инструмента, который мог бы помочь людям совершенствовать произношение и другие аспекты английского языка. Существующие решения часто либо слишком сложны в использовании, либо требуют значительных ресурсов. Я решил объединить простоту и доступность мессенджеров Telegram и ВКонтакте с мощью Yandex SpeechKit и GPT-4, чтобы создать обучающий чат-бот, доступный каждому.

GPT-4 используется в качестве ИИ-репетитора, который не только анализирует ошибки пользователей, но и предлагает персонализированные тренировки и рекомендации. Благодаря GPT-4, Thought способен вести диалог, давать развернутую обратную связь и адаптировать задания под уровень пользователя.

 Для интересующихся, системный промпт к GPT:

Скрытый текст

Thought - чат-бот для тренировки английского произношения. В основном бот даёт фразы на английском, а пользователь должен произносить эти фразы, и бот показывает, где ошибки в произношении. Например, ты пишешь фразу "Hello, world", а из голосового сообщения пользователя распознано "hello would". Значит, пользователь допустил определенные ошибки в произношении слова "world". Анализируй эти ошибки и помогай пользователю их исправить. С тобой можно общаться как с настоящим репетитором, ты можешь отвечать как человек на вопросы в любом виде. У пользователя есть кнопки "режимы", "помощь". Если он пишет "помощь", напиши что готов ответить на любой его вопрос. Будь максимально понятен пользователю, даже если он не знает ��ногих терминов. Например, большинство пользователей не знают слов "бот", "ИИ", "ассистент" и так далее. Называй себя "виртуальный репетитор Thought".
Можешь ставить пользователю баллы, или оценки, или оценивать в соответствии с какими-нибудь международными стандартами оценки. Периодически можешь вставлять интересные факты о произношении в английском языке.

Есть много разных режимов тренировки:

  • Спринт: Короткая сессия на 20 фраз, которые пользователь должен произнести. Нумеруй каждую фразу.

  • Марафон: Длительная сессия с разнообразными заданиями (произношение, аудирование, грамматика) без ограничения по времени, но с целью достичь определенного количества баллов или определенной оценки.

  • Тематический: Фокус на определенной теме с соответствующей лексикой и фразами. Позволяй пользователю самому придумывать тему.

  • Диалог: Имитация разговора, где бот задает вопросы или дает реплики, а пользователь должен адекватно отвечать.

  • Составь слова: Пользователь получает набор букв и должен составить как можно больше английских слов.

  • Исправь ошибки: Серия предложений с синтаксическими и лексическими ошибками, которые пользователь должен найти и исправить ошибки.

  • Перевод на скорость: Перевод фраз с русского на английский и обратно.

  • Сложный: Комбинация различных типов заданий с нарастающей сложностью, как в игре.

Фразы для тренировки пиши по одной на сообщение. Пиши также и транскрипции к фразам\словам. Напоминай пользователю, в каком режиме происходит сейчас обучение.

Принцип работы и оценка качества произношения

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

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

  2. Аудио пример: Для удобства и лучшего понимания, бот отправляет аудио пример правильного произношения предложенной фразы.

  3. Запись и распознавание: Пользователь записывает голосовое сообщение с произношением фразы, и это сообщение передается в сервис распознавания речи (в данном случае используется Yandex SpeechKit).

  4. Сравнение и оценка: Распознанная фраза сравнивается с исходным текстом. Yandex SpeechKit часто предлагает несколько вариантов распознанного текста. Оценка осуществляется по следующему принципу:

    • Зеленый цвет: Если слова в произнесенной фразе полностью совпадают с исходной фразой, они считаются правильно произнесенными.

    • Желтый цвет: Если слова или символы частично совпадают с предложенными ботом вариантами, но есть отклонения, они обозначаются желтым цветом.

    • Красный цвет: Если слова не распознаны, они считаются неправильно произнесенными и отмечаются красным цветом.

Этот метод оценки позволяет пользователю наглядно видеть свои ошибки и работать над их исправлением.

Одной из ключевых задач была оптимизация работы с Yandex SpeechKit. Важно было добиться максимально быстрой и точной обработки голосовых сообщений, чтобы пользователь не ощущал задержек. Для этого пришлось экспериментировать с различными параметрами API и оптимизировать код.

Еще одной сложностью стала интеграция с GPT-4. Настройка промпта потребовала времени, чтобы репетитор мог давать адекватные и полезные советы, учитывая уровень пользователя. Важно было, чтобы GPT-4 не перегружал пользователя сложными терминами и был максимально простым и понятным.

Режимы тренировок

Thought предлагает два основных способа тренировки:

  1. Простой режим: В этом режиме пользователь тренируется на заранее заданных фразах, что идеально подходит для новичков, стремящихся улучшить базовые навыки произношения.

  2. Продвинутый режим: Этот режим включает ИИ-репетитора на базе GPT-4, который предлагает разнообразные сценарии тренировок. Каждый режим адаптирован под разные уровни подготовки и цели пользователя, что делает процесс обучения гибким и эффективным.

Заключение

Можете ознакомиться с Thought в Telegram: t.me/enthoughtbot или ВКонтакте: vk.com/enthought. Этот проект продолжает развиваться, и я буду рад услышать отзывы и предложения по его улучшению. Основной проблемой сейчас для меня является не техническая часть разработки, а попытки продумать максимальн�� удобный и понятный интерфейс, и увидеть все те недостатки, которые я не замечаю. Также я начинаю вести канал по теме разработки чат-ботов и в целом по теме IT и ИИ, пока там пустовато, но скоро контент появится, так что подписывайтесь: t.me/curseknowledge.