ついに、米Microsoftから日本語版の「Cortana(コルタナ)」に関する正式発表が行われた。Windows Phone 8.1に採用され、Windows 10の主要機能として挙げられる「音声対応パーソナルアシスタント」が、あと数カ月中に日本語で利用可能になる(ただし、Windows Insider Programでのテスト運用)。
7月29日のWindows 10一般公開時にCortanaが提供される7カ国(米国、英国、中国、フランス、イタリア、ドイツ、スペイン)に加えて、今後数カ月内にも日本、カナダとインドの英語圏ユーザーに対してWindows Insider Programを通じた提供が開始されるという。また2015年の年末にはブラジルとメキシコ、カナダのフランス語圏ユーザーに対してもWindows Insider Program経由で提供される見込みだ。
MicrosoftではWindows 10の一般向けアップデート配信で「最新モデル(Current Branch:CB)」という方式を採用している。これは、Windows Insider Programを通じて問題ないと判断された最新ビルドについて、年2〜3回程度をめどに一般ユーザーへ大規模アップデートとして最新ビルドの配信を行う仕組みだ。
つまり、数カ月内にWindows Insider Programで日本語対応のCortanaが提供されるということは、このテストで特に問題がない限り、最速で次のCBの周期には一般ユーザーへの提供が始まることを意味している。早ければ年内、遅くても来年初頭には同サービスが一般公開となる可能性が高いと言える。
Cortanaの簡単な概要については、同機能が初搭載されたWindows Phone 8.1をベースに英語版サービスを紹介しているので、そちらを参照してほしい。今回はより踏み込んだ、「Cortanaとアプリ連携」の部分に注目してみたい。
Cortanaとはいわゆる「パーソナルアシスタント」であり、Appleの「Siri」やAndroidの「Google Now」に対抗する機能として、Microsoftが開発したものだ。ユーザーがカスタマイズした内容によって、好みや行動を理解し、適切な助言を与えてくる。
とはいえ、「音声対応パーソナルアシスタントなんて使わないから、別に日本語版が出よう出まいが構わない」という方もいるだろう。実際、筆者はiPhoneを使っているが、Siriをほとんど使わない。だがCortanaについては「(比較的)アプリ連携が重視されている」という側面があり、今後日本でのCortana対応アプリを増やすためにも早期での日本語対応は、Microsoftにとって非常に重要な意味を持つ。
このアプリ連携機能をうまく使うことで、スマートフォンのタッチ操作でいちいちアプリを切り替えなくても、Cortanaとの音声対話やテキストチャットのみで、必要な情報の引き出しや各種操作が行えたりと、「すべてのアプリで共通したユーザーインタフェース」になる可能性を秘めているのだ。
Windows 10では、Cortanaのアプリ連携に関して次の3つの仕組みがある。
Cortanaでは「Tokyo Weather」といったキーワードや「How about weather in Tokyo?」といった自然言語による対話型検索に加えて、特定の機能やアプリを呼び出す「Voice Command(音声コマンド)」の仕組みを設けているのが大きな特徴だ。
例えば、「Start a chat with Jonas」という音声コマンドによって無料通話・メッセージアプリ「Viber」で“Jonas”とのチャットウィンドウを開いたり、「What's up with Jonas」という音声コマンドで“Jonas”のFacebookでの投稿を確認したりと、特定の音声コマンドがアプリと結びつけられている。
ただし、これでは同種のアプリで区別がつかないケースもあるため、「Facebook, what's up with Jonas」のようにコマンド前後に「アプリ名」を付与することで、機能として呼び出したいアプリを明示するほうがいいだろう。
これ以外にも、より文章として自然な「what's up with Jonas on Facebook」のような音声コマンドを指定することもできる。この辺りの差異はCortanaが構文解析エンジンを通じて文脈を理解し、適時変換が行われている。
ただし、このようなケースで複数のキーワードが並ぶ場合、あまりに口語調だったり前置詞を省略しすぎたりすると、Cortanaが意味を理解できなくなるため、適度に文章を“リッチ”に表現しておくほうが構文理解の助けにつながるようだ。
このように音声コマンドを通じて目的となる(UWP:Universal Windows Platform)アプリを呼び出し、処理を引き継がせる仕組みが「フォアグラウンドでの音声コマンド」となる。特徴としては、アプリを直接呼び出して処理させる方式のため、「比較的複雑な処理が可能」だ。
内部的な処理としては、アプリは「Voice Command Definition(VCD)」というXMLファイルを記述しておき、これをWindows OS側に渡しておくことでCortanaとの連携が行える。VCDには「どの音声コマンドに対して、どのような処理を行う」といった手順が示されている。
例えば、Cortanaがユーザーから音声コマンドを受け取ると、それをいったんWindows Speech Platformを通じてクラウド上のMicrosoft Speech Recognition Service(音声認識サービス)へと問い合わせ、構文解釈した結果を受け取った段階でVCDと突き合わせてアプリの呼び出し動作を決定する。
下に示したVCDの記述例では、「AppName」と「Command」以降の音声コマンドに該当する“文章”が重要だ(特に「ListenFor」の部分)。Cortanaで特定のアプリを呼び出すときは、このAppNameに記述された「アプリ名」が利用される。音声コマンドは「Show [my] trip to {destination}」となっており、「Show my trip to〜」のフレーズに続くキーワードが「目的地」としてアプリへの引数となる。
AppNameと音声コマンドで対象となるアプリを特定した後、次のキーワードを引数にアプリを起動するのがフォアグラウンドでの動作手順だ。この時点でCortanaは再度呼び出されるまではアプリの動作に関知せず、当該のアプリが「アプリ内での音声認識」機能を利用したときのみ、音声入力ならびに構文解析エンジンとして駆動するようになる。
Copyright © ITmedia, Inc. All Rights Reserved.