7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

この記事は株式会社ドットログによる
コンストラク体操日記 Advent Calendar 2025の 20日目 の記事です。

はじめに

こんにちは、ドットログのRsmです。先日、プログラミング/アプリ開発超初心者ながら、Flutterを用いて音声入力による家計簿アプリを自作しました。その際に、「音声認識ってどうやって搭載すんの?」→「なんかspeech_to_textっていう便利そうなのあるやん!」という安直な考えで、初めてspeech_to_textを使用しました。その中で、言語側から指定する音声入力の方法や音声入力AIとの違いなど、自分として非常に勉強になった内容を以下にまとめます↓

忙しい人向けに最初にまとめ

  • Flutterのspeech_to_textは実装が速く、端末の音声入力をそのまま使える機能。
  • 一方で、精度と安定性はiOSの標準音声認識(Apple Speechなど)に依存。
  • 短文入力なら十分使えるが、長文ディクテーションや高精度な議事録は、WhisperやクラウドASR、Aqua Voiceのような専用ASRを使用するべき。

この記事の対象読者

  • Flutterでアプリに音声認識機能を搭載したい

  • speech_to_textの書き起こし精度を知りたい

  • アプリ開発における音声認識方法の最適解を知りたい


1. speech_to_text って何?

speech_to_text端末(OS)に備わっている音声認識機能をFlutterから呼ぶ ためのパッケージです。
公式ページでも、用途は 「commands and short phrases(短いコマンドや短文)」 が主眼で、連続変換や常時待受は想定外 と明記されています。


2. iOS側の制約:導入の際に注意すべきこと

ここ重要。AppleはSpeech Recognitionについて、開発者向け資料で次のように注意しています。

  • 音声長は「約1分」前提で計画する(one-minute limit)
  • Speech Recognitionは 無料だが無制限ではない(端末/アプリ単位の制限に備える)

ソース:

つまり:

  • speech_to_textを使って 会議30分を連続で書き起こす みたいな設計は、
    分割・再接続・失敗時リトライ・UX設計 が必要になり、難易度上昇
  • 「短文入力(フォーム補助 / 検索 / コマンドetc...)」に限定すると安定

3. 精度のベンチマーク

音声認識の精度は一般に WER(Word Error Rate:単語誤り率) で比較されます(低いほど良い)。
Voice Writerが公開している Real-World Speech-to-text API Leaderboard(2025年10月現在) は、ノイズ・訛り・専門語を含む条件で複数ASRを比較しています。

このページの Mean WER(全体平均)を抜粋すると、概ね次の位置づけです(※英語評価):

系統 Mean WER(低いほど良い) 価格(目安)
端末(OS) Apple Dictation 16.5% Local
クラウド大手 Google Speech 13.1% $0.96/hr
クラウド大手 Microsoft 10.3% $0.18/hr
OSS(ローカル) Whisper Large 7.2% Local
API GPT-4o Transcribe 5.4% $0.36/hr

※注意:

  • これは 英語中心 のベンチです。日本語は評価方法が変わり得ます。
  • ただし「端末内蔵ASR(Apple Dictation相当)」より「Whisper/最新APIが低WERになりやすい」傾向は掴めます。

4. AI音声入力アプリ(Aqua Voice)と何が違うの?

Aqua Voiceは “アプリ横断の高精度ディクテーション体験” を提供するプロダクトで、Flutterプラグインではなく 外部ASR(API/アプリ) のカテゴリです。

Aqua Voice(Avalon)に関しては、評価情報が2系統あります。

(1)公式の主張

  • Avalon APIページでは AISpeakで97.3% accuracy を掲げています(開発者用語に特化したベンチ)
    https://aquavoice.com/avalon-api
  • 価格についてもページ内に記載があります(Free期間と、その後の$0.39/hr表記など)。

(2) ベンチマーク(Open ASR Leaderboard論文)

Open ASR Leaderboardの論文(arXiv)では、
「最上位のクローズド(商用)モデルとしてAqua Voice Avalonが6位に位置する」 と言及があります。

加えてAqua Voice公式ブログでは、OpenASR上での WER平均6.24% に言及しています。

つまり:
Aqua Voice(Avalon)などの外部APIは高精度なものも多いが、アプリに組み込む場合は API連携(録音→送信→受信) の設計が前提になり、 オフライン要件・レイテンシ・個人情報取り扱い・コストを考慮する必要があります。


5. 他言語のプラグインと比べてどう?

ここは自分も初心者としてよくわかっていなかった部分ですが、iOSでApple Speechにを使用する限り、FlutterだろうがSwiftだろうがReact Nativeだろうが精度は大きく変わりません
差が出るのは主に次の要因です。

  • どのASRエンジンを使うか(Apple / Whisper / Google / Azure / Avalon など)
  • 音声入力の設計(短文前提か、長文分割か、確定タイミング)
  • 音声の条件(マイク、距離、雑音、話速、固有名詞)

つまり「Flutterだから精度が悪い」というより、
OS内蔵Speechを使う設計だから、その範囲の精度になるわけですね。


6. じゃあ結局、iOS×Flutterで何を選ぶべき?

A. 短文入力を最速で載せたい(検索/フォーム補助/コマンド)

  • speech_to_text
  • 実装が超簡単、端末内蔵で手軽
  • iOSの「1分前提」を越える用途は設計コストが跳ね上がる

B. 書き起こし精度が最重要(議事録/長文/固有名詞)

  • Whisper / クラウドASR(Google/Azure等)
  • 外部ベンチでは端末系より低WERになりやすい傾向
  • 実装が増える(録音管理、非同期、課金、同意/プライバシー)

C. 入力体験まで最適化したい(AI用語/開発者用語/UX)

  • Aqua Voice(Avalon)等の専用ASR
  • 基本は外部連携が必要になる

最後に

いかがでしたでしょうか?Flutterのみならず、アプリやサービスに音声認識を搭載したい際にはぜひ参考にしてください!

7
2
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
7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?