subDesTagesMitExtraKaese 40b9765fea add allowlist parameter | vor 8 Monaten | |
---|---|---|
.github | vor 11 Monaten | |
whisper.cpp @ fff24a0148 | vor 8 Monaten | |
.dockerignore | vor 2 Jahren | |
.gitignore | vor 1 Jahr | |
.gitmodules | vor 2 Jahren | |
Dockerfile | vor 1 Jahr | |
README.md | vor 8 Monaten | |
main.py | vor 8 Monaten | |
renovate.json | vor 1 Jahr | |
requirements.txt | vor 9 Monaten | |
speech_recognition.py | vor 1 Jahr |
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.