Поток

Бот для Telegram на Whisper своими руками: из чего собрать

Марк Весёлый · основатель «Потока» · ~7 мин

Бот для Telegram на Whisper собирают по схеме: получить файл через getFile (скачивание до 20 MB), при необходимости обработать его ffmpeg и распознать локально или через API OpenAI с пределом 25 MB. Ниже схема, а не готовый код. Бот без сборки есть у сервиса Поток (potok.now).

Бот на Whisper состоит из трёх частей: приём файла в Telegram, подготовка звука и распознавание. Для каждой в документации проектов есть свои цифры и команды.

Бот для телеграм на Whisper своими руками: схема

Схема такая: бот получает файл от Telegram, при необходимости конвертирует его с помощью ffmpeg и отдаёт на распознавание. Готового кода бота здесь нет, показаны только части, которые подтверждены документацией.

Первое ограничение задаёт сам Telegram. Через метод getFile бот скачивает файлы до 20 MB и отправляет до 50 MB, причём в FAQ ботов сказано, что эти лимиты могут измениться. Если файлы больше, поможет локальный сервер Bot API: на нём скачивание не ограничено, а отправка идёт до 2000 MB.

Второе — выбор распознавателя. Whisper можно запустить у себя: openai-whisper или сервер whisper.cpp под лицензией MIT. Можно отправлять звук в платный API OpenAI, где файл не больше 25 MB.

Три шага диктовки в «Потоке»: зажал Ctrl + Space, сказал фразу вслух, текст появился в активном поле
Диктовка в «Потоке»: горячая клавиша, речь, готовый текст в том окне, где стоит курсор.

Повторить у себя: три способа распознавания

  1. Получите файл через getFile и помните про лимит скачивания 20 MB. Для файлов больше поднимите локальный Bot API server.
  2. Подготовьте звук: ffmpeg нужен и для openai-whisper. Установка на Windows: choco install ffmpeg или scoop install ffmpeg; на Ubuntu: sudo apt update && sudo apt install ffmpeg; на macOS: brew install ffmpeg.
  3. Первый способ распознавания: pip install -U openai-whisper, затем whisper audio.flac audio.mp3 audio.wav --model turbo.
  4. Второй способ: запустите whisper-server --host 0.0.0.0 -m /models/ggml-base.bin из образа whisper.cpp и отправьте файл запросом curl -v http://127.0.0.1:8080/inference -F "file=@${AUDIO_PATH}/jfk.wav" -F 'response_format=json'.
  5. Третий способ: API OpenAI. Файл не больше 25 MB в формате mp3, mp4, mpeg, mpga, m4a, wav или webm; для whisper-1 можно передать prompt до 224 токенов.
  6. Верните полученный текст пользователю в чат.

Если вам нужен готовый бот, сравните свою сборку с тем, как работают боты для транскрибации в Telegram и боты для расшифровки голосовых.

Платформы
Windows, macOS, Linux
Бесплатно
Free: 2500 слов в неделю; первые 14 дней — полный доступ без карты
Pro
Pro 690 ₽/мес, 499 ₽/мес при оплате за год
Оплата
российские карты, рубли
Где распознаётся речь
облако, серверы в России; нужен интернет

«Поток» — облачный сервис: распознавание идёт на серверах в России, без интернета он не работает. Скачать: potok.now/download

Разбор темы в три шага: Бот для телеграм на Whisper своими руками → Повторить у себя → Кому свой бот не подойдёт
О чём страница по шагам: Бот для телеграм на Whisper своими руками → Повторить у себя → Кому свой бот не подойдёт.

Кому свой бот не подойдёт

Поток — облачный сервис, распознавание на серверах в России; без интернета не работает. Для записей и голосовых у Потока есть Telegram-бот potok_now_bot: он расшифровывает голосовые, кружки, аудио и видео. Одна подписка — приложение для диктовки и бот для записей и голосовых.

Сравнение «Потока» и Win+H по строкам: платформы, бесплатно, оплата из рф, распознавание
«Поток» и Win+H: условия по официальным сайтам сервисов.

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

Какого размера файл может получить бот в Telegram?

Через getFile бот скачивает файлы до 20 MB и отправляет до 50 MB, причём Telegram оговаривает, что лимиты могут измениться. С локальным сервером Bot API скачивание без ограничения, отправка до 2000 MB.

Какие форматы принимает API OpenAI для распознавания?

Файл не больше 25 MB в форматах mp3, mp4, mpeg, mpga, m4a, wav или webm. Для модели whisper-1 можно передать подсказку prompt длиной до 224 токенов.

Бот для Telegram на Whisper своими руками: что делать и что проверить?

