ふくふくHukuhuku Inc.
EP.47Toolbox 10分公開:

16.9MBのWhistleで英語をローカル文字起こし。7秒の音声で試した結果

16.9MBの音声認識モデルWhistleをMacのCPUで試用。人工英語音声の文字起こし結果と誤認識、日本語非対応、30秒の上限、初回取得と通信設定を整理します。

#Whistle#音声認識#ローカルAI#英語#検証
執筆 / 監修
松尾 亮合同会社ふくふく 代表社員

データ基盤・データパイプライン構築 / BI / 生成 AI 活用支援を専門とするエンジニア (28 年)。 本記事は AI 利用ポリシーに基づき、生成 AI の補助で執筆 → 人間が監修・編集して公開しています。

プロフィール詳細
シェア

Whistleは日本語の文字起こしには対応していません。 一方、海外の取引先との英語会議や、英語の製品デモから短い発言を抜き出して確認する用途なら、試す理由があります。今回、架空の予定を読み上げる7秒の人工音声をMacで処理すると、会議日時と提出期限は残り、前置詞には誤認識がありました。

はCactusが2026年10月2日に発表した、16.9MBのモデルで動くの仕組みです。本記事では2026年10月3日時点の公式仕様と、編集部が行った1回の小さな試用を分けて紹介します。実際の会議録音や雑音の多い音声、日本語は試していません。公式発表

英語の短い発言を、手元で確認する道具

Whistleはで動き、英語・ドイツ語・フランス語・スペイン語・イタリア語・オランダ語・ポーランド語の7言語を扱います。モデルが受け取る音声は16kHz・モノラルで、1回の処理は最大30秒です。単語ごとの開始時刻・終了時刻・確率も取得できます。日本語への翻訳や、会議の決定事項の要約を、この文字起こしだけで済ませる仕組みではありません。公式仕様と入出力

例えば、海外デモの「次の更新はいつか」という発言を短く切り出し、日付だけ聞き直す。英語会議の最後に出てきた提出期限を、録音と照合する。長い会議の完成した議事録を任せる前に、こうした確認作業に使うと、必要な品質を判断しやすくなります。

確認したい仕事使い方人が残す確認
海外デモの日時を控える対象の短い発言を文字にする日付、時刻、タイムゾーン
英語の依頼を引き継ぐ提出物と締切を抜き出す担当者名、否定、条件
英語動画に字幕を付ける単語時刻を編集の手掛かりにする認識内容と字幕の区切り
日本語会議を記録する今回の対象外日本語対応の別製品を選ぶ

重みと公開コードのライセンスはです。今回の実行に有料のやアカウントは使いませんでした。ただし、端末の計算資源、音声の準備、認識結果の確認には手間がかかります。「無料で取得できる」と「業務上の費用がかからない」は分けて考えます。モデル配布・コードのライセンス

7秒の人工音声で、残った情報と誤りを見る

編集部では、macOSに入っていたSamanthaの音声で、次の架空の英文を読み上げました。実在する顧客や会議の録音ではありません。英文と確認項目、音声ファイルを先に固定し、英語指定・キーワード補助なしで1回だけ処理しました。

読み上げた原文: The client meeting is on October sixth at ten a.m. Please send the draft by five p.m. on October fifth.

実際の出力: The client meeting is on October 6, the 10 a.m., please send the draft by 5 p.m. on October 5.

「会議は10月6日10時」「原稿は10月5日17時まで」という情報は残りました。一方、原文の at ten a.m. は the 10 a.m. に変わっています。日付の数字化や句読点の変更とは別に、単語の取り違えが起きたと読めます。日時を拾えたことと、英文が完全に正しいことは同じではありません。

項目今回の条件・観測
実行日時2026年10月3日 07:08 JST
端末Apple M2 Ultra、メモリ192GiB、macOS 27.0
音声Samanthaによる人工英語、約7.03秒、16kHz・モノラル
実行条件CPU 4スレッド、英語指定、キーワード補助なし、1回
結果文字列・英語の識別結果・20単語の時刻と確率を取得
今回調べていないこと複数話者、雑音、固有名詞、長時間録音、字幕時刻の正確さ

これは、聞き取りやすい人工音声を使った動作確認です。一般的な認識率、実際の会議での品質、他製品より速いという結論には使えません。単語時刻が返ったことは確認しましたが、その時刻が字幕に十分正確かは別の検査が必要です。入力音声と未修正の結果を再現用教材に収録しています。

同じ音声を試すための準備とコマンド

公式のPythonパッケージはで、音声の取得・処理を呼び出せます。Whistleの利用方法を記載した3.1.0は、日本時間10月3日02:07にPyPIへ配布されています。これはパッケージの配布日時で、モデルの初公開時刻とは区別します。3.1.0の配布情報

