samplevoicebot
1.0.0
전보 텍스트 음성 연사 봇. 인라인 및 텍스트 모드 모두에서 작동하며 텍스트에서 음성을 생성하기 위해 편리한 인터페이스를 제공합니다.
시도해보십시오 : @SampleVoiceBot.
봇은 AWS 계정이 필요합니다. Amazon Polly를 사용하여 Voice와 S3를 생성하여 생성 된 음성 파일을 저장하고 공유합니다.
봇은 config.py 에 나열된 환경 변수를 통해 구성됩니다.
아래 표는 필요한 매개 변수를 보여줍니다.
| 매개 변수 | 설명 |
|---|---|
TELEGRAM_BOT_TOKEN | @botfather가 발행 한 토큰 |
AWS_ACCESS_KEY_ID , AWS_SECRET_ACCESS_KEY | AWS 자격 증명 |
AWS_S3_BUCKET | 파일이 저장 될 AWS 버킷 이름 |
AWS_REGION_NAME | 양동이가있는 AWS 지역 이름 예 : us-east-1 |
기타 매개 변수 :
| 매개 변수 | 값 | 기본 | 설명 |
|---|---|---|---|
TELEGRAM_ADMIN_ID | int | -1 | 사용자 ID-이 봇의 관리자 |
TELEGRAM_MIN_MESSAGE_LENGTH | int | 1 | 음성을 생성하기 위해 최소 메시지 길이 |
TELEGRAM_MAX_MESSAGE_LENGTH | int | 255 | 음성 생성을위한 최대 메시지 길이 (인라인 메시지는 256자를 초과 할 수 없습니다) |
TELEGRAM_INLINE_DEBOUNCE_MILLIS | int | 1000 | 불필요한 음성 세대를 피하기위한 들어오는 인라인 요청에 대한 분해 간격 |
LANGUAGE_DETECT_MAPPINGS | str | 언어 매핑은 from=to 형식입니다. 다중 치환은 쉼표와 결합 될 수 mk=ru,bg=ru,uk=ru | |
MAX_WORKERS | int | 4 | 동시 직업에 사용되는 많은 근로자 (예 : 언어 합성) |
PREFETCH_LANGUAGES | str | List Langages (예 : ru,en ), Prefetch Voices List*에서 봇 스타트 업에서* | |
VOICES | str | 사용할 음성 (예 : ru-RU=Tatyana,Maxim 을 지정하십시오. 여러 매핑에 가입하십시오 ; . 지원되는 목소리 목록 | |
DEBUG | 1 , 0 | 0 | 장방 로깅을 활성화/비활성화합니다 |
* 인라인 모드에서 봇은 언어 당 2 개의 음성 만 사용하여 요청 합성을 최소화합니다.
버킷의 물체에 대한 무의미하고 무단 공개 액세스가 필요합니다. 이것은 버킷 정책으로 달성 할 수 있습니다.
{
"Version" : " 2012-10-17 " ,
"Statement" : [
{
"Sid" : " PublicRead " ,
"Effect" : " Allow " ,
"Principal" : " * " ,
"Action" : " s3:GetObject " ,
"Resource" : " arn:aws:s3:::samplebucket/* "
}
]
} * samplebucket 뒷면 이름으로 대체해야합니다.
자세한 내용은 문서를 참조하십시오.
이미지는 ghcr.io에서 제공됩니다.
$ docker build -t samplevoicebot .
.env 라는 파일을 만들고 자격 증명을 예를 들어 다음과 같습니다.
AWS_ACCESS_KEY_ID=<your-aws-access-key-id>
AWS_SECRET_ACCESS_KEY=<your-aws-secret-access-key>
AWS_REGION_NAME=<aws-region-name>
AWS_S3_BUCKET=<your-s3-bucket-name>
TELEGRAM_BOT_TOKEN=<your-telegram-bot-token>
<any-additional-parameters>
달리다:
$ docker run -d --env-file .env samplevoicebot