1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

オンデバイス音声入力をMacアプリに組み込んで分かったこと:公開WERと実測のずれ、語彙ヒントの「復唱」

1
Posted at

韓国・済州で、Mac向けの音声入力アプリを個人に近い体制で作っています。話すと、いまカーソルがあるアプリに文字が入る種類のアプリです。認識はすべて端末内(Apple Silicon)で、Qwen3-ASR を標準、Whisper を選択式にしています。

この記事では、製品の紹介ではなく、組み込みで実際にはまった点を3つ書きます。

1. 公開WERのランキングは自分の音声では再現しなかった

言語ごとにモデルを選ぶとき、最初は公開ベンチマークのWERを見て候補を決めました。ところが実マイク・実際の話し方でA/Bを取ると、順位が予想と入れ替わる言語がありました。
いまは「実音声でA/Bしていないモデルは採用しない」をルールにしていて、専用モデルを使っているのはヒンディー語とタイ語だけです。他は汎用モデルのほうが良かった、というのが実測の結論でした。

2. 語彙ヒントは無音で「復唱」される

固有名詞対策として、ユーザー辞書をデコーダへのヒントとして渡していました。すると、ほぼ無音の区間でモデルがヒントの単語をそのまま出力し、さらに処理が詰まることがありました。ログ上は最悪で 282 秒の遅延です。
対策は単純で、S/N比が足りない音声にはヒントを渡さない、無効と判定した転写は捨てる、の2点です。「遅い」という報告が来たら、まずログの出力内容を見るようになりました。

3. 言っていない文が出てくる

35日分のログを調べると、自前で韓国語向けに追加学習したモデル(Qwen3 ベース)が、無音時に学習データ由来の例文を出していました。学習データに無音の例がほとんどなかったのが原因です。テキストのフィルタで弾こうとしても、別の定番文に移るだけで抜けます。ベースの Qwen3 では出ていません。

使い方の話:AIコーディングツールに口頭でプロンプト

自分がいちばん使うのは、ターミナルの Claude Code に長い指示を口で伝える使い方です。「自動Enter」をオンにすると話し終えたら送信まで進みます。説明を省かなくなるので、プロンプトの質も上がりました。

制約

Apple Silicon・macOS 15以上のみ。録音ファイルの文字起こし用途ではありません。日本語を含む21言語に対応しています(うち8言語は今週追加したベータ)。


このアプリは Sorimac という名前で配布しています(買い切り $9.99、3日間無料)。https://sorimac.com/ja/?utm_source=qiita&utm_medium=community

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?