質問:対話処理が遅い
通常、Sotaが対話を行う場合には下記の処理を行います。
1. 人が発話する
2. Sotaがマイクで録音
3. 録音データを音声認識サーバ(クラウド)に送信
4. 認識結果をSotaが受信
5. (キャッシュ※が無ければ)返答内容を音声合成サーバ(クラウド)に送信
6. (キャッシュが無ければ)合成された音声データをSotaが受信
7. Sotaが返答
※一度音声した内容は一時的に本体内にキャッシュされます(合計10分間分ほど)
上記のように、基本的に3~6において2つのクラウドサーバとの通信が必要なため改善策としてまず挙げられるものとしては「インターネット環境の高速化」となります。
Sota(Edison版)であれば下記の製品を使用することで、有線LAN接続が可能となり、高速化が見込まれます。
(対応製品は下記のみであり、後継機等は非対応になります)
BUFFALO 10/100M USB2.0用 LANアダプター LUA3-U2-ATX
http://buffalo.jp/products/catalog/network/lua3-u2-atx/
もう一つの対応策としては「返答内容の事前準備」が挙げられます。
先の処理フローの通り、通常では2つのクラウドサーバに対し通信を行いますが、返答処理に関してはSota内部に音声データを予め入れておく(キャッシュデータまたは別のリソースファイルの準備をする)ことで、音声合成サーバとの通信を行う分の時間が短縮可能になります。