WhisperKit ist ein Swift-Paket, das das beliebte Whisper-Spracherkennungsmodell von OpenAI mit dem CoreML-Framework von Apple für effiziente, lokale Inferenz auf Apple-Geräten integriert.
Schauen Sie sich die Demo-App auf TestFlight an.
[Blogbeitrag] [Python Tools Repo]
Installation
Swift-Paketmanager
Voraussetzungen
Xcode-Schritte
Paket.swift
Homebrew
Erste Schritte
Kurzes Beispiel
Modellauswahl
Modelle generieren
Schnelle CLI
Mitwirken und Roadmap
Lizenz
Zitat
WhisperKit kann mit dem Swift Package Manager in Ihr Swift-Projekt integriert werden.
macOS 14.0 oder höher.
Xcode 15.0 oder höher.
Öffnen Sie Ihr Swift-Projekt in Xcode.
Navigieren Sie zu File
> Add Package Dependencies...
.
Geben Sie die Paket-Repository-URL ein: https://github.com/argmaxinc/whisperkit
.
Wählen Sie den Versionsbereich oder eine bestimmte Version.
Klicken Sie auf Finish
um WhisperKit zu Ihrem Projekt hinzuzufügen.
Wenn Sie WhisperKit als Teil eines Swift-Pakets verwenden, können Sie es wie folgt in Ihre Package.swift-Abhängigkeiten einbinden:
Abhängigkeiten: [ .package(url: "https://github.com/argmaxinc/WhisperKit.git", von: "0.9.0"),],
Fügen Sie dann WhisperKit
als Abhängigkeit für Ihr Ziel hinzu:
.Ziel( Name: „IhreApp“, Abhängigkeiten: ["WhisperKit"]),
Sie können WhisperKit
Befehlszeilen-App mit Homebrew installieren, indem Sie den folgenden Befehl ausführen:
brew installiere whisperkit-cli
Um mit WhisperKit zu beginnen, müssen Sie es in Ihrem Projekt initialisieren.
Dieses Beispiel zeigt, wie eine lokale Audiodatei transkribiert wird:
WhisperKit importieren// WhisperKit mit Standardeinstellungen initialisierenTask { let pipe = try? Warten Sie auf WhisperKit() let transcription = try? wait pipe!.transcribe(audioPath: "path/to/your/audio.{wav,mp3,m4a,flac}")?.text print(transcription)}
WhisperKit lädt automatisch das empfohlene Modell für das Gerät herunter, sofern nicht angegeben. Sie können auch ein bestimmtes Modell auswählen, indem Sie den Modellnamen eingeben:
pfeifen lassen = versuchen? Warten Sie auf WhisperKit(WhisperKitConfig(Modell: „large-v3“))
Diese Methode unterstützt auch die globale Suche, sodass Sie Platzhalter verwenden können, um ein Modell auszuwählen:
pfeifen lassen = versuchen? Warten Sie auf WhisperKit(WhisperKitConfig(Modell: „distil*large-v3“))
Beachten Sie, dass die Modellsuche ein einzelnes Modell aus dem Quell-Repository zurückgeben muss, andernfalls wird ein Fehler ausgegeben.
Eine Liste der verfügbaren Modelle finden Sie in unserem HuggingFace-Repo.
WhisperKit wird außerdem mit dem unterstützenden Repo whisperkittools
geliefert, mit dem Sie Ihre eigenen fein abgestimmten Versionen von Whisper im CoreML-Format erstellen und für HuggingFace bereitstellen können. Sobald sie generiert sind, können sie geladen werden, indem einfach der Repo-Name in den Namen geändert wird, der zum Hochladen des Modells verwendet wurde:
let config = WhisperKitConfig(model: „large-v3“, modelRepo: „username/your-model-repo“)let pipe = try? Warten Sie auf WhisperKit(config)
Die Swift-CLI ermöglicht schnelles Testen und Debuggen außerhalb eines Xcode-Projekts. Um es zu installieren, führen Sie Folgendes aus:
Git-Klon https://github.com/argmaxinc/whisperkit.gitcd whisperkit
Richten Sie dann die Umgebung ein und laden Sie Ihr gewünschtes Modell herunter.
Setup durchführen Machen Sie Download-Modell MODEL=large-v3
Notiz :
Dadurch wird nur das durch MODEL
angegebene Modell heruntergeladen (sehen Sie sich an, was in unserem HuggingFace-Repo verfügbar ist, wo wir das Präfix openai_whisper-{MODEL}
verwenden).
Stellen Sie vor dem Ausführen von download-model
sicher, dass git-lfs installiert ist
Wenn Sie alle verfügbaren Modelle in Ihren lokalen Ordner herunterladen möchten, verwenden Sie stattdessen diesen Befehl:
Download-Modelle erstellen
Sie können sie dann über die CLI ausführen mit:
Swift run whisperkit-cli transcribe --model-path „Models/whisperkit-coreml/openai_whisper-large-v3“ --audio-path „Pfad/zu/Ihrem/Audio.{wav,mp3,m4a,flac}“
Dadurch sollte eine Transkription der Audiodatei gedruckt werden. Wenn Sie den Ton direkt von einem Mikrofon streamen möchten, verwenden Sie:
Swift run whisperkit-cli transcribe --model-path "Models/whisperkit-coreml/openai_whisper-large-v3" --stream
Unser Ziel ist es, WhisperKit im Laufe der Zeit immer besser zu machen und wir würden uns über Ihre Hilfe freuen! Suchen Sie einfach im Code nach „TODO“, um eine Vielzahl von Funktionen zu finden, die noch erstellt werden müssen. Bitte beachten Sie unsere Beitragsrichtlinien zum Einreichen von Problemen, Pull-Requests und Codierungsstandards. Dort haben wir auch eine öffentliche Roadmap mit Funktionen, auf deren Entwicklung wir uns in der Zukunft freuen.
WhisperKit wird unter der MIT-Lizenz veröffentlicht. Weitere Einzelheiten finden Sie unter LIZENZ.
Wenn Sie WhisperKit für etwas Cooles verwenden oder es einfach nur nützlich finden, schreiben Sie uns bitte eine Nachricht an [email protected]!
Wenn Sie WhisperKit für akademische Arbeiten verwenden, finden Sie hier BibTeX:
@misc{whisperkit-argmax, Titel = {WhisperKit}, Autor = {Argmax, Inc.}, Jahr = {2024}, URL = {https://github.com/argmaxinc/WhisperKit}}