WhisperKit は、Apple デバイス上で効率的なローカル推論を実現するために、OpenAI の人気のある Whisper 音声認識モデルと Apple の CoreML フレームワークを統合する Swift パッケージです。
TestFlight のデモ アプリをチェックしてください。
[ブログ投稿] [Python ツール リポジトリ]
インストール
Swiftパッケージマネージャー
前提条件
Xcodeの手順
パッケージ.swift
自作
はじめる
簡単な例
モデルの選択
モデルの生成
迅速なCLI
貢献とロードマップ
ライセンス
引用
WhisperKit は、Swift Package Manager を使用して Swift プロジェクトに統合できます。
macOS 14.0以降。
Xcode 15.0以降。
Xcode で Swift プロジェクトを開きます。
File
> Add Package Dependencies...
に移動します。
パッケージ リポジトリ URL: https://github.com/argmaxinc/whisperkit
を入力します。
バージョン範囲または特定のバージョンを選択します。
Finish
をクリックして、WhisperKit をプロジェクトに追加します。
WhisperKit を Swift パッケージの一部として使用している場合は、次のように Package.swift の依存関係に含めることができます。
依存関係: [ .package(url: "https://github.com/argmaxinc/WhisperKit.git", from: "0.9.0"),],
次に、 WhisperKit
ターゲットの依存関係として追加します。
。ターゲット( 名前: "YourApp"、 依存関係: ["WhisperKit"])、
次のコマンドを実行すると、Homebrew を使用してWhisperKit
コマンド ライン アプリをインストールできます。
醸造インストールウィスパーキット-cli
WhisperKit を使い始めるには、プロジェクト内で WhisperKit を初期化する必要があります。
この例では、ローカル オーディオ ファイルを文字起こしする方法を示します。
import WhisperKit// WhisperKit をデフォルト設定で初期化するTask { let Pipe = try? await WhisperKit() 文字起こし = 試してみますか? await Pipe!.transcribe(audioPath: "path/to/your/audio.{wav,mp3,m4a,flac}")?.text print(transcription)}
指定しない場合、WhisperKit はデバイスの推奨モデルを自動的にダウンロードします。モデル名を渡して特定のモデルを選択することもできます。
let Pipe = 試してみますか? await WhisperKit(WhisperKitConfig(モデル: "large-v3"))
このメソッドはグロブ検索もサポートしているため、ワイルドカードを使用してモデルを選択できます。
let Pipe = 試してみますか? await WhisperKit(WhisperKitConfig(モデル: "distil*large-v3"))
モデル検索ではソース リポジトリから単一のモデルを返す必要があることに注意してください。返さない場合はエラーがスローされます。
利用可能なモデルのリストについては、HuggingFace リポジトリを参照してください。
WhisperKit には、サポートするリポジトリのwhisperkittools
も付属しています。これを使用すると、Whisper の独自の微調整されたバージョンを CoreML 形式で作成して HuggingFace にデプロイできます。生成されたら、リポジ名をモデルのアップロードに使用したものに変更するだけでロードできます。
let config = WhisperKitConfig(model: "large-v3", modelRepo: "username/your-model-repo")let Pipe = try? WhisperKit (構成) を待つ
Swift CLI を使用すると、Xcode プロジェクトの外部での迅速なテストとデバッグが可能になります。インストールするには、次のコマンドを実行します。
git clone https://github.com/argmaxinc/whisperkit.gitcd ウィスパーキット
次に、環境をセットアップし、必要なモデルをダウンロードします。
セットアップを行う ダウンロードモデル MODEL=large-v3 にする
注記:
これにより、 MODEL
で指定されたモデルのみがダウンロードされます (HuggingFace リポジトリで利用可能なものを参照してください。ここでは、接頭辞openai_whisper-{MODEL}
が使用されています)。
download-model
実行する前に、 git-lfs がインストールされていることを確認してください
利用可能なすべてのモデルをローカル フォルダーにダウンロードする場合は、代わりに次のコマンドを使用します。
ダウンロードモデルを作る
その後、次のコマンドを使用して CLI 経由でそれらを実行できます。
迅速に実行するwhisperkit-cli transcribe --model-path "Models/whisperkit-coreml/openai_whisper-large-v3" --audio-path "path/to/your/audio.{wav,mp3,m4a,flac}"
音声ファイルの転写を印刷する必要があります。マイクからオーディオを直接ストリーミングしたい場合は、次を使用します。
迅速に実行 whisperkit-cli transcribe --model-path "Models/whisperkit-coreml/openai_whisper-large-v3" --stream
私たちの目標は、時間の経過とともに WhisperKit をさらに改良することです。皆様のご協力をお待ちしております。まだ構築されていないさまざまな機能については、「TODO」のコードを検索してください。問題、プルリクエスト、コーディング標準の送信については、貢献ガイドラインを参照してください。そこには、将来構築する予定の機能の公開ロードマップもあります。
WhisperKit は MIT ライセンスに基づいてリリースされています。詳細については、「ライセンス」を参照してください。
WhisperKit を何かクールな目的で使用したり、単に便利だと感じたりする場合は、[email protected] までお知らせください。
WhisperKit を学術研究に使用する場合は、BibTeX を次に示します。
@misc{whisperkit-argmax、タイトル = {WhisperKit}、著者 = {Argmax, Inc.}、年 = {2024}、URL = {https://github.com/argmaxinc/WhisperKit}}