今回は環境全体へのインストールを避け、公式配布のMac向け実行ファイルとWhistleの重みを一時フォルダに置きました。Pythonパッケージ3.1.0自体をインストールした試験ではありません。教材にもモデル本体は含めず、使った版の取得先と照合値を記録しています。公式導入手順

教材を展開したフォルダで、READMEにある固定版の2ファイルを取得してください。取得後、次のコマンドで内容が編集部の使ったものと同じか確認できます。対象はApple Silicon搭載Macです。他のOSやCPU向け配布物へ、この実行ファイルを流用しないでください。

Bash
shasum -a 256 -c downloads.sha256chmod u+x needle

照合が2件とも OK になったら、教材の sample.wav を使って実行します。下記では、公式READMEが送信停止用に案内する環境変数を、この1コマンドへ渡します。result-local.json という新しい結果を作り、教材に入れた編集部の result.json と比較してください。

Bash
NEEDLE_TELEMETRY=0 DO_NOT_TRACK=1 ./needle \  --model whistle.cact --audio sample.wav \  --audio-language en --audio-word-timestamps --threads 4 \  > result-local.json

初回の実行ファイル・モデル取得には通信が必要です。 また、公式READMEでは既定でが有効と記載されています。「手元で推論できる」ことだけから、すべての利用方法が通信しないとは判断できません。上記では NEEDLE_TELEMETRY=0 と DO_NOT_TRACK=1 を指定します。ただし、取得した実行ファイルで、この設定だけにより送信が止まるかは未検証です。編集部はOS側でネットワーク接続を拒否し、その条件で文字起こしが完了することを確認しました。上のコマンド自体には、そのOS側の制限は含まれません。固定版READMEの設定・Python側の送信停止判定

教材の元の英文は、認識結果を照合するための正解資料です。今回、Whistleへ渡したのは音声と実行条件だけで、元の英文を答えのヒントとして渡してはいません。自社の試用でも、確認用原文を別に残しておくと、読みやすさだけで成功と判断することを避けられます。

「小さい」「速い」と、仕事に使えるかを分ける

公式発表の約11msは、Apple M4 ProのCPUで10秒の音声を処理したときの、最初の出力までの時間です。全音声の処理時間と同じではありません。また、公式の認識誤りの比較には、他モデルの開発元が公表した値が含まれます。すべてを編集部が同じ機械と音声で再測定した結果として読むことはできません。公式の比較条件

導入時は、速さより先に「間違うと困る情報」を決めます。請求金額、提出期限、製品名、否定表現を含む短い音声を用意し、文字起こし後に原音へ戻って確認します。今回なら、前置詞の誤りを直すだけでなく、10月5日と6日の役割を取り違えていないかが重要です。

単語ごとの確率も、人による確認を不要にする数値ではありません。今回の1件だけから「この値以上なら正しい」という基準は作れません。また、最大30秒を超える会議は分割が必要になり、発言の途中で切れた語や前後の文脈を別途確認することになります。本記事では、その分割処理も検証していません。

同じローカルAIでも、モデルや実行環境によって動く条件は変わります。MagnitudeをMacで試した記録では、別用途のモデルが読み込み途中で止まった経緯を残しました。Whistleについても、まず同梱の短い人工音声で起動を確かめ、次に利用許可のある実務音声で必要な情報が残るかを調べる順序が現実的です。

よくある質問

日本語の会議でも使えますか?
2026年10月3日時点の公式対応言語に日本語は含まれていません。本記事の試用も英語だけです。日本語音声や英語から日本語への翻訳に使えると推測せず、対応する別の仕組みを選んでください。
30分の英語会議を、そのまま処理できますか?
公式の1回の処理上限は30秒です。長い録音には分割や結果の結合が必要で、話者別の整理や要約も別の工程です。今回確認したのは、約7秒の単一話者の人工音声から文字列を得るところまでです。
無料で、音声を外部へ送らずに試せますか?
公開された重みと実行ファイルを取得し、今回のように手元で推論できます。有料APIは使いませんでした。ただし、初回取得の通信と、既定の利用状況送信は別に確認が必要です。教材では公式が案内する環境変数を指定しますが、その効果だけを根拠にせず、編集部はOS側でもネットワークを遮断して試しました。
シェア

この記事の感想を教えてください

あなたの 1 クリックで、本当にこの記事は更新されます。「もっと詳しく」「続編希望」が一定数集まった記事は、 ふくふくが 実際に内容を拡充したり続編記事を公開 します。 送信したリアクションはお使いのブラウザに記録され、再カウントされません。

シリーズの外も探す:

まずは、現状を聞かせてください。

要件が固まっていなくて大丈夫です。現状診断と方針提案までを無料でお手伝いします。

無料相談フォームへ hello [at] hukuhuku [dot] co [dot] jp