Whisper Spracherkennungsdienst
Fork Repo: whisper-speech-recognition
Dieses Projekt demonstriert, wie man einen lokalen Spracherkennungsdienst mit dem Whisper-Modell von OpenAI in einer Python-Umgebung mit Flask bereitstellt. Das Ziel ist es, Benutzern zu zeigen, wie man KI-Modelle mit Leapcell (leapcell.io) bereitstellt.
Voraussetzungen
Bevor Sie die Anwendung ausführen, müssen Sie die Umgebung vorbereiten, indem Sie Abhängigkeiten einrichten und das erforderliche Whisper-Modell herunterladen. Führen Sie das folgende Skript aus:
sh prepare_env.sh
Dies wird:
- Die erforderlichen Python-Pakete installieren, einschließlich Flask, Gunicorn und erforderliche Abhängigkeiten.
- PyTorch und zugehörige Bibliotheken installieren (speziell für die CPU-Nutzung).
- Die OpenAI Whisper-Bibliothek installieren oder aktualisieren.
- Das erforderliche Whisper-Modell mithilfe eines Python-Skripts herunterladen.
Projektstruktur
.
├── LICENSE # Lizenzdatei für das Projekt
├── download_model.py # Python-Skript zum Herunterladen des erforderlichen Whisper-Modells
├── prepare_env.sh # Skript zum Einrichten der Umgebung und zum Herunterladen des Modells
├── static
│ └── audio_files
│ └── demo.wav # Beispielhafte Audiodatei zum Testen des Dienstes
└── templates
└── index.html # HTML-Vorlage für die Hauptseite des Dienstes
Ausführen der Anwendung
Sobald Sie die Umgebung vorbereitet haben, können Sie den Webdienst mit dem folgenden Befehl starten:
gunicorn -w 4 app:app
Dies startet die Flask-Anwendung mit Gunicorn für die Produktionsbereitstellung. Der Dienst ist unter http://localhost:5000
verfügbar, und Sie können eine Audiodatei zur Transkription hochladen. Es wird der transkribierte Text zurückgegeben.
Erklärung von prepare_env.sh
Dieses Skript ist für die Einrichtung der Umgebung und das Herunterladen des Whisper-Modells verantwortlich. Hier ist eine Aufschlüsselung dessen, was jede Zeile bewirkt:
#!/bin/sh
# Beende sofort, wenn ein Befehl mit einem Status ungleich Null beendet wird
set -e
# Installiere Flask, python - multipart und Gunicorn
pip install flask python-multipart gunicorn
# Installiere PyTorch und zugehörige Bibliotheken (torchvision, torchaudio)
# vom CPU - only Wheel Index von PyTorch
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
# Installiere oder aktualisiere die OpenAI Whisper-Bibliothek
pip install -U openai-whisper
# Führe ein Python-Skript aus, um das erforderliche Whisper-Modell herunterzuladen
# Dieses Skript lädt das Modell im Build-Schritt herunter
python download_model.py
set -e
: Stellt sicher, dass das Skript stoppt, wenn ein Befehl fehlschlägt.pip install flask python-multipart gunicorn
: Installiert Flask (für den Webdienst),python-multipart
(für die Handhabung von Datei-Uploads) und Gunicorn (einen produktionsreifen WSGI-HTTP-Server).pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
: Installiert PyTorch und zugehörige Bibliotheken (optimiert für CPU) für die Ausführung des Whisper-Modells.pip install -U openai-whisper
: Installiert oder aktualisiert die OpenAI Whisper-Bibliothek.python download_model.py
: Führt das Python-Skript aus, um das erforderliche Whisper-Modell für die Transkription herunterzuladen.