STT (Speech-to-Text) 및 TTS (Text-To-Steepee) 쿼리를 실행하기위한 Python 3을 기반으로하는 Telegram Bot. 지원되는 언어 : 러시아어 , 영어 (쿼리 및 인터페이스).

Telegram 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 사용하여 자동으로 다운로드 및 게시하고 Curl 및 Tar가 필요합니다).
환경 파일 섹션에 설명 된 변수와 함께 루트 폴더에서 나만의 .env 파일을 만듭니다.
git clone https://github.com/Ggorets0dev/rantovox-telegram-bot.git
cd rantovox-telegram-bot
pip install -r requirements.txtrantovox에서 다음 명령을 사용할 수 있습니다.
시작 - 계정 용 봇을 시작하십시오
도움말 - 운영 원칙에 대한 정보 요약 받기
setLocale- 봇 인터페이스의 언어를 설정합니다
setVoice- 요청에 대한 음성 성별 설정 (TTS)
setlang- 요청에 대한 언어 설정 (stt)
봇을 실행하기 전에 다음 변수가있는 .env 파일을 작성해야합니다.
| 이름 | 예 | 기본 | 설명 |
|---|---|---|---|
| Telegram_token | 1234567890 : abcdefghijklmnopqrstuvxyzabcdefghi | - | 생성 된 Telegram Bot에 대한 토큰에 액세스하십시오 |
| male_voice_name | Aleskandr | - | 남성 음성에 사용할 음성의 이름 |
| female_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 요청 직후 모든 임시 파일을 삭제합니다. 모든 전환은 위에서 설명한 라이브러리의 도움으로 호스트에서 수행됩니다. 사용자의 로그인 및 ID 만 요청시 로그로 기록되며 요청 구성은 호스트에 숨겨져 있습니다.