Telegram Bot на основе Python 3 для запуска запросов речи к тексту (STT) и текста в речь (TTS) . Языки поддерживаются: русский , английский (запросы и интерфейс).

Модуль для работы с Telegram API: AIOGRAM.
Программное обеспечение для преобразования аудиофайлов в разные форматы: FFMPEG.
Запросы STT и TTS выполняются с использованием следующих библиотек:
Vosk (Stt)
Pyttsx3 (TTS)
BOT поддерживает два голоса (мужчины и женщины), имена которых установлены в файле конфигурации.
BOT имеет специальную функцию под названием Extra_Text_Processing , которая вводит дополнительные методы обработки текста, полученные от Vosk. Проходя через это, текст может быть сделан более человечным и правильным с точки зрения письма. Материалы, необходимые для этой функции, хранятся строго в SRC/ETP .
Примечание. Создано и протестировано на платформе Windows, Python 3.11.4
Требуются следующие шаги для правильной работы Rantovox:
Клонировать репозиторий (загрузить исходный код)
Создайте виртуальную среду, используя python -m venv venv и активируйте ее
Установите зависимости, используя PIP с требованиями.
Загрузите последние модели российского и английского языка Vosk (небольшая модель более предпочтительнее), бросьте их в SRC/Lang (вы можете использовать make download для автоматической загрузки и публикации, требует сгибания и смолы)
Создайте свой собственный файл .env в корневой папке с переменными, описанными в разделе «Файл среды» .
git clone https://github.com/Ggorets0dev/rantovox-telegram-bot.git
cd rantovox-telegram-bot
pip install -r requirements.txtСледующие команды доступны в Rantovox:
запустите - запустите бот для вашей учетной записи
Помощь - Получите информационную резюме принципов эксплуатации
SetLocale - Установите язык интерфейса бота
setVoice - установить голосовой пол для запросов (TTS)
setlang - установить язык для запросов (STT)
Файл .env со следующими переменными должен быть создан перед запуском бота:
| Имя | Пример | По умолчанию | Описание |
|---|---|---|---|
| Telegram_token | 1234567890: abcdefghijklmnopqrstuvxyzabcdefghi | - | Токен доступа к созданному боту Telegram |
| Male_voice_name | Алескандр | - | Название голоса, которое будет использоваться в мужском озвучке |
| Ken_voice_name | Елена | - | Название голоса, которое будет использоваться в женском озвучке |
| Ru_lang_model_dirname | Vosk-Model-Small-Ru-0.22 | - | Название папки с моделью русского языка (должно быть в SRC/Lang) |
| Eng_lang_model_dirname | Vosk-Model-Small-EN-US-0.15 | - | Название папки с моделью русского языка (должно быть в SRC/Lang) |
| Max_request_index | 100 | 1000 | Значение из диапазона 0 - N будет назначено временно созданным файлам (влияет на количество обслуживаемых клиентов одновременно) |
| Etp_enabled | ЛОЖЬ | Истинный | Будет ли использоваться после обработки необработанного текста из конверсии |
ПРИМЕЧАНИЕ. По умолчанию - значение, которое бот будет принимать самостоятельно, если значение находится в неправильном формате в файле среды
ПРИМЕЧАНИЕ. Позвоните в бот для списка доступных голосов, заполняя все оставшиеся переменные. Он отобразит список доступных значений (будьте осторожны: не все голоса поддерживают русский и английский одновременно)
BOT удаляет все временные файлы сразу после запроса TTS или STT. Вся конверсия проводится на хосте с помощью библиотек, описанных выше. Только вход и идентификатор пользователя записывается в журналах при запросе, состав запроса остается скрытой для хоста.