• Stars
    star
    775
  • Rank 58,632 (Top 2 %)
  • Language
    Python
  • License
    MIT License
  • Created about 2 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Build real time speech2text web apps using OpenAI's Whisper https://openai.com/blog/whisper/
giant microphone

Whisper Playground

Instantly build real-time speech2text apps in 99 languages using faster-whisper, Diart, and Pyannote
Try it via the online demo

visitors

Playground.Demo.mp4

Setup

  1. Have Conda and Yarn on your device
  2. Clone or fork this repository
  3. Install the backend and frontend environment sh install_playground.sh
  4. Review config.py to make sure the transcription device and compute type match your setup. Review config.js to make sure it conforms to the backend config and that the backend address is correct.
  5. Run the backend cd backend && python server.py
  6. In a different terminal, run the React frontend cd interface && yarn start

Access to Pyannote Models

This repository uses libraries based on pyannote.audio models, which are stored in the Hugging Face Hub. You must accept their terms of use before using them. Note: You need to have a Hugging Face account to use pyannote

  1. Accept terms for the pyannote/segmentation model
  2. Accept terms for the pyannote/embedding model
  3. Accept terms for the pyannote/speaker-diarization model
  4. Install huggingface-cli and log in with your user access token (can be found in Settings -> Access Tokens)

Parameters

  • Model Size: Choose the model size, from tiny to large-v2.
  • Language: Select the language you will be speaking in.
  • Transcription Timeout: Set the number of seconds the application will wait before transcribing the current audio data.
  • Beam Size: Adjust the number of transcriptions generated and considered, which affects accuracy and transcription generation time.
  • Transcription Method: Choose "real-time" for real-time diarization and transcriptions, or "sequential" for periodic transcriptions with more context.

Troubleshooting

  • On MacOS, if building the wheel for safetensors fails, install Rust brew install rust and try again.

Known Bugs

  1. In the sequential mode, there may be uncontrolled speaker swapping.
  2. In real-time mode, audio data not meeting the transcription timeout won't be transcribed.

This repository hasn't been tested for all languages; please create an issue if you encounter any problems.

License

This repository and the code and model weights of Whisper are released under the MIT License.