subDesTagesMitExtraKaese 40b9765fea add allowlist parameter | hace 8 meses | |
---|---|---|
.github | hace 11 meses | |
whisper.cpp @ fff24a0148 | hace 8 meses | |
.dockerignore | hace 2 años | |
.gitignore | hace 1 año | |
.gitmodules | hace 2 años | |
Dockerfile | hace 1 año | |
README.md | hace 8 meses | |
main.py | hace 8 meses | |
renovate.json | hace 1 año | |
requirements.txt | hace 9 meses | |
speech_recognition.py | hace 1 año |
Transcribes audio messages using OpenAI Whisper.
This bot is based on Simple-Matrix-Bot-Lib and whisper.cpp. It downloads audio messages from your homeserver, transcribes them locally and responds with the result as a text message.
The bot is available as an image on DockerHub.
You can deploy it using docker-compose
:
version: "3.7"
services:
matrix-stt-bot:
image: ftcaplan/matrix-stt-bot
restart: on-failure
volumes:
- ./data/:/data/
environment:
- "HOMESERVER=https://matrix.example.com"
- "USERNAME=@stt-bot:example.com"
- "PASSWORD=<password>"
- "ASR_MODEL=tiny"
- "ASR_LANGUAGE=en"
The bot will download the model file on first run to reduce image size. Available models are tiny.en
, tiny
, base.en
, base
, small.en
, small
, medium.en
, medium
, and large
. The default is ASR_MODEL=tiny
.
You can authenticate using tokens instead of a password by setting LOGIN_TOKEN=<login-token>
or ACCESS_TOKEN=<access-token>
instead of PASSWORD=<password>
.
ASR_MODEL: You can choose a docker tag with the corresponding model pre downloaded or set it with ASR_MODEL
. Available models are tiny.en
, tiny
, base.en
, base
, small.en
, small
, medium.en
, medium
, and large
. The default is ASR_MODEL=tiny
.
Authentication:
LOGIN_TOKEN=<login-token>
or ACCESS_TOKEN=<access-token>
instead of PASSWORD=<password>
.Allowlist:
ALLOWLIST
environment variable is defined, the bot will parse it and use it as the allowlist.ALLOWLIST=^@user1:example.com$,^@user2:example.com$
ALLOWLIST
is not defined, the bot will only allow commands from users of the bot's homeserver.