(57)【要約】      （修正有）【課題】非表音文字体系を使用する言語による音声コマンドのマッチングエラーを克服する。【解決手段】アプリケーションプロトタイプの試験中において、発話テキスト化サービスは、少なくとも１つのマイクロフォンによってキャプチャされた、非表音文字体系を使用する言語で発話された非表音音声コマンドを、音声コマンドの非表音文字体系の非表音テキスト文字列に変換する。表音言語翻訳機は、音声コマンドの非表音テキスト文字列を、音声コマンドの表音文字体系の表音テキスト文字列に翻訳する。比較モジュールは、音声コマンドの表音テキスト文字列を、アプリケーションプロトタイプに関連する保存済みの音声コマンドの、表音文字体系の表音テキスト文字列と比較して、マッチングする音声コマンドを識別する。実施モジュールは、マッチングする音声コマンドに関連するアクションを実施する。【選択図】図４
2020118955.tif 000002
【特許請求の範囲】
【請求項１】
音声機能を有するアプリケーションプロトタイプの試験を可能とするデジタル媒体環境において、少なくとも１つの計算デバイスによって実装される方法であって、
前記方法は：
前記少なくとも１つの計算デバイスによって、前記アプリケーションプロトタイプに関連する対話データをストレージ内に保持するステップであって、前記対話データは、保存済みの音声コマンド、各前記保存済みの音声コマンドに応答して実施されることになるアクション、及び少なくとも１つのビジュアルページを含む、ステップ；
前記アプリケーションプロトタイプのための試験段階中に、前記少なくとも１つの計算デバイスの表示デバイス上に、前記少なくとも１つのビジュアルページを表示するステップ；
少なくとも１つのマイクロフォンによって、非表音文字体系を使用する言語で発話された非表音音声コマンドをキャプチャするステップ；
前記非表音音声コマンドを発話テキスト化サービスへとリアルタイムで通信して、前記非表音音声コマンドを、前記音声コマンドの、前記非表音文字体系の非表音テキスト文字列へと変換するステップ；
前記音声コマンドの前記非表音テキスト文字列を、表音言語翻訳機へとリアルタイムで通信して、前記非表音テキスト文字列を、前記音声コマンドの、表音文字体系の表音テキスト文字列に翻訳するステップ；
前記音声コマンドの前記表音テキスト文字列を、前記アプリケーションプロトタイプに関連する前記保存済みの音声コマンドの、前記表音文字体系の表音テキスト文字列と比較して、マッチングする音声コマンドを識別するステップ；並びに
前記ストレージ中で、前記マッチングする音声コマンドに関連するアクションを実施するステップ
を含む、方法。
【請求項２】
前記保存済みの音声コマンドは、前記試験段階の前に、前記非表音文字体系の非表音テキスト文字列として受信される、請求項１に記載の方法。
【請求項３】
前記保存済みの音声コマンドは、前記ストレージ内に、前記保存済みの音声コマンドの前記非表音テキスト文字列として保持され、
前記表音言語翻訳機は、前記試験段階中に、前記保存済みの音声コマンドの前記非表音テキスト文字列を、前記保存済みの音声コマンドの、前記表音文字体系の前記表音テキスト文字列に翻訳する、請求項２に記載の方法。
【請求項４】
前記表音言語翻訳機は、前記試験段階の前に、前記保存済みの音声コマンドの前記非表音テキスト文字列を、前記保存済みの音声コマンドの、前記表音文字体系の前記表音テキスト文字列に翻訳し、
前記保存済みの音声コマンドは、前記ストレージ内に、前記保存済みの音声コマンドの前記表音テキスト文字列として保持される、請求項２に記載の方法。
【請求項５】
前記比較するステップは、前記音声コマンドの前記非表音テキスト文字列が、前記保存済みの音声コマンドの前記非表音テキスト文字列と共通して有する文字の数を比較するステップを含む、請求項１に記載の方法。
【請求項６】
前記マッチングする音声コマンドは、キャプチャされた前記音声コマンドの前記表音テキスト文字列と一致する文字を最も多く有する、前記マッチングする音声コマンドの前記表音テキスト文字列に、少なくとも部分的に基づいて識別される、請求項５に記載の方法。
【請求項７】
前記音声コマンドの前記非表音テキスト文字列は、北京官話で書かれており、
前記音声コマンドの、翻訳された前記表音テキスト文字列は、ピンインで書かれている、請求項１に記載の方法。
【請求項８】
前記音声コマンドの前記非表音テキスト文字列は、漢字で書かれており、
前記音声コマンドの、翻訳された前記表音テキスト文字列は、ローマ字で書かれている、請求項１に記載の方法。
【請求項９】
前記音声コマンドの前記表音テキスト文字列と、前記保存済みの音声コマンドの前記表音テキスト文字列とは、同一の表音文字体系で書かれている、請求項１に記載の方法。
【請求項１０】
前記表音言語翻訳機は、非表音文字体系を使用する言語の非表音テキスト文字列を、前記非表音テキスト文字列をラテン文字へとローマ文字化することによって、翻訳する、請求項１に記載の方法。
【請求項１１】
アプリケーションプロトタイプの少なくとも１つのビジュアルページを、前記アプリケーションプロトタイプの試験段階中に、表示デバイスに表示するための、試験モジュール；
前記アプリケーションプロトタイプの前記試験段階中に、少なくとも１つのマイクロフォンによってキャプチャされた、非表音文字体系を使用する言語で発話された非表音音声コマンドを、前記音声コマンドの、非表音文字体系の非表音テキスト文字列に変換するための、発話テキスト化サービス；
前記音声コマンドの前記非表音テキスト文字列を、前記音声コマンドの、表音文字体系の表音テキスト文字列に翻訳するための、表音言語翻訳機；
前記音声コマンドの前記表音テキスト文字列を、前記アプリケーションプロトタイプに関連する保存済みの音声コマンドの、前記表音文字体系の表音テキスト文字列と比較して、マッチングする音声コマンドを識別するための、比較モジュール；及び
前記マッチングする音声コマンドに関連するアクションを実施するための、実施モジュール
を備える、システム。
【請求項１２】
前記比較モジュールは、前記マッチングする音声コマンドを：
前記音声コマンドの前記非表音テキスト文字列が、前記保存済みの音声コマンドの前記非表音テキスト文字列と共通して有する文字の数を比較し；
キャプチャされた前記音声コマンドの前記表音テキスト文字列と一致する文字を最も多く有する、前記マッチングする音声コマンドの前記表音テキスト文字列に、少なくとも部分的に基づいて、前記マッチングする音声コマンドを識別する
ことによって、識別するよう構成される、請求項１１に記載のシステム。
【請求項１３】
前記音声コマンドの前記非表音テキスト文字列は、北京官話で書かれており、
前記音声コマンドの、翻訳された前記表音テキスト文字列は、ピンインで書かれている、請求項１１に記載のシステム。
【請求項１４】
前記音声コマンドの前記非表音テキスト文字列は、漢字で書かれており、
前記音声コマンドの、翻訳された前記表音テキスト文字列は、ローマ字で書かれている、請求項１１に記載のシステム。
【請求項１５】
前記実施モジュールは、前記アクションを：
前記マッチングする音声コマンドに関連する発話応答を識別し；
前記発話応答のテキスト文字列をテキスト発話化サービスに提供し；
前記テキスト発話化サービスから、前記発話応答のオーディオファイルを受信し；
前記オーディオファイルをプレイバックすることにより、前記発話応答を出力する
ことによって、実施するよう構成される、請求項１１に記載のシステム。
【請求項１６】
前記実施モジュールは、前記アクションを：
前記マッチングする音声コマンドに関連するページ遷移を識別し、ここで前記ページ遷移は、前記アプリケーションプロトタイプの追加のビジュアルページを識別し；
前記アプリケーションプロトタイプの前記異なるビジュアルページを表示する
ことによって、実施するよう構成される、請求項１１に記載のシステム。
【請求項１７】
前記保存済みの音声コマンドを、前記試験段階の前に、前記非表音文字体系の非表音テキスト文字列として受信する、請求項１１に記載のシステム。
【請求項１８】
前記保存済みの音声コマンドは、ストレージ中に、前記保存済みの音声コマンドの前記非表音テキスト文字列として保持され、
前記表音言語翻訳機は更に、前記試験段階中に、前記保存済みの音声コマンドの前記非表音テキスト文字列を、前記保存済みの音声コマンドの前記表音テキスト文字列に翻訳するよう構成される、請求項１７に記載のシステム。
【請求項１９】
前記表音言語翻訳機は更に、前記試験段階の前に、前記保存済みの音声コマンドの前記非表音テキスト文字列を、前記保存済みの音声コマンドの、前記表音文字体系の前記表音テキスト文字列に翻訳するよう構成され、
前記保存済みの音声コマンドは、ストレージ中に、前記保存済みの音声コマンドの前記表音テキスト文字列として保持される、請求項１７に記載のシステム。
【請求項２０】
前記表音言語翻訳機は、非表音文字体系を使用する言語の非表音テキスト文字列を、前記非表音テキスト文字列をラテン文字へとローマ文字化することによって、翻訳するよう構成される、請求項１１に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
ユーザは、ますます多くの異なる音声支援型タスクを達成するために、音声アシスタントデバイスと対話している。一般に、このような音声アシスタントデバイスは、ユーザから音声コマンドを受信するための１つ以上のマイクロフォンを用いて構成される。専用の音声アシスタントデバイスとしては、Ａｍａｚｏｎ（登録商標）Ｅｃｈｏ及びＧｏｏｇｌｅ（登録商標）Ｈｏｍｅが挙げられ、これらはそれぞれ、音声アシスタントプラットフォームＡｍａｚｏｎ（登録商標）Ａｌｅｘａ及びＧｏｏｇｌｅ（登録商標）Ａｓｓｉｓｔａｎｔとの対話を可能とする。しかしながら、携帯電話、デスクトップコンピュータ、ラップトップコンピュータ、ゲーミングシステム等といった他のデバイスも、音声アシスタントプラットフォームの機能を活用できる音声アシスタントデバイスとして構成できる。例えば、Ａｐｐｌｅ（登録商標）ｉＰｈｏｎｅ（登録商標）（携帯電話）は、ユーザが音声アシスタントプラットフォームＳｉｒｉ（登録商標）と対話できるようにする音声アシスタントデバイスとして機能できる。
【０００２】
このような音声アシスタントデバイスは、１つ以上のスピーカーによって可聴（音声）応答を出力すること；視覚コンテンツを表示すること；他の視覚効果（例えば発光ダイオード（ＬＥＤ）による指示）を提供すること；触覚フィードバックを提供すること等によって、ユーザの音声コマンドに対して、多様な異なる方法で応答するよう構成される。更に、音声アシスタントプラットフォームは、例えばサーモスタット、スピーカー、照明といった他のデバイスに、ユーザの音声コマンドに対して応答させることができる。家電製品に関する応答のいくつかの例としては：家屋の温度を調整するためにサーモスタットの温度を変更すること；音楽サービスからスピーカーでの音楽の再生を開始すること；家屋内の特定の照明をオン又はオフにすること等が挙げられる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
音声対話がより一般的になるに従って、設計者は、音声機能をアプリケーション又はウェブページのユーザインタフェースのビジュアルページに追加すること等によって、デジタルインタフェースに音声対話機能を追加し始めている。しかしながら、従来の設計アプリケーションは、アプリケーションプロトタイプのための音声機能の設計及び試験をサポートできない。従って、アプリケーションプロトタイプの設計及び音声支援型試験は困難である。更に、場合によっては、ユーザは、中国語又は日本語といった非表音文字体系を使用する言語を用いて、アプリケーションプロトタイプと対話することを望むが、これは高い割合のマッチングエラーにつながる。
【課題を解決するための手段】
【０００４】
これらの課題を克服するために、非表音文字体系を使用する言語のための音声支援型アプリケーションプロトタイプの試験中の音声コマンドマッチングについて記載する。音声支援型アプリケーションプロトタイプのための音声対話ツールは、デジタル媒体環境において活用されている。設計アプリケーションは、ユーザがあるアプリケーションのためのアプリケーションプロトタイプを設計できるようにする、設計インタフェースを提供する。一般に、上記アプリケーションプロトタイプは、一連のビジュアルページ、並びに上記ビジュアルページに関連付けられた様々なトリガー及び対応するアクションを含む。上記アプリケーションプロトタイプの設計を可能とするために、上記アプリケーションプロトタイプの少なくとも１つのビジュアルページを、上記設計インタフェースに表示する。上記設計インタフェースを制御することにより、上記アプリケーションプロトタイプの上記少なくとも１つのビジュアルページに関するトリガー及び関連するアクションを受信するための、対話インタフェースを提供する。上記トリガーは、音声コマンド、ユーザジェスチャー、又は時間遅延のうちの１つに対応してよく、上記アクションは、発話応答、上記アプリケーションプロトタイプの追加のビジュアルページへのページ遷移、又はメディアファイルのプレイバックのうちの１つに対応してよい。ユーザ入力を上記設計インタフェースによって受信することで、上記トリガー及び上記アクションを提供する。上記ユーザ入力に応答して、上記アプリケーションプロトタイプの上記トリガー、上記アクション、及び上記ビジュアルページを含むように、関連対話データが生成される。上記関連対話データを保存することにより、上記アプリケーションプロトタイプの試験段階中に、上記トリガー及び上記アクションを試験することが可能となる。
【０００５】
試験段階では、上記アプリケーションプロトタイプの少なくとも１つのビジュアルページが表示され、トリガーが検出される。上記トリガーは、一部を挙げると、ユーザから受信した音声コマンド、ユーザジェスチャー、又は時間遅延の満了に対応してよい。上記トリガーを、上記アプリケーションプロトタイプに関連する保存済みのトリガーと比較することにより、マッチングするトリガーを識別する。上記トリガーが音声コマンドに対応する場合、上記音声コマンドをリアルタイムでテキスト文字列に変換する音声テキスト化サービスに、上記音声コマンドを提供する。続いて上記音声コマンドの上記テキスト文字列を、上記アプリケーションプロトタイプに関連する音声コマンドの保存済みテキスト文字列と比較することにより、マッチングする音声コマンドを識別する。
【０００６】
上記マッチングするトリガーの識別に応答して、上記マッチングするトリガーに関連するアクションを、上記試験段階中に実施する。上記アクションは、発話応答、異なるビジュアルページへのページ遷移、又はメディアファイルのプレイバックに対応してよい。上記アクションが発話応答に対応する場合、上記発話応答をリアルタイムでオーディオファイルに変換するテキスト音声化サービスに、上記発話応答のテキスト文字列を提供してよい。
【０００７】
１つ以上の実装形態では、上記設計アプリケーションは、表音言語翻訳機を利用して、音声コマンドのテキスト文字列を、非表音文字体系を使用する言語から、上記テキスト文字列の表音バージョンに変換する。一例として、上記表音言語翻訳機は、北京官話、並びにカタカナ、ひらがな、及び漢字の組み合わせを、それぞれピンイン及びローマ字に翻訳してよい。上記試験段階では、非表音文字体系を使用する言語で発話された非表音音声コマンドを、少なくとも１つのマイクロフォンでキャプチャする。上記非表音音声コマンドは、上記非表音音声コマンドを、上記音声コマンドの上記非表音文字体系の言語の非表音テキスト文字列へと変換するための発話テキスト化サービスへと、リアルタイムで通信される。次に、上記音声コマンドの上記非表音テキスト文字列は、上記非表音テキスト文字列を上記音声コマンドの表音文字体系の表音テキスト文字列に翻訳するための表音言語翻訳機へと、リアルタイムで通信される。上記音声コマンドの上記表音テキスト文字列を、上記アプリケーションプロトタイプに関連する上記表音文字体系の保存済み音声コマンドの表音テキスト文字列と比較して、マッチングする音声コマンドを識別する。そして、上記マッチングする音声コマンドに関連するアクションを実施する。
【０００８】
この概要は、「発明を実施するための形態」において更に後述される複数の概念から選択されたものを、簡略化された形式で紹介している。従ってこの概要は、請求対象の主題の本質的な特徴を識別することを意図したものではなく、請求対象の主題の範囲の決定を補助するものとして使用されることも意図していない。
【０００９】
「発明を実施するための形態」は、添付の図面を参照して記述される。
【図面の簡単な説明】
【００１０】
【図１】図１は、本明細書に記載の音声支援型アプリケーションプロトタイプのための音声対話ツールを使用するために動作可能なある例示的実装形態の環境の図である。
【図２】図２は、図１の音声対話ツールが、対話データと、アプリケーションプロトタイプのビジュアルページとの間の関連を生成し、上記対話データ及び上記ビジュアルページを保持する、ある例示的実装形態を示す。
【図３】図３は、図１の設計アプリケーションの試験モジュールがアプリケーションプロトタイプの試験を容易にする、ある例示的実装形態を示す。
【図４】図４は、図１の設計アプリケーションの試験モジュールが、表音言語翻訳機を利用して、アプリケーションプロトタイプの試験中にキャプチャされた音声コマンドをマッチングさせる、ある例示的実装形態を示す。
【図５Ａ】図５Ａは、音声支援型アプリケーションプロトタイプの設計に使用される設計アプリケーションの設計インタフェースの例を示す。
【図５Ｂ】図５Ｂは、音声支援型アプリケーションプロトタイプの設計に使用される設計アプリケーションの設計インタフェースの例を示す。
【図５Ｃ】図５Ｃは、音声支援型アプリケーションプロトタイプの設計に使用される設計アプリケーションの設計インタフェースの例を示す。
【図６Ａ】図６Ａは、音声支援型アプリケーションプロトタイプの試験段階中の、設計アプリケーションの設計インタフェースの例を示す。
【図６Ｂ】図６Ｂは、音声支援型アプリケーションプロトタイプの試験段階中の、設計アプリケーションの設計インタフェースの例を示す。
【図７】図７は、音声支援型アプリケーションプロトタイプを設計する例示的手順を示す。
【図８】図８は、音声支援型アプリケーションプロトタイプを試験する例示的手順を示す。
【図９】図９は、表音言語翻訳を利用して、アプリケーションプロトタイプの試験中にキャプチャされた音声コマンドをマッチングさせる、例示的手順を示す。
【図１０】図１０は、本明細書に記載の技法の実施形態を実装するために、図１〜９を参照して説明及び／又は利用されているいずれのタイプの計算デバイスとして実装可能な例示的デバイスの、様々な部品を含む例示的システムを示す。
【発明を実施するための形態】
【００１１】
概観
ユーザは、ますます多くの異なる音声支援型タスクを達成するために、音声アシスタントデバイスと対話している。音声支援型対話によってこれらのタスクを達成するために、これを実施するための機能を、ソフトウェアアプリケーション、ファームウェア、サービス、プラグイン、スクリプト等の設計、開発及び配備によって、実現しなければならない。しかしながら、アプリケーションプロトタイプを設計するための従来のツールは、アプリケーションプロトタイプのための音声支援型機能を設計及び試験するユーザの能力を制限するものである。
【００１２】
これらの課題を克服するために、音声支援型アプリケーションプロトタイプのための音声対話ツールを、デジタル媒体環境で活用する。Ａｄｏｂｅ（登録商標）ＸＤ等の設計アプリケーションは、ユーザ（例えば設計者）が、あるアプリケーションのためのアプリケーションプロトタイプを設計できるようにする、設計インタフェースを提供する。一般に、上記アプリケーションプロトタイプは、上記アプリケーションのビジュアルページ、並びに上記ビジュアルページに関連する様々なトリガー及び対応するアクションを含む。ビジュアルページの設計の一部として、上記設計アプリケーションは、上記アプリケーションプロトタイプのためのユーザインタフェースコントロール、グラフィック及びテキストの設計及びレイアウトを可能とするツール及び機能を提供する。例えば設計インタフェースは、上記アプリケーションプロトタイプの複数のビジュアルページのシーケンス（例えばホームスクリーンページ及び他の様々なビジュアルページ）を設計でき、上記アプリケーションプロトタイプとの対話中に、これらのビジュアルページへとナビゲートできる。
【００１３】
機能するアプリケーションプロトタイプの設計を可能とするために、上記設計アプリケーションの音声対話ツールは、音声コマンドと発話プレイバックとの両方を、上記アプリケーションプロトタイプの設計に直接統合することを可能とする。これを実現するために、音声対話ツールは、設計インタフェースを制御して、上記アプリケーションプロトタイプのあるビジュアルページに関するトリガー及び関連するアクションを提供するためのコントロールを含む、対話インタフェースを提供する。本明細書で記載されるように、用語「トリガー（ｔｒｉｇｇｅｒ）」は、対応するアクションを誘発できるコマンドを指し、「アクション（ａｃｔｉｏｎ）」は、対応するトリガーの検出に応答して実施される動作である。トリガーの例としては例えば、音声コマンド、ユーザジェスチャー（例えばタップ、ドラッグ、スワイプ、キーストローク）、及び時間遅延が挙げられるが、これらに限定されない。アクションの例としては例えば、発話応答、アプリケーションプロトタイプの他のビジュアルページへのページ遷移、及びメディアファイル（例えばオーディオ又はビデオファイル）のプレイバックが挙げられるが、これらに限定されない。
【００１４】
対話インタフェースにより、ユーザは、定義されたトリガー及びアクションのリストから、トリガー及び関連するアクションを選択できる。選択後、ユーザは、選択したトリガー及びアクションを記述する入力を提供する。例えば、ある音声コマンドを上記アプリケーションプロトタイプのある特定のビジュアルページに関連付けるために、音声対話ツールによって、ユーザは、（例えばタッチ機能を用いて）上記特定のビジュアルページを選択し、対話インタフェースを介して（例えばコマンド又は応答をタイピングすること、コマンド又は応答をマイクロフォン又は通信可能に連結されたデバイスに対して発話すること等によって）、上記特定の要素に対応する異なる複数の音声コマンド又は発話応答を指定できる。音声コマンドは、音声支援型アプリケーションに対するユーザの発話を示すオーディオデータ又はテキストデータとして構成してよい。発話応答は、音声コマンドの受信に応答した、音声支援型アプリケーションの（例えば音声アシスタントによる）可聴出力を表す。
【００１５】
特に、対話インタフェースにより、ユーザは、様々な異なるタイプのトリガー及びアクションを、上記アプリケーションプロトタイプのビジュアルページに関連付けることができる。例えばユーザは、音声コマンドトリガーを対応する発話応答に関連付けることができる。しかしながら、設計アプリケーションにより、ユーザは、例えばあるユーザジェスチャートリガーをある発話応答に関連付けることにより、又はある音声コマンドを、上記アプリケーションプロトタイプのある異なるビジュアルページへの遷移に関連付けることにより、複数の音声対話をミックスして他のトリガー及びアクションとマッチングさせることができる。例えば、「天気はどうか（ｗｈａｔ’ｓ  ｔｈｅ  ｗｅａｔｈｅｒ）」等の音声コマンドへの応答において、上記アプリケーションは、今後の天気の概要を提示するビジュアルページに遷移できる。
【００１６】
続いて設計アプリケーションは、トリガー及びアクションの対話データを、対応するビジュアルページに関連付ける。これにより、上記アプリケーションプロトタイプの試験段階中に、各ビジュアルページに関連する対話データを、トリガーの識別に基づいて取得できる。場合によっては、対話データ及び関連するビジュアルページは、クライアントデバイスにローカルに保存してよい。例えば音声対話ツールは、対話データ及び関連するビジュアルページを含む、上記アプリケーションプロトタイプのためのファイルを生成して、上記ファイルをクライアントデバイスのストレージに保存させてよい。このようにすると、上記ファイルを他の設計者に容易に転送でき、上記他の設計者が設計を継続できる。あるいは、又は更に、対話データ及び関連するビジュアルページを、リモートストレージに保持してもよい。
【００１７】
設計アプリケーションは更に、上記設計アプリケーションを用いて生成された上記音声支援型アプリケーションプロトタイプの試験を可能とする、試験モジュールと共に実装される。試験段階の開始時、試験モジュールは、上記アプリケーションプロトタイプの第１のビジュアルページ（例えばホームページ）を表示する。ユーザが、音声コマンドを発話すること又はビジュアルページをタップすること等によって上記アプリケーションプロトタイプと対話すると、試験モジュールはリアルタイムで、発話応答を出力すること、異なるビジュアルページに遷移すること、メディアコンテンツのプレイバックを開始すること、又はこれらの組み合わせ等によって、このトリガーに関連する、対応するアクションを実施させる。このようにして、本明細書に記載のシステムにより、ユーザは試験段階中に上記アプリケーションプロトタイプと対話して、上記アプリケーションプロトタイプが意図した通りに機能することを保証できる。これにより、設計者は、開発段階の前に、音声支援型対話の設計によるいずれの問題を識別して改善できる。上記アプリケーションプロトタイプの設計及び試験後、設計アプリケーションは、上記アプリケーションプロトタイプの設計に従って上記アプリケーションを開発するためにアプリケーション開発者が利用できる指示及びデータを含む、設計仕様を生成できる。あるいは、設計アプリケーションは、設計及び試験プロセスの完了時に実行可能なアプリケーションを生成するように実装してもよい。
【００１８】
よって、本明細書に記載の技法は、音声コマンド及び発話プレイバックの両方をアプリケーションプロトタイプの設計に直接、簡単に統合できるようにすることにより、音声支援型アプリケーションプロトタイプの設計を簡略化し、その一方で、試験段階は、ユーザが音声コマンドを提供できるようにし、また発話プレイバックを出力して、ユーザが上記アプリケーションプロトタイプとの対話をシミュレーションできるようにする。
【００１９】
特に、音声コマンドのマッチング時、設計アプリケーションの試験モジュールは、上記音声コマンドのテキスト文字列が、保存済み音声コマンドのテキスト文字列と共通して有する文字数に基づいて、マッチングする音声コマンドを選択してよい。これは、英語等の表音文字体系を使用する言語に関しては、共通の文字をマッチングさせることによって、単語の音がどの程度近いかを近似できるため、良好に機能する。例えば英語の単語「ｈｏｕｓｅ」及び「ｍｏｕｓｅ」はいずれも、５文字のうちの４文字が共通であるため、これらは音も類似している。従って、音声テキスト化サービスが音声コマンドを、意図した音声コマンドと「音が類似した」テキスト文字列（例えば「ｍｏｕｓｅ」ではなく「ｈｏｕｓｅ」、又は「ｒｉｄｅ  ｓｈａｒｅ」ではなく「ｒｅｄ  ｃｈａｉｒ」）に誤って変換するという一般的なシナリオにおいて、本明細書に記載のマッチング技法は依然として、表音文字体系において同一の音を有する単語間の文字の共通性により、マッチングする保存済み音声コマンドを高い蓋然性で識別できる。しかしながら、北京官話及び日本語の漢字等の「非表音（ｎｏｎ‐ｐｈｏｎｅｔｉｃ）」文字体系を使用する言語に関しては、同一の音を有する単語が文字毎に容易に比較されないため、このマッチング技法は機能しない。
【００２０】
この問題を解決するために、設計アプリケーションは、非表音文字体系を使用する言語の音声コマンドのテキスト文字列を、上記テキスト文字列の表音バージョンに変換するために、表音言語翻訳機を利用する。一例として、表音言語翻訳機は、北京官話、並びにひらがな、カタカナ、及び漢字の混合を、それぞれピンイン及びローマ字に翻訳してよい。試験段階では、マイクロフォンが非表音言語の音声コマンドのオーディオをキャプチャし、この非表音言語の音声コマンドのオーディオを、発話テキスト化サービスに提供する。発話テキスト化サービスは、音声コマンドのオーディオを、非表音文字体系の音声コマンドのテキスト文字列に変換する。続いてこの非表音文字体系の音声コマンドのテキスト文字列を、表音言語翻訳機に提供し、上記表音言語翻訳機は、上記非表音文字体系の音声コマンドのテキスト文字列を、音声コマンドのテキスト文字列の表音バージョンに変換する。試験と同時に、又は試験前に、表音言語翻訳機は、上記アプリケーションプロトタイプに関連する保存済み音声コマンドの、非表音文字体系のテキスト文字列を、上記保存済み音声コマンドのテキスト文字列の音声バージョンに翻訳する。
【００２１】
次に、キャプチャされた音声コマンドのテキスト文字列の、翻訳された表音バージョンを、保存済み音声コマンドのテキスト文字列の翻訳された表音バージョンと比較する。キャプチャされた音声コマンドのテキスト文字列の表音バージョンと、保存済み音声コマンドのテキスト文字列の表音バージョンとの間の、共通する文字の数の決定に基づいて、マッチングする音声コマンドを識別する。非表音テキスト文字列を最初に音声バージョンに変換することにより、共通する文字の数に基づくこのような比較は、マッチングする音声コマンドを合理的な信頼性レベル内で識別するにあたって有効となる。よって、本明細書に記載の表音言語翻訳技法は、音声支援型アプリケーションプロトタイプの試験中の音声コマンドマッチングの精度を向上させる。
【００２２】
本明細書に記載されているように、用語「非表音テキスト文字列（ｎｏｎ‐ｐｈｏｎｅｔｉｃ  ｔｅｘｔ  ｓｔｒｉｎｇ）」とは、北京官話又は漢字といった非表音文字体系で書かれたテキスト文字列を指し、非表音音声コマンドとは、ユーザが非表音文字体系を使用する言語で音声コマンドを発話したときにマイクロフォンがキャプチャしたオーディオデータを指す。対照的に、「表音テキスト文字列（ｐｈｏｎｅｔｉｃ  ｔｅｘｔ  ｓｔｒｉｎｇ）」「表音テキスト文字列」又は「翻訳された表音テキスト文字列（ｔｒａｎｓｌａｔｅｄ  ｐｈｏｎｅｔｉｃ  ｔｅｘｔ  ｓｔｒｉｎｇ）」は、ピンイン又はローマ字といった表音的表現に翻訳された、非表音文字体系のテキスト文字列を指す。
【００２３】
以下の議論では、まず、本明細書に記載の技法を使用できる例示的環境について説明する。続いて、この例示的環境及び他の環境において実施できる、例示的な実装の詳細及び手順について説明する。従って、上記例示的手順の実施は、上記例示的環境に限定されず、また上記例示的環境は、上記例示的手順の実施に限定されない。
【００２４】
例示的環境
図１は、本明細書に記載の、非表音文字体系を使用する言語のための音声支援型アプリケーションプロトタイプの試験中に、音声コマンドマッチングを使用するために動作可能な、例示的実装形態における環境１００の図である。図示されている環境１００は、計算デバイス１０２、音声対話設計システム１０４、音声アシスタントプラットフォーム１０６、及びネットワーク１１０を介して互いに通信可能に連結される様々な音声アシスタントデバイス１０８を含む。
【００２５】
計算デバイス１０２、音声対話設計システム１０４、及び音声アシスタントプラットフォーム１０６の実装に使用できるデバイスは、多様な方法で構成できる。例えばこれらのデバイスは、デスクトップコンピュータ、ラップトップコンピュータ、（例えばタブレット又は携帯電話等のハンドヘルド構成を想定した）移動体デバイス等として構成してよい。よって、デバイスは、相当なメモリ及びプロセッサリソースを有するフルリソースデバイス（例えばパーソナルコンピュータ、ゲームコンソール）から、限定的なメモリ及び／又は処理リソースを有する低リソースデバイス（例えば移動体デバイス）にまで及んでよい。更に、「デバイス（ａ  ｄｅｖｉｃｅ）」は、図８に関連して更に説明されるように、「クラウドを介した（ｏｖｅｒ  ｔｈｅ  ｃｌｏｕｄ）」動作を実施するためにビジネスで利用される複数のサーバー等の、複数の異なるデバイスを表す場合がある。
【００２６】
音声アシスタントデバイス１０８もまた、多様な方法で構成できる。一般に、音声アシスタントデバイス１０８は、音声コマンド１１２をユーザ１１４から受信するための１つ以上のマイクロフォンを用いて構成される。専用の音声アシスタントデバイス１０８の例としては、Ａｍａｚｏｎ（登録商標）Ｅｃｈｏ及びＧｏｏｇｌｅ（登録商標）Ｈｏｍｅが挙げられ、これらはそれぞれ、音声アシスタントプラットフォームＡｍａｚｏｎ（登録商標）Ａｌｅｘａ及びＧｏｏｇｌｅ（登録商標）Ａｓｓｉｓｔａｎｔとの対話を可能とする。携帯電話、デスクトップコンピュータ、ラップトップコンピュータ、ゲーミングシステム等といった他のデバイスも、音声アシスタントプラットフォームの機能を活用できる音声アシスタントデバイス１０８として構成できる。例えば、Ａｐｐｌｅ（登録商標）ｉＰｈｏｎｅ（携帯電話）は、ユーザ１１４が音声アシスタントプラットフォームＳｉｒｉ（登録商標）と対話できるようにする音声アシスタントデバイス１０８として機能できる。この目的のために、音声アシスタントデバイス１０８は、音声コマンド１１２の受信に加えて、インタフェース（例えばタッチ、カメラ等）を通してユーザ入力を受信するよう構成できる。
【００２７】
いずれの場合においても、これらの音声アシスタントデバイス１０８は、それぞれの音声アシスタントプラットフォーム１０６と対話して、音声コマンド１１２に応答する。音声アシスタントプラットフォーム１０６は、音声コマンド処理モジュール１１６を有するものとして図示されている。音声コマンド処理モジュール１１６は、音声コマンド１１２によって開始されるリクエストを受信し、上記リクエストにどのように応答するかを決定し、音声アシスタントデバイス１０８、又は接続されたホーム、（例えばｅコマースプラットフォームによる商品の配送を容易にする）１つ以上のサービスそれぞれを提供するサービスプロバイダデバイス等といった、音声コマンド１１２が影響を及ぼすことができる他のいずれのデバイスに、応答を提供する機能を示す。従って、音声アシスタントデバイス１０８は、１つ以上のスピーカーを介して可聴発話応答１１５を出力すること、視覚コンテンツを表示すること、他の視覚効果（例えば発光ダイオード（ＬＥＤ）による指示）を提供すること、触覚フィードバックを提供すること等によって、無数の方法でユーザ１１４の音声コマンドに応答するよう構成してよい。更に、音声アシスタントプラットフォーム１０６は、例えばサーモスタット、スピーカー、照明といった他のデバイスに、ユーザ１１４の音声コマンド１１２に対して応答させることができる。家電製品に関する応答のいくつかの例としては：家屋の温度を調整するためにサーモスタットの温度を変更すること；音楽サーバーからスピーカーでの音楽の再生を開始すること；家屋内の特定の照明をオン又はオフにすること等が挙げられる。音声コマンド１１２は、音声アシスタントデバイス１０８を含むがこれに限定されない１つ以上のデバイスによる応答を開始するために、多様な設定（例えば住宅、職場等）で活用され得る。
【００２８】
図示されている環境１００の文脈において、設計アプリケーション１１８は、計算デバイス１０２のユーザ（例えば設計者）がソフトウェアアプリケーション、ファームウェア、サービス、プラグイン、スクリプト等といったアプリケーションに関するアプリケーションプロトタイプ１２０を設計できるようにする機能を示す。場合によっては、アプリケーションプロトタイプ１２０は、統合型ディスプレイスクリーンを含むＡｍａｚｏｎ（登録商標）Ｓｈｏｗ等の音声アシスタントプラットフォーム１０６のために設計される。しかしながら、アプリケーションプロトタイプ１２０は、音声支援型機能を含むいずれのタイプのアプリケーションのために設計してよい。設計アプリケーション１１８は、Ａｄｏｂｅ（登録商標）ＸＤ又はＡｄｏｂｅ（登録商標）Ｓｋｅｔｃｈといった設計アプリケーションとして実装してよい。しかしながら、設計アプリケーション１１８は、多様な異なるサードパーティコンテンツ生成又は編集アプリケーション、音声アプリケーション開発アプリケーション、開発環境等として実装してよい。
【００２９】
設計アプリケーション１１８が、ユーザがアプリケーションプロトタイプ１２０のビジュアルページ１２２のシーケンスを設計できるようにする、様々なインタフェース及びコントロールを提供する。ビジュアルページ１２２の設計の一部として、設計アプリケーション１１８は、アプリケーションプロトタイプ１２０のための様々なユーザインタフェースコントロール（例えば選択可能なボタン及びドロップダウンリスト）、グラフィック、テキスト等を設計及びレイアウトするためのツールを提供する。例えばユーザは、アプリケーションのホームページ、及びエンドユーザをナビゲートできる他のビジュアルページ１２２を設計してよい。
【００３０】
本明細書に記載の技法によると、設計アプリケーション１１８は音声対話ツール１２６を更に含み、これは、音声コマンド及び発話応答の形式の対話データ１２４を、アプリケーションプロトタイプ１２０の異なる複数のビジュアルページ１２２と関連付けるのを容易にする。これを実現するために、音声対話ツール１２６は、設計アプリケーション１１８の設計インタフェースを制御して、アプリケーションプロトタイプ１２０のビジュアルページ１２２のためのトリガー及び関連するアクションを受信するための対話インタフェースを提供する。本明細書に記載されているように、トリガーは、対応するアクションを誘発できる様々なユーザコマンドを含む。トリガーの例のごく一部としては、音声コマンド、ユーザジェスチャー（例えばタップ、ドラッグ、スワイプ、キーストローク）、及び時間遅延が挙げられる。アクションの例のごく一部としては、発話応答、アプリケーションプロトタイプの他のビジュアルページへのページ遷移、及びメディアファイル（例えば音声ファイル）のプレイバックが挙げられる。
【００３１】
場合によっては、対話インタフェースにより、ユーザは、定義されたトリガー及びアクションのリストから、トリガー及び関連するアクションを選択できる。選択後、ユーザは、選択したトリガー及びアクションを記述する入力を提供する。例えば、ある音声コマンドを上記アプリケーションプロトタイプ１２０のある特定のビジュアルページ１２２に関連付けるために、音声対話ツール１２６によって、ユーザは、（例えばタッチ機能を用いて）上記特定のビジュアルページ１２２を選択し、対話インタフェースを介して（例えばコマンド又は応答をタイピングすること、コマンド又は応答をマイクロフォン又は通信可能に連結されたデバイスに対して発話すること等によって）、上記特定のビジュアルページに対応する異なる複数の音声コマンド又は発話応答を指定できる。本明細書で使用される場合、対話データ１２４は、音声コマンド及び発話応答、並びに他のタイプのトリガー（例えばユーザジェスチャー及び時間遅延）並びにアクション（例えばページ遷移及びメディアのプレイバック）を含む。
【００３２】
特に、設計アプリケーション１１８により、ユーザは、様々な異なるタイプのトリガー及びアクションを、アプリケーションプロトタイプ１２０のビジュアルページ１２２に関連付けることができる。例えばユーザは、音声コマンドトリガーを対応する発話応答に関連付けることができる。しかしながら、設計アプリケーション１１８により、ユーザは、例えばあるユーザジェスチャートリガーをある発話応答に関連付けることにより、又はある音声コマンドを、アプリケーションプロトタイプ１２０のある異なるビジュアルページ１２２への遷移に関連付けることにより、複数の音声対話をミックスして他のトリガー及びアクションとマッチングさせることができる。
【００３３】
アプリケーションプロトタイプ１２０のための音声支援型対話の設計を容易にすることの一部として、音声対話ツール１２６は、音声対話設計システム１０４の機能を活用してよい。図示されている環境１００では、音声対話設計システム１０４が、発話テキスト化サービス１２８及びテキスト発話化サービス１３０と共に図示されている。一般に、発話テキスト化サービス１２８は、１つ以上のマイクロフォンがキャプチャした音声データ中の、発話された単語及びフレーズを識別し、上記発話された単語及びフレーズをテキスト文字列に変換する機能を表す。テキスト発話化サービス１３０は、テキストデータ（例えば設計アプリケーションのユーザインタフェースへのユーザ入力を介して受信したテキストデータ）を発話応答に加工する機能を表す。よって、発話テキスト化サービス１２８及びテキスト発話化サービス１３０により、ユーザは、アプリケーションプロトタイプ１２０の設計及び試験中に、設計アプリケーション１１８への可聴入力及びテキスト入力の両方を提供できる。音声対話設計システム１０４は、これらの特定の部品と共に図示されているものの、本発明の精神又は範囲から逸脱せずに本明細書に記載の機能を提供するために、より多数の、より少数の、及び異なる部品を含んでよく、又はこれらに対する（例えばクラウドコンピューティングサービスを介した）アクセスを有してよいことを理解されたい。更に場合によっては、発話テキスト化サービス１２８若しくはテキスト発話化サービス１３０を、計算デバイス１０２において実装してよく、又は別個のサードパーティ製サーバーにおいて実装してよい。発話テキスト化サービス１２８及びテキスト発話化サービス１３０をサードパーティ製サービスとして実装する場合、音声対話ツール１２６は、発話テキスト化サービス１２８及びテキスト発話化サービス１３０への安全な通信チャネルを確立するために、認証トークンを利用できる。
【００３４】
設計アプリケーション１１８は更に、設計アプリケーション１１８を用いて生成された音声支援型アプリケーションプロトタイプ１２０の試験を可能とする、試験モジュール１３２と共に実装される。これを実現するために、試験モジュール１３２は、試験段階において、アプリケーションプロトタイプ１２０の第１のビジュアルページ（例えばホームページ）を表示する。ユーザが、音声コマンドを発話すること又はビジュアルページ１２２をタップすること等によってアプリケーションプロトタイプ１２０と対話すると、試験モジュール１３２はリアルタイムで、発話応答を出力すること、異なるビジュアルページに遷移すること、メディアのプレイバックを開始すること、又はこれらの組み合わせ等によって、このトリガーに関連する、対応するアクションを実施させる。このようにして、本明細書に記載のシステムにより、ユーザは試験段階中にアプリケーションプロトタイプ１２０と対話して、上記アプリケーションプロトタイプが意図した通りに機能することを保証できる。これにより、ユーザは、開発段階の前に、音声支援型対話の設計によるいずれの問題を識別して改善できる。
【００３５】
音声対話設計システム１０４は更に、計算デバイス１０２において、又は計算デバイス１０２から離れて（例えばクラウドサービスとして）実装できる、表音言語翻訳機１３４と共に実装される。一般に、表音言語翻訳機１３４は、非表音文字体系のテキスト文字列を取得し、この非表音テキスト文字列を、異なる言語又は文字の表音テキスト文字列に変換するよう構成される。例えば表音言語翻訳機は、非表音文字体系のテキスト文字列をローマ文字又はラテン文字に変換するための、ローマ文字化技法を利用してよい。これを実施するために、表音言語翻訳機は、書かれたテキストを表すための翻字技法、及び発話された単語を表すための転写技法を利用してよい。転写方法は、発話中の音素又は意味の単位を記録する音素転写と、発話音声を正確に記録する、より厳密な音声転写とに細分化できる。
【００３６】
表音言語翻訳機１３４を利用して、多様な異なるタイプの非表音言語のテキスト文字列を、上記テキスト文字列の表音バージョンに変換してよい。一例として、表音言語翻訳機は、中国文字で書かれることが多い北京官話を、「ピンイン」として知られる中国語のローマ文字化バージョンに翻訳するよう構成できる。別の例では、表音言語翻訳機は、中国語から借用した表語文字（漢字）と、これもまた究極的には中国文字に由来するものである音節を表す文字（かな）との組み合わせで通常書かれる日本語を、ローマ字に翻訳するよう構成できる。日本語に関しては、（最も広く使用されている）ヘボン式ローマ字変換、訓令式ローマ字変換、及び日本式ローマ字変換を含む、複数の異なるタイプのローマ文字化体系が存在する。特に、音声対話設計システム１０４は、多様な異なるタイプのローマ文字化技法を利用して、多様な異なる言語から受け取ったテキストを、上記テキストの標準的な表音バージョンに変換してよい。
【００３７】
アプリケーションプロトタイプ１２０の設計及び試験後、設計アプリケーション１１８は、アプリケーションを開発するためにアプリケーション開発者に提供してよい、設計仕様を生成できる。あるいは、設計アプリケーション１１８は、設計及び試験プロセスの完了時に実行可能なアプリケーションを生成するように実装してもよい。アプリケーションプロトタイプ作成のための音声対話を可能とすることによって、本明細書に記載の技法は、設計者が、ビジュアルインタフェースを含む音声支援型アプリケーションを設計できるようにする。
【００３８】
ある例示的環境について考察してきたが、これより、１つ以上の実装形態による、デジタル媒体環境における音声支援型アプリケーションプロトタイプのための音声対話ツールに関する技法のいくつかの例示的詳細に関する議論を考察する。
【００３９】
図２は、図１の音声対話ツールが、対話データとアプリケーションプロトタイプのビジュアルページとの間の関連を生成し、上記対話データ及び上記ビジュアルページを保持する、例示的実装形態２００を示す。図示されている例２００は、図１からの設計アプリケーション１１８の音声対話ツール１２６を含む。
【００４０】
例２００では、ユーザ入力２０２を取得している、音声対話ツール１２６が図示されている。ユーザ入力２０２は、図４、５に関連して説明したものと同様のユーザインタフェース等の、設計アプリケーション１１８のユーザインタフェースを介して、音声対話ツール１２６によって受信できる。場合によっては、ユーザ入力２０２は、１つ以上のマイクロフォンによってキャプチャされた音声入力に対応してよい。大まかに言えば、ユーザ入力は、アプリケーションプロトタイプ１２０のあるビジュアルページ１２２に関連するトリガー及び対応するアクションを識別する。本明細書全体にわたって記載されているように、トリガーは、対応するアクションを誘発できる様々なユーザコマンドを含む。
【００４１】
ユーザ入力２０２に基づき、音声対話ツール１２６は関連対話データ２０４を生成し、これは、対話データ１２４（例えばトリガー及びアクション）と各ビジュアルページ１２２との間の関連を記述する。この関連対話データ２０４を、設計アプリケーション１１８によって保持でき、これにより、各ビジュアルページ１２２に関連する対話データ１２４を、トリガーの検出に基づいてストレージ２０６から取得できる。
【００４２】
ストレージ２０６は、計算デバイス１０２にローカルに実装してよい。例えば音声対話ツールは、対話データ１２４及び関連するビジュアルページ１２２を含む、アプリケーションプロトタイプ１２０のためのファイルを生成してよく、上記ファイルを、計算デバイス１０２のストレージ２０６に保存させてよい。これにより、アプリケーションプロトタイプ１２０の試験段階中に、各ビジュアルページ１２２に関連する対話データ１２４を、トリガーの識別に基づいて上記ストレージから取得できる。あるいは、又は更に、対話データ１２４及び関連するビジュアルページ１２２は、音声対話設計システム１０４のリモートストレージに保持してよい。１つ以上の実装形態では、クライアントデバイスにローカルに保存されたファイルを、音声対話設計システムのストレージにリモートで保存された関連対話データと同期させてよい。
【００４３】
対話データ１２４は、トリガー２０８及び対応するアクション２１０を含む。この例では、トリガー２０８は、音声コマンド２１２、ユーザジェスチャー２１４（例えばタップ、ドラッグ、スワイプ又はキーストローク）、及び時間遅延２１６を含み、アクションは、発話応答２１８、ページ遷移２２０、及びメディア出力２２２を含む。場合によっては、設計アプリケーション１１８は対話インタフェースを提供し、これにより、ユーザは、定義されたトリガー及びアクションのリストから、トリガー及び関連するアクションを選択できる。選択後、ユーザは、選択したトリガー及びアクションを記述する入力を提供する。例えば、ある音声コマンドを上記アプリケーションプロトタイプ１２０のある特定のビジュアルページ１２２に関連付けるために、音声対話ツール１２６によって、ユーザは、（例えばタッチ機能を用いて）上記特定のビジュアルページ１２２を選択し、対話インタフェースを介して（例えばコマンド又は応答をタイピングすること、コマンド又は応答をマイクロフォン又は通信可能に連結されたデバイスに対して発話すること等によって）、上記特定の要素に対応する異なる複数の音声コマンド２１２又は発話応答２１８を指定できる。上記音声コマンドは、音声アシスタントデバイスに対するユーザの発話を示すオーディオデータ又はテキストデータとして構成してよい。発話応答は、音声コマンド、例えば可聴発話の受信に応答した可聴出力を表す。音声コマンド２１２を、マイクロフォンを介したユーザからの音声入力として受信した場合、発話テキスト化サービス１２８を利用して、キャプチャしたオーディオをテキスト文字列へと変換できる。１つ以上の実装形態では、音声対話ツール１２６は、音声コマンド２１２の複数のバリエーションを生成できる。例えば音声コマンド２１２を、「明日の天気はどうか（Ｗｈａｔ  ｉｓ  ｔｈｅ  ｗｅａｔｈｅｒ  ｔｏｍｏｒｒｏｗ）」として受信した場合、音声対話ツール１２６は、「明日の天気はどうなるか（ｗｈａｔ  ｉｓ  ｔｈｅ  ｗｅａｔｈｅｒ  ｇｏｉｎｇ  ｔｏ  ｂｅ  ｔｏｍｏｒｒｏｗ）」、「明日は雨が降りそうか？（ｉｓ  ｉｔ  ｇｏｉｎｇ  ｔｏ  ｒａｉｎ  ｔｏｍｏｒｒｏｗ？）」「明日は晴れそうか（ｉｓ  ｉｔ  ｇｏｉｎｇ  ｔｏ  ｂｅ  ｓｕｎｎｙ  ｔｏｍｏｒｒｏｗ）」、「明日はどの程度暑いか（ｈｏｗ  ｈｏｔ  ｗｉｌｌ  ｉｔ  ｂｅ  ｔｏｍｏｒｒｏｗ）」等といった、上記音声コマンドの複数のバリエーションを生成できる。
【００４４】
１つ以上の実装形態では、音声対話ツール１２６は音声コマンド２１２を、北京官話又は漢字等の非表音文字体系でのテキスト入力として受信してよい。このシナリオでは、音声対話ツール１２６は、アプリケーションプロトタイプ試験段階まで、音声コマンド２１２を非表音テキスト文字列としてストレージ２０６内に保存してよい。あるいは場合によっては、音声コマンド２０６の非表音テキスト文字列は、上記テキスト文字列をストレージ２０６に保存する前に、表音言語翻訳機１３４によって、上記テキスト文字列の表音バージョンへと変換できる。このシナリオでは、テキスト文字列の表音バージョンをストレージ２０６に保存する。
【００４５】
本明細書に記載の技法により、ユーザは、試験段階中に、アプリケーションプロトタイプ１２０と対話できるようにもなる。この文脈において、図１の設計アプリケーションの試験モジュールがアプリケーションプロトタイプの試験を容易にする例示的実装形態３００を示す、図３について考察する。図示されている例３００は、図１からの試験モジュール１３２、発話テキスト化サービス１２８、及びテキスト発話化サービス１３０を含む。
【００４６】
試験段階において、試験モジュール１３２は、アプリケーションプロトタイプ１２０の第１のビジュアルページ１２２（例えばホームページ）の表示を開始する。第１のビジュアルページ１２２の表示中、ユーザは、音声コマンドを発話すること又はビジュアルページ１２２をタップすること等によってアプリケーションプロトタイプ１２０と対話し、試験モジュール１３２は、ユーザの対話に基づいて、トリガー３０２をリアルタイムで取得する。試験モジュール１３２は処理モジュール３０４を含むものとして図示されており、この処理モジュール３０４は、ユーザの対話を処理することによって、音声コマンド３０６、ユーザジェスチャー３０８又は時間遅延３１０といったトリガー３０２を識別するための機能を表す。
【００４７】
処理モジュール３０４は、識別されたトリガー３０２を関連対話データ２０４と比較することにより、マッチングするトリガーを識別する。例えば、リクエスト処理モジュール３０４は、音声コマンド３０６又はユーザジェスチャー３０８を、それぞれ、関連対話データ２０４の、保存済みの音声コマンド２１２及びユーザジェスチャー２１４と比較する。マッチングするトリガーを識別するために、処理モジュール３０４は、一意識別子、ハッシュ、テキストベース検索等の多様な技法を活用してよい。更に、処理モジュール３０４は、新しいビジュアルページが表示される際に、時間遅延トリガーを継続的に監視してよい。
【００４８】
トリガー３０２を音声コマンド３０６として受信した場合、処理モジュール３０４は、音声コマンド３０６のオーディオデータを発話テキスト化サービス１２８に提供する。発話テキスト化サービス１２８は上記オーディオデータをリアルタイムで処理して、音声コマンド３０６の上記オーディオデータをテキスト文字列に変換する。処理モジュール３０４は、音声コマンド３０６のテキスト文字列を発話テキスト化サービス１２８から取得し、この音声コマンド３０６のテキスト文字列を、音声コマンド２１２の保存済みのテキスト文字列と比較することによって、マッチングする音声コマンドを識別する。
【００４９】
処理モジュール３０４は、受信した音声コマンド３０６のテキスト文字列の文字を、保存済みの音声コマンド２１２のテキスト文字列の文字と比較することによって、マッチングする音声コマンドを識別してよい。一致する文字の数が多いほど、マッチングの蓋然性が高いことを示す。例えばコマンドが単語「ｍｏｕｓｅ」を含む場合、処理モジュール３０４は、単語「ｈｏｕｓｅ」を、「ｍｏｕｓｅ」とマッチングするものとして認識し得る。というのは、これらの単語は４文字が一致しているためである。場合によっては、発話テキスト化サービス１２８は、テキスト文字列が正しいことの信頼性のレベルを示す信頼性スコアを、テキスト文字列と共に含む。この信頼性スコアは、処理モジュール３０４がマッチングする音声コマンドを識別するのを支援する。１つ以上の実装形態では、処理モジュール３０４は、ユーザがアプリケーションプロトタイプと更に簡単に対話できるようにするために、マッチングするテキスト文字列を、低い許容誤差を用いて選択するよう構成される。
【００５０】
トリガー３０２が、関連対話データ２０４の保存済みのトリガー２０８とマッチングすることが検出されたことに応答して、処理モジュール３０４は、関連対話データ２０４中の、上記トリガーに関連する、対応するアクション２１０を識別する。次に、発話応答３１４、ページ遷移３１６、又はメディア出力３１８に対応するアクション３１２を、実施モジュール３２０へと移動させる。実施モジュール３２０は、発話応答３１４を出力すること、異なるビジュアルページへのページ遷移３１６を実施すること、オーディオ若しくはビデオコンテンツを出力すること、又はこれらの組み合わせ等によって、識別されたトリガーに関連する、対応するアクション３１２を実施させる。
【００５１】
アクション３１２が発話応答３１４に対応する場合、実施モジュールは、発話応答３１４のテキスト文字列を、テキスト発話化サービス１３０にリアルタイムで提供できる。テキスト発話化サービス１３０は、発話応答３１４のテキスト文字列を、発話応答３１４に対応するオーディオデータに変換する。実施モジュール３２０は次に、発話応答３１４に対応する上記オーディオデータを出力させる。
【００５２】
このようにして、本明細書に記載のシステムにより、ユーザは試験段階中にアプリケーションプロトタイプ１２０と対話して、アプリケーションプロトタイプ１２０が意図した通りに機能することを保証できる。これにより、ユーザは、開発段階の前に、音声支援型アプリケーションプロトタイプ１２０の設計によるいずれの問題を識別して改善できる。
【００５３】
特に、音声コマンドのマッチング時、試験モジュール１３２は、上記音声コマンドのテキスト文字列が、保存済み音声コマンドのテキスト文字列と共通して有する文字数に基づいて、マッチングする音声コマンドを選択してよい。これは、英語等の表音文字体系を使用する言語に関しては、共通の文字をマッチングさせることによって、単語の音がどの程度近いかを近似できるため、良好に機能する。しかしながら、北京官話及び日本語の漢字等の「非表音」文字体系を使用する言語に関しては、同一の音を有する単語が文字毎に容易に比較されないため、このマッチング技法は機能しない。
【００５４】
この文脈において、図１の設計アプリケーションの試験モジュールが表音言語翻訳機を利用して、アプリケーションプロトタイプの試験中にキャプチャされた音声コマンドをマッチングさせる、例示的実装形態４００を示す、図４について考察する。図示されている例４００は、図１からの試験モジュール１３２、発話テキスト化サービス１２８、及び表音言語翻訳機１３４を含む。
【００５５】
試験段階において、試験モジュール１３２は、アプリケーションプロトタイプ１２０の第１のビジュアルページ１２２（例えばホームページ）の表示を開始する。第１のビジュアルページ１２２の表示中、ユーザは、非表音音声コマンド４０２を発話することによってアプリケーションプロトタイプ１２０と対話する。本明細書全体を通して記載されているように、非表音音声コマンド４０２は、北京官話又は日本語における漢字といった非表音文字体系を使用する言語で発話された音声コマンドに相当する。非表音音声コマンド４０２は、少なくとも１つのマイクロフォンによって、オーディオデータとしてキャプチャされる。
【００５６】
試験モジュール１３２は、キャプチャした非表音音声コマンド４０２のオーディオデータを発話テキスト化サービス１２８に通信する。発話テキスト化サービス１２８は、非表音音声コマンド４０２の上記オーディオデータをリアルタイムで処理して、非表音音声コマンド４０２の上記オーディオデータを、キャプチャした音声コマンドの、非表音文字体系の言語の非表音テキスト文字列４０４に変換する。
【００５７】
試験モジュール１３２は、非表音テキスト文字列４０４を表音言語翻訳機１３４に通信する。表音言語翻訳機１３４は、キャプチャした音声コマンドの非表音テキスト文字列４０４を、上記キャプチャした音声コマンドの、ピンイン又はローマ字といった表音文字体系で書かれた表音テキスト文字列４０６に翻訳する。更に、試験段階中、表音言語翻訳機１３４は、保存済みの音声コマンド４０８の、非表音文字体系での非表音テキスト文字列４１０を取得する。例えば、保存済みの音声コマンド４０８は、ストレージ２０６に保持された音声コマンド２１２に対応してよい。表音言語翻訳機１３４は、保存済みの音声コマンド４０８の非表音テキスト文字列４１０を、保存済みの音声コマンド４０８の、表音文字体系での表音テキスト文字列４１２に翻訳する。あるいは、表音言語翻訳機１３４は、試験段階の前に、保存済みの音声コマンド４０８の表音テキスト文字列４１０を、保存済みの音声コマンド４０８の表音テキスト文字列４１２に翻訳してよい。この場合、表音テキスト文字列４１２は、ストレージに保持されていてよい。
【００５８】
試験モジュール１３２の表音比較モジュール４１４は、キャプチャした音声コマンド４０２の表音テキスト文字列４０６と、保存済みの音声コマンド４０８の表音テキスト文字列４１２とを取得する。続いて表音比較モジュール４１４は、表音テキスト文字列４０６を表音テキスト文字列４１２と比較することにより、保存済みの音声コマンドに対応する表音テキスト文字列４１２の、マッチングする音声コマンド４１６を識別する。表音比較モジュール４１４は、マッチングする音声コマンド４１６を、表音テキスト文字列４０６の文字を保存済みの音声コマンド４０８の表音テキスト文字列４１２と比較することによって、識別してよい。表音テキスト文字列４０６、４１２は表音文字に翻訳されているため、表音比較モジュール４１４は、マッチングする音声コマンド４１６が、キャプチャした音声コマンドと共通して有する文字数に基づいて、マッチングする音声コマンド４１６を選択できる。いずれのテキスト文字列も表音文字で書かれているため、マッチングする文字数が多くなるほど、マッチングの蓋然性が高くなる。
【００５９】
マッチングする音声コマンド４１６が表音比較モジュール４１４によって識別されると、試験モジュールは、本明細書全体を通して記載されているように、関連するアクションの実施を開始する。
【００６０】
図５Ａ〜５Ｃは、音声支援型アプリケーションプロトタイプの設計に使用される設計アプリケーションの設計ユーザインタフェースの例５００を示す。
【００６１】
図５Ａでは、設計アプリケーション１１８の設計インタフェース５０２は、表示デバイス５０４によって表示されている。設計インタフェース５０２は、第１のビジュアルページ５０６及び第２のビジュアルページ５０８を含むものとして図示されている。第１のビジュアルページ５０６及び第２のビジュアルページ５０８は、設計アプリケーション１１８を利用するユーザによって設計されていてもよく、又は異なる設計アプリケーションからインポートされていてもよい。特に、設計インタフェース５０２をユーザが利用して、いずれの個数の異なるビジュアルページを生成してよい。
【００６２】
図示されている例５００はまた、カーソル５１０も含み、これは、設計アプリケーション１１８によって提供された設計インタフェース５０２の様々なコントロール及び機能と対話するための入力をユーザが提供できるようにするための機能を表す。カーソル５１０が図示されているものの、１つ以上の実装形態では、表示されたカーソルが存在しない場合がある。場合によっては、設計インタフェース５０２の様々なコントロール及び機能について、他の方法で、例えばタッチ入力（又は他のジェスチャー入力）、キーボード入力、スタイラス入力、音声入力等によって、選択又は対話を行ってよい。
【００６３】
ビジュアルページ５０６、５０８は、アプリケーションプロトタイプ１２０のビジュアルページ又はスクリーンを表し、これらは設計者によって「アートボード（ａｒｔ  ｂｏａｒｄ）」と呼ばれることが多い。この例では、第１のビジュアルページ５０６は、アプリケーションプロトタイプ１２０の「ホームページ（ｈｏｍｅ  ｐａｇｅ）」に相当し、現在時刻、現在の温度、及び現在の天気を「晴れ（ｓｕｎｎｙ）」として描画したグラフィックを含む。
【００６４】
この例では、第２のビジュアルページ５０８は、アプリケーションプロトタイプ１２０のカレンダーページに相当し、ユーザが３つの近日中のイベントを有すること、及びユーザが「明日午前１０時にカフェ・プレッセでジュディとブランチ（Ｂｒｕｎｃｈ  ｗｉｔｈ  Ｊｕｄｙ  ａｔ  Ｃａｆｅ’  Ｐｒｅｓｓｅ，  ａｔ  １０  ＡＭ  ｔｏｍｏｒｒｏｗ）」に対応するアポイントメントを有することを示すテキストを含む。特に、第１のビジュアルページ５０６は、ユーザが音声コマンド「私の予定は（Ｗｈａｔ’ｓ  ｏｎ  ｍｙ  ｃａｌｅｎｄａｒ）」を発話できることを示すテキストを含む。このテキストは、ユーザが音声コマンドの発話によってカレンダーページに遷移できることの視覚的な手がかりをユーザに提供する。
【００６５】
この音声コマンドに基づくカレンダーページへの遷移を可能とするために、設計インタフェースにより、ユーザは、第１のビジュアルページ５０６を第２のビジュアルページ５０８にリンクさせることができる。この例ではユーザは、カーソル５１０を用いて第１のビジュアルページ５０６上でハンドル制御を選択し、カーソルを第２のビジュアルページ５０８へとドラッグすることによって、ビジュアルページ５０６、５０８をリンクさせる。これを実施することで、設計インタフェースに、第１のビジュアルページ５０６と第２のビジュアルページ５０８との間のビジュアルリンク要素５１２を生成させる。
【００６６】
第１のビジュアルページ５０６を第２のビジュアルページ５０８にリンクさせることに応答して、設計インタフェースは、ユーザが、図５Ｂに示されているこの遷移のためのトリガーを識別する入力を提供できるようにする。図５Ｂでは、設計アプリケーションは、アプリケーションプロトタイプのあるビジュアルページのためのトリガー及び関連するアクションを提供するためのコントロールを含む、対話インタフェース５１４を提示する。この例では、対話インタフェース５１４は、トリガーのタイプを定義する入力を受信するための、トリガーコントロール５１６を含む。場合によっては、対話インタフェース５１４のトリガーコントロール５１６によって、ユーザは、トリガーコントロール５１６付近の下向きの矢印を選択して、トリガーのリストを表示させること等によって、定義されたトリガーのリストから、トリガーのタイプを選択できる。本明細書全体を通して記載されているように、対話インタフェース５１４に表示された、事前に定義されたトリガーのリストは、一部の例として、音声コマンド、ユーザジェスチャー、又は時間遅延を含んでよい。この例では、ユーザは、トリガーとして音声コマンドを選択するための入力を提供した。
【００６７】
音声コマンドをトリガーとして選択した後、対話インタフェース５１４を修正して、トリガーコンテンツコントロール５１８を提供できる。例えば図５Ｂでは、対話インタフェース５１４は、音声コマンドの単語を定義する入力を受信するよう構成されたコマンドプロンプトとして、トリガーコンテンツコントロール５１８を表示する。あるいは、トリガーを、ユーザジェスチャー又は時間遅延として選択した場合、それぞれユーザジェスチャーのタイプ又は時間遅延の期間を記述する入力を受信するように、トリガーコンテンツコントロール５１８を修正してよい。
【００６８】
この例では、ユーザは、音声コマンドを定義する入力を「私の予定は」として提供している。このユーザ入力は、トリガーコンテンツコントロール５１８へのテキスト入力として受信できる。換言すれば、ユーザは、音声コマンドの単語を、対話インタフェース５１４のトリガーコンテンツコントロール５１８に直接タイピングできる。あるいは、ユーザは音声コマンドの単語を、マイクロフォン又は通信可能に連結されたデバイスに対して発話してよく、上記マイクロフォン又はデバイスは、本明細書全体を通して記載されているように、発話された単語をテキスト入力に変換する。ユーザが音声コマンドを発話する場合、対話インタフェース５１４は、変換されたテキストを対話インタフェース５１４に表示してよく、これによりユーザは、テキストが正しく認識されていることを確認でき、また必要に応じて変更できる。
【００６９】
対話インタフェース５１４は更に、アクションコントロール５２０及び関連するアクションコンテンツコントロール５２２を含むものとして図示されている。アクションコントロール５２０は、対応するトリガーの検出に応答して実施されることになるアクションのタイプを定義する入力を受信するよう構成される。場合によっては、対話インタフェース５１４のアクションコントロール５２０により、ユーザは、アクションコントロール５２０付近の下向きの矢印をクリックして、アクションのリストを提示させること等によって、定義されたアクションのリストから、アクションのタイプを選択できる。本明細書全体を通して記載されているように、アクションは、一部の例として、発話応答、ページ遷移、又はコンテンツの出力を含んでよい。この例では、ユーザは、対応する音声コマンドトリガーに関するアクションとして、ページ遷移を選択する入力を提供している。あるいは、第１のビジュアルページ５０６を第２のビジュアルページ５０８と関連付けるための入力に基づいて、ユーザに関してページ遷移アクションを自動的に選択してよい。
【００７０】
ページ遷移をアクションとして選択した後、対話インタフェース５１４を修正して、アクションコンテンツコントロール５２２を提供してよい。例えば図５Ｂでは、対話インタフェース５１４は、ページ遷移の遷移先を定義する入力を受信するよう構成されたコマンドプロンプトとして、アクションコンテンツコントロール５２２を表示する。あるいは、アクションを発話応答又はコンテンツの出力として選択した場合、それぞれ発話応答の単語を記述する入力、又は出力されることになるコンテンツを定義する入力（例えばビデオファイルのファイル名）を受信するように、アクションコンテンツコントロール５２２を修正してよい。
【００７１】
この例では、ユーザは、アプリケーションプロトタイプのカレンダーページに遷移するために、ページ遷移を定義する入力を提供している。ここでも場合によっては、第１のビジュアルページを第２のビジュアルページとリンクさせるための入力に基づいて、ページ遷移の場所をユーザに関して自動的に選択してよい。この例では、設計インタフェースにより、ユーザは、イージング、遷移エフェクト、又はページ遷移の期間といったページ遷移の特性を更に定義できる。
【００７２】
特に図５Ｂでは、対話インタフェース５１４への入力によって定義されたトリガー及び関連するアクションを、第１のビジュアルページ５０６及び第２のビジュアルページと関連付ける。設計インタフェースにより、ユーザは、トリガーに応答して、異なるビジュアルページに遷移することなくアクションが実施されるように、ある単一のビジュアルページに関連するトリガー及び対応するアクションを定義することもできる。
【００７３】
この文脈において、図５Ｃについて考察する。図５Ｃでは、設計アプリケーションは、アプリケーションプロトタイプのあるビジュアルページのためのトリガー及び関連するアクションを提供するためのコントロールを含む、対話インタフェース５１４を提示している。この例では、対話インタフェース５１４は、カレンダーページに相当する第２のビジュアルページ５０８へのユーザ入力に応答して、動的に提示される。この例では、ユーザは、音声コマンドを選択するのではなく、トリガーコントロール５１６を介して時間遅延トリガーを選択し、続いてトリガーコンテンツコントロール５１８を介して入力を提供することにより、時間遅延の期間を０秒となるように定義する。ユーザはまた、アクションコントロール５２０を介して、発話応答を選択するための入力も提供し、続いてアクションコンテンツコントロール５２２を介して、発話応答アクションの単語を定義する入力を提供する。発話応答を定義する上記入力は、アクションコンテンツコントロール５２２へのテキスト入力として受信できる。換言すれば、ユーザは、発話応答の単語を、対話インタフェース５１４のアクションコンテンツコントロール５２２に直接タイピングできる。あるいは、ユーザは発話応答の単語を、マイクロフォン又は通信可能に連結されたデバイスに対して発話してよく、上記マイクロフォン又はデバイスは、本明細書全体を通して記載されているように、発話された単語をテキスト入力に変換する。ユーザが発話応答を発話する場合、対話インタフェース５１４は、変換されたテキストを対話インタフェース５１４のアクションコンテンツコントロール５２２に表示してよく、これによりユーザは、テキストが正しく認識されていることを確認でき、また必要に応じて変更できる。
【００７４】
特に、対話インタフェース５１４によって、ユーザは、多様な異なるタイプのトリガー及びアクションを、アプリケーションプロトタイプのビジュアルページに関連付けることができる。例えば設計者は、音声コマンドトリガーを、対応する発話応答に関連付けることができる。しかしながら設計者は、例えばあるユーザジェスチャートリガーをある発話応答に関連付けることにより、又はある音声コマンドを、アプリケーションプロトタイプのある異なるビジュアルページへの遷移に関連付けることにより、複数の音声対話をミックスして他のトリガー及びアクションとマッチングさせることもできる。
【００７５】
図６Ａ、６Ｂは、音声支援型アプリケーションプロトタイプの試験段階中の設計アプリケーションの設計ユーザインタフェースの例６００を示す。ユーザが、図５Ａ〜４Ｃに示すように、アプリケーションプロトタイプのビジュアルページ及びユーザ対話を設計すると、設計インタフェースの試験コントロールを選択することによって、試験段階を開始できる。例６００では、設計アプリケーション１１８の試験モジュール１３２は、表示デバイス５０４上に、アプリケーションプロトタイプの第１のビジュアルページ６０２を表示する。特に、第１のビジュアルページ６０２は、図５Ａ〜４Ｃに示されている第１のビジュアルページ５０６に相当する。試験段階において、試験モジュール１３２は、ビジュアルページ並びに関連するトリガー及びアクションのレイアウトを表示するのではなく、設計されたアプリケーションプロトタイプ１２０を、実行可能なアプリケーションのように機能するように制御する。
【００７６】
音声コマンドを発話すること又はビジュアルページをタップすること等によって、ユーザが試験段階のアプリケーションプロトタイプと対話すると、試験モジュール１３２は、可聴コンテンツを出力すること、視覚コンテンツを出力すること、異なるビジュアルページに遷移すること、又はこれらの組み合わせ等によって、上記トリガーに関連する、対応するアクションを、リアルタイムで実施させる。例えば図６Ａでは、ユーザは、複数の単語「私の予定は？」を含む音声コマンド６０４を発話する。マイクロフォンは、発話された音声コマンドを検出し、発話テキスト化サービス１２８はこのオーディオデータを、複数の単語「私の予定は」を含むテキスト文字列に変換する。次にこのテキスト文字列を、アプリケーションプロトタイプの設計中にユーザによって提供された関連対話データと比較する。
【００７７】
この例では、試験モジュール１３２は、音声コマンド５０４のテキスト文字列を、図５Ｂの対話インタフェース５１４のトリガーコンテンツコントロール５１８に提供された音声コマンドとマッチングするものとして認識する。マッチングの検出に基づいて、試験モジュール１３２は、ユーザが過去に図５Ｂの対話インタフェース５１４のコントロール５２０、５２２に入力した対応するアクションを実施させる。この場合、上記対応するアクションは、カレンダーページ（例えば図５のビジュアルページ５０８）へのページ遷移として検出される。
【００７８】
図６Ｂは、試験モジュール１３２が、検出されたトリガーに関連するアクションに基づいて、第１のビジュアルページ６０２から第２のビジュアルページ６０６に遷移した後の、カレンダーページに相当する第２のビジュアルページ６０６の表示を示す。更に、カレンダーページは、対応する発話応答を伴う０秒の時間遅延トリガーを含むため、試験モジュール１３２アプリケーションは、スピーカー又は関連するデバイスに、この例では複数の単語「明日午前１０時にカフェ・プレッセでジュディとブランチ（Ｂｒｕｎｃｈ  ｗｉｔｈ  Ｊｕｄｙ  ａｔ  Ｃａｆｅ’  Ｐｒｅｓｓｅ，  ａｔ  １０  ＡＭ  ｔｏｍｏｒｒｏｗ）」に対応する発話応答６０８を、可聴形式で出力させる。これを実現するために、発話応答の複数の単語を含むテキスト文字列を、テキスト発話化サービス１３０に移動させる。次に、テキスト発話化サービス１３０は、発話応答のテキスト文字列をオーディオファイルに変換し、そしてこのオーディオファイルは計算デバイスにおいてリアルタイムで出力される。このようにして、本明細書に記載のシステムにより、ユーザは、試験段階中にアプリケーションプロトタイプと対話して、上記アプリケーションプロトタイプが意図した通りに機能することを保証できる。
【００７９】
音声対話ツールに関する技法の例示的詳細について議論してきたが、これより、上記技法の更なる態様を説明するいくつかの例示的手順を考察する。
【００８０】
例示的手順
この節は、１つ以上の実装形態における、音声支援型アプリケーションプロトタイプの設計及び試験のための例示的手順を説明する。上記手順の態様は、ハードウェア、ファームウェア、若しくはソフトウェア、又はこれらの組み合わせで実装できる。上記手順は、１つ以上のデバイスによって実行される動作を明記した複数のブロックのセットとして図示され、上記動作の実行に関して各ブロックによって示されている順序に必ずしも限定されない。
【００８１】
図７は、音声支援型アプリケーションプロトタイプを設計する例示的手順７００を示す。
【００８２】
設計インタフェースにおいて、アプリケーションプロトタイプの少なくとも１つのビジュアルページを、計算デバイスのディスプレイ上に表示する（ブロック７０２）。例えば設計アプリケーション１１８は、アプリケーションプロトタイプ１２０のビジュアルページ１２２を、計算デバイス１０２のディスプレイ上の設計インタフェース５０２に表示する。
【００８３】
設計インタフェースを制御して、アプリケーションプロトタイプの少なくとも１つのビジュアルページのためのトリガー及び関連するアクションを受信するための、対話インタフェースを提供する（ブロック７０４）。本明細書に記載の原理によると、トリガーは、音声コマンド、ユーザジェスチャー、又は時間遅延のうちの１つに対応し、アクションは、発話応答、アプリケーションプロトタイプの追加のビジュアルページへの遷移、又はメディアファイルのプレイバックに対応する。例えば音声対話ツール１２６は、設計インタフェース５０２を制御して、アプリケーションプロトタイプ１２０の少なくとも１つのビジュアルページ１２２のためのトリガー２０８及び関連するアクション２１０を受信するための、対話インタフェース５１４を提供する。
【００８４】
対話インタフェースによってユーザ入力を受信して、トリガー及びアクションを提供する（ブロック７０６）。例えば音声対話ツール１２６は、設計インタフェース５０２を介してユーザ入力２０２を受信して、トリガー２０８及びアクション２１０を提供する。
【００８５】
トリガー、アクション、及びアプリケーションプロトタイプのビジュアルページを含む、関連対話データを生成し、試験段階中にアプリケーションプロトタイプの試験を実施できるように、上記関連対話データを保存する（ブロック７０８）。例えば音声対話ツール１２６は、トリガー２０８及びアクション２１０を、ビジュアルページ１２２の指示と共に、関連対話データ２０４としてストレージ２０６に保存し、これにより、試験段階中のトリガーの検出によってアクションを実施させる。
【００８６】
図８は、音声支援型アプリケーションプロトタイプを試験する例示的手順８００を示す。
【００８７】
アプリケーションプロトタイプに関して、試験段階を開始し（ブロック８０２）、上記アプリケーションプロトタイプの少なくとも１つのビジュアルページを試験段階において表示する（ブロック８０４）。例えば試験モジュール１３２は、アプリケーションプロトタイプ１２０のための試験段階を開始させ、試験段階中に、アプリケーションプロトタイプ１２０のための少なくとも１つのビジュアルページ１２２を表示する。
【００８８】
少なくとも１つのビジュアルページが表示されている間に受信したユーザ入力に基づいて、トリガーを検出する（ブロック８０６）。トリガーは、一部の例として、音声コマンド、ユーザジェスチャー、時間遅延に対応してよい。例えば、第１のビジュアルページ１２２の表示中、ユーザは、音声コマンドを発話すること、又はビジュアルページ１２２をタップすること等によって、アプリケーションプロトタイプ１２０とリアルタイムで対話し、試験モジュール１３２は、ユーザの対話に基づいてトリガー３０２を取得する。試験モジュール１３２の処理モジュール３０４は、ユーザ入力を処理して、音声コマンド３０６、ユーザジェスチャー３０８、又は時間遅延３１０等のトリガー３０２を識別する。
【００８９】
上記トリガーを、アプリケーションプロトタイプに関連する保存済みのトリガーと比較して、マッチングするトリガーを識別する（ブロック８０８）。例えば処理モジュール３０４は、識別されたトリガー３０２を関連対話データ２０４と比較することにより、マッチングするトリガーを識別する。例えば、リクエスト処理モジュール３０４は、音声コマンド３０６又はユーザジェスチャー３０８を、それぞれ、関連対話データ２０４の、保存済みの音声コマンド２１２及びユーザジェスチャー２１４と比較する。マッチングするトリガーを識別するために、処理モジュール３０４は、一意識別子、ハッシュ、テキストベース検索等の多様な技法を活用してよい。更に、処理モジュール３０４は、新しいビジュアルページが表示される際に、時間遅延トリガーを継続的に監視してよい。
【００９０】
トリガー３０２を音声コマンド３０６として受信した場合、処理モジュール３０４は、音声コマンド３０６のオーディオデータを発話テキスト化サービス１２８に提供する。発話テキスト化サービス１２８は上記オーディオデータをリアルタイムで処理して、音声コマンド３０６の上記オーディオデータをテキスト文字列に変換する。処理モジュール３０４は、音声コマンド３０６のテキスト文字列を発話テキスト化サービス１２８から取得し、この音声コマンド３０６のテキスト文字列を、音声コマンド２１２の保存済みのテキスト文字列と比較することによって、マッチングする音声コマンドを識別する。
【００９１】
処理モジュール３０４は、受信した音声コマンド３０６のテキスト文字列の文字を、保存済みの音声コマンド２１２のテキスト文字列の文字と比較することによって、マッチングする音声コマンドを識別してよい。一致する文字の数が多いほど、マッチングの蓋然性が高いことを示す。例えばコマンドが単語「ｍｏｕｓｅ」を含む場合、処理モジュール３０４は、単語「ｈｏｕｓｅ」を、「ｍｏｕｓｅ」とマッチングするものとして認識し得る。というのは、これらの単語は４文字が一致しているためである。場合によっては、発話テキスト化サービス１２８は、テキスト文字列が正しいことの信頼性のレベルを示す信頼性スコアを、テキスト文字列と共に含む。この信頼性スコアは、処理モジュール３０４がマッチングする音声コマンドを識別するのを支援する。１つ以上の実装形態では、処理モジュール３０４は、ユーザがアプリケーションプロトタイプと更に簡単に対話できるようにするために、マッチングするテキスト文字列を、低い許容誤差を用いて選択するよう構成される。
【００９２】
試験段階中に、マッチングするトリガーに関連するアクションを実施する（ブロック８１０）。本明細書に記載の原理によると、アクションは、発話応答、異なるビジュアルページへのページ遷移、又はメディアファイルのプレイバックに対応してよい。例えばトリガー３０２が、関連対話データ２０４の保存済みのトリガー２０８とマッチングすることが検出されたことに応答して、処理モジュール３０４は、関連対話データ２０４中の、上記トリガーに関連する、対応するアクション２１０を識別する。次に、発話応答３１４、ページ遷移３１６、又はメディア出力３１８に対応するアクション３１２を、実施モジュール３２０へと移動させる。実施モジュール３２０は、発話応答３１４を出力すること、異なるビジュアルページへのページ遷移３１６を実施すること、オーディオ若しくはビデオコンテンツを出力すること、又はこれらの組み合わせ等によって、識別されたトリガーに関連する、対応するアクション３１２を実施させる。
【００９３】
アクション３１２が発話応答３１４に対応する場合、実施モジュールは、発話応答３１４のテキスト文字列を、テキスト発話化サービス１３０にリアルタイムで提供できる。テキスト発話化サービス１３０は、発話応答３１４のテキスト文字列を、発話応答３１４に対応するオーディオデータに変換する。実施モジュール３２０は次に、発話応答３１４に対応する上記オーディオデータを出力させる。
【００９４】
図９は、アプリケーションプロトタイプの試験中にキャプチャされた音声コマンドをマッチングさせるために表音言語翻訳機を利用する、例示的手順９００を示す。
【００９５】
アプリケーションプロトタイプに関連する対話データをストレージに保持する（ブロック９０２）。本明細書に記載の原理によると、対話データは、保存済みの音声コマンド、保存済みの音声コマンドそれぞれの検出に応答して実施されることになるアクション、及び少なくとも１つのビジュアルページを含む。上記少なくとも１つのビジュアルページを、アプリケーションプロトタイプのための試験段階の表示デバイス上に表示し（ブロック９０４）、非表音文字体系を使用する言語で発話された非表音音声コマンドをキャプチャする（ブロック９０６）。例えば試験段階において、試験モジュール１３２は、アプリケーションプロトタイプ１２０の第１のビジュアルページ１２２（例えばホームページ）の表示を開始する。第１のビジュアルページ１２２の表示中、ユーザは、非表音音声コマンド４０２を発話することによってアプリケーションプロトタイプ１２０と対話する。非表音文字体系を使用する言語で発話された非表音音声コマンド４０２は、少なくとも１つのマイクロフォンによって、オーディオデータとしてキャプチャされる。
【００９６】
上記非表音音声コマンドを発話テキスト化サービスにリアルタイムで通信して、上記非表音音声コマンドを、上記音声コマンドの、非表音文字体系の言語の非表音テキスト文字列に変換する（ブロック９０８）。例えば試験モジュール１３２は、キャプチャした非表音音声コマンド４０２のオーディオデータを発話テキスト化サービス１２８に通信する。発話テキスト化サービス１２８は、非表音音声コマンド４０２の上記オーディオデータをリアルタイムで処理して、非表音音声コマンド４０２の上記オーディオデータを、キャプチャした音声コマンドの非表音テキスト文字列４０４に変換する。
【００９７】
上記音声コマンドの上記非表音テキスト文字列を表音言語翻訳機にリアルタイムで通信して、上記非表音テキスト文字列を、上記音声コマンドの、表音文字体系を使用する言語の表音テキスト文字列に翻訳する（ブロック９１０）。例えば試験モジュール１３２は、非表音テキスト文字列４０４を表音言語翻訳機１３４に通信する。表音言語翻訳機１３４は、キャプチャした音声コマンドの、非表音文字体系を使用する言語の非表音テキスト文字列４０４を、上記キャプチャした音声コマンドの、表音文字体系を使用する言語の表音テキスト文字列４０６に翻訳する。１つ以上の実装形態では、試験段階中、表音言語翻訳機１３４は、保存済みの音声コマンド４０８の非表音テキスト文字列４１０を取得する。例えば、保存済みの音声コマンド４０８は、ストレージ２０６に保持された音声コマンド４１２に対応してよい。表音言語翻訳機１３４は、保存済みの音声コマンド４０８の非表音テキスト文字列４１０を、保存済みの音声コマンド４０８の表音テキスト文字列４１２に翻訳する。あるいは、表音言語翻訳機１３４は、試験段階の前に、保存済みの音声コマンド４０８の表音テキスト文字列４１０を、保存済みの音声コマンド４０８の表音テキスト文字列４１２に翻訳してよい。この場合、表音テキスト文字列４１２は、ストレージに保持されていてよい。
【００９８】
上記音声コマンドの上記表音テキスト文字列を、アプリケーションプロトタイプに関連する保存済みの音声コマンドの表音テキスト文字列と比較して、マッチングする音声コマンドを識別する（ブロック９１２）。例えば試験モジュール１３２の表音比較モジュール４１４は、キャプチャした音声コマンド４０２の表音テキスト文字列４０６と、保存済みの音声コマンド４０８の表音テキスト文字列４１２とを取得する。続いて表音比較モジュール４１４は、表音テキスト文字列４０６を表音テキスト文字列４１２と比較することにより、保存済みの音声コマンドに対応する表音テキスト文字列４１２の、マッチングする音声コマンド４１６を識別する。表音比較モジュール４１４は、マッチングする音声コマンド４１６を、表音テキスト文字列４０６の文字を保存済みの音声コマンド４０８の表音テキスト文字列４１２と比較することによって、識別してよい。表音テキスト文字列４０６、４１２は表音文字に翻訳されているため、表音比較モジュール４１４は、マッチングする音声コマンド４１６が、キャプチャした音声コマンドと共通して有する文字数に基づいて、マッチングする音声コマンド４１６を選択できる。いずれのテキスト文字列も表音文字で書かれているため、マッチングする文字数が多くなるほど、マッチングの蓋然性が高くなる。
【００９９】
上記マッチングする音声コマンドに関連するアクションを実施する（ブロック９１４）。例えば、マッチングする音声コマンド４１６が表音言語比較モジュール４１４によって識別されると、試験モジュールは、本明細書全体を通して記載されているように、関連するアクションの実施を開始する。
【０１００】
１つ以上の実装形態による例示的手順を説明したが、これより、本明細書に記載の様々な技法を実装するために利用できる例示的なシステム及びデバイスを考察する。
【０１０１】
例示的なシステム及びデバイス
図１０は、本明細書に記載の様々な技法を実装できる１つ以上の計算システム及び／又はデバイスの代表である例示的な計算デバイス１００２を含む、例示的なシステムを、全体として９００で示す。これは、設計アプリケーション１１８及び音声対話設計システム１０４を含めることによって示されている。計算デバイス１００２は例えば、サービスプロバイダのサーバー、クライアントに関連するデバイス（例えばクライアントデバイス）、オンチップシステム、及び／又は他のいずれの好適な計算デバイス若しくは計算システムであってよい。
【０１０２】
図示されているような例示的な計算デバイス１００２は、処理システム１００４、１つ以上のコンピュータ可読媒体１００６、及び互いに通信可能に連結された１つ以上のＩ／Ｏインタフェース１００８を含む。図示されていないが、計算デバイス１００２は更に、上記様々な部品を互いに連結する、システムバス又は他のデータ及びコマンド転送システムを含んでよい。システムバスは、メモリバス若しくはメモリコントローラ、周辺バス、ユニバーサル・シリアル・バス、及び／又は多様なバスアーキテクチャのうちのいずれを利用したプロセッサ若しくはローカルバスといった、異なるバス構造のうちのいずれの１つ又は組み合わせを含むことができる。コントロール及びデータラインといった他の様々な例も考えられる。
【０１０３】
処理システム１００４は、ハードウェアを用いて１つ以上の動作を実行する機能を表す。従って処理システム１００４、プロセッサ、機能ブロック等として構成してよいハードウェア要素１０１０を含むものとして図示されている。これは、１つ以上の半導体を用いて形成された特定用途向け集積回路又は他の論理デバイスとしての、ハードウェアでの実装を含んでよい。ハードウェア要素１０１０は、これを形成する材料、又は採用される処理機構によって限定されない。例えばプロセッサは、１つ以上の半導体及び／又はトランジスタ（例えば電子集積回路（ＩＣ））からなってよい。この文脈において、プロセッサ実行可能命令は、電子的に実行可能な命令であってよい。
【０１０４】
コンピュータ可読記憶媒体１００６は、メモリ／ストレージ１０１２を含むものとして図示されている。メモリ／ストレージ１０１２は、１つ以上のコンピュータ可読媒体に関連するメモリ／ストレージ用量を表す。メモリ／ストレージ部品１０１２は、揮発性媒体（ランダムアクセスメモリ（ＲＡＭ）等）及び／又は不揮発性媒体（読み出し専用メモリ（ＲＯＭ）、フラッシュメモリ、光学ディスク、磁気ディスク等）を含んでよい。メモリ／ストレージ部品１０１２は、固定媒体（例えばＲＡＭ、ＲＯＭ、固定ハードドライブ等）、及び着脱式媒体（例えばフラッシュメモリ、着脱式ハードドライブ、光学ディスク等）を含んでよい。コンピュータ可読媒体１００６は、以下で更に説明されるような、他の多様な方法で構成してもよい。
【０１０５】
１つ以上の入力／出力インタフェース１００８は、様々な入力／出力デバイスを用いて、ユーザがコマンド及び情報を計算デバイス１００２に入力できるようにし、またユーザ及び／又は他の部品若しくはデバイスに情報を提示できるようにする、機能を表す。入力デバイスの例としては、キーボード、カーソル制御デバイス（例えばマウス）、マイクロフォン、スキャナ、タッチ機能（例えば物理的な接触を検出するよう構成された容量性センサ又は他のセンサ）、（例えば接触を伴わないジェスチャーとして運動を認識するために、赤外線周波数等の可視又は不可視波長を採用してよい）カメラ等が挙げられる。出力デバイスの例としては、表示デバイス（例えばモニター又はプロジェクター）、スピーカー、プリンター、ネットワークカード、触覚応答デバイス等が挙げられる。よって計算デバイス１００２は、ユーザの対話をサポートするために、以下で更に説明されるような多様な方法で構成してよい。
【０１０６】
本明細書では、ソフトウェア、ハードウェア要素、又はプログラムモジュールの一般的な文脈で、様々な技法を説明できる。一般に、このようなモジュールとしては、特定のタスクを実行する又は特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、要素、部品、データ構造等が挙げられる。本明細書中で使用される用語「モジュール（ｍｏｄｕｌｅ）」、「機能（ｆｕｎｃｔｉｏｎａｌｉｔｙ）」、及び「部品（ｃｏｍｐｏｎｅｎｔ）」は、一般に、ソフトウェア、ファームウェア、ハードウェア、又はこれらの組み合わせを表す。本明細書に記載の技法の特徴はプラットフォームに依存せず、即ち上記技法は、多様なプロセッサを有する多様な市販の計算プラットフォーム上で実装できる。
【０１０７】
本明細書に記載のモジュール及び技法の実装は、何らかの形態のコンピュータ可読媒体上に保存でき、又は何らかの形態のコンピュータ可読媒体を介して伝送できる。コンピュータ可読媒体としては、計算デバイス１００２がアクセスできる多様な媒体が挙げられる。例えば限定するものではないが、コンピュータ可読媒体としては、「コンピュータ可読記憶媒体（ｃｏｍｐｕｔｅｒ‐ｒｅａｄａｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉａ）」及び「コンピュータ可読信号媒体（ｃｏｍｐｕｔｅｒ‐ｒｅａｄａｂｌｅ  ｓｉｇｎａｌ  ｍｅｄｉａ）」が挙げられる。
【０１０８】
「コンピュータ可読記憶媒体」は、単なる信号伝送、搬送波又は信号自体とは対照的に、情報の持続的及び／又は非一時的な保存が可能な、媒体及び／又はデバイスを指すことができる。よって、コンピュータ可読記憶媒体は、非信号担持媒体である。コンピュータ可読記憶媒体としては、コンピュータ可読命令、データ構造、プログラムモジュール、論理要素／回路又は他のデータといった情報の保存に好適な方法又は技術で実装される、揮発性及び不揮発性の、着脱式及び非着脱式の媒体及び／又はストレージデバイスといった、ハードウェアが挙げられる。コンピュータ可読記憶媒体の例としては、限定するものではないが：ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又は他のメモリ技術；ＣＤ‐ＲＯＭ、デジタル多用途ディスク（ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ：ＤＶＤ）又は他の光学ストレージ；ハードディスク、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージデバイス；あるいは所望の情報の保存に好適であり、かつコンピュータがアクセス可能な、他のストレージデバイス、有形媒体、又は製造物が挙げられる。
【０１０９】
「コンピュータ可読信号媒体」は、ネットワーク等を介して計算デバイス１００２のハードウェアに命令を伝送するよう構成された、信号担持媒体を指すことができる。信号媒体は典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータを、搬送波、データ信号又は他の輸送機構といった変調データ信号として具体化できる。信号媒体はまた、いずれの情報送達媒体を含んでよい。用語「変調データ信号（ｍｏｄｕｌａｔｅｄ  ｄａｔａ  ｓｉｇｎａｌ）」は、その特徴のうちの１つ以上が、信号中の情報をコード化するような様式で設定又は変更された、信号を意味する。例えば限定するものではないが、通信媒体としては、有線ネットワーク又は直接有線接続といった有線媒体、並びに音響、ＲＦ、赤外線及び他の無線媒体といった無線媒体が挙げられる。
【０１１０】
上述したように、ハードウェア要素１０１０及びコンピュータ可読媒体１００６は、いくつかの実施形態において本明細書に記載の技法のうちの少なくともいくつかの態様を実装するため（例えば１つ以上の命令を実行するため）に採用できるハードウェア形態で実装される、モジュール、プログラマブルデバイス論理、及び／又は固定デバイス論理を表す。ハードウェアとしては、集積回路又はオンチップシステムの部品、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複合プログラマブル論理デバイス（ＣＰＬＤ）、及びシリコン又は他のハードウェアでの他の実装を含んでよい。この文脈において、ハードウェアは、命令によって定義されたプログラムタスク及び／又はハードウェアによって具体化された論理を実行する処理デバイスとして、並びに命令を実行のために保存するために利用されるハードウェア、例えば上述のコンピュータ可読媒体として、動作できる。
【０１１１】
以上の組み合わせを採用して、本明細書に記載の様々な技法を実装することもできる。従って、ソフトウェア、ハードウェア、又は実行可能なモジュールを、何らかの形態のコンピュータ可読媒体上で及び／又は１つ以上のハードウェア要素１０１０によって具体化される、１つ以上の命令及び／又は論理として、実装してよい。計算デバイス１００２は、ソフトウェア及び／又はハードウェアモジュールに対応する特定の命令及び／又は機能を実装するよう構成してよい。従って、計算デバイス１００２によって実行可能なモジュールの、ソフトウェアとしての実装は、例えば処理システム１００４のコンピュータ可読記憶媒体及び／又はハードウェア要素１０１０の使用によって、少なくとも一部をハードウェアで達成できる。命令及び／機能は、本明細書に記載の技法、モジュール及び実施例を実装するために、１つ以上の製造物（例えば１つ以上の計算デバイス１００２及び／又は処理システム１００４）によって実行可能／実施可能とすることができる。
【０１１２】
本明細書に記載の技法は、多様な構成の計算デバイス１００２でサポートされていてよく、また本明細書に記載の技法の具体例に限定されない。この機能はまた、その全体又は一部を、分散型システムの使用によって、例えば以下に記載されるようにプラットフォーム１０１６を介して「クラウド」１０１４上で、実装することもできる。
【０１１３】
クラウド１０１４は、リソース１０１８のためのプラットフォーム１０１６を含み、及び／又は上記プラットフォーム１０１６を表す。プラットフォーム１０１６は、クラウド１０１４のハードウェア（例えばサーバー）及びソフトウェアリソースの基礎となる機能を抽象化する。リソース１０１８としては、コンピュータ処理が計算デバイス１００２から離れたサーバー上で実行されている間に利用できる、アプリケーション及び／又はデータが挙げられる。またリソース１０１８としては、インターネットを介して、及び／又はセルラー若しくはＷｉ‐Ｆｉネットワークといった加入者ネットワークを通して提供される、サービスも挙げることができる。
【０１１４】
プラットフォーム１０１６は、計算デバイス１００２を他の計算デバイスと接続するためのリソース及び機能を抽象化してよい。プラットフォーム１０１６は、プラットフォーム１０１６によって実装されるリソース１０１８に関して発生する需要に対応するレベルのスケールを提供するために、リソースのスケーリングを抽象化する役割も果たすことができる。従って、相互接続されたデバイスの実施形態では、本明細書に記載の機能の実装は、システム１０００全体にわたって分散されていてよい。例えば上記機能は、一部が計算デバイス１００２上で実装され、またクラウド１０１４の機能を抽象化するプラットフォーム１０１６によって実装されてもよい。
【０１１５】
結論
本発明を、構造的特徴及び／又は方法に関する行為に関して具体的に説明したが、添付の請求項において定義される本発明は、必ずしも上述の具体的な特徴又は行為に限定されないことを理解されたい。むしろ、上述の具体的な特徴又は行為は、請求対象である発明の例示的な実装の形態として開示されている。
【符号の説明】
【０１１６】
１０２      計算デバイス
１２０      アプリケーションプロトタイプ
１２２      ビジュアルページ
１２４      対話データ
１２８      発話テキスト化サービス
１３４      表音言語翻訳機
２０６      ストレージ
２１０      アクション
４０２      非表音音声コマンド
４０４      音声コマンドの非表音テキスト文字列
４０６      音声コマンドの表音テキスト文字列
４０８      保存済みの音声コマンド
４１２      保存済みの音声コマンドの表音テキスト文字列
４１６      マッチングする音声コマンド
５０４      表示デバイス
【図１】
2020118955.tif 000003
【図２】
2020118955.tif 000004
【図３】
2020118955.tif 000005
【図４】
2020118955.tif 000006
【図５Ａ】
2020118955.tif 000007
【図５Ｂ】
2020118955.tif 000008
【図５Ｃ】
2020118955.tif 000009
【図６Ａ】
2020118955.tif 000010
【図６Ｂ】
2020118955.tif 000011
【図７】
2020118955.tif 000012
【図８】
2020118955.tif 000013
【図９】
2020118955.tif 000014
【図１０】
2020118955.tif 000015
【外国語明細書】
2020118955000001.pdf