(57)【要約】クライアント・デバイス上でトーキング・ヘッドをレンダリングする方法および装置が開示される。このクライアント・デバイスは、このトーキング・ヘッドをレンダリングすることに関連するオーディオ／ビジュアル・データを記憶することができるクライアント・キャッシュを有する。この方法は、ダイアログ中の遅延をブリッジすることに関連したクライアント・デバイスのクライアント・キャッシュに文を記憶する工程と、ダイアログ中で使用すべき文のテンプレートを記憶する工程と、このクライアント・デバイスからのユーザ照会に対するトーキング・ヘッド応答を生成する工程と、このクライアント・キャッシュに記憶された文または記憶されたテンプレートが、このトーキング・ヘッド応答に関連するかどうかを判定する工程とを含む。この記憶された文または記憶されたテンプレートがこのトーキング・ヘッド応答に関連している場合、この方法は、このクライアント・キャッシュからのこの適切な記憶された文またはテンプレートを使用して、このトーキング・ヘッド応答の少なくとも一部分をレンダリングするようにこのクライアント・デバイスに指示する工程と、このクライアント・キャッシュに記憶されていないトーキング・ヘッドの応答一部分を、もしあればこのクライアント・デバイスに送信して完全なトーキング・ヘッド応答をレンダリングする工程とを含む。このクライアント・キャッシュが、このトーキング・ヘッド応答に関連する記憶されたデータをもたない場合には、この方法は、このトーキング・ヘッド応答を送信して、このクライアント・デバイス上でレンダリングする工程を含む。
2006524867.tif 000002
【特許請求の範囲】
【請求項１】
トーキング・ヘッドをレンダリングする方法であって、
Ａ．クライアントからのユーザ要求に応答して生成されるテキスト・ツー・スピーチ（ＴＴＳ）応答をＴＴＳモジュールから受信する工程と、
Ｂ．前記ＴＴＳ応答に関連するデータがクライアント・キャッシュに記憶されているかどうかを判定する工程と、
Ｃ．前記クライアント・キャッシュが前記ＴＴＳ応答に関連するデータを記憶しているときには、
１．前記クライアント・キャッシュに記憶された前記ＴＴＳ応答の第１の部分を再生するように前記クライアントに指示する工程と、
２．ネットワーク上で前記クライアント・キャッシュに記憶されていない、前記ＴＴＳ応答の第２の部分を送信する工程とを含み、前記完全なＴＴＳ応答は前記第１の部分および前記第２の部分を含み、更に、
Ｄ．前記クライアント・キャッシュが前記ＴＴＳ応答に関連する記憶されたデータを有さないときには、
１．前記ＴＴＳ応答を前記クライアントに供給するように前記ＴＴＳモジュールおよびフェース・アニメーション・サーバに指示する工程を含む、
ことを特徴とする方法。
【請求項２】
ダイアログ管理モジュールは前記ユーザ要求に応答してテキストを生成し、そして前記生成されたテキストは前記ＴＴＳモジュールに送信されて前記ＴＴＳ応答を生成することを特徴とする請求項１に記載の方法。
【請求項３】
前記ダイアログ管理モジュールが前記ユーザ要求に応答して前記テキストを生成するときに、前記ダイアログ管理モジュールは前記ダイアログの状態を考慮することを特徴とする請求項２に記載の方法。
【請求項４】
前記ダイアログ管理モジュールが前記ユーザ要求に応答して前記テキストを生成するときに、前記ダイアログ管理モジュールはさらにユーザ・クリック形跡データを考慮することを特徴とする請求項３に記載の方法。
【請求項５】
前記ダイアログ管理モジュールによって生成される前記応答は、前記トーキング・ヘッドについての少なくとも１つの情緒的状態を示すマークアップ・データを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記マークアップ・データによって示される前記情緒的状態は幸福を含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記マークアップ・データによって示される前記情緒的状態は嫌悪を含むことを特徴とする請求項５に記載の方法。
【請求項８】
前記マークアップ・データによって示される前記情緒的状態は期待を含むことを特徴とする請求項５に記載の方法。
【請求項９】
前記ＴＴＳモジュールは、トーキング・ヘッド・アニメーション・レンダリング・モジュールで使用する前記テキストのＴＴＳ応答、音素のリスト、存続時間、タグおよびマークアップを生成することを特徴とする請求項１に記載の方法。
【請求項１０】
前記フェース・アニメーション・サーバは、前記クライアントが前記トーキング・ヘッドをレンダリングできるようにするアニメーション・パラメータを計算することを特徴とする請求項９に記載の方法。
【請求項１１】
前記計算されたアニメーション・パラメータは、頭部および目の動き、顔の表情、口のビデオ、目のビデオ、および長方形またはオブジェクトベースの頭部全体のビデオを含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記クライアント・キャッシュは前記ＴＴＳ応答に関連する記憶されたデータを有さず、そして前記ＴＴＳモジュールおよびフェース・アニメーション・サーバが前記クライアントに前記ＴＴＳ応答を供給するように指示される場合には、前記方法は、前記クライアント・キャッシュ中の前記ＴＴＳ応答に関連する少なくとも一部のデータを記憶するように前記クライアントに指示するフラグを前記クライアントに送信する工程をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１３】
サーバ上に前記クライアント・キャッシュのコピーを記憶する工程をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１４】
サーバ上の前記クライアント・キャッシュに記憶された前記データの表現としてダイアログ・マネージャ応答を記憶する工程をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１５】
前記ＴＴＳモジュールおよびフェース・アニメーション・サーバが、ビジュアルＴＴＳデータを含む前記ＴＴＳ応答を供給するように指示されるときには、前記クライアント・キャッシュ中の前記ＴＴＳ応答に関連する少なくとも一部のデータを記憶するように前記クライアントに指示するフラグを前記クライアントに送信する工程をさらに含むことを特徴とする請求項１２に記載の方法。
【請求項１６】
クライアント・デバイス上でトーキング・ヘッドをレンダリングする方法であって、前記クライアント・デバイスは、前記トーキング・ヘッドをレンダリングすることに関連するオーディオ／ビジュアル・データを記憶することができるクライアント・キャッシュを有し、前記方法は、
Ａ．クライアント・デバイスからのユーザ照会に対するトーキング・ヘッド応答を生成する工程と、
Ｂ．前記トーキング・ヘッド応答に関連するデータが、前記クライアント・デバイス上のクライアント・キャッシュに記憶されているかどうかを判定する工程と、
Ｃ．前記クライアント・キャッシュが、前記トーキング・ヘッド応答に関連するデータを記憶しているときには、
１．前記クライアント・キャッシュからの前記トーキング・ヘッド応答に関連する前記データを使用して、前記トーキング・ヘッド応答の少なくとも一部分をレンダリングするように前記クライアント・デバイスに指示する工程と、
２．前記クライアント・キャッシュに記憶されていない、前記トーキング・ヘッド応答の一部分を、もしあれば前記クライアント・デバイスに送信して、完全なトーキング・ヘッド応答をレンダリングする工程とを含み、
Ｄ．前記クライアント・キャッシュが、前記トーキング・ヘッド応答に関連する記憶されたデータを有さない場合には、
１．前記クライアント・デバイス上でレンダリングすべき前記トーキング・ヘッド応答を送信する工程を含む、
ことを特徴とする方法。
【請求項１７】
前記クライアント・キャッシュが前記トーキング・ヘッド応答に関連する記憶されたデータを有さないときには、前記クライアント・デバイス上でレンダリングすべき前記トーキング・ヘッド応答を送信する工程は、前記トーキング・ヘッド応答の少なくとも一部分を前記クライアント・キャッシュに記憶するように前記クライアント・デバイスに指示するフラグを送信する工程をさらに含むことを特徴とする請求項１６に記載の方法。
【請求項１８】
ｈｔｔｐデータを前記クライアント・デバイス上で動作するブラウザに送信する工程をさらに含むことを特徴とする請求項１６に記載の方法。
【請求項１９】
サーバは、前記クライアント・キャッシュに記憶された前記データのコピーを記憶することを特徴とする請求項１６に記載の方法。
【請求項２０】
サーバは、前記ユーザ要求に対するダイアログ・マネージャ応答を前記クライアント・キャッシュに記憶されるデータの表現として記憶することを特徴とする請求項１６に記載の方法。
【請求項２１】
ユーザ照会を受信するのに先立って、トーキング・ヘッド応答に関連する文を記憶する工程をさらに含むことを特徴とする請求項１６に記載の方法。
【請求項２２】
クライアント・デバイス上でトーキング・ヘッドをレンダリングする方法であって、前記クライアント・デバイスは、前記トーキング・ヘッドをレンダリングすることに関連するオーディオ／ビジュアル・データを記憶することができるクライアント・キャッシュを有し、前記方法が、
Ａ．ダイアログ中の遅延をブリッジすることに関連した文をクライアント・デバイスのクライアント・キャッシュに記憶する工程と、
Ｂ．ダイアログ中で使用すべき文のテンプレートを記憶する工程と、
Ｃ．クライアント・デバイスからのユーザ照会に対するトーキング・ヘッド応答を生成する工程と、
Ｄ．前記クライアント・キャッシュに記憶された文または記憶されたテンプレートが、前記トーキング・ヘッド応答に関連しているかどうかを判定する工程と、
Ｅ．記憶された文または記憶されたテンプレートが、前記トーキング・ヘッド応答に関連しているときには、
１．前記クライアント・キャッシュからの前記適切な記憶された文またはテンプレートを使用して、前記トーキング・ヘッド応答の少なくとも一部分をレンダリングするように前記クライアント・デバイスに指示する工程と、
２．前記クライアント・キャッシュに記憶されていない前記トーキング・ヘッド応答の一部分を、もしあれば前記クライアント・デバイスに送信して、完全なトーキング・ヘッド応答をレンダリングする工程とを含み、
Ｆ．前記クライアント・キャッシュが前記トーキング・ヘッド応答に関連する記憶されたデータを有さないときには、
１．前記クライアント・デバイス上でレンダリングすべき前記トーキング・ヘッド応答を送信する工程を含む、
ことを特徴とする方法。
【請求項２３】
前記トーキング・ヘッドに関連するアイドル動作を前記クライアント・キャッシュに記憶する工程をさらに含むことを特徴とする請求項２２に記載の方法。
【請求項２４】
前記アイドル動作が、前記トーキング・ヘッドのリスニング動作および待機動作に関連していることを特徴とする請求項２３に記載の方法。
【請求項２５】
クライアント・デバイス上でトーキング・ヘッドをレンダリングする前記方法がネットワーク上で行われることを特徴とする請求項２２に記載の方法。
【請求項２６】
クライアント・デバイス上でトーキング・ヘッドをレンダリングする前記方法がネットワーク上で行われることを特徴とする請求項１に記載の方法。
【請求項２７】
クライアント・デバイス上でトーキング・ヘッドをレンダリングする前記方法がネットワーク上で行われることを特徴とする請求項１６に記載の方法。
【請求項２８】
動作テンプレートを記憶する工程をさらに含むことを特徴とする請求項１６に記載の方法。
【請求項２９】
前記動作テンプレートがリスニング動作に関連していることを特徴とする請求項２８に記載の方法。
【請求項３０】
前記動作テンプレートが質問に対する答えを待つことに関連する動作に関連していることを特徴とする請求項２８に記載の方法。
【請求項３１】
前記動作テンプレートが２度目に質問に答えることに関連する動作に関連していることを特徴とする請求項２８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに基づいたトーキング・ヘッド（talking head：会話する者）に関し、より詳細には、ネットワーク環境におけるトーキング・ヘッド・アニメーションの待ち時間（latency)を減少させるアーキテクチャに関する。
【背景技術】
【０００２】
ますます多くのウェブサイトが、自然言語インターフェースを使用して、これらのウェブサイトの顧客と情報をやりとりし、より成功を収められるセルフサービスを行うように顧客を導き、ユーザ体験を高度なものにしている。場合によって、一部のサイトでは、トーキング・ヘッドの変化するイメージを提供して、このブラウザ・ウィンドウ中に表示されるテキストに加えて、気持ち（幸せな、気分を害した、悲しい）も表現することもある。この技術の進化と共に、インターネット上の顧客サービスおよびセールス用途のためのアニメーション化されたトーキング・フェース（talking face）が、組織とその顧客の間の情報のやりとりを高度なものにしている。
【０００３】
ウェブベースの対話における自然言語インターフェースの使用は、一般的にいくつかの主要コンポーネント、ならびに（１）クライアントが、インターネット・エクスプローラ（商標）やネットスケープ（商標）などの通常のウェブ・ブラウザを使用する工程と、（２）ユーザが、ウェブ・ページ上のテキスト・ボックスにテキストをタイプ入力する工程と、（３）このテキストが、サーバに送信される工程と、（４）このサーバが、自然言語理解、ダイアログ制御、および自然言語生成を含めていくつかのモジュールから構成されるダイアログ・マネージャにこのテキストを送信する工程と、（５）このダイアログ・マネージャが、このサーバに応答テキストを送信し、このサーバが、この１つ（または複数）の適切なウェブ・ページを有するこのテキストをこのクライアントに転送する工程から構成される。サーバにおいてさらに処理することなくウェブ・ページをサービスする簡単なウェブサイトに比べて、このクライアントが感知するサーバ応答の待ち時間は、このダイアログ・マネージャの応答時間だけ増加させられる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ウェブサイトとのユーザの対話がトーキング・フェースを含む場合には、２つの追加工程、すなわち（１）スピーチ・シンセサイザを使用してスピーチを合成する必要がある工程（ＴＴＳ）と、（２）このＴＴＳが作成する音素に基づいて、レンダラ（renderer）がこの顔をアニメーション化する工程が行われる必要がある。スピーチ合成は、リアルタイムよりも速く行うことができるが、ＴＴＳシステムの待ち時間（最初のオーディオが得られるまでの時間）は、通常０．３秒を超過してしまう。ウェブの対話においては、人々は、しばしば遅いダウンロード速度に起因するかなりの待ち時間にさらされることもあるが、ウェブの対話は、向かい合っての会話にますます似たものになっているので、少ない待ち時間は不可欠である。応答における０．３秒を超える遅延は、気付くことが可能であり、このユーザをいらいらさせてしまう。
【課題を解決するための手段】
【０００５】
このＴＴＳからの音素および関連した情報に基づいて、このトーキング・ヘッドは、アニメーション化される。フェース・アニメーション（face animation）は、リアルタイムで行うことができるが、このフェース再生（renderer)はまた、このシステムに対して待ち時間を追加してしまう。フェース・モデルによっては、最初のビデオまでの時間が、０．５秒を超過する可能性がある。高品質のフェース・アニメーション・システムは、調音結合モデル（coarticulation model）を使用して、口の形状を計算する。現在の口の形状は、以前の音声に依存する。さらに、この口は、音声を予想して動き、このフェース・アニメーションの待ち時間をさらに追加することになる。本発明は、このサーバが、このアニメーションの新しい部分を生成しながら、低待ち時間を有するトーキング・ヘッド・アニメーションを提示することができる、クライアント側およびサーバ側におけるキャッシュを導入することにより、これらの問題を解決している。
【０００６】
本発明の追加の特徴および利点については、以下の説明中に記述しており、一部はこの説明から明らかになり、あるいは本発明の実行により学習することができる。本発明のこれらの特徴および利点は、特に添付の特許請求の範囲に指摘される手段および組合せを用いて実現し取得することができる。本発明のこれらの特徴および他の特徴は、以下の説明および添付の特許請求の範囲からさらに十分に明らかになり、あるいは本明細書中に記述する本発明の実行により学習することができる。
【０００７】
本発明の、以上に列挙した利点および特徴、および他の利点および特徴を得ることができる方法について説明するために、以上に簡単に説明した本発明のさらに詳細な説明について、添付図面に示される本発明の特定の実施形態に関して表現することにする。これらの図面は、本発明の典型的な実施形態について示しているにすぎず、したがって本発明の範囲を限定するものと考えるべきでないことを理解することにより、添付図面を使用して、本発明について、さらに具体的に、また詳細に記述し説明することにする。
【発明を実施するための最良の形態】
【０００８】
フェース・アニメーションの待ち時間(latency)は、ウェブ・サーバとユーザの間の通信を妨げ、それによってこのユーザの体験を不自然にする。本明細書に開示するのは、クライアント上のキャッシュおよび／またはサーバ上のキャッシュを使用して、このフェース・アニメーション・システムの待ち時間を減少させるアーキテクチャである。このサーバは、このクライアント・キャッシュ中の情報を追跡する。さらに、このサーバベースのＴＴＳシステムおよびＶＴＴＳ（visual TTS：ビジュアルＴＴＳ）システムは、キャッシュを使用して、複数のユーザのために同一のアニメーションを計算することを回避することができる。このアーキテクチャは、ダイアログ・マネージャを使用して動的コンテンツを作成するサーバ、ならびに静的コンテンツをこのクライアントに送信するサーバをサポートするのに適している。
【０００９】
インターネット上でのキャッシングは、大体においてコンピュータ中におけるキャッシングと同じ原理に従う。以前にダウンロードされているウェブ・ページは、ローカル・キャッシュ中に記憶される。このページが制限された期間内にアクセスされる場合、このキャッシュされたページが、このサーバから新しいページをダウンロードする代わりに示される。この原理を拡張したものがプロキシ・キャッシュであり、ここでは、これらの最も人気のあるページが、複数のサーバ上でキャッシュされ、その結果、この元のサーバに比べてこのユーザに「より近い」ところにあるサーバからページを取り出すことができる。
【００１０】
本発明は、ユーザとトーキング・ヘッドの間のネットワークベースのダイアログ中の待ち時間(latency)を減少させるキャッシングのシステムおよび方法に関する。ユーザは、ユーザの入力に対する非常に速い反応を期待するので、ダイアログは、待ち時間に関して特に要求が厳しい。この閲覧者に提示されるデータ／アニメーション中に反復が存在し、あるいは予測できる反応があるときはいつでも、キャッシングは、待ち時間および必要とされる帯域幅を減少させることができる。幸いにも、ダイアログの反復および予測できる反応が非常に一般的である場合には、キャッシング・メカニズムを作成することは、特に効果的になる。
【００１１】
アニメーション、グラフィックスおよびデータをこのクライアントに複数の方法で記憶することにより、キャッシングは、待ち時間および必要な帯域幅を減少させることができる。インターネット上の従来のキャッシングとは対照的に、ダイアログ・キャッシングは、その再生時に先立って、これらのコンピュータ応答の一部分をこのクライアント上に記憶することを必要とする。この場合には、実際のコンピュータ応答は、このクライアント上に優先的にキャッシュされる情報と、このサーバから送信された新しい情報の組合せから構成される。この情報は、このユーザが、この情報がどのソースからやって来るかに気付かないように提示する必要がある。このプリエンプティブ・キャッシング（preemptive caching）は、それが同じであるという意味で静的であり、あるいはこのダイアログ・マネージャがダイアログ確率に基づいてこのキャッシングを制御する場合に動的である可能性がある。静的キャッシングの実施例は、「Good morning（おはようございます）」や「Glad to have you back（お帰りなさい）」などのフレーズを含んでいる。動的キャッシングは、当座預金口座額や日時など、変化する情報に関する。「Hello, your account balance is $130.23（こんにちは、あなたの口座残高は、１３０．２３ドルです）」のようなフレーズは、静的部分（この文中の単語）および動的部分（この口座残高）を有することになる。
【００１２】
クライアント・キャッシュおよび／またはサーバ・キャッシュに記憶されるデータは、オーディオ情報、テキスト情報、またはビジュアル情報に関連したパラメータにすることができる。この情報は、オーディオ・パラメータまたはビジュアル・パラメータ、実際のオーディオ信号、あるいはビデオ・イメージとすることができる。このオーディオ情報は、スピーチのために使用されるテキストに付随するスピーチ情報、テキスト情報、またはマークアップ情報を意味することもある。
【００１３】
図１は、ＤＭ（dialog managerダイアログ・マネージャ）１０４と情報を通信するサーバ１０２などのコンポーネントを含む例示のアーキテクチャ１００を示している。ＤＭ１０４は、ＴＴＳ（text-to-speech：テキスト・ツー・スピーチ）モジュール１０６およびビジュアルＴＴＳ（ＶＴＴＳ）モジュール１０８と情報を通信する。ＴＴＳモジュール１０６は、オーディオ・コーデック１１０と情報をやりとりし、ＶＴＴＳ１０８は、ビジュアル・コーデック１１２と情報を通信する。ＤＭ１０４、オーディオ・コーデック１１０およびビジュアル・コーデック１１２は、サーバ１０２と情報を通信する。
【００１４】
サーバ１０２は、ＨＴＴＰ要求を受信し、オーディオ情報およびビジュアル情報をクライアント１１４に送信してトーキング・ヘッドおよびウェブ・ページを生成してユーザとダイアログを実行することにより、クライアント１１４と通信を行う。オーディオ／ビジュアル・キャッシュ１１６は、クライアント１１４と情報を通信する。レンダラ１２０およびウェブ・ブラウザ１１８は、クライアント１１４と情報を通信する。このサーバは、クライアント・キャッシュ１１７に関連した情報を記憶するデータベースまたはサーバ・キャッシュ１１７を有することもできる。この情報は、クライアント・キャッシュ１１６のコピーでもよく、あるいはどのような情報がクライアント・キャッシュ１１６に記憶されているかを識別するパラメータでもよい。例えば、このサーバは、文１〜１２などの情報を記憶することができ、２５〜４５は、クライアント・キャッシュ１１６に記憶される。サーバ・キャッシュ１１７は、このトーキング・ヘッドが話すべき非常に多くの静的／動的フレーズに挿入されることになる動的情報を記憶することもできる。例えば、このサーバは、今日が２００３年２月１２日であることを計算することができ、この動的情報を必要とするこれらのすべての会話が行われるたびごとに一度しかこれを行う必要がないことになる。これに関しては、ユーザは、オーディオ情報およびビジュアル情報をサーバ・キャッシュ１１７に記憶し、このオーディオ・データおよびビジュアル・データが必要とされる場合に、少なくとも１つのダイアログまたは複数のダイアログ中でこの情報を利用することができる。
【００１５】
サーバ１０２およびクライアント１１４は、インターネット上で適切で知られているプロトコルを使用して通信を行う。本発明の一実施形態についての説明を始めるに当たり、サーバ１０２は、クライアント１１４からのＨＴＴＰ要求を受信するものと想定する。図２に示す以下の実施例の工程においては、サーバ１０２は、ＤＭ１０４を使用して、クライアント１１４からの要求にサービスする必要があることが想定されている。
【００１６】
サーバ１０２は、テキストをＤＭ１０４に送信する（２０２）。このテキストは、このＨＴＴＰ要求から抽出された、クライアント１１４からの入力、またはこの要求されたＵＲＬに関連するウェブ・ページから導き出された何らかのテキストとすることができる。ＤＭ１０４は、テキストを解析し、このダイアログ、このユーザのクリックの形跡、および他のアイテムの状態を考慮して応答を系統的に作成する（２０４）。テキストベースの応答は、幸福、嫌悪、期待などのような情緒的状態を示すマークアップ(markup)を含むことができる。このテキストベースの応答は、ＴＴＳモジュール１０６、ならびにサーバ１０２に送信される（２０６）。サーバ１０２が、このテキストベースの応答がクライアント・キャッシュ１１６に記憶されていると判定する場合、サーバ１０２は、クライアント１１４に信号を送信して、キャッシュ１１６からの応答を再生する（２０８）。さらに、サーバ１０２は、この適切なウェブ・ページをクライアント１１４に送信する（２１０）。サーバ１０２が、現在の応答がクライアント・キャッシュ１１６において使用可能でないと判定する場合には、このサーバは、ＴＴＳ１０６およびＶＴＴＳシステム１０８にこの応答を供給するように指示する（２１２）。ＴＴＳ１０６は、このフェース・アニメーション・システムについてのテキストのこのスピーチ、ならびに音素、存続期間、タグおよびマークアップのリストを解析し、このスピーチと、もしあれば他のデータをオーディオ・コーデック１１０へと送信する（２１４）。オーディオ・コーデック１１０は、このオーディオを圧縮し、このサーバがこのデータをこのクライアントにサービスできるようにこのデータをパッケージ化する（２１６）。フェース・アニメーション・サーバ（ＶＴＴＳ）１０８は、このクライアントがこの顔をレンダリングできるようにすることになるアニメーション・パラメータを計算する（２１８）。アニメーション・パラメータは、頭部および目の動き、顔の表情、このフェース・モデルの口および／または目の区域のビデオ、ならびに頭部全体のビデオを含むことができる。
【００１７】
ビジュアル・コーデック１１２は、ＶＴＴＳ１０８の出力を圧縮し、サーバ１０２がクライアント１１４にこのデータをサービスすることができるようにこのデータをパッケージ化する（２２０）。サーバ１０２は、このオーディオ・データおよびビジュアル・データをクライアント１１４に送信する（２２２）。このデータは、このデコーダが、このレンダリング(rendering)されたフェース・モデルおよびこの関連するオーディオを同期して提示できるようにするタイムスタンプを含んでいる。サーバ１０２は、このクライアントにこの情報をそのキャッシュ１１６に記憶するように指示するフラグをクライアント１１４に送信することができる。サーバ１０２は、クライアント・キャッシュ１１６のコピーを保持することにより、またはクライアント・キャッシュ１１６中のコンテンツの指示として、このサーバ・キャッシュ（図示せず）中のダイアログ・マネージャ１０４の応答だけを保持することにより、クライアント・キャッシュ１１６を追跡する。さらに、サーバ１０２は、新しい情報またはアップデートされた情報をこのユーザに提供するウェブ・ページを送信することを選択することができる。このウェブ・ページは、このオーディオ／ビジュアル・データの伝送に先立って送信することができる。
【００１８】
このユーザの端末デバイス（図示せず）は、この受信されたデータを解釈するクライアント１１４を含んでいる。このＨＴＴＰデータは、ブラウザ１１８に送信される。サーバ１０２が、フラグを送信する場合、オーディオ／ビジュアル・データは、レンダラ(renderer：再生器)１２０に送信される。別のフラグを使用して、サーバ１０２は、このオーディオ／ビジュアル・データをクライアント１１４上のデータベースに記憶すべきことを示すことができる。代わりに、フラグは、このオーディオ／ビジュアル・データをレンダラ１２０とデータベース１１６の両方に送るべきことを示すこともできる。本明細書中で使用しているように、これらの用語、データベースとキャッシュは、一般的に同様な意味を有している。代わりに、このサーバは、クライアント・キャッシュ１１６からのデータがレンダラ１２０に送られることを要求することもできる。
【００１９】
サーバ１０２からデータを受信するとすぐに、クライアント１１４は、このオーディオ／ビジュアル・データを復号化し、このビジュアル・データに基づいてこのフェース・モデルをレンダリングし、このオーディオと同期してこのフェース・モデルを提示する。さらに、サーバ１０２から受信されるウェブ・ページが、この端末のブラウザ１１８上でレンダリングされる。
【００２０】
クライアント上にキャッシュがないアーキテクチャに比べると、このシステムの待ち時間(latency)は、このオーディオ・ビジュアル・データがこのローカル・キャッシュ中で使用可能である場合だけに、減少させられるにすぎない。したがって、本発明の一態様によるサーバ１０２は、クライアント１１４がサーバ１０２に接続されるとすぐに、クライアント１１４からの入力を待つ間に、このクライアントのキャッシュ１１６中の遅延をブリッジするために文を記憶し始める。記憶すべき典型的な文は、挨拶（「Hello（こんにちは）」、「Good-by（さようなら）」）および遅延をマスクするための文（「Please wait a second（ちょっと、待って下さい）」、「just a moment please（少しお待ち下さい）」、「Let me check our database（データベースをチェックしてみます）」）である。サーバ１０２は、「The time is now...（今、ちょうど．．．）」のような文についてのテンプレートを記憶することもできる。この実施例においては、サーバ１０２は、このテンプレートの可変部分−「5 pm（午後５時）」のような実際の時刻をクライアント１１４に対して送信する必要があるにすぎないはずである。このテンプレートが再生される間に、この可変部分がサーバ１０２から受信され、このユーザに対する非常に低待ち時間の応答がもたらされる。
【００２１】
クライアント・キャッシュ１１６中に記憶すべき他の情報は、このフェース・モデルのアイドル動作（idle behavior）である。この情報は、「動作テンプレート」と称することができる。かかるテンプレートは、リスニング動作や待機動作などのトーキング・ヘッドのビジュアル情報を提供することができる。かかる動作テンプレートは、この文脈を仮定すると、このユーザとの対話をより自然にする様々なビジュアル・プロソディ・パターン（visual prosody pattern）をもたらす。これらの動作テンプレートは、任意の会話コンポーネントについてのビジュアル・プロソディをカバーすることができる。前述のリスニング動作に加えて、トーキング動作を含めることもできる。例えば、このトーキング・ヘッドが質問について２回聞く必要がある場合には、このビジュアル・プロソディが、より深刻で強烈なものに変化することもある。このビジュアル・プロソディは、このユーザに「you owe $55 in late fees（あなたは、延滞料５５ドルを支払う義務があります）」と通知する場合に比べて「Good morning」と挨拶する場合では異なる可能性がある。さらにこのユーザがあるフレーズを完了しようとしており、次はこのトーキング・ヘッドが話す順番であるとこのシステムが判断する場合には、このトーキング・ヘッドが適切に動くことができるようにする、過渡的なビジュアル・プロソディが存在することもある。通常の会話をシミュレートする動作テンプレートは、このトーキング・ヘッドのどのようなビジュアル待ち行列またはビジュアルな動きもカバーすることができる。
【００２２】
クライアント・キャッシュ１１６のサイズは、制限される可能性があり、したがって本発明の一態様におけるクライアント１１４は、このクライアントがキャッシュ１１６からいつ情報を取り除くかをサーバ１０２に通知する。代わりに、サーバ１０２はどの部分がもはや必要でないかをクライアント１１６に通知することもある。
【００２３】
ダイアログの多くの部分はあらかじめ決められている。これを示すのは、ＡＴ＆Ｔ社の「How May I Help You?（いかがいたしますか）」のようなダイアログ・システムが、記録済みのプロンプトだけを使用して、そのユーザと対話することである。したがって、サーバ１０２は、ダイアログの多数の文をあらかじめ計算しておくことができる。本発明の一態様において、このシステムは、サーバ・キャッシュ（図示せず）中にこれらのあらかじめ計算された文を記憶する。ダイアログ・マネージャ１０４が合成要求と共に応答をＴＴＳ１０６およびＶＴＴＳ１０８に送るたびに、このサーバ・キャッシュは、チェックされる。応答がこのキャッシュ中にある場合、この応答は、サーバ１０２にすぐに転送され、それによってテキストのみのウェブベースのダイアログ・システムに比べて待ち時間を増大させることはない。合成する必要がある要求については、将来の使用する可能性のために、このサーバ・キャッシュに記憶される。
【００２４】
サーバ１０２と、その多数のクライアント１１４の間で行われる多数のダイアログを活用するために、オーディオ／ビジュアル・データのサーバ・キャッシュは、すべてのダイアログに対して共通にすることができる。この場合には、サーバ１０２は、動的情報（電話番号のような個人データ、時刻のような変化しやすい情報）を含む応答を合成する必要があるだけになる。テンプレートを使用してあらかじめ文を計算することにより、計算時間をさらに減少させることができる。テンプレートは、ダイアログ・システム中で共通に使用される。例えば、ショッピング環境においては、ユーザは、ユーザのショッピング・カート中のアイテムの金額について知りたいと望むこともある。ダイアログ・マネージャ１０４は、「Your total is $X（あなたの合計は、Ｘドルです）」または「Today, you ordered for $X（本日は、あなたはＸドル注文しました）」のような文を使用してその合計価格を伝えることができることもある。このテンプレートの固定部分のオーディオ部分およびビジュアル部分については、あらかじめ計算しておくことができる。このあらかじめ計算したオーディオ／ビジュアル・データと共に、動的部分について知るとすぐに、応答を処理し続けることができるように、ＴＴＳ１０６およびＶＴＴＳ１０８は、それらのアルゴリズムの状態を保存することになる。
【００２５】
本発明の範囲内の実施形態はまた、コンピュータ実行可能命令またはその上に記憶されるデータ構造を伝え、または有するコンピュータ読取り可能媒体を含むことができる。かかるコンピュータ読取り可能媒体は、汎用コンピュータまたは専用コンピュータがアクセスすることができる使用可能な任意の媒体とすることができる。実施例として、限定するものではないが、かかるコンピュータ読取り可能媒体は、コンピュータ実行可能命令またはデータ構造の形態で所望のプログラム・コード手段を伝え、または記憶するために使用することができるＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク・ストレージ、磁気ディスク・ストレージまたは他の磁気ストレージ・デバイス、あるいは他の任意の媒体を含むことができる。情報が、（有線、無線、またはその組合せの）ネットワークまたは他の通信接続上で、コンピュータに転送され、または提供されるときに、このコンピュータは、この接続をコンピュータ読取り可能媒体と適切にみなす。したがって、かかる任意の接続は、コンピュータ読取り可能媒体と適切に称される。以上の組合せもまた、このコンピュータ読取り可能媒体の範囲内に含められるべきである。
【００２６】
コンピュータ実行可能命令は、例えば汎用コンピュータ、専用コンピュータ、または専用処理デバイスにある種のファンクションまたはファンクションのグループを実施させる命令およびデータを含んでいる。コンピュータ実行可能命令はまた、スタンドアロン環境またはネットワーク環境におけるコンピュータによって実行されるプログラム・モジュールも含んでいる。一般的に、プログラム・モジュールは、個々のタスクを実施し、個々の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、およびデータ構造などを含んでいる。コンピュータ実行可能命令、関連するデータ構造、およびプログラム・モジュールは、本明細書中に開示の方法の工程を実行するプログラム・コード手段の実施例を表す。かかる実行可能命令の特定のシーケンス、または関連するデータ構造は、かかる工程で記述されるファンクションを実装するための対応する動作の実施例を表す。
【００２７】
本発明の他の実施形態は、パーソナル・コンピュータ、ハンドヘルド・デバイス、マルチプロセッサ・システム、マイクロプロセッサベースのまたはプログラマブルな大衆消費電子製品、ネットワークＰＣ、ミニコンピュータ、メインフレーム・コンピュータなどを含めて、多くのタイプのコンピュータ・システム・コンフィギュレーションを有するネットワーク・コンピューティング環境中で実行することができることが当業者には理解されよう。実施形態はまた、分散コンピューティング環境中において実行することもでき、ここでは、タスクは、通信ネットワークを介して（有線リンク、無線リンク、またはその組合せによって）リンクされるローカル処理デバイスおよびリモート処理デバイスによって実施される。分散コンピューティング環境中においては、プログラム・モジュールは、ローカル・メモリ・ストレージ・デバイス中にもリモート・メモリ・ストレージ・デバイス中にも配置することができる。
【００２８】
以上の説明は、個々の詳細を含んでいることもあるが、これらの詳細については、どのような形であれ本特許請求の範囲を限定するものと解釈すべきではない。本発明の説明している実施形態の他の構成も、本発明の範囲の一部分となる。例えば、クライアント・デバイスは、ダウンロード・プロセスを介してダイアログ・マネージャならびにＴＴＳモジュールを受信することができる。これに関しては、以上の好ましい実施形態は、クライアント・デバイス１１４からリモートなダイアログ・マネージャおよびＴＴＳモジュール（ならびに他のモジュール）を示しているが、このＴＴＳモジュールおよびダイアログ・マネージャのこのネットワーク上のロケーションについては、本発明とは関係ないことが企図されている。したがって、これらの様々なモジュールは、任意のネットワークの任意のノード上に存在することができ、個々の特許請求項は、これに関して、どのアーキテクチャにも限定されることがない。提供した特定の任意の実施例ではなくて、添付特許請求の範囲およびその法的同等物だけが、本発明を定義するものとする。
【図面の簡単な説明】
【００２９】
【図１】本発明の一実施形態によるアーキテクチャの一実施例を示す図である。
【図２】本発明の別の実施形態による方法を示す図である。
【図１】
2006524867.tif 000003
【図２】
2006524867.tif 000004
【国際調査報告】
2006524867.tif 000005
2006524867.tif 000006
2006524867.tif 000007