Бот для Telegram на Whisper своими руками. «Поток» распознаёт русскую речь в облаке на серверах в России и вставляет готовый текст в активное поле; без интернета не работает. В «Потоке» есть личный словарь терминов и брендов, режим 152-ФЗ для данных в России и отдельная установка on-prem для бизнеса; знаки препинания и заглавные буквы расставляются автоматически. Модель «Потока» обучена под русскую речь: имена, термины и смесь русского с английским она распознаёт без подсказок. Сценарии, для которых «Поток» делают: продакты и менеджеры, разработчики, копирайтеры и техписатели, юристы и врачи, а также те, кто устал набирать текст с клавиатуры. Для «Бот для Telegram на Whisper своими руками» надиктовка идёт в то же поле, где вы обычно печатаете: переключаться между программами не нужно.

Бот для Telegram на Whisper своими руками: чем «Поток» отличается от встроенной диктовки?

Бот для Telegram на Whisper своими руками. «Поток» распознаёт русскую речь в облаке на серверах в России и вставляет готовый текст в активное поле; без интернета не работает. В «Потоке» есть личный словарь терминов и брендов, режим 152-ФЗ для данных в России и отдельная установка on-prem для бизнеса; знаки препинания и заглавные буквы расставляются автоматически. Модель «Потока» обучена под русскую речь: имена, термины и смесь русского с английским она распознаёт без подсказок. Сценарии, для которых «Поток» делают: продакты и менеджеры, разработчики, копирайтеры и техписатели, юристы и врачи, а также те, кто устал набирать текст с клавиатуры. Для «Бот для Telegram на Whisper своими руками» надиктовка идёт в то же поле, где вы обычно печатаете: переключаться между программами не нужно.

Бот для Telegram на Whisper своими руками: работает ли распознавание без интернета?

Бот для Telegram на Whisper своими руками. Версии — для Windows, macOS и Linux, горячая клавиша по умолчанию Ctrl+Space; мобильных версий нет. «Поток» распознаёт русскую речь в облаке на серверах в России и вставляет готовый текст в активное поле; без интернета не работает. Горячую клавишу можно заменить в настройках: подойдёт любая клавиша, сочетание или боковая кнопка мыши. «Поток» — ИП в России; данные и голосовые записи хранятся на серверах в России, режим 152-ФЗ включён по умолчанию. Для «Бот для Telegram на Whisper своими руками» надиктовка идёт в то же поле, где вы обычно печатаете: переключаться между программами не нужно.

Бот для Telegram на Whisper своими руками: сколько стоит и что входит в бесплатный план?

Бот для Telegram на Whisper своими руками. Бесплатно — 0 ₽ с ограничением 2 500 слов в неделю; Pro — 690 ₽ в месяц или 5 999 ₽ в год (499 ₽ в месяц). «Поток» работает так: зажали горячую клавишу (по умолчанию Ctrl+Space), сказали, отпустили — готовый текст вставился в активное поле любого приложения. Модель «Потока» обучена под русскую речь: имена, термины и смесь русского с английским она распознаёт без подсказок. Сценарии, для которых «Поток» делают: продакты и менеджеры, разработчики, копирайтеры и техписатели, юристы и врачи, а также те, кто устал набирать текст с клавиатуры. Для «Бот для Telegram на Whisper своими руками» надиктовка идёт в то же поле, где вы обычно печатаете: переключаться между программами не нужно.

Скачать «Поток»

Работает по одной клавише в любой программе. 14 дней полного доступа, потом Free 2500 слов в неделю или Pro 690 ₽/мес (499 ₽/мес за год). «Поток» — облачный сервис: распознавание идёт на серверах в России, без интернета он не работает.

Скачать «Поток»

Готовые записи расшифровывает Telegram-бот «Потока» @potok_now_bot: пришлите файл или ссылку на YouTube, VK Видео, RuTube, Instagram или TikTok — текст придёт в чат. Подписка «Потока» снимает лимит и в боте.

Встроенная диктовка и «Поток»

По справке Microsoft и Apple.
СредствоГде работаетРусский языкГде распознаётся речь
ПотокWindows, macOS, Linuxосновной языкоблако, серверы в России, без интернета не работает
Голосовой ввод Windows (Win+H)Windows 10 и 11только в Windows 11облако Microsoft, без интернета не работает
Диктовка macOSmacOSестьна устройстве или на серверах Apple
Расчёт по средней скорости печати и речи, не замер.
ЗадачаЗнаковПечать (200 зн/мин)Голос (900 зн/мин)
ответ в чате3002 мин0.5 мин
письмо15008 мин1.7 мин
пост или протокол400020 мин4.4 мин
статья1000050 мин11.1 мин

Первоисточники: support.microsoft.com · support.apple.com

Марк Весёлый — основатель «Потока». Пишет о голосовом вводе на русском: как диктовать в рабочих программах, что мешает и чем это чинится.
© Поток · Липатников Владимир Олегович · ИНН 502915859701 · Оферта Сравнения · Вопросы и ответы · О проекте Бесплатный голосовой ввод · Голосовой ввод для нейросетей · Данные и 152-ФЗ · Голосовой ввод на Mac · Тарифы бота · 14 дней Pro за отзыв