Телеграмма текст в речь бот. Он работает как в режиме встроенного, так и в текстовом режиме и предлагает удобный интерфейс для генерации голоса из текста.
Попробуйте: @samplevoicebot.
Бот требует учетной записи AWS для работы. Он использует Amazon Polly для генерации голоса и S3 для хранения и обмена генерируемыми голосовыми файлами.
BOT настроен с помощью переменных среды, перечисленных в 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 | инт | -1 | Идентификатор пользователя - администратор этого бота |
TELEGRAM_MIN_MESSAGE_LENGTH | инт | 1 | Минимальная длина сообщения для генерации голоса |
TELEGRAM_MAX_MESSAGE_LENGTH | инт | 255 | Максимальная длина сообщения для генерации голоса (встроенные сообщения не могут превышать 256 символов) |
TELEGRAM_INLINE_DEBOUNCE_MILLIS | инт | 1000 | Интервал дебюра для входящих встроенных запросов, чтобы избежать ненужных голосовых поколений |
LANGUAGE_DETECT_MAPPINGS | стр | Языковые отображения в формате from=to . Несколько замен можно объединить с запятыми, EG mk=ru,bg=ru,uk=ru | |
MAX_WORKERS | инт | 4 | Ряд работников, используемых для одновременных рабочих мест (например, синтез речи) |
PREFETCH_LANGUAGES | стр | Список языков (например ru,en ), чтобы предварительно выфектировать список голосов* в стартапе бота | |
VOICES | стр | Укажите голоса для использования, например ru-RU=Tatyana,Maxim . Присоединяйтесь к нескольким сопоставлениям с ; Полем Список поддерживаемых голосов | |
DEBUG | 1 , 0 | 0 | Включить/отключить логарингеру |
* В режиме встроенного режима BOT использует только 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