基于Python 3的电报机器人,用于运行语音到文本(STT)和文本到语音(TTS)查询。支持的语言:俄语,英语(查询和界面)。

用于使用电报API的模块:AIOGRAM。
用于将音频文件转换为不同格式的软件:FFMPEG。
使用以下库进行STT和TTS查询:
沃斯克(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来自动下载和发布,需要卷发和焦油)
在Root文件夹中创建自己的.ENV文件,其中包含环境文件部分中描述的变量。
git clone https://github.com/Ggorets0dev/rantovox-telegram-bot.git
cd rantovox-telegram-bot
pip install -r requirements.txtrantovox可用以下命令:
开始- 为您的帐户启动机器人
帮助- 获取有关操作原则的信息摘要
setlocale-启用了bot界面的语言
setVoice-设置请求的语音性别(TTS)
setlang-请求的语言(STT)
在运行机器人之前必须创建具有以下变量的.ENV文件:
| 姓名 | 例子 | 默认 | 描述 |
|---|---|---|---|
| telegram_token | 1234567890:abcdefghijklmnopqrstuvxyzabcdefghi | - | 访问创建电报机器人的访问令牌 |
| male_voice_name | 阿莱斯坎德尔 | - | 在男性配音中使用的声音名称 |
| emay_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 | 错误的 | 真的 | 是否将使用转换的原始文本的后处理 |
注意:默认值 - 如果该值在环境文件中以错误的格式为错误的值
注意:致电机器人以获取可用票的列表,并填写所有剩余变量。它将显示可用值的列表(请小心:并非所有的声音同时支持俄语和英语)
在TTS或STT请求之后,Bot立即删除所有临时文件。所有转换均在上述库的帮助下在主机上完成。在请求时,只有用户的登录和ID记录在日志中,请求的组成仍然隐藏为主机。