Блог / Гайды

Голосовые сообщения в WhatsApp-боте: как ИИ распознаёт и отвечает голосом

Часть клиентов в WhatsApp принципиально не печатает — им проще наговорить голосовое, особенно за рулём, между делами или просто по привычке, характерной для мессенджеров в Казахстане и СНГ. Для бизнеса это развилка: либо такие сообщения выпадают из воронки, потому что их некому расшифровать вовремя, либо нужен человек, который вручную слушает каждое голосовое и печатает ответ. Ни то, ни другое не масштабируется. Разберём, как эта задача решена в AI-боте Cheat Code — без упрощений, на уровне реальной архитектуры.

Зачем боту вообще уметь работать с голосом

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

Вторая причина практичнее: голосовое сообщение почти всегда длиннее и эмоциональнее текстового — люди наговаривают контекст, который поленились бы печатать («у меня магазин мебели, сейчас веду рекламу в Instagram, хочу проверить, реально ли бот справится с моими клиентами»). Это более богатый сигнал для квалификации диалога, чем короткое «расскажите про бота» текстом — если, конечно, бот способен этот сигнал считать.

Как голосовое сообщение попадает к боту

Когда клиент отправляет голосовое в WhatsApp, само аудио не приходит в вебхук напрямую — WhatsApp Business Platform присылает только уведомление с типом сообщения (audio или voice) и идентификатором медиафайла. Дальше бот сам обращается к Graph API за ссылкой на файл и скачивает бинарные данные вместе с MIME-типом — чаще всего это audio/ogg (стандартный формат голосовых WhatsApp), иногда audio/mpeg или audio/mp4, если сообщение переслано из другого источника.

Это отдельный сетевой запрос до того, как можно вообще начать разбираться, что клиент сказал — то есть распознавание речи не единственная задержка в цепочке, а вторая по счёту.

Распознавание речи: как голос превращается в текст

Скачанный файл передаётся в модель распознавания речи (Whisper от OpenAI), которая расшифровывает аудио в текст. Важная деталь: модель определяет язык самостоятельно по звучанию речи — отдельно настраивать язык клиента не нужно, и переключение между русским, казахским и английским внутри одного диалога не ломает бота, если, например, клиент один раз написал текстом по-русски, а следом надиктовал вопрос по-казахски.

Расшифрованный текст не просто заменяет собой «как если бы клиент написал», а помечается как результат распознавания голосового — это позволяет истории диалога оставаться последовательной и при необходимости отличать, где клиент печатал, а где надиктовывал, если позже диалог смотрит менеджер в дашборде.

Что если расшифровать не получилось

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

Синтез речи: как бот отвечает голосом

Если входящее сообщение было голосовым, бот отвечает тоже голосом — то есть формат ответа зеркалит формат вопроса, а не выбирается заранее для всех клиентов одинаково. Текст ответа, сгенерированный ИИ, проходит через синтез речи (OpenAI TTS) и превращается в аудиофайл, который отправляется клиенту как обычное голосовое сообщение WhatsApp, ничем не отличимое по интерфейсу от голосового, надиктованного человеком.

Здесь есть жёсткое ограничение по формату: голосовой ответ должен укладываться в одно-два предложения плюс уточняющий вопрос — не больше нескольких сотен символов. Причина простая — то, что нормально читается глазами в виде развёрнутого текста с разбивкой на абзацы, крайне тяжело воспринимается на слух в виде безостановочного потока речи. Длинный голосовой ответ с перечислением пяти пунктов подряд клиент, скорее всего, либо не дослушает, либо переслушает несколько раз, что раздражает больше, чем помогает. Поэтому на голосовые вопросы бот отвечает короче и по существу, а не пытается втиснуть в аудио тот же объём информации, что и в текстовый ответ.

Что происходит, если синтез речи не сработал

Генерация голоса и загрузка аудиофайла в WhatsApp — это ещё два сетевых запроса поверх генерации самого ответа, и любой из них теоретически может не пройти: таймаут, временная недоступность сервиса синтеза речи, ошибка загрузки медиафайла на сторону WhatsApp. Бот не оставляет клиента без ответа в этом случае — при сбое на любом из этапов синтеза или отправки голоса он автоматически отправляет тот же ответ обычным текстом. Клиент в худшем случае получает текст вместо голоса, а не тишину — с точки зрения диалога это деградация, а не отказ.

Что это даёт бизнесу на практике

С точки зрения владельца бизнеса ценность не в самой технологии распознавания речи — она давно стала commodity, — а в том, что использование голоса убирает ещё одну причину, по которой часть входящих обращений выпадает из воронки без внимания. Клиент, который предпочитает наговорить сообщение, получает такой же быстрый и содержательный ответ, как и тот, кто печатает — вместо того, чтобы либо ждать, пока голосовое кто-то прослушает вручную, либо получить шаблонную заглушку «извините, мы не понимаем голосовые сообщения».

Для ниш, где голосовые — заметная часть входящего трафика (услуги, недвижимость, мебель на заказ, локальный сервис), это не косметическая деталь, а прямое влияние на то, сколько реальных обращений вообще доходит до диалога с человеком.

Частые вопросы

На каких языках бот понимает голосовые сообщения?

Язык определяется автоматически по речи клиента — русский, казахский и английский обрабатываются без дополнительной настройки, переключать язык вручную не нужно.

Что будет, если голосовое плохо слышно и распознать его не получилось?

Бот не притворяется, что понял, и не отвечает наугад — он честно пишет, что не смог расшифровать аудио, и просит продублировать вопрос текстом.

Бот всегда отвечает голосом?

Нет. Голосом бот отвечает только на голосовое сообщение — если клиент написал текстом, ответ тоже придёт текстом. Формат ответа всегда зеркалит формат вопроса.

Сколько времени занимает обработка одного голосового сообщения?

Расшифровка речи в текст занимает порядка 10–15 секунд в зависимости от длины сообщения — это время добавляется к обычному времени генерации ответа.

Похожие статьи

Гайды

Как передать диалог менеджеру из WhatsApp-бота

Гайды

Meta CAPI для click-to-WhatsApp рекламы: как вернуть до 30% потерянных конверсий и снизить стоимость лида

Гайды

Автоматизация отчётности без BI и программистов: как AI-агент сам собирает отчёт из CRM и рекламных кабинетов

Ко всем статьям →