デバイス上での処理
別名:ローカル処理
更新日:
定義
デバイス上での処理(オンデバイス処理)とは、音声認識モデルが自分のコンピュータ上で動作し、音声がローカルで文字起こしされて、一切アップロードされないことを指します。その反対がクラウド処理で、音声はサーバに送られて文字起こしされます。
この違いは、3つのことを同時に左右します。プライバシー(サーバ上で傍受、召喚状による開示、漏えいの対象になるものがない)、オフライン時の動作(ローカルのツールはネットワークがなくても動き続ける)、そして多くの場合レイテンシ(往復の通信がない)です。その代わり、モデルが自分のハードウェアに収まり、その上で動作しなければなりません。デバイス上のツールが最小要件を明記しているのはこのためです。
機密性の高い仕事では、デバイス上で動くかどうかで、コンプライアンス審査をそのまま通るツールになるか、ベンダーとの契約が必要なツールになるかが決まります。音声を処理するのは自分のマシンだけだからです。
パイプライン全体か、その一部か
製品ページの「ローカル」には、いくつかの意味があり得ます。認識はデバイス上で行い、整形はクラウドで行うもの。認識はデフォルトでローカルだが、オプションでクラウドモデルも使えるもの。パーソナライズのためにアップロードされる画面コンテキスト以外はすべてローカルのもの。あるいは、録音、認識、整形、辞書、履歴、あらゆる状況の読み取りまで、本当にすべてがマシン上で完結するもの。ネットワークをオフにしても何も失わないのは最後のものだけで、自分のディスク以外のどこにも言葉のコピーが存在しないのも最後のものだけです。
確かめる方法
手間の少ない順に3つのテストがあります。Wi-Fiをオフにして音声入力してみてください。完全にデバイス上で動くツールなら、まったく同じように動作します。Little Snitchのようなネットワークモニタを開いてそのアプリに絞り込み、1時間音声入力してみてください。自分で始めたモデルのダウンロードやアップデートの確認など、開発元が文書化している接続以外は何も見えないはずです。プライバシーに関する声明を読み、アプリが行うすべての接続とその理由が書かれているか確認してください。3つすべてに合格したツールは、その言葉を名乗る資格があります。ポリシーのページは意図を説明し、ネットワークモニタは実際の動作を示します。
なぜ可能になったのか
2つのものが同時に登場しました。クラウドのエンジンに対抗できるほど優れたオープンな音声モデルと、それを動かす機械学習専用のハードウェアを備えた一般向けのチップです。Apple siliconなら、大きな認識モデルと小さな言語モデルを、ノートパソコン上でリアルタイムに並行して動かせます。かつてローカルのツールの特徴だった「遅くて精度が低い」という妥協はほぼなくなり、クラウド処理の利点として残るのは、デバイス間の同期くらいです。
Appleの音声入力がMac上で処理されているか確認する方法
Appleの音声入力は、Macと言語によって、デバイス上で処理される場合とAppleのサーバで処理される場合があります。どちらなのかを推測する必要はありません。macOSが設定画面で教えてくれます。
- アップルメニュー→「システム設定」と選択し、サイドバーで「キーボード」をクリックします。
- 「音声入力」に移動します。
- 「音声入力」のスイッチの下にある説明を読みます。音声入力の内容がデバイス上で処理されるかどうかが書かれています。
- 複数の言語で音声入力する場合は、音声入力の言語を切り替えて説明をもう一度読みます。対応状況は言語やMacのモデルによって異なるためです。
- デバイス上で処理されると書かれていない場合は、音声入力した内容は処理のためにAppleに送信されると考えてください。
音声入力中のネットワークの動きを確認する方法
アクティビティモニタはどのMacにも入っていて、何もインストールせずに最初の確認ができます。データの送り先まではわかりませんが、話している間にデータが動いているかどうかはわかります。
- ブラウザや同期ツールなど、ネットワークを多く使うアプリを終了して、測定値が落ち着くようにします。
- アクティビティモニタAppを開き、「ネットワーク」をクリックします。
- ウインドウの下部を見て、「送信データ」と「送信データ/秒」の値をメモします。
- テキストエディタに、まる1分間音声入力します。
- 数値を比べます。1分間の音声がMacの外に送られていれば、送信データがはっきり増えます。横ばいなら、デバイス上で処理されているということです。
- 「システム設定」→「Wi-Fi」でWi-Fiをオフにして、もう一度試します。それでも動くツールは、認識をサーバに頼っていません。
Appleの音声入力は音声をAppleに送信しますか?
デバイスと言語によって異なります。「Siriと音声入力」に関するAppleのプライバシー通知によると、音声と文字起こしがデバイス上で処理されてAppleのサーバに送信されないかどうかは、「キーボード」設定に表示されます。
そうでない場合、同じ通知によれば、音声入力した内容はサーバに送信されてそこで処理され、「Siriと音声入力の改善」にオプトインしない限り保存されません。Appleは、デバイスの仕様やパフォーマンス統計など、関連するリクエストデータを収集することも説明しています。
どのツールでも、確認すべき点は同じです:音声がローカルにとどまるのはどんな場合か、そうでないのはどんな場合か、ほかに何が送信されるかが明確に書かれているかどうかです。最善のケースしか説明していない記述は、十分な答えではありません。
よくある質問。
音声入力アプリにとって「デバイス上で処理」とは?
音声モデルが、理想的にはそのほかのすべての処理も、自分のコンピュータ上で動作することです。音声やテキストは一切アップロードされず、ツールはオフラインでも動作し、話した内容のコピーを保持するサーバは存在しません。
音声入力アプリが本当にデバイス上で動くか確かめるには?
Wi-Fiをオフにして音声入力してみてください。変わらず動作するはずです。次に、ネットワークモニタでしばらく観察し、見えたものを、プライバシーに関する声明に書かれた接続先と比べてください。ポリシーのページより、実際の動作のほうが確かです。
デバイス上の音声入力はクラウドより精度が低いですか?
Apple siliconと現在のオープンなモデルなら、意味のある差はありません。モデルがどこで動くかより、マイク、部屋、語彙のほうが影響は大きいです。クラウドに残る利点は精度ではなく、辞書をデバイス間で同期できることです。
Macの音声入力がデバイス上で処理されているかどうかを確認するには?
「システム設定」→「キーボード」を開き、「音声入力」のスイッチの下を見てください。音声入力がデバイス上で処理されるかどうかが、macOSによってそこに表示されます。
Macでマイクを使えるアプリを確認するには?
アップルメニュー→「システム設定」を選択し、「プライバシーとセキュリティ」をクリックしてから「マイク」をクリックします。リスト内のアプリごとに、アクセスのオン/オフを切り替えられます。
Macのマイクが使われているかどうかを知るには?
マイクが使用中か最近使用された場合、macOSはコントロールセンターに録音インジケータを表示します。