{"id":13405566,"url":"https://github.com/saharmor/whisper-playground","last_synced_at":"2025-04-12T18:41:37.914Z","repository":{"id":61305013,"uuid":"544445890","full_name":"saharmor/whisper-playground","owner":"saharmor","description":"Build real time speech2text web apps using OpenAI's Whisper https://openai.com/blog/whisper/","archived":false,"fork":false,"pushed_at":"2024-04-23T14:58:23.000Z","size":417,"stargazers_count":812,"open_issues_count":16,"forks_count":140,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-04-12T10:59:48.716Z","etag":null,"topics":["machine-learning","openai","speech-recognition","speech-to-text","whisper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saharmor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["saharmor"]}},"created_at":"2022-10-02T13:56:28.000Z","updated_at":"2025-03-29T11:56:15.000Z","dependencies_parsed_at":"2024-12-09T00:05:52.645Z","dependency_job_id":"cb768c87-8741-4783-9597-2bd3c46942d7","html_url":"https://github.com/saharmor/whisper-playground","commit_stats":{"total_commits":71,"total_committers":4,"mean_commits":17.75,"dds":"0.47887323943661975","last_synced_commit":"426cb85a661b703812f647a616a99b6eee319ea2"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharmor%2Fwhisper-playground","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharmor%2Fwhisper-playground/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharmor%2Fwhisper-playground/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saharmor%2Fwhisper-playground/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saharmor","download_url":"https://codeload.github.com/saharmor/whisper-playground/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248616727,"owners_count":21134121,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["machine-learning","openai","speech-recognition","speech-to-text","whisper"],"created_at":"2024-07-30T19:02:05.568Z","updated_at":"2025-04-12T18:41:37.891Z","avatar_url":"https://github.com/saharmor.png","language":"Python","funding_links":["https://github.com/sponsors/saharmor"],"categories":["Python","Repositories","Applications","NLP","For Developers"],"sub_categories":["Pipelines \u0026 Workflows"],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg width=\"60px\" src=\"https://user-images.githubusercontent.com/6180201/124313197-cc93f200-db70-11eb-864a-fc65765fc038.png\" alt=\"giant microphone\"/\u003e   \n \u003cbr/\u003e\n  \u003ch2 align=\"center\"\u003eWhisper Playground\u003c/h2\u003e\n  \u003ch6 align=\"center\"\u003eInstantly build real-time speech2text apps in 99 languages using faster-whisper, Diart, and Pyannote\u003c/h6\u003e\n  \u003ch6 align=\"center\"\u003e\u003ca href=\"https://whisperui.monsterapi.ai\"\u003eTry it via the online demo\u003c/a\u003e\u003c/h6\u003e\n\u003c/div\u003e\n\n[![visitors](https://hits.sh/github.com/saharmor/whisper-playground.svg?style=plastic\u0026label=visitors\u0026extraCount=55288)](https://hits.sh/github.com/saharmor/whisper-playground/)\n\nhttps://github.com/ethanzrd/whisper-playground/assets/79014814/44a9bcf0-e374-4c71-8189-1d99824fbdc5\n\n# Setup\n1. Have [`Conda`](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html) and [`Yarn`](https://classic.yarnpkg.com/lang/en/docs/install/#mac-stable) on your device \n2. Clone or fork this repository\n3. Install the backend and frontend environment `sh install_playground.sh`\n4. 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.\n5. Run the backend `cd backend \u0026\u0026 python server.py`\n6. In a different terminal, run the React frontend `cd interface \u0026\u0026 yarn start`\n\n### Access to Pyannote Models\n\nThis 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.\nNote: You need to have a Hugging Face account to use pyannote\n\n1. Accept terms for the [`pyannote/segmentation`](https://huggingface.co/pyannote/segmentation) model\n2. Accept terms for the [`pyannote/embedding`](https://huggingface.co/pyannote/embedding) model\n3. Accept terms for the [`pyannote/speaker-diarization`](https://huggingface.co/pyannote/speaker-diarization) model\n4. Install [huggingface-cli](https://huggingface.co/docs/huggingface_hub/quick-start#install-the-hub-library) and [log in](https://huggingface.co/docs/huggingface_hub/quick-start#login) with your user access token (can be found in Settings -\u003e Access Tokens)\n\n\n# Parameters\n\n- Model Size: Choose the model size, from tiny to large-v2.\n- Language: Select the language you will be speaking in.\n- Transcription Timeout: Set the number of seconds the application will wait before transcribing the current audio data.\n- Beam Size: Adjust the number of transcriptions generated and considered, which affects accuracy and transcription generation time.\n- Transcription Method: Choose \"real-time\" for real-time diarization and transcriptions, or \"sequential\" for periodic transcriptions with more context.\n\n## Troubleshooting\n\n- On MacOS, if building the wheel for safetensors fails, install Rust `brew install rust` and try again.\n\n## Known Bugs\n\n1. [In the sequential mode, there may be uncontrolled speaker swapping.](https://github.com/saharmor/whisper-playground/issues/27)\n2. [In real-time mode, audio data not meeting the transcription timeout won't be transcribed.](https://github.com/saharmor/whisper-playground/issues/28)\n\nThis repository hasn't been tested for all languages; please create an issue if you encounter any problems.\n\n## License\n\nThis repository and the code and model weights of Whisper are released under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaharmor%2Fwhisper-playground","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaharmor%2Fwhisper-playground","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaharmor%2Fwhisper-playground/lists"}