ローカル音声認識・音声合成
最終更新
Macで韓国語の録音を文字起こしするには?WhisperKitの使い方
録音を文字にしてから、要約をローカルLLMへ渡します。
WhisperKitはWhisperの音声認識モデルをApple機器でCore ML1を使って動かすツールです。韓国語には多言語モデルを選び、音声ファイルから文字起こしを得ます。CLI2で1件を処理してから、長時間録音やマイク入力へ広げてください。
以下はApple Silicon搭載MacのCLIで音声ファイルを1件処理する例です。短く明瞭な韓国語の録音なら、最初の結果を確認しやすくなります。他人の録音は同意を得たものを使ってください。 WhisperKit
ビルド環境と録音を用意する
macOS 14以降とXcode 16以降を用意します。最新ソースのビルドには、リポジトリのPackage.swiftが要求するSwiftツールのバージョンも必要です。Xcodeをインストールしたら、xcodebuild -versionとswift --versionで選択中のツールを確認します。
次のコマンドでソースを取得し、短いWAV録音をmeeting.wavという名前でargmax-oss-swiftフォルダーへ置きます。MP3・M4A・FLACも入力できます。別のファイルを使うときは、続くコマンドの--audio-pathを実際のファイル名に変えてください。実行前に正常に再生されることも確認します。
git clone --depth 1 https://github.com/argmaxinc/argmax-oss-swift.git
cd argmax-oss-swift
xcodebuild -version
swift --version
swift run argmax-cli transcribe --help
Apple端末では選んだアプリの推論バックエンドを確認する
WhisperKit は Apple Silicon 向けに Whisper モデルを Core ML に変換して実行する Swift 実装です。WhisperKit を選択したアプリはこの経路で文字起こしを行います。FluidAudio は Parakeet ベースの文字起こしと話者分離3を提供する別の Swift SDK で、README には ANE4 経路が記載されています。
使用するモデルとアプリで、韓国語対応、話者分離、入力ファイル形式を確認します。WhisperKit · FluidAudio
多言語モデルで最初の文字起こしを実行
最初はlarge-v3-v20240930_626MBで試せます。モデルの取得には通信と保存先が必要で、準備後に録音を処理します。録音で話した内容がターミナルに出るか確認してください。モデル選択・CLI
swift run argmax-cli transcribe \
--model large-v3-v20240930_626MB \
--audio-path ./meeting.wav韓国語にはbase.en・small.enなどの英語専用版ではなく、多言語モデルを選びます。動作確認だけならtinyを試し、議事録の品質は実用モデルで再評価します。人名、製品名、数字を原音と照合してください。
長い録音は分けて読み、マイク入力は別に試す
長い録音を一度にメモリへ読む負担を減らすには--incremental-loadingを付けます。ファイルを小さな区間で読み込みながら処理する機能です。同じファイルの標準実行と比べ、完了時間、メモリプレッシャー、文字起こしを記録します。
swift run argmax-cli transcribe \
--model large-v3-v20240930_626MB \
--audio-path ./meeting.wav \
--incremental-loadingマイク入力はファイルパスの代わりに--streamで試せます。macOSが求めたら実行アプリへマイク権限を許可します。ファイル処理を先に成功させると、モデルと入力機器の問題を切り分けやすくなります。
swift run argmax-cli transcribe \
--model large-v3-v20240930_626MB \
--stream
ANEの活用と文字起こし品質を確認する
初回実行が止まったときの確認
Swiftのビルド失敗なら最初のエラーとswift --versionを確認します。取得中なら通信と空き容量、ファイルを開けなければ現在のフォルダーとmeeting.wavの実際の場所を確認します。文字が空なら録音の再生とモデル選択から点検してください。
正常な結果が出たら同じ短い録音をもう一度実行します。それを基準に長いファイル、マイク、要約連携を1つずつ追加してください。待機の原因を見つけやすくなり、現在のMacで足りるか判断できます。

用語の注釈
Core ML — Apple機器で機械学習モデルを実行するフレームワークです。
本文に戻るCLI — Command-Line Interfaceの略です。ターミナルにコマンドを入力してプログラムを操作する方式です。
本文に戻る話者ダイアリゼーション — 録音を「誰がいつ話したか」の区間に分け、話者ごとにラベル付けする処理です。
本文に戻るNeural Engine — Apple Siliconに搭載されたニューラルネットワーク計算用の専用装置です。
本文に戻るCPU — OSや一般的なプログラム命令を実行する中央処理装置です。AIでは前処理やデータ転送などの汎用処理も担います。
本文に戻るGPU — 多くの計算を並列に処理するプロセッサーです。AIモデルの実行ではモデル計算を担います。
本文に戻る大規模言語モデル — 大量のテキストデータから言語パターンを学び、文脈に沿ったテキストを処理・生成するモデルです。
本文に戻る
よくある質問
- この記事で最初に確認すべきことは何ですか?
- WhisperKitはWhisperの音声認識モデルをApple機器でCore MLを使って動かすツールです。韓国語には多言語モデルを選び、音声ファイルから文字起こしを得ます。CLIで1件を処理してから、長時間録音やマイク入力へ広げてください。
