Голосовой ввод

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


Движки распознавания

Движок выбирается настройкой speechRecognitionProvider. Всего доступно восемь движков, разделённых на три семейства:

Браузерный — работает целиком в браузере на Web Speech API; локальный серверный — Whisper на вашем сервере, офлайн; облачные — пять пресетов с API-ключом и собственный OpenAI-совместимый сервис.

ДвижокГде выполняетсяОсобенности
Browser (Web Speech API)в браузеребесплатно; Chrome, Edge, Safari; живой промежуточный текст; аудио уходит в облачный сервис браузера, на сервер агента — нет; в Firefox неподдерживаем
Local Whisperна сервере агентаофлайн и бесплатно; модель скачивается при первом использовании; единственный серверный движок, работающий без интернета
OpenAIоблакомодель gpt-4o-mini-transcribe; нужен API-ключ
Groqоблакомодель whisper-large-v3-turbo; нужен API-ключ
OpenRouterоблакомодель openai/whisper-large-v3-turbo; нужен API-ключ
Deepgramоблакомодель nova-3; нужен API-ключ
ElevenLabsоблакомодель scribe_v1; нужен API-ключ
Custom (OpenAI-совместимый)ваш серверлюбой адрес /audio/transcriptions: whisper.cpp, LocalAI, vLLM и другие; свой адрес, модель и ключ

Какой движок выбрать

  • Local Whisper — если нужна работа без интернета или максимальная приватность: аудио не покидает ваш сервер;
  • Browser — быстрый бесплатный вариант для Chrome, Edge или Safari, когда достаточно распознавания в браузере;
  • Облачные пресеты — если нужна высокая точность без нагрузки на ваш сервер; расходы идут по тарифам провайдера;
  • Custom — если у вас уже развёрнут собственный OpenAI-совместимый сервис распознавания (например, whisper.cpp или vLLM).

Как это работает

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

Непрерывная диктовка. Запись не нужно останавливать после каждой фразы. Серверные движки (Local Whisper и облачные) отправляют накопленное аудио примерно каждые 5 секунд и вставляют распознанный текст по мере получения — промежуточного текста у них нет, фраза появляется целиком. Браузерный движок показывает живой предварительный текст серой строкой над полем ввода и вставляет финальные фразы сразу.

Проксирование облачных API. Для облачных движков сервер агента выступает посредником: он получает аудио от браузера и отправляет его в API провайдера. Аудио передаётся как есть, в формате записи (webm/opus), без конвертации. Таймаут запроса к провайдеру — 30 секунд.

Настройки

Все настройки речи собраны в карточке «Распознавание речи» (Настройки → Инструменты). Восемь ключей настроек:

КлючПо умолчаниюЧто делает
enableSpeechRecognitionвключенопоказывает кнопку микрофона на панели ввода
speechRecognitionProviderbrowserвыбранный движок распознавания (8 вариантов)
whisperModelsmallразмер модели Local Whisper
languageкак локаль (ru/en)язык распознавания для движков, которые его поддерживают
autoDetectLanguageвключеноавтоопределение языка вместо фиксированного
speechApiEndpointпустоадрес сервиса облачного движка; заполняется при выборе пресета
speechApiKeyпустоAPI-ключ облачного провайдера
speechApiModelпустомодель облачного движка; заполняется при выборе пресета

Пресеты облачных движков. При выборе пресета (OpenAI, Groq, OpenRouter, Deepgram, ElevenLabs) поля speechApiEndpoint и speechApiModel заполняются значениями по умолчанию автоматически — их можно подправить. Поле ключа остаётся пустым: ключ нужно ввести самим. Для движка Custom все три поля заполняются вручную.

Язык и автоопределение. Настройки языка учитываются движками, которые их поддерживают: Local Whisper и OpenAI-совместимые движки принимают код языка (ru, en и т.д.) или определяют автоматически; Deepgram и ElevenLabs — свои эквиваленты. Браузерный движок принимает метку BCP-47 (например, ru-RU) и автоопределение не поддерживает — переключатель для него скрыт.

Проверка. В карточке настроек есть тест: кнопка записывает три секунды аудио и распознаёт их выбранным движком, показывая транскрипт или ошибку движка. Для Local Whisper здесь же доступна проверка статуса модели (скачана или нет и какого размера), скачивание и повторная загрузка.

Модели Local Whisper

Модель Whisper скачивается автоматически при первом использовании движка — кнопка микрофона появляется, когда модель готова (при неудачной загрузке ошибка пишется только в консоль). Доступные размеры — от tiny (~39 МБ) до large (~1,55 ГБ) и turbo (~809 МБ); по умолчанию используется small (~244 МБ). Чем больше модель, тем выше точность, но дольше скачивание и выше расход ресурсов при распознавании.

Ошибки и устранение

СитуацияЧто происходит
Доступ к микрофону запрещёнявный тост с инструкцией, как разрешить доступ; запись не начинается
Нет микрофона или ошибка захватаобщее сообщение «проверьте устройство»; в тесте настроек — «микрофон не найден»
API-ключ не заданзапись не начинается; тост указывает настроить ключ в настройках
Неверный или отклонённый ключ облака (401/403)свой тост «неверный API-ключ»
Облачный сервис не ответил за 30 секундсвой тост о таймауте
Тишина у Local Whisperпредупреждение «говорите громче»
Браузерный движок замолчал (пауза в речи)автоматический перезапуск распознавания, диктовка продолжается
Firefox с движком Browserдвижок помечен неподдерживаемым в настройках; совет сменить движок
Нет сети у браузерного движкатост «нужен интернет»
Распознаватель не поддерживается или заблокировантост с советом сменить движок в настройках

Безопасность и приватность

Ключи облачных API хранятся в настройках сервера и никогда не попадают в браузер. Запросы к провайдерам делает сервер агента — он же подставляет ключ. Для движка Browser аудио обрабатывает облачный сервис самого браузера (Google Chrome, Microsoft Edge, Safari), на сервер агента записи не уходят. Для Local Whisper аудио вообще не покидает ваш сервер — это самый приватный вариант.


← Назад: Настройки

Далее: Чат