No Description

renovator3000 02e3858864 Merge pull request 'Update docker/build-push-action action to v5' (#4) from renovate/docker-build-push-action-5.x into master 1 year ago
.github c74e66d768 Update docker/build-push-action action to v5 1 year ago
whisper.cpp @ c76c11e59c a6b423ceaa update dependencies 1 year ago
.dockerignore e4de1a1d0a big bang 2 years ago
.gitignore a6b423ceaa update dependencies 1 year ago
.gitmodules 26f403c679 migrate to native cpp implementation 2 years ago
Dockerfile 77fd627a4b Update python Docker tag to v3.12 1 year ago
README.md f2183cfc3c add language parameter 2 years ago
main.py cd3e70dbbc fix accessing preloaded model 2 years ago
renovate.json e29743a756 Add renovate.json 1 year ago
requirements.txt b3f2de898d Update dependency simplematrixbotlib to v2.10.2 1 year ago
speech_recognition.py f2312f3faa non verbose wget 1 year ago

README.md

Matrix Speech-To-Text Bot

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.

Usage

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"

Configuration

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>.