概要
Whistleは、軽量で高速な音声認識モデル。 16.9MBの単一ファイルで、CPUのみで動作し追加依存なし。 英語を含む7言語対応、30秒までの音声をローカルで即時文字起こし。 Needleエンジンと同一バイナリで統合利用可能。 主要な既存モデルよりも小型・高速・多機能。
Whistle:超軽量・高速な音声認識モデルの特徴
- Whistle は、モバイル、ウェアラブル、ロボット、スマートホーム、自動車、マイコン向け音声認識モデル
- 16.9MB の単一ファイル構成、追加依存なし、CPU上で動作
- Needle と同じC++エンジン・コンテナ・量子化方式を使用
- 英語、ドイツ語、フランス語、スペイン語、イタリア語、オランダ語、ポーランド語の 7言語対応
- 30秒(16kHzモノラル)までの音声 を端末内で一括処理
- 言語自動検出 機能、または明示指定も可能
- 単語ごとのタイムスタンプ と確率値を出力
- 音声埋め込み(embedding) も取得可能(80msごとに1行)
モデル構造と処理フロー
-
エンコーダ
- 16kHzモノラル音声を、80ログメルバンド(25msウィンドウ、10msホップ、250-3500Hz)に変換
- Conv層(128ch, kernel 9, 3段階ダウンサンプリング)で375フレーム/30秒に圧縮
- Simple Attentionブロック×8 (Needleと共通、非因果型)
-
デコーダ
- Laddered Simple Attentionブロック×8 (幅512、8q:2kv、3-tap因果畳み込み、Needleと共通構造)
- 各層で Gated Cross Attention を用いエンコーダ出力を参照
- ビームサーチ×5 (長さ正規化log確率でスコアリング)
- キーワードバイアス (Aho-Corasickオートマトンで特定フレーズのlog確率を上昇)
-
語彙
- 8,192テキストピース+7言語トークン(言語検出結果もトークンで出力)
- 最大320トークンまでのトランスクリプト
-
静音判定
- 音声クリップのラウドネスを事前計測し、しきい値未満なら認識処理をスキップ
性能比較とベンチマーク
-
Whistle
- サイズ: 16.9MB
- 初回トークン出力までの時間 :11.1ms(10秒音声時)
- デコード速度 :1,319トークン/秒
- Word Error Rate :LibriSpeech, SPGISpeech, Earnings-22, FLEURS平均で高精度
-
Whisper base
- サイズ:145.3MB
- 初回トークン:73.2ms
- デコード速度:266トークン/秒
-
Moonshine tiny v2
- サイズ:41.9MB
- 初回トークン:22.8ms
- デコード速度:262トークン/秒
-
Whistleは主要ベンチマークでWhisper baseやMoonshine tiny v2を上回る小型・高速・多機能モデル
利用方法・API・ツール連携
-
Needleエンジン でWhistleモデルを直接ロード可能
needle --model whistle.cact --audio clip.wav- 複数モデル・ツール連携も同一バイナリで実現
- 例:音声→ツールコールまで一括処理&JSON出力
-
Python API
pip install cactus-needle- サンプル:
import needle print(needle.transcribe("clip.wav")["text"]) - オプション:
word_timestamps=True,keywords=[...],language="de"など
-
C API
needle_load,needle_transcribe,needle_embedで全機能提供- 17プラットフォーム(macOS, Linux, Android, iOS, Windows ARM, RISC-V, MIPS, ブラウザ, WASI等)向けバイナリ・ライブラリ同梱
-
ソース・モデル配布
- ウェイトはHugging Faceで公開
- エンジン・プラットフォーム別フォルダはCactus-Compute/needle3
- ソースコードはGitHubで公開
Whistleの導入メリット
- 端末内処理 でプライバシー保護・低遅延
- 小型・高速 で組み込み機器やモバイルにも最適
- 多言語・高精度 で幅広い用途に対応
- Needleとの親和性 でツール連携や音声UI開発が容易
- クロスプラットフォーム 対応(主要OS/アーキテクチャを網羅)
Whistleと他モデルの比較・選定ポイント
- Whisper base や Moonshine tiny v2 よりも圧倒的に 軽量 かつ 高速
- 音声認識精度 もベンチマークで高水準
- 即時ツール連携 や 埋め込み抽出 など、音声UI開発に必要な機能をワンストップで提供
- 依存ゼロ・単一ファイル なので、IoTやエッジデバイスにも展開容易
まとめ
- Whistle は、音声認識の新しい標準となる軽量・高速・多機能モデル
- 組み込み・モバイル・スマートデバイス 向けの新規開発や既存システムのアップグレードに最適
- プライバシー・クロスプラットフォーム・ツール連携 重視のプロジェクトに特に推奨