Доброго времени суток!
меня зовут Кирилл, хочу рассказать вам о своем проекте Aisha – ИИ репетиторе английского языка для разговорной практики. Об идее, отличиях, технических аспектах.
Начало
Изначально я много лет занимаюсь изданием книг. При этом все время интересовался цифровыми проектами, в некоторые инвестировал на pre-seed стадии. С началом бурного развития ИИ активно искал для себя интересные ниши. Особенно большие перспективы видел в развитии голосового ИИ, который будет звучать как человек.
Осенью прошлого года общаясь с одним из них я принял решение сделать ИИ репетитора по языкам для российского рынка. Сразу решили делать фокус на разговорный английский. На начальном этапе рассматривали два варианта реализации:
Пересылка звуковых файлами, то есть когда пользователь записывает файл с голосом и отправляет его на сервер, сервер его транскрибирует, генерирует ответ и отправляет и пользователь его проигрывает.
WebRTC и эффект естественного разговора
Первый вариант очевидно намного проще и в начальном варианте его можно было сделать как REST API, но мы решили что это будет серьезным продуктовым ограничением и остановились на втором. Основными аргументами послужили
Высокая скорость ответа бота
Возможность построения сложных многоголосых продуктов
Близость к естественному разговору.
В основу продукта мы поставили голосовые эпизоды, где пользователь играет определенную роль с заранее обозначенными целями, которые ему нужно достигнуть.
Эпизод: знакомство на вечеринке. Роль: вы, русскоязычный гость. Цель: понравиться новому знакомому и сделать комплимент.
Вы: It's really nice to meet you. You seem very sympathetic.
Новый знакомый: Sympathetic? Oh no… did something happen to me?
Друг (другой голос): I think you mean "likeable." "Sympathetic" means you feel sorry for someone.
Новый знакомый: Ah, got it! Well, thank you. You seem pretty likeable yourself.
В этом эпизоде ИИ говорит двумя голосами (новый знакомый и общий друг), а сценарий тренирует типичные ошибки русскоязычных. Например, «sympathetic» означает «сочувствующий», а не «симпатичный».
Технологии и архитектура
Код писать мы собирались полностью с использованием Claude Code и фреймворка BMAD и в процессе лишь вносить отдельные правки. Сейчас углубляться в BMAD не буду, это тема заслуживает отдельного поста.
Стек разработки сложился след образом:
Бэкенд - Python, FastAPI, PostgreSQL, NATS, Redis
Мобильное приложение - React Native
Web portal - Astro
Admin - React JS
В общем взяли максимально знакомые технологии для LLM
Основным элементом нашего приложения являются голосовые эпизоды, по простому общение пользователя с LLM голосом, где ИИ говорит несколькими голосами.
Мы сразу исключили Speech to Speech модели из за цены и негибкости, и остановили свой выбор на фреймворке Pipecat и LiveKit сервере. Раздельный пайплайн с отдельными модулями STT, LLM и TTS предпочтительнее монолитной Speech-to-Speech модели, поскольку позволяет независимо менять и оптимизировать каждый модуль под конкретную задачу, использовать нескольких провайдеров для распознавания и синтеза речи, а также гибко контролировать качество и стоимость на каждом этапе и адаптировать систему под нужный язык. Pipecat - пайплайн для организации голосового общения между LLM и пользователем. Заслуживает серии статей, здесь кратко. Основными ее компонентами являются:
Speech to text модуль - преобразование речи пользователя в текст
LLM - формирование ответа пользователю
Text to speech модуль - преобразование ответа в речь.
LiveKit - инфраструктура для WebRTC клиентов, организованная в виде комнат. К каждой комнате присоединяется пользователь и Pipecat клиент. LiveKit осуществляет передачу в нашем случае звука между участниками комнаты. Схематически ниже:

Инфраструктура
Из интересного поскольку мы работаем в России нам нужно подчиняться 152 ФЗ, для тех кто не знает, это требования о хранении персональных данных пользователей на территории РФ. Основная база данных содержит только user_id, без email, имени и пароля. Персональные данные хранятся в отдельной подсистеме аутентификации, развернутой в РФ. Основная система никогда не запрашивает персональные данные из изолированной подсистемы.

Текущее состояние
Мы запустились 1 июня 2026 года, моб приложение доступно в трех магазинах приложений Rustore, GooglePlay и квест года Huawei AppGallery (почему расскажу в след. статьях). Сейчас занимаемся преимущественно маркетингом и доработкой веб части, которая выросла. Это статья открывающая, обзорная, не кидайте тапками пожалуйста:) дальше будут узконаправленные технические статьи. Если есть какие-то пожелания, пишите в комментариях, я учту и приоритизирую будущие публикации.
План для следующих статей, рассказать:
• как работают многоголосые сценарии в Pipecat;
• как удерживать языковую модель в заданной роли на протяжении всего разговора.
• с какими сложностями можно столкнуться при публикации в Huawei AppGallery;
• как разработать продукт почти полностью с помощью Claude Code и фреймворка BMAD;
