Распознавание речи в мобильном приложении: голосовой ввод, STT и сценарии
Распознавание речи (Speech-to-Text, STT) превращает голос пользователя в текст прямо внутри приложения — для поиска, диктовки, команд и заполнения форм. В 2026 году задача решается тремя путями: нативные API iOS и Android, облачные сервисы или on-device модели. Интеграция готового движка в Казахстане стоит от 900 000 ₸, полноценный голосовой ассистент — от 4 млн ₸.
Как устроено распознавание речи в мобильном приложении
Технически STT — это конвейер из нескольких шагов. Микрофон отдаёт аудиопоток, детектор голосовой активности (VAD) отсекает тишину и фоновый шум, акустическая модель переводит звук в фонемы, а языковая модель собирает из них осмысленный текст с учётом контекста. Современные системы построены на трансформерах и обучены на десятках тысяч часов речи, поэтому справляются с акцентами и разговорными оборотами заметно лучше движков пятилетней давности.
Для мобильного продукта критичны два режима работы:
- Стриминговый — текст появляется на экране по мере произнесения, промежуточный результат приходит за 200–400 мс. Обязателен для поиска и команд: пользователь должен видеть, что его «слышат».
- Пакетный (batch) — файл записывается целиком и отправляется на расшифровку. Подходит для голосовых заметок, диктовки отчётов, расшифровки звонков. Точность выше, потому что модель видит весь контекст фразы.
Качество измеряется метрикой WER (Word Error Rate — доля ошибочных слов). Для чистой русской речи у лучших движков WER держится в районе 4–8%, в шумной среде или на доменной лексике без донастройки легко вырастает до 15–25%. Эти цифры стоит закладывать в ожидания на этапе проектирования, а не выяснять после релиза.
Три подхода к STT: нативные API, облако, on-device
Выбор технологии — главное архитектурное решение, оно определяет и бюджет разработки, и стоимость эксплуатации.
| Подход | Примеры | Казахский язык | Офлайн | Стоимость в рантайме | Когда выбирать |
|---|---|---|---|---|---|
| Нативные API | SFSpeechRecognizer (iOS), SpeechRecognizer (Android) | Частично, качество нестабильно | Частично (новые версии ОС) | Бесплатно, но с лимитами сессий | MVP, простая диктовка на русском |
| Облачные сервисы | Whisper API, Google Cloud STT, Yandex SpeechKit | Да, у SpeechKit и Whisper | Нет | ≈3–9 ₸ за минуту аудио | Максимальная точность, стриминг, аналитика звонков |
| On-device модели | Whisper (CoreML / whisper.cpp), Vosk | Да, у Whisper; у Vosk есть казахская модель | Да | 0 ₸, но модель весит 40–500 МБ | Приватность, работа без сети, нулевая себестоимость минуты |
Нативные API выглядят бесплатным решением, но у них есть подводные камни: iOS ограничивает длительность сессии распознавания, Android отдаёт результат по-разному на устройствах разных вендоров, а контроль над словарём минимален. Для прототипа этого достаточно, для продукта с голосовым вводом как ключевой функцией — почти никогда.
Облако даёт лучшую точность и кастомизацию, но каждая минута стоит денег и требует интернета. On-device модели вроде Whisper small закрывают офлайн-сценарии и вопросы приватности, расплачиваясь размером дистрибутива и нагрузкой на батарею. В реальных проектах мы часто комбинируем: лёгкая локальная модель для команд плюс облако для длинной диктовки.
Казахский и русский: специфика рынка Казахстана
Для приложений в KZ поддержка казахского — не опция, а требование: и пользовательское, и регуляторное для ряда отраслей. Здесь есть три практических нюанса.
Code-switching. Реальная речь в Казахстане — это смесь казахского и русского в одной фразе: «маған доставка керек на завтра». Движок, настроенный строго на один язык, на таких фразах сыпется. Решение — автоопределение языка на лету либо мультиязычные модели типа Whisper, которые обучены на смешанной речи.
Доступность данных. Открытый корпус казахской речи KSC2 от ISSAI (Назарбаев Университет) заметно подтянул качество казахских моделей — на нём дообучают и Whisper, и Vosk. Тем не менее WER на казахском всё ещё выше, чем на русском, и это надо честно учитывать в UX: показывать промежуточный текст и давать быстрое исправление.
Доменная лексика. Названия улиц Алматы, ФИО, суммы в тенге, артикулы товаров — всё это движки «из коробки» распознают плохо. Лечится contextual biasing: приложение передаёт распознавателю список ожидаемых слов (адресная база, каталог товаров), и точность на этих сущностях вырастает в разы. Это недорогая доработка с самым заметным эффектом.
Сценарии, где голосовой ввод реально окупается
Голосовой интерфейс — не украшение, а инструмент для ситуаций, где клавиатура проигрывает. По опыту нашей разработки мобильных приложений, сильнее всего STT работает в пяти сценариях:
- Голосовой поиск в e-commerce и маркетплейсах. Голосом пользователи формулируют запросы длиннее и конкретнее, чем пальцами, — поисковая выдача попадает точнее, а сами запросы становятся сигналом для рекомендаций. Как это использовать дальше, мы разбирали в статье про AI-персонализацию в приложениях.
- Полевые сотрудники и логистика. Курьер, кладовщик, выездной инженер работают с занятыми руками. Голосовая фиксация статусов и комментариев к заявке экономит минуты на каждой операции и убирает «допишу вечером», то есть потерю данных.
- Диктовка в медицине, страховании, юриспруденции. Врач наговаривает осмотр, оценщик — описание ущерба. Пакетная расшифровка с доменным словарём здесь даёт самый измеримый эффект: документ создаётся в момент события, а не в конце дня.
- Сценарии «за рулём» и hands-free. Такси, доставка, автопарки: подтверждение заказа и навигационные команды голосом — это ещё и вопрос безопасности, а не только удобства.
- Доступность. Голосовой ввод открывает приложение людям с нарушениями зрения и моторики — аудитория, которую текстовый интерфейс просто отсекает.
Часто STT идёт в связке с другими AI-модулями: например, в страховом приложении пользователь фотографирует повреждение и голосом описывает обстоятельства — про визуальную часть таких сценариев читайте в материале о компьютерном зрении в мобильном приложении.
UX и архитектура: что отличает рабочий голосовой ввод от демо
Сам вызов STT-движка — 10% работы. Остальные 90% — это обвязка, которая и определяет, будут ли функцией пользоваться:
- Мгновенная обратная связь. Анимация уровня громкости и промежуточный текст на экране. Если после нажатия кнопки три секунды ничего не происходит, пользователь не вернётся к голосовому вводу.
- Честная обработка ошибок. Тайм-аут тишины, потеря сети во время стриминга, отказ в доступе к микрофону — на каждый случай нужен внятный сценарий, а не вечный спиннер.
- Fallback на клавиатуру. Голос — дополнительный канал, а не замена. Распознанный текст всегда должен быть редактируемым.
- Экономия ресурсов. VAD на устройстве, чтобы не гнать тишину в платное облако; сжатие аудио (Opus вместо WAV) — это напрямую уменьшает счёт за распознавание.
- Персональные данные. Голос — биометрическая по своей природе информация. Закон РК «О персональных данных и их защите» требует согласия на обработку и осознанного решения, где хранятся записи. Мы проектируем так, чтобы аудио либо не сохранялось вовсе, либо хранилось обезличенно и с понятным сроком жизни.
Сколько стоит распознавание речи в приложении в Казахстане
Цены ниже — реалистичные вилки для рынка KZ на 2026 год при разработке студией уровня middle/senior. Точная смета зависит от платформ, языков и требований к офлайну.
- Голосовой ввод на нативных API (диктовка в поле поиска или форму, одна платформа) — 900 000 – 1 600 000 ₸.
- Облачный STT со стримингом (промежуточные результаты, contextual biasing, RU+KZ, обе платформы) — 1 800 000 – 3 200 000 ₸.
- Офлайн-распознавание on-device (Whisper/Vosk, оптимизация под слабые устройства) — 2 500 000 – 4 500 000 ₸.
- Голосовой ассистент с пониманием команд (STT + NLU/LLM, выполнение действий в приложении, диалоговые уточнения) — 4 500 000 – 9 000 000 ₸.
Отдельно считается эксплуатация: облачное распознавание стоит примерно 3–9 ₸ за минуту аудио в зависимости от провайдера. При 10 000 активных пользователей с парой голосовых запросов в день это десятки тысяч тенге в месяц — величина, которую мы фиксируем в смете заранее, а не оставляем сюрпризом. On-device вариант сводит эту статью к нулю ценой более дорогой разработки.
Если проект стартует с нуля, голосовой ввод разумно закладывать в архитектуру сразу — доработка «потом» обходится дороже из-за переделки слоя ввода и аналитики. Мы делаем такие проекты под ключ: команда Applications.kz занимается разработкой мобильных приложений в Алматы с 2007 года, за это время выпущено более 300 проектов для рынков Казахстана, ОАЭ и Таиланда. Пришлите задачу на +7 (707) 928-13-15 — посчитаем смету за 24 часа.
Частые вопросы
Поддерживается ли казахский язык в распознавании речи?
Да. Казахский поддерживают Whisper, Yandex SpeechKit и модели, дообученные на корпусе KSC2 от ISSAI. Качество на казахском пока уступает русскому, особенно на смешанной речи, поэтому в реальных проектах мы используем автоопределение языка и contextual biasing под доменную лексику. Для критичных сценариев точность проверяется на ваших реальных аудиозаписях ещё до старта разработки.
Работает ли голосовой ввод без интернета?
Да, если выбрать on-device модель: Whisper в варианте CoreML/whisper.cpp или Vosk работают полностью офлайн. Плата за это — размер модели от 40 до 500 МБ и повышенная нагрузка на процессор. Распространённый компромисс — гибрид: короткие команды распознаются локально, длинная диктовка уходит в облако при наличии сети.
Насколько точно распознаётся речь в шуме?
На чистой речи современные движки ошибаются в 4–8% слов, в шумной среде ошибка вырастает в 2–3 раза. Ситуацию улучшают VAD, шумоподавление на устройстве, направленный список ожидаемых слов и правильный UX — пользователь видит промежуточный текст и сразу исправляет ошибку. Для складов и улицы мы всегда тестируем движок на записях из реальных условий заказчика.
Сколько времени занимает интеграция STT в готовое приложение?
Базовый голосовой ввод на нативных API — 3–5 недель вместе с UX, обработкой ошибок и тестированием на устройствах. Облачный стриминг с поддержкой двух языков и доменным словарём — 6–10 недель. Голосовой ассистент с пониманием команд — от 3 месяцев. Сроки фиксируются в смете после анализа вашей кодовой базы.
Что происходит с записями голоса пользователей?
Это вопрос и доверия, и закона РК «О персональных данных и их защите». Мы проектируем три режима: аудио не сохраняется вовсе (распознали — удалили), хранится обезличенно для улучшения качества с явного согласия, или обрабатывается только на устройстве. Какой режим нужен вам, определяем на этапе проектирования вместе с юридическими требованиями отрасли.