(57)【要約】  メッセージ交換スレッドを拡張するための方法、装置、システム、およびコンピュータ可読媒体が提供される。様々な実装形態では、2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドが調査され得る。調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムが識別され得る。様々な実装形態では、参加者が検索クエリとして1つまたは複数のアイテムを特に識別することなく、進行中のメッセージ交換スレッドの一部として2人以上の参加者のうちの1人によって2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて1つまたは複数のアイテムが識別され得る。次いで、1つまたは複数の識別されたアイテムにより検索クエリが形成され得、検索クエリに応答するコンテンツが取得され得る。応答するコンテンツに関連する1つまたは複数のグラフィカル要素がメッセージ交換スレッドに組み込まれ得る。
2019523923.tif 000002
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサによって、2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドを調査するステップと、
前記プロセッサのうちの1つまたは複数によって、前記調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別するステップであって、参加者が検索クエリとして前記1つまたは複数のアイテムを特に識別することなく、前記進行中のメッセージ交換スレッドの一部として前記2人以上の参加者のうちの1人によって前記2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて前記1つまたは複数のアイテムが識別される、ステップと、
前記1つまたは複数のプロセッサのうちの1つによって、前記1つまたは複数の識別されたアイテムにより前記検索クエリを形成するステップと、
前記プロセッサのうちの1つまたは複数によって、前記検索クエリに応答するコンテンツを取得するステップと、
前記プロセッサのうちの1つまたは複数によって、前記メッセージ交換スレッドに、前記応答するコンテンツに関連する1つまたは複数のグラフィカル要素を組み込むステップと
を含むコンピュータ実装方法。
【請求項２】
前記組み込むステップは、前記メッセージ交換クライアントのうちの少なくとも1つが、前記メッセージ交換クライアントのうちの前記少なくとも1つのグラフィカルユーザインターフェースに表示される前記進行中のメッセージ交換スレッドのトランスクリプトに前記1つまたは複数のグラフィカル要素を挿入することを要求するステップを含む、請求項1に記載のコンピュータ実装方法。
【請求項３】
前記1つまたは複数のグラフィカル要素は、前記応答するコンテンツを伝達するテキストを含む、請求項1または2に記載のコンピュータ実装方法。
【請求項４】
前記1つまたは複数のグラフィカル要素は、前記応答するコンテンツを伝達する1つまたは複数の画像を含む、請求項1から3のいずれか一項に記載のコンピュータ実装方法。
【請求項５】
前記1つまたは複数のグラフィカル要素は、前記1つまたは複数のアイテムの翻訳を含む、請求項1から4のいずれか一項に記載のコンピュータ実装方法。
【請求項６】
前記1つまたは複数のグラフィカル要素は、前記参加者のために前記トランスクリプトに所定のテキストを自動的に追加するように前記参加者によって選択可能である、請求項2に記載のコンピュータ実装方法。
【請求項７】
前記1つまたは複数のグラフィカル要素は、前記検索クエリに応答する1つまたは複数の電子ドキュメントにリンクする、請求項1から6のいずれか一項に記載のコンピュータ実装方法。
【請求項８】
前記1つまたは複数のグラフィカル要素は、前記メッセージ交換クライアントのうちの少なくとも1つを動作させているコンピューティングデバイス上にインストールされたアプリケーションにリンクし、前記アプリケーションは前記検索クエリに応答する、請求項1から7のいずれか一項に記載のコンピュータ実装方法。
【請求項９】
前記1つまたは複数のグラフィカル要素は、1つまたは複数の動作を実行するように参加者によって操作可能であるアプレットを含む、請求項1から8のいずれか一項に記載のコンピュータ実装方法。
【請求項１０】
前記アプレットは計算機を含む、請求項9に記載のコンピュータ実装方法。
【請求項１１】
前記プロセッサのうちの1つまたは複数によって、既知のエンティティおよびそれらの間の関係の記録を含む知識ベースから、前記1つまたは複数のアイテムに関連する第1のエンティティを識別するステップ
をさらに含み、
前記応答するコンテンツは、前記第1のエンティティに関連する情報を含む、請求項1から10のいずれか一項に記載のコンピュータ実装方法。
【請求項１２】
前記プロセッサのうちの1つまたは複数によって、前記知識ベースから、前記第1のエンティティに関係する第2のエンティティを識別するステップをさらに含み、
前記1つまたは複数のグラフィカル要素は、前記第2のエンティティに関連する情報を伝達する、請求項11に記載のコンピュータ実装方法。
【請求項１３】
前記1つまたは複数のグラフィカル要素は、前記第1のエンティティの1つまたは複数の属性についての情報を伝達する、請求項11または12に記載のコンピュータ実装方法。
【請求項１４】
メモリおよび1つまたは複数のプロセッサを含むシステムであって、前記メモリは、前記1つまたは複数のプロセッサによって実行されたときに、前記1つまたは複数のプロセッサに、
2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドを調査することと、
前記調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別することであって、参加者が検索クエリとして前記1つまたは複数のアイテムを特に識別することなく、前記進行中のメッセージ交換スレッドの一部として前記2人以上の参加者のうちの1人によって前記2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて、前記1つまたは複数のアイテムが識別される、識別することと、
前記1つまたは複数の識別されたアイテムにより前記検索クエリを形成することと、
前記検索クエリに応答するコンテンツを取得することと、
前記メッセージ交換スレッドに、前記応答するコンテンツに関連する1つまたは複数のグラフィカル要素を組み込むことと
を行わせる命令を記憶する、システム。
【請求項１５】
前記メッセージ交換クライアントのうちの少なくとも1つが、前記メッセージ交換クライアントのうちの前記少なくとも1つのグラフィカルユーザインターフェースに表示される前記進行中のメッセージ交換スレッドのトランスクリプトに前記1つまたは複数のグラフィカル要素を挿入することを要求する命令をさらに含む、請求項14に記載のシステム。
【請求項１６】
前記1つまたは複数のグラフィカル要素は、前記応答するコンテンツを伝達するテキストを含む、請求項14または15に記載のシステム。
【請求項１７】
前記1つまたは複数のグラフィカル要素は、前記応答するコンテンツを伝達する1つまたは複数の画像を含む、請求項14から16のいずれか一項に記載のシステム。
【請求項１８】
前記1つまたは複数のグラフィカル要素は、前記1つまたは複数のアイテムの翻訳を含む、請求項14から17のいずれか一項に記載のシステム。
【請求項１９】
前記1つまたは複数のグラフィカル要素は、前記参加者のために前記トランスクリプトに所定のテキストを自動的に追加するように前記参加者によって選択可能である、請求項15に記載のシステム。
【請求項２０】
メモリおよび1つまたは複数のプロセッサを含むシステムであって、前記メモリは、前記1つまたは複数のプロセッサによって実行されたときに、前記1つまたは複数のプロセッサに、請求項1から13のいずれか一項に記載の方法を実行させる命令を記憶する、システム。
【請求項２１】
1つまたは複数のプロセッサによる命令の実行に応答して、前記1つまたは複数のプロセッサに以下の動作、すなわち、
2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドを調査するステップと、
前記調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別するステップであって、参加者が検索クエリとして前記1つまたは複数のアイテムを特に識別することなく、前記進行中のメッセージ交換スレッドの一部として前記2人以上の参加者のうちの1人によって前記2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて前記1つまたは複数のアイテムが識別される、ステップと、
前記1つまたは複数の識別されたアイテムにより前記検索クエリを形成するステップと、
前記検索クエリに応答するコンテンツを取得するステップと、
前記メッセージ交換スレッドに、前記応答するコンテンツに関連する1つまたは複数のグラフィカル要素を組み込むステップと
を実行させる前記命令を記憶した少なくとも1つの非一時的コンピュータ可読記憶媒体。
【請求項２２】
1つまたは複数のプロセッサによる命令の実行に応答して、前記1つまたは複数のプロセッサに、請求項2から13のいずれか一項に記載の方法を実行させる前記命令を記憶した、請求項21に記載の少なくとも1つの非一時的コンピュータ可読記憶媒体。
【請求項２３】
請求項1から13のいずれか一項に記載の方法を実行するように構成された装置。
【請求項２４】
コンピューティング装置によって実行されたときに、請求項1から13のいずれか一項に記載の方法が実行されるようにする機械可読命令を含むコンピュータプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
複数の参加者は、互いにテキストで、テキストメッセージ交換、オンラインチャット(たとえば、インスタントメッセンジャー、インターネットリレーチャットなど)、ソーシャルネットワークメッセージングスレッドなどのような様々な技術を使用して実装され得るメッセージ交換スレッドを介して通信することがある。テキストメッセージングアプリ、オンラインチャットアプリ、ソーシャルネットワーキングアプリなどのようないくつかのクライアントメッセージ交換アプリは、参加者が会話についていくことができるようにグラフィカルユーザインターフェースの一部として進行中のメッセージ交換スレッドのトランスクリプト(たとえば、参加者が会話するのに伴ってリアルタイムで更新されるテキストおよび/または画像の生またはほぼ生の記録)の少なくとも一部を表示し得る。進行中のメッセージ交換スレッド、ひいては表示されるトランスクリプトは通常、参加者が意図的かつ明示的にメッセージ交換スレッドに組み込むテキストまたはピクチャなどの他のデータに限定される。したがって、会話に関係する外部情報を求める参加者は、所望の情報を取得するために、ウェブブラウザなどの異なるアプリケーションに切り替えなければならない。特に、一度に単一のアプリケーションを表示するだけであることが多いモバイルデバイスを使用して、アプリケーションを切り替えることは、気を散らし、厄介なことがあり、会話の流れを乱し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
本開示は一般に、2人以上の参加者の間のメッセージ交換スレッドを、検索ベースの提案および他のコンテンツによりメッセージ交換スレッドを拡張する(augment)ために調査するための方法、装置、ならびにコンピュータ可読媒体(一時的および非一時的)を対象とする。これは、様々な技術的利点をもたらし得る。たとえば、1つの技術的利点は、本明細書で説明する技法が、参加者が他のデータソースからデータを取得するために議論から離れる必要を減らし得ることである。別の関連する技術的利点は、クライアントデバイス上で実行される必要があるアプリケーションが少なくなって、バッテリー電力のほか、プロセッササイクルおよびメモリなどのクライアントデバイスの計算リソースを節約することができることである。一般に、検索ベースの提案および他のコンテンツ(そのようなコンテンツに関連するグラフィカル要素を含む)によるメッセージ交換スレッドの拡張は、ユーザが提案およびコンテンツにアクセスするためにデバイスに対して行わなければならないユーザ入力の数を減らすことができる。これは、器用ではないユーザ、またはさもなければデバイスに対してユーザ入力を行うのが難しいユーザにとって特別な利益を有し得る。少なくともこれらのユーザにとって、提案および/または他のコンテンツによるメッセージ交換スレッドの拡張は、たとえば、ユーザが比較的器用ではないことによってミスをするのを防ぐことによって、デバイスの使用の信頼性および速度を向上させ得る。
【課題を解決するための手段】
【０００３】
いくつかの実装形態では、中央「メッセージ交換エンジン」が、参加者間のメッセージ交換スレッドを円滑にし得る。メッセージ交換エンジンは、いつ1つまたは複数の基準(たとえば、意味論的または構文的)が満たされるかを判断するために、参加者間に向けられたメッセージを監視し得る。基準を満たした交換されるメッセージにおける1つまたは複数のアイテム(たとえば、文章、単語、句、画像、音)に基づいて、メッセージ交換エンジンは、検索クエリを形成し得る。メッセージ交換エンジンによって知識システムの1つまたは複数の構成要素に検索クエリを提出することによって取得され得る、検索クエリに応答するコンテンツは、次いで、たとえば、応答するコンテンツに関連付けられる1つまたは複数のグラフィカル要素として、メッセージ交換スレッドに組み込まれ得る。
【０００４】
「グラフィカル要素」は、アプレット(たとえば、計算機、翻訳機など)のような、対話型であることも対話型ではないこともあるテキスト、画像、および他の視覚的要素を含み得る。グラフィカル要素は、前述の検索クエリに応答するコンテンツに関係する情報を伝達することがあり、または伝達するように選択可能であり得る。いくつかの実装形態では、グラフィカル要素は、電子ドキュメントへのリンク(たとえば、ハイパーリンク)、またはクライアントデバイス上にインストールされた1つもしくは複数のアプリケーションへのリンクであり得る。
【０００５】
いくつかの実装形態では、グラフィカル要素は、2人以上の参加者の間で交換された1つまたは複数のメッセージにおいて言及された既知のエンティティ(たとえば、人、場所、物)についての情報を伝達するテキストおよび/またはピクチャを含み得る。ある参加者が別の参加者に「Who was president before Herbert Hoover(ハーバートフーヴァーの前の大統領は誰でしたか)」という質問を投げかけると仮定し、別の参加者が回答を知らないと仮定する。別の参加者がウェブブラウザなどの別のアプリケーションを使用して検索エンジンで調べるためにメッセージ交換クライアントから切り替えなければならないのではなく、メッセージ交換エンジンは(自動的に、または参加者コマンドに応答して)背後で検索エンジンに検索クエリとしてこの質問を提出し得る。メッセージ交換エンジンは次いで、メッセージ交換クライアントのうちの少なくとも1つのグラフィカルユーザインターフェースに表示される進行中のメッセージ交換のトランスクリプトに回答(Calvin Coolidge(カルビンクーリッジ))を組み込み得る。
【０００６】
いくつかの実装形態では、メッセージ交換スレッドに組み込まれるグラフィカル要素は、参加者のためにメッセージ交換スレッドにテキストを自動的に追加するように参加者によって選択可能であり得る。たとえば、生成された検索クエリは、第1の参加者によってメッセージ交換スレッドに追加されたメッセージへの最も人気のある応答を求め得る。最も人気のある応答を表すグラフィカル要素が、第2の参加者のグラフィカルインターフェースにおいてレンダリングされ得る。次いで第2の参加者は、最も適切な応答を含むグラフィカル要素を選択することができ、応答は、トランスクリプトに自動的に追加され得る。いくつかの実装形態では、第1の参加者は、トランスクリプトに追加されたテキストが第2の参加者によって手動で作られていないことを認識できないことがある。上述した種類の情報および/または選択可能要素によるメッセージ交換スレッドの拡張が、器用ではないユーザ、またはさもなければ、たとえば、交換スレッドにテキストを追加するために、もしくはデバイスにおいて実行される別のアプリケーションを動作させるためにデバイスに対して入力を行うのが難しいと思うユーザにとって、特別の利益を有し得ることが諒解されよう。スレッドにそのような選択可能要素および情報を直接組み込むことで、さもなければ、比較的器用ではないユーザが情報にアクセスするために比較的多数のユーザ入力を行わなければならないことから生じ得る、デバイスへの誤った入力を減らすこともできる。誤ったユーザ入力の減少および誤った動作の対応する減少は、デバイスにおけるコンピュータリソースに対する負荷を減らす全体的効果を及ぼし得る。たとえば、データネットワークおよびデバイスと通信している他のネットワーク化コンピューティング装置における、デバイスの外部のリソースに対する負荷の減少もあり得る。
【０００７】
いくつかの実装形態では、以下の動作、すなわち、2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドを調査するステップと、調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別するステップであって、参加者が検索クエリとして1つまたは複数のアイテムを特に識別することなく、進行中のメッセージ交換スレッドの一部として2人以上の参加者のうちの1人によって2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて1つまたは複数のアイテムが識別される、ステップと、1つまたは複数の識別されたアイテムにより検索クエリを形成するステップと、検索クエリに応答するコンテンツを取得するステップと、メッセージ交換スレッドに、応答するコンテンツに関連する1つまたは複数のグラフィカル要素を組み込むステップとを含むコンピュータ実装方法が提供され得る。
【０００８】
この方法および本明細書で開示する技術の他の実装形態は、以下の特徴のうちの1つまたは複数をそれぞれ随意に含み得る。
【０００９】
様々な実装形態では、組み込むステップは、メッセージ交換クライアントのうちの少なくとも1つが、メッセージ交換クライアントのうちの少なくとも1つのグラフィカルユーザインターフェースに表示される進行中のメッセージ交換スレッドのトランスクリプトに1つまたは複数のグラフィカル要素を挿入することを要求するステップを含み得る。様々な実装形態では、1つまたは複数のグラフィカル要素は、応答するコンテンツを伝達するテキストまたは1つもしくは複数の画像を含み得る。様々な実装形態では、1つまたは複数のグラフィカル要素は、1つまたは複数のアイテムの翻訳を含み得る。様々な実装形態では、1つまたは複数のグラフィカル要素は、参加者のためにトランスクリプトに所定のテキストを自動的に追加するように参加者によって選択可能であり得る。
【００１０】
様々な実装形態では、1つまたは複数のグラフィカル要素は、検索クエリに応答する1つまたは複数の電子ドキュメントにリンクし得る。様々な実装形態では、1つまたは複数のグラフィカル要素は、メッセージ交換クライアントのうちの少なくとも1つを動作させているコンピューティングデバイス上にインストールされたアプリケーションにリンクすることができ、アプリケーションは検索クエリに応答する。様々な実装形態では、1つまたは複数のグラフィカル要素は、1つまたは複数の動作を実行するように参加者によって操作可能であるアプレットを含み得る。様々な実装形態では、アプレットは、計算機、翻訳機、および/またはゲームを含み得る。
【００１１】
様々な実装形態では、本方法は、既知のエンティティおよびそれらの間の関係の記録を含む知識ベースから、1つまたは複数のアイテムに関連する第1のエンティティを識別するステップをさらに含み得る。様々な実装形態では、応答するコンテンツは、第1のエンティティに関連する情報を含み得る。様々な実装形態では、本方法は、プロセッサのうちの1つまたは複数によって、知識ベースから、第1のエンティティに関係する第2のエンティティを識別するステップをさらに含み得る。様々な実装形態では、1つまたは複数のグラフィカル要素は、第2のエンティティに関連する情報を伝達し得る。様々な実装形態では、1つまたは複数のグラフィカル要素は、第1のエンティティの1つまたは複数の属性についての情報を伝達し得る。様々な実装形態では、検索クエリに応答するコンテンツは、メッセージ交換スレッドの参加者によって操作されるクライアントコンピューティングデバイスから取得される。
【００１２】
他の実装形態は、上記で説明した方法のうちの1つまたは複数などの方法を実行するようにプロセッサによって実行可能な命令を記憶する非一時的コンピュータ可読記憶媒体を含み得る。さらに別の実装形態は、メモリおよび上記で説明した方法のうちの1つまたは複数などの方法を単独でまたは集合的に実行する1つまたは複数のモジュールまたはエンジンを実装するためにメモリに記憶された命令を実行するように動作可能な1つまたは複数のプロセッサを含むシステムを含み得る。
【００１３】
上記の概念および本明細書でより詳細に説明する追加の概念のすべての組合せは、本明細書で開示する主題の一部になるものとして企図されることを諒解されたい。たとえば、本開示の最後に現れる特許請求する主題のすべての組合せは、本明細書で開示する主題の一部になるものとして企図される。
【図面の簡単な説明】
【００１４】
【図１】様々な実装形態による、1つまたは複数のグラフィカル要素がメッセージ交換スレッドに組み込まれ得る環境を示す図である。
【図２】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図３】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図４】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図５】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図６】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図７】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図８】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図９】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントのためのグラフィカルユーザインターフェースをレンダリングし得る方法の例を示す図である。
【図１０】様々な実装形態による、グラフィカル要素により進行中のメッセージ交換のトランスクリプトを拡張する例示的な方法を示すフローチャートを示す図である。
【図１１】コンピュータシステムの例示的なアーキテクチャを概略的に示す図である。
【発明を実施するための形態】
【００１５】
図1は、1つまたは複数のグラフィカル要素がメッセージ交換スレッドに組み込まれ得る環境を示す。例示的な環境は、複数のクライアントデバイス1061〜Nおよび知識システム102を含む。知識システム102は、たとえば、ネットワークを通じて通信する1つまたは複数のコンピュータ上に実装され得る。知識システム102は、本明細書で説明するシステム、構成要素、および技法が実装され得、かつ/または本明細書で説明するシステム、構成要素、および技法がインターフェースし得る情報取出しシステムの例である。
【００１６】
ユーザは、クライアントデバイス106を介して知識システム102と対話し得る。各クライアントデバイス106は、ローカルエリアネットワーク(LAN)またはインターネットなどのワイドエリアネットワーク(LAN)などの1つまたは複数のネットワーク110を通じて知識システム102に結合されたコンピュータであり得る。各クライアントデバイス106は、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、モバイルフォンコンピューティングデバイス、参加者の車両のコンピューティングデバイス(たとえば、車内通信システム、車内エンターテインメントシステム、車内ナビゲーションシステム)、またはコンピューティングデバイスを含む参加者のウェアラブル装置(たとえば、コンピューティングデバイスを有する参加者の腕時計、コンピューティングデバイスを有する参加者の眼鏡)であり得る。追加および/または代替のクライアントデバイスが提供されてもよい。参加者は、参加者によって操作および/または所有されるコンピューティングデバイスの協調的「エコシステム」を集合的に形成する複数のコンピューティングデバイスを操作する可能性が高い。ただし、簡潔にするために、本開示で説明する例は、単一のクライアントデバイス106を操作する参加者に焦点を当てる。
【００１７】
各クライアントデバイス106は、メッセージ交換クライアント107などの多種多様なアプリケーションを動作させ得る。メッセージ交換クライアント107は、様々な形態であり得る。いくつかの実装形態では、メッセージ交換クライアント107は、ショートメッセージングサービス(「SMS」)および/またはマルチメディアメッセージングサービス(「MMS」)クライアント、オンラインチャットクライアント(たとえば、インスタントメッセンジャー、インターネットリレーチャットすなわち「IRC」など)、ソーシャルネットワークに関連するメッセージングアプリケーションなどの形態であり得る。いくつかの実装形態では、メッセージ交換クライアント107は、(図示されていない)ウェブブラウザによってレンダリングされたウェブページ内に実装され得る。
【００１８】
クライアントデバイス106および知識システム102の各々は、データおよびソフトウェアアプリケーションを記憶するための1つまたは複数のメモリ、データにアクセスしアプリケーションを実行するための1つまたは複数のプロセッサ、ならびにネットワークでの通信を円滑にする他の構成要素を含み得る。クライアントデバイス106および/または知識システム102によって実行される動作は、複数のコンピュータシステムに分散され得る。知識システム102は、たとえば、ネットワークを通じて互いに結合された1つまたは複数のロケーションにおける1つまたは複数のコンピュータ上で実行されるコンピュータプログラムとして実装され得る。
【００１９】
様々な実装形態では、知識システム102は、メッセージ交換エンジン120、インデックス付けエンジン124、情報エンジン128、ランク付けエンジン134、および代替クエリ提案エンジン136を含み得る。いくつかの実装形態では、エンジン120、124、128、134、および/または136のうちの1つまたは複数が省略され得る。いくつかの実装形態では、エンジン120、124、128、134、および/または136のうちの1つまたは複数のすべてまたは態様が組み合わせられ得る。いくつかの実装形態では、エンジン120、124、128、134、および/または136のうちの1つまたは複数が、知識システム102とは別個である構成要素に実装され得る。いくつかの実装形態では、エンジン120、124、128、134、および/もしくは136のうちの1つもしくは複数、またはそれらの任意の動作可能部分が、クライアントデバイス106によって実行される構成要素に実装され得る。
【００２０】
インデックス付けエンジン124は、知識システム102によって使用されるインデックス126を維持し得る。インデックス付けエンジン124は、ドキュメントを処理し、たとえば、従来のインデックス付け技法および/または他のインデックス付け技法を使用して、インデックス126におけるインデックスエントリを更新する。たとえば、インデックス付けエンジン124は、ワールドワイドウェブなどの1つまたは複数のリソースをクロールし、そのようなクロールを介してアクセスされたドキュメントをインデックス付けし得る。別の例として、インデックス付けエンジン124は、1つまたは複数のドキュメントに関係する情報を、そのようなドキュメントを制御するウェブマスターなどの1つまたは複数のリソースから受信し、そのような情報に基づいてドキュメントをインデックス付けし得る。ドキュメントは、ドキュメントアドレスに関連付けられる任意のデータである。ドキュメントは、ほんのいくつかの例を挙げれば、ウェブベージ、ワード処理ドキュメント、ポータブルドキュメントフォーマット(PDF)ドキュメント、画像、電子メール、カレンダーエントリ、ビデオ、およびウェブフィードを含む。各ドキュメントは、たとえば、テキスト、画像、ビデオ、音、埋込み情報(たとえば、メタ情報および/もしくはハイパーリンク)、ならびに/または埋込み命令(たとえば、JavaScript(登録商標)などのECMAScript実装)などのコンテンツを含み得る。
【００２１】
情報エンジン128は、知識システム102によって使用される非ドキュメント固有情報を含むか、または当該情報へのアクセスを円滑にする別のインデックス130を維持し得る。たとえば、知識システム102は、特定の情報を求めているように見える検索クエリに応答して情報を返信するように構成され得る。参加者が「Ronald Reagan's birthday(ロナルドレーガンの誕生日)」を検索している場合、知識システム102は、たとえば、情報エンジン128から、日付「February 6, 1911(1911年2月6日)」を受信し得る。この情報は、インデックス付けエンジン124から受信されるドキュメントとは別個である検索結果の一部として参加者に返信され得る。様々な実装形態では、インデックス130自体が情報を含むことがあり、またはそれは、オンライン百科事典、アルマナックなどのような1つもしくは複数の他の情報ソースにリンクすることがある。様々な実装形態では、インデックス126またはインデックス130は、クエリ(またはクエリ用語)とドキュメントおよび/または情報との間のマッピングを含み得る。
【００２２】
本明細書では、「データベース」および「インデックス」という用語は、データの任意の集合を指すために広く使用される。データベースおよび/またはインデックスのデータは、特定の方法で構造化される必要はなく、1つまたは複数の地理的ロケーションにおいて記憶デバイス上に記憶され得る。したがって、たとえば、インデックス126および130は、データの複数の集合を含むことができ、それらの各々は別様に編成されアクセスされ得る。
【００２３】
ランク付けエンジン134は、たとえば、従来の情報取出し技法および/または他の情報取出し技法を使用して、検索クエリに応答するドキュメントおよび他の情報を識別するためにインデックス126および/または130を使用し得る。ランク付けエンジン134は、たとえば、1つまたは複数のランク付け信号を使用して、検索クエリに応答するものとして識別されたドキュメントおよび他の情報に関するスコアを計算し得る。各ランク付け信号は、ドキュメントもしくは情報自体、ドキュメントもしくは情報と検索クエリとの間の関係、および/またはドキュメントもしくは情報と検索を実行している参加者との間の関係についての情報を提供し得る。
【００２４】
代替クエリ提案エンジン136は、検索結果とともにクライアントデバイス106に提供する代替クエリ提案を生成するために、(図示されていない)代替クエリ提案のデータベースおよび/またはクライアントデバイス106のユーザについての情報(たとえば、検索履歴、GPSロケーション、ユーザ属性)など、1つもしくは複数の信号および/または他の情報を使用し得る。ユーザが検索クエリの連続文字をタイプすると、代替クエリ提案エンジン136は、ユーザにとって有用である結果をもたらすと思われる代替クエリを識別し得る。たとえば、クライアントデバイス106がシカゴに位置し、「restaur」という文字をタイプしたと仮定する。代替クエリ提案エンジン136は、クライアントデバイス106がシカゴにあることを示すロケーション信号およびライブミュージックを楽しめるレストランに対するユーザの選好を示す検索履歴信号に基づいて、「restaurants in Chicago with live music(ライブミュージックを楽しめるシカゴのレストラン)」というクエリを提案し得る。別の例として、「Ronald Reagan's birt」とタイプしたユーザの場合、代替クエリ提案エンジン136は、たとえば、プレフィックスマッチングなどの技法を使用して、「Ronald Reagan's birthday(ロナルドレーガンの誕生日)」、「Ronald Reagan's birthplace(ロナルドレーガンの出生地)」、「Ronald Reagan's birth control position(ロナルドレーガンの産児制限に対する立場)」などの代替クエリを決定し、提案し得る。代替クエリ提案エンジン136は、部分的に形成された検索クエリのスペル訂正バージョンなどの他の提案も提供し得る。
【００２５】
様々な実装形態では、メッセージ交換エンジン120は、2つ以上のメッセージ交換クライアント107を操作する2人以上のユーザの間の進行中のメッセージ交換スレッドを調査するように構成され得る。この調査に基づいて、メッセージ交換エンジン120は、検索クエリを形成するために使用される1つまたは複数のアイテムを識別し得る。様々な実装形態では、たとえば、参加者が検索クエリとして1つまたは複数のアイテムを特に識別することなく、進行中のメッセージ交換スレッドの一部として2人以上の参加者のうちの1人によって2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて1つまたは複数のアイテムが識別され得る。たとえば、1人の参加者が人、場所、または物などのエンティティに言及した場合、それは、メッセージ交換エンジン120が言及されたエンティティを検索クエリに組み込むトリガとなり得る。
【００２６】
メッセージ交換エンジン120は次いで、たとえば、インデックス付けエンジン124、情報エンジン128、および/またはSMS/MMS履歴、カレンダーエントリ、メディアコンテンツ(たとえば、写真、ビデオ、ゲーム)などのようなクライアントデバイス106にローカルなデータから、検索クエリに応答するドキュメントおよび情報などのコンテンツを取得し得る。様々な実装形態では、検索クエリに応答するコンテンツは、代替クエリ提案エンジン136から返信された代替クエリ提案をさらに含み得る。いくつかの実装形態では、検索クエリに応答するコンテンツは、メッセージ交換エンジン120に提供される前にランク付けエンジン134によってランク付けされ得る。
【００２７】
検索クエリに応答するコンテンツに基づいて、メッセージ交換エンジン120は、グラフィカル要素(単語、画像、アニメーション、アプレット)、音などのような応答するコンテンツに関連する様々なアイテムを、2つ以上のメッセージ交換クライアント107を操作している2人以上の参加者の間のメッセージ交換スレッドに組み込み得る。組み込まれたコンテンツは、メッセージ交換スレッドの参加者のうちの1人または複数によって、たとえば、進行中のメッセージ交換スレッドのトランスクリプトを示すメッセージ交換クライアント107に関連するグラフィカルユーザインターフェース上で閲覧可能であり得る。本明細書で使用する「トランスクリプト」は、メッセージ交換スレッドの1人または複数の参加者によって交換および/または閲覧されるテキスト、画像、音、および/またはアプレットの生の記録を指し得る。いくつかの実装形態では、メッセージ交換スレッドのトランスクリプトは、参加者が会話するのに伴ってリアルタイムまたはほぼリアルタイムで更新され得る。
【００２８】
メッセージ交換エンジン120は、様々な方法で、複数のメッセージ交換クライアント107の間のメッセージ交換スレッドに1つまたは複数のアイテムを組み込み得る。いくつかの実装形態では、メッセージ交換エンジン120は、メッセージ交換スレッドに参加している少なくとも1つのメッセージ交換クライアント107が、応答するコンテンツに関連する1つまたは複数のグラフィカル要素を、少なくとも1つのメッセージ交換クライアント107のグラフィカルユーザインターフェースに表示される進行中のメッセージ交換スレッドのトランスクリプトに挿入することを要求し得る。いくつかのシナリオでは、グラフィカル要素は、メッセージ交換スレッドに参加しているすべてのメッセージ交換クライアント107によってレンダリングされたトランスクリプトなど、2つ以上のメッセージ交換クライアント107によってレンダリングされたトランスクリプトに組み込まれ得る。いくつかの実装形態では、メッセージ交換エンジン120は、応答するコンテンツをメッセージ交換クライアント107に提供されるだけであり得、次いでメッセージ交換クライアント107は、どのコンテンツをメッセージ交換スレッドに組み込むかを選択し得る。
【００２９】
様々なタイプのグラフィカル要素がメッセージ交換スレッドに(ひいては、少なくとも1つのメッセージ交換クライアント107によって表示されるスレッドのトランスクリプトに)組み込まれ得る。いくつかの実装形態では、1つまたは複数のグラフィカル要素は、メッセージ交換エンジン120によって形成された検索クエリに応答する情報を伝達するテキストを含み得る。第1の参加者が別の参加者に「What was the first state admitted into the union?(合衆国に入れられた最初の州はどこでしたか?)」という質問を投げかけるようにメッセージ交換クライアント107を操作すると仮定する。メッセージ交換エンジン120は、参加者の要求により、または自発的に、検索クエリとしてインデックス付けエンジン124および/または情報エンジン128に質問(またはその変形)を提出し得る。インデックス付けエンジン124および/または情報エンジン128は、デラウェアがアメリカ合衆国に入れられた最初の州であったという指示など、検索クエリに応答する情報をメッセージ交換エンジンに提供し得る。デラウェアが入れられた日付、その後に入れられた州など、追加の応答する情報も含まれ得る。メッセージ交換エンジン120は次いで、この情報の一部または全部を、たとえば、質問を投げかけた参加者によって操作されるメッセージ交換クライアント107のグラフィカルユーザインターフェースに表示されるトランスクリプトに組み込まれるように、メッセージ交換スレッドに組み込み得る。
【００３０】
テキストの追加または代替として、様々な実装形態では、メッセージ交換スレッドに組み込まれる1つまたは複数のグラフィカル要素は、検索クエリに応答するコンテンツを伝達する1つまたは複数の画像を含み得る。上述のシナリオでは、たとえば、デラウェア州および/またはデラウェア州旗の画像が、デラウェアについてのテキストの追加または代替としてメッセージ交換スレッドに組み込まれ得る。
【００３１】
多くの場合、検索クエリに応答する画像は、会話の流れを乱すことなくメッセージ交換スレッドに現実的に組み込むにはあまりにも扱いにくい(たとえば、あまりにも長い、あまりにも詳しい、など)ことがある。そのような状況では、スレッドへの組込みのために、応答する情報全体のサブセットが選択され得る(すなわち、応答する情報全体が選別され得る)。サブセットは、たとえば、1つもしくは複数の応答するドキュメント(たとえば、ランク付けによる上位N個のドキュメント)から抽出されたテキスト/画像および/または情報エンジン128によって提供された情報の断片を含み得る。
【００３２】
いくつかの実装形態では、メッセージ交換エンジン120は、メッセージ交換スレッドへの組込みのためにサブセットを選択する(または応答する情報を選別する)ことがある。他の実装形態では、メッセージ交換エンジン120は、包括的な応答する情報をメッセージ交換クライアント107に提供することがあり、クライアント107は選別を実行し得る。たとえば、いくつかの実装形態では、メッセージ交換クライアント107は、ホストクライアントデバイス106のスクリーンサイズに基づいて情報を選別し得る。さらに他の実装形態では、メッセージ交換エンジン120とメッセージ交換クライアント107の両方が選別を実行し得る。いくつかの実装形態では、上位N個の検索結果がメッセージ交換スレッドへの組込みのために選択され得る。Nは、たとえば、スクリーンサイズ、参加者選好などに基づいて選択されてよく、または手動で選択されてもよい(たとえば、Nは、5、10、2、1などに設定され得る)。
【００３３】
メッセージ交換スレッドにテキストが組み込まれるか、画像が組み込まれるかを問わず、様々な実装形態では、新しいリソース(たとえば、情報を表示しているウェブブラウザ)に向けられるグラフィカル要素を参加者が選択するだけでよいように、グラフィカル要素は、検索クエリに応答する1つまたは複数の電子ドキュメントにリンクし得る。いくつかの実装形態では、1つまたは複数のグラフィカル要素は、検索クエリに応答する、メッセージ交換クライアント107の少なくとも1つを動作させているクライアントデバイス106上にインストールされたアプリケーションにリンクし得る。たとえば、参加者がメッセージ交換スレッドに「boy, I could sure go for dinner at Frank's(わあ、フランクに夕食を食べに行きたい)」と入力する場合がある。フランクのロケーションに関係する1つまたは複数のグラフィカル要素が、たとえば、メッセージ交換エンジン120によってメッセージ交換スレッドに組み込まれ得る。1つまたは複数のグラフィカル要素は、特にフランクのロケーションでの予約を行うように動作可能であるクライアントデバイス106上の1つのアプリケーション、ならびに/またはフランクへのマップおよび/もしくは方向を表示するように動作可能である別のアプリケーションを開くように選択可能であり得る。
【００３４】
いくつかの実装形態では、アプリケーションにリンクする代わりに、1つまたは複数のグラフィカル要素自体がアプリケーションであり得る。特に、メッセージ交換スレッドに組み込まれるグラフィカル要素は、1つまたは複数の動作を実行するために(一度に1つのアプリのみを表示するモバイルデバイス上では好ましいことがある)アプリケーションを切り替えることなく参加者によって操作可能であるいわゆる「アプレット」の形態であり得る。限定はしないが、ゲーム、計算機、翻訳機などを含む、様々なタイプのアプレットがメッセージ交換スレッドに組み込まれ得る(そのため、メッセージ交換クライアント107に表示されるそのトランスクリプトに現れ得る)。
【００３５】
いくつかの実装形態では、1つまたは複数のグラフィカル要素は、検索クエリを形成するためにメッセージ交換エンジン120によって識別された1つまたは複数のアイテムの翻訳を含み得る。1人の参加者が「what is German for 'airplane'?(『airplane』はドイツ語で何と言いますか?)」という質問を投げかけると仮定する。メッセージ交換エンジン120は、この質問(またはその変形)をインデックス付けエンジン124および/または情報エンジン128に提出することができ、応答して翻訳(「Flugzeug」)を受信することができる。メッセージ交換エンジン120は次いで、この情報をメッセージ交換スレッドに組み込むことができ、当該情報が、たとえば、参加者の質問への応答として、トランスクリプトに表示され得る。
【００３６】
検索クエリに応答する情報を伝達することの追加または代替として、いくつかの実装形態では、メッセージ交換スレッドに組み込まれる1つまたは複数のグラフィカル要素は、参加者のためにトランスクリプトに所定のテキストを自動的に追加するように参加者によって選択可能であり得る。たとえば、参加者が別の参加者に質問を投げかけるとき、その質問は、たとえば、メッセージ交換エンジン120によって、インデックス付けエンジン124および/または情報エンジン128に検索クエリとして提出され得る。いくつかの実装形態では、検索クエリに応答して返信される情報は、その質問に対するN個の最も人気のある応答またはありそうな応答であり得る。これらの回答は、質問が投げかけられた参加者によって操作されるメッセージ交換クライアント107のグラフィカルユーザインターフェースにおいてレンダリングされた選択可能なグラフィカル要素(たとえば、タッチスクリーン上にレンダリングされたボタン)に組み込まれ得る。次いで、質問された参加者は、自身が選択した応答に対応するボタンを作動させることができ、選択された応答がメッセージ交換スレッドに組み込まれ得る。いくつかの実装形態では、質問を投げかけた参加者は、自動応答が生成されたことを示唆しない方法で応答を提示され得る。たとえば、自動応答は、質問された参加者からの回答としてトランスクリプトに表現され得る。
【００３７】
いくつかの実装形態では、メッセージ交換スレッドのコンテンツから抽出されたクエリに応答して代替クエリ提案エンジン136から受信された情報に基づいて生成された1つまたは複数のグラフィカル要素が、メッセージ交換スレッドに組み込まれ得る。たとえば、参加者が「Who was the eighteenth president of the United States?(第18代合衆国大統領は誰でしたか?)」という質問を投げかけるためにメッセージ交換クライアント107を操作し始めると仮定する。参加者が質問を完成させる前に、たとえば、以下の文字「who was the eight」をタイプした後、部分的にタイプされた質問が知識システム102に提出され得る。知識システム102は、参加者が現在タイプしているものの潜在的完成バージョンである代替クエリ提案エンジン136からの1つまたは複数の代替クエリ提案を取得し得る。これらの完成バージョンの受信に応答して、クライアントデバイス106は、メッセージ交換クライアント107のグラフィカルユーザインターフェースの一部として、参加者が自身のクエリを完成させるために選択できるボタンなどの1つまたは複数のグラフィカル要素をレンダリングし得る。たとえば、参加者は、以下の2つのボタンが現れるのを目にすることがある。「Who was the eighth president of the United States?(第8代合衆国大統領は誰でしたか?)」、および「Who was the eighteenth president of the United States?(第18代合衆国大統領は誰でしたか?)」。参加者が代替クエリ提案を選択し、選択された自動テキストがスレッドに表示された後、いくつかの実装形態では、たとえば、代替クエリ提案エンジン136によって、「In what years did that President serve?(その大統領の在任期間は何年でしたか?)」、または「What was that President's most notable accomplishment?(その大統領の最も顕著な功績は何でしたか?)」など、1つまたは複数の関連質問が提供され得る。たとえば、参加者が他の人に、たとえば、勉強会の一部として、歴史について質問している場合に、これらの関連質問に対応するボタンなどの選択可能なグラフィカル要素が参加者に提供され得る。
【００３８】
いくつかの実装形態では、知識システム102は、たとえば、情報エンジン128および/または別の構成要素の一部として、既知のエンティティ(たとえば、人々、場所、物)、および既知のエンティティの間の関係の記録を含むいわゆる知識ベースを有し得る。いくつかの実装形態では、そのような知識ベースは、たとえば、インデックス130に、節点がエンティティを表し、辺がエンティティ間の関係を表すグラフとして実装されてよいが、これは必須ではない。いくつかのそのような実装形態では、そのような知識ベースからのエンティティについての情報は、たとえば、上記のように、メッセージ交換エンジン120によって形成され提出された検索クエリに応答して、メッセージ交換エンジン120に提供され得る。
【００３９】
いくつかの実装形態では、知識ベースが、たとえば、メッセージ交換エンジン120および/または情報エンジン128によって、メッセージ交換スレッドの一部として2人以上の参加者の間で交換された1つまたは複数のメッセージ交換において言及された第1のエンティティを識別するために使用され得る。次いで、エンティティに関係する検索クエリに応答する情報がメッセージ交換スレッドに組み込まれ得る。たとえば、参加者がメッセージ交換スレッドに、「Babe Ruth was the greatest!(ベーブルースは最高だった!)」などのメッセージを提出すると仮定する。「Babe Ruth(ベーブルース)」が、たとえば、情報エンジン128によって、ベーブルースの1つもしくは複数の属性、および/または彼がプレーしていた1つもしくは複数のチーム(たとえば、ニューヨークヤンキース)、彼の家族、彼のチームメート、活動年数、生存年数などの1つもしくは複数の関係するエンティティとともに、インデックス130に記憶された知識ベースに基づいて識別され得る。次いで、この情報のうちの1つまたは複数が、たとえば、メッセージ交換エンジン120によってまたはメッセージ交換クライアント107によって選択され、メッセージ交換スレッドに(たとえば、1つまたは複数のグラフィカル要素として)自動的に組み込まれ得る。たとえば、ベーブルースが参加者によってメッセージ交換スレッドにおいて言及されたとき、ベーブルースおよび/または他の野球選手についての情報も、少なくとも1人の参加者によって当該参加者のメッセージ交換クライアント107のグラフィカルユーザインターフェースを介して閲覧できるように、スレッドに組み込まれ得る。
【００４０】
図2は、Sven(スベン)という名の参加者によって操作される例示的なクライアントデバイス2061を示す。クライアントデバイス2061は、クライアントデバイス2061上で動作する(図2に明示されていない)メッセージ交換クライアントに関連するグラフィカルユーザインターフェース250を含む。グラフィカルユーザインターフェース250は、スベンならびに2人の他の参加者John(ジョン)およびDennis(デニス)の間のメッセージ交換スレッドのトランスクリプト252を表示する。グラフィカルユーザインターフェース250はまた、スベンが、たとえば、他の2人による以前の文に応答して、テキストまた他のコンテンツをメッセージ交換スレッドに入力するために使用することができるテキスト入力フィールド254を含む。この例では、ジョンはスベンに、スベンがいかに賢いかを証明するように頼んでいる。スベン(これはスベンのクライアントデバイス2061なので、図2では「You」)は、大半の人々よりも多くの米国大統領の名前を言うことができると主張した。デニスはスベンを、「Who was President of the United States of America before Herbert Hoover?(ハーバートフーヴァーの前のアメリカ合衆国大統領は誰でしたか?)」と尋ねることによって試した。
【００４１】
会話のこの時点で、デニスによって投げかけられた質問は、検索クエリとして、たとえば、インデックス付けエンジン124および/または情報エンジン128に提出されている。これらのエンジンの一方または両方は、たとえば、前述のエンティティ知識ベースを使用して、ハーバートフーヴァーに先行した1人または複数の米国大統領の識別情報を決定することができ、この情報をクライアントデバイス2061に返送することができる。したがって、複数のグラフィカル要素(図2では3つが見られる)が、スベンによって操作されるクライアントデバイス2061上のグラフィカルユーザインターフェース250によってレンダリングされたトランスクリプト252のバージョンにレンダリングされており、Calvin Coolidge(カルビンクーリッジ)、Warren Harding(ウォレンハーディング)、およびWoodrow Wilson(ウッドロウウィルソン)が列挙されている。様々な実装形態では、これらの選択可能要素は、他の参加者のメッセージ交換クライアントのグラフィカルユーザインターフェース上で見えることも見えないこともある。スベンは、自動応答がスベンのためにメッセージ交換スレッドに組み込まれるようにするために、これらのグラフィカル要素のうちの1つを選択し得る。この様子の例が図3に示されており、(おそらく、デニスがハーバートフーヴァーの前任者を求めているとスベンが仮定したので)スベンが「Calvin Coolidge(カルビンクーリッジ)」を選択した後、スベンの回答が選択可能アイコンに取って代わっている。
【００４２】
図4は、デニスのクライアントデバイス2062の視点からであることを除いて、図2および図3に示したものと同じメッセージ交換スレッドを示す。ここでは、スベンが図2に示すグラフィカル要素を使用して選択した回答「Calvin Coolidge(カルビンクーリッジ)」が、スベンによって作られたかのように現れている。ただし、これは限定的なものではなく、他の実装形態では、回答Calvin Coolidge(カルビンクーリッジ)は、パーソナルアシスタントモジュールなどの何らかの第三者エンティティによって会話に挿入されているものとして表現されることがある。
【００４３】
図5は、Sven(スベン)という名の参加者によって操作される別の例示的なクライアントデバイス506を示す。この例では、スベンは、John(ジョン)という名の別の参加者とのメッセージ交換スレッドに参加している。空腹であるというジョンの文、および食事についてのジョンの質問に応答して、スベンは特定のRestaurant XYZ(レストランXYZ)に対するジョンの気持ちを尋ねている。Restaurant XYZ(レストランXYZ)が検索クエリとして、たとえば、インデックス付けエンジン124および/または情報エンジン128に提出されており、応答するコンテンツが受信されている。この応答するコンテンツに基づいて、スベンのグラフィカルユーザインターフェース550に表示されるトランスクリプト552は、スベンがたとえば、グラフィカルユーザインターフェース550内のトランスクリプト552の一部として、レストランに関連する時間またはメニューを表示するために選択し得るグラフィカル要素「SHOW HOURS(時間を表示)」および「SHOW MENU(メニューを表示)」により拡張されている。スベンが「SHOW MENU(メニューを表示)」を選択した場合、グラフィカルユーザインターフェース550は、図6に示すものに移行することができ、そこではXYZのメニューの画像556が示されている。
【００４４】
図5および図6の場合と同様に見えるメッセージ交換スレッドのトランスクリプトが、他の同様のシナリオにおいてレンダリングされてよい。特定のレストランについて話す代わりに、参加者が休暇のための特定の地理的ロケーションについて議論すると仮定する。参加者による1つまたは複数の文が使用されて、地理的ロケーションについての検索クエリが作成されてよく、検索クエリは、インデックス付けエンジン124および/または情報エンジン128に提出され得る。検索クエリに応答する情報は、たとえば、表示する地理的ロケーションの1つまたは複数の属性を参加者が選択できるようにするボタンをレンダリングするために使用され得る。たとえば、あるボタンは、ロケーションについての気象データを表示するように選択可能であり得る。別のボタンは、当該ロケーションへのフライトについての情報を表示するように選択可能であり得る。別のボタンは、当該ロケーションに関連するイベントカレンダーを表示するように選択可能であり得る。以下同様である。
【００４５】
図7は、(図示されていない)メッセージ交換クライアントのグラフィカルユーザインターフェース750をレンダリングする別の例示的なクライアントデバイス706を示す。上記と同様に、クライアントデバイス706を操作している参加者がテキストまたは他のコンテンツを入力するためのテキスト入力フィールド754を含む、参加者とJohn(ジョン)という名の別の参加者との間のメッセージ交換スレッドのトランスクリプト752が示されている。この例では、ジョンは、「We received $456,908.34 in donations(私たちは寄付で456,908.34ドルを受け取った)」と言っている。応答して、クライアントデバイス706を操作している参加者が、「what does that come to per donor?(寄付者1人あたりいくらになりますか?)」という質問を投げかけた。この質問は、たとえば、言葉による合図「per(あたり)」を含むことによって、計算機アプレットを開くオプションを参加者に提供するためにボタンの形態によるグラフィカル要素がレンダリングされることにつながる。図8は、グラフィカルユーザインターフェース750において動作するときのそのようなアプレット758の様子の例の1つを示す。アプレット758は、クライアントデバイス706を操作している参加者によって見ることができ、操作可能であり得る。様々な実装形態では、アプレット758は、ジョンまたはメッセージ交換スレッドの他の参加者によって見ることができ、かつ/または操作可能であることも、そうでないこともある。
【００４６】
図9は、(図示されていない)メッセージ交換クライアントのグラフィカルユーザインターフェース950をレンダリングする別の例示的なクライアントデバイス906を示す。上記と同様に、クライアントデバイス906を操作している参加者がテキストまたは他のコンテンツを入力するためのテキスト入力フィールド954を含む、参加者とJohn(ジョン)という名の別の参加者との間のメッセージ交換スレッドのトランスクリプト952が示されている。この例では、ジョンは「Hilda asked me to take a picture of the "flugzeug" on the way home(帰り道に「flugzeug」の写真を撮ってほしいとヒルダに頼まれました)」と言っている。クライアントデバイス906を操作している参加者は、「What does that mean?(それはどういう意味ですか?)」と尋ねる。この質問により、1つまたは複数のグラフィカル要素が現れ得る。左には、参加者が翻訳してほしいテキストをタイプできる「translator(翻訳機)」アプレット(図示せず)を開くように参加者によって操作可能であるグラフィカル要素がある。右には、参加者の質問を検索クエリとして知識システム102に提出することによって取得された単語「flugzeug」の翻訳を示すグラフィカル要素がある。この例から、検索クエリとして提出されたのが参加者の質問にとどまらなかったことがわかる。参加者の質問は、翻訳される単語を含んでいないので、適切な翻訳を取得するには、孤立してあいまいすぎたことになる。むしろ、情報は、応答する翻訳が取得され得る完全な検索クエリ(たとえば、「what is the English translation of 'flugzeug'(『flugzeug』の英語への翻訳はどうなりますか)」)を形成するために参加者の質問とジョンの前の文の両方から必然的に取得されている。これは、メッセージ交換スレッドを形作っている複数の参加者からの複数の文の部分に基づいて検索クエリが作られ得る本開示の態様を示している。検索クエリは、単一の参加者からの文にのみ限定されるわけではない。
【００４７】
本明細書で説明する実装形態は、開示する技法が、複数の人間の参加者を関与させたメッセージ交換スレッドにより用いられ得る方法を示しているが、これは限定的なものではない。様々な実装形態では、本明細書で説明する技法は、参加者と自動化エンティティとの間のいわゆる「単一の参加者」会話において用いられ得る。たとえば、パーソナルアシスタントモジュールは、参加者に関連し参加者によって操作されるコンピューティングデバイスの協調的「エコシステム」を形成する1つまたは複数のコンピューティングデバイス(たとえば、スマートフォン、タブレット、ラップトップ、スマートウォッチ、車両ナビゲーションシステム、セットトップボックスなど)上で動作し得る。パーソナルアシスタントモジュールは、(たとえば、参加者がある種のアクティブ化コードワードを提供したことに応答して)いつもではないがたいていは発話入力を使用して参加者によって提供された自然言語の質問/文がないか監視し得る。パーソナルアシスタントモジュールは次いで、(たとえば、インデックス付けエンジン124および/または情報エンジン128からの)参加者にとって個人的な情報または公開データを検索することなど、様々なアクションを実行し、参加者に応答を、たとえば、可聴的形態で、かつ/またはディスプレイ上にレンダリングされたテキストとして提供することができる。パーソナルアシスタントモジュールと参加者との間のダイアログがグラフィカルユーザインターフェース上に、たとえば、進行中のトランスクリプトとしてレンダリングされる状況では、本明細書で説明する技法は、参加者の経験を向上させるために用いられ得る。
【００４８】
加えて、本明細書で説明する例では、メッセージ交換スレッドコンテンツに基づいて形成された検索クエリに応答するデータは、図1に示す様々なソースから取得されている。ただし、これは限定的なものではない。応答するデータは、他のソースからも引き出され得る。たとえば、メッセージ交換における文が1つもしく複数の意味論的もしくは構文的基準を満たし、かつ/または1つもしく複数のヒューリスティックを満たすことに応答して、「yes」および「no」などのスクリプトによる自動応答が提供され得る。また、インデックス付けエンジン124および情報エンジン128は、特定の参加者にとって個人的ではないグローバル情報にアクセスできるが、これは限定的なものではない。場合によっては、検索クエリは、(参加者が最初に許可を与えていると仮定して)参加者にとって個人的である情報を検索するために使用され得る。たとえば、参加者自身の電子メール、テキスト、カレンダーエントリ、ソーシャルネットワークのステータスの更新などが、検索クエリが検索するために使用され得る潜在的に検索可能なソースとして使用され得る。
【００４９】
ここで図10を参照して、複数の参加者を有するメッセージ交換スレッドを拡張する1つの例示的な方法1000について説明する。便宜上、フローチャートの動作は、動作を実行するシステムを参照しながら説明する。このシステムは、本明細書で説明する様々なエンジンを含む、様々なコンピュータシステムの様々な構成要素を含み得る。その上、方法1000の動作は特定の順序で示されているが、これは限定的なものではない。1つまたは複数の動作が並べ替えられても、省略されても、追加されてもよい。
【００５０】
ブロック1002において、システムは、複数のメッセージ交換クライアントを操作している複数の参加者の間の進行中のメッセージ交換スレッドを調査し得る。たとえば、メッセージ交換スレッドがメッセージ交換エンジン120によってホストされているか、またはさもなければ円滑にされている場合、メッセージ交換エンジン120は、1人または複数の参加者によって提供された1つまたは複数の文が、たとえば、インデックス付けエンジン124および/または情報エンジン128に提出する検索クエリを生成するために使用されるべきかどうかを判断するために、スレッドのコンテンツを監視し得る。追加または代替として、各メッセージ交換クライアント107は、それ自体の参加者によって提供されたコンテンツを監視し得る。この意味で、参加者は、知識システム102に提出される検索クエリとして自身の文が組み込まれるかどうかをより直接的に制御することができる。
【００５１】
ブロック1004において、システムは、ブロック1002における調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別し得る。いくつかの実装形態では、質問を投げかけている参加者が、検索クエリの作成をトリガするイベントを構成し得る。他の実装形態では、1人または複数の参加者が1つまたは複数のエンティティ(たとえば、人、場所、物など)に言及すること、1人または複数の参加者による明示的な要求などのような、他のイベントが、検索クエリを形成するために使用される1つまたは複数の参加者の文をもたらし得る。いくつかの実装形態では、メッセージ交換スレッドを形作っている大半の参加者の文が、知識システム102の様々な構成要素に何らかの形態で検索クエリとして提出され得る。応答するコンテンツは、たとえば、メッセージ交換エンジン120および/またはメッセージ交換クライアント107によって、たとえば、関連性スコアまたはたとえばランク付けエンジン134によって提供される他のランク付けデータに基づいて、選別され得る。
【００５２】
ブロック1006において、ブロック1004において識別された1つまたは複数のアイテムにより検索クエリが形成され得る。上記のように、ある参加者の文が必ずしも検索クエリとして逐語的に提出される必要があるわけではない。むしろ、1人または複数の参加者の文の中の1つまたは複数のアイテムが、たとえば、メッセージ交換エンジン120および/または1つもしくは複数のメッセージ交換クライアント107によって、筋の通った検索クエリを作るために一緒に使用されてよい。
【００５３】
ブロック1008において、作成された検索クエリは、たとえば、メッセージ交換エンジン120によって、かつ/または1つもしくは複数のメッセージ交換クライアント107によって、知識システム102の1つまたは複数の構成要素に提出されてよく、応答するコンテンツが取得され得る。ブロック1010において、応答するコンテンツに関連付けられる1つまたは複数のグラフィカル要素(たとえば、テキスト、ピクチャ、ビデオ、アニメーション、アプレットなど)がメッセージ交換スレッドに、たとえば、スレッドの1人または複数の参加者によって操作されるメッセージ交換クライアントのグラフィカルユーザインターフェースにおいてレンダリングされたトランスクリプトに現れるように組み込まれ得る。上記のように、様々な実装形態では、応答するコンテンツは、メッセージ交換スレッドに完全に組み込むにはあまりにも扱いにくいことがある。したがって、様々な実装形態では、メッセージ交換エンジン120および/またはメッセージ交換クライアント107などの構成要素は、応答するコンテンツを、メッセージ交換トランスクリプトの一部として提示するのにより適切であるサブセットへと「プルーニングする」ことまたは「選別する」ことがある。
【００５４】
図11は、例示的なコンピュータシステム1110のブロック図である。コンピュータシステム1110は通常、バスサブシステム1112を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ1114を含む。これらの周辺デバイスは、たとえば、メモリサブシステム1125およびファイル記憶サブシステム1126を含む記憶サブシステム1124と、ユーザインターフェース出力デバイス1120と、ユーザインターフェース入力デバイス1122と、ネットワークインターフェースサブシステム1116とを含み得る。入力デバイスおよび出力デバイスは、コンピュータシステム1110とのユーザ対話を可能にする。ネットワークインターフェースサブシステム1116は、外部ネットワークへのインターフェースを提供し、他のコンピュータシステムにおける対応するインターフェースデバイスに結合される。
【００５５】
ユーザインターフェース入力デバイス1122は、キーボード、マウス、トラックボール、タッチパッド、もしくはグラフィックスタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システムなどのオーディオ入力デバイス、マイクロフォン、および/または他のタイプの入力デバイスを含み得る。一般に、「入力デバイス」という用語の使用は、コンピュータシステム1110中または通信ネットワーク上に情報を入力するためのすべての可能なタイプのデバイスおよび方法を含むものである。
【００５６】
ユーザインターフェース出力デバイス1120は、ディスプレイサブシステム、プリンタ、ファックス装置、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または可視画像を形成するための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスを介するなどして非視覚的ディスプレイを提供し得る。一般に、「出力デバイス」という用語の使用は、コンピュータシステム1110からユーザまたは別の機械もしくはコンピュータシステムに情報を出力するためのすべての可能なタイプのデバイスおよび方法を含むものである。
【００５７】
記憶サブシステム1124は、本明細書で説明するモジュールの一部または全部の機能を提供するプログラミングおよびデータ構造を記憶する。たとえば、記憶サブシステム1124は、方法1000の選択された態様を実行し、かつ/またはメッセージ交換クライアント107、メッセージ交換エンジン120、インデックス付けエンジン124、情報エンジン128、ランク付けエンジン134、および/もしくは代替クエリ提案エンジン136のうちの1つもしくは複数を実装するための論理を含み得る。
【００５８】
これらのソフトウェアモジュールは一般に、プロセッサ1114によって単独で、または他のプロセッサと組み合わせて実行される。記憶サブシステム1124において使用されるメモリ1125は、プログラム実行中の命令およびデータの記憶のためのメインランダムアクセスメモリ(RAM)1130ならびに固定された命令が記憶される読取り専用メモリ(ROM)1132を含むいくつかのメモリを含むことができる。ファイル記憶サブシステム1126は、プログラムおよびデータファイルの持続的記憶を実現でき、ハードディスクドライブ、フロッピーディスクおよび関連する取外し可能媒体、CD-ROMドライブ、オプティカルドライブ、または取外し可能媒体カートリッジを含み得る。いくつかの実装形態の機能を実装するモジュールは、ファイル記憶サブシステム1126によって記憶サブシステム1124に、またはプロセッサ1114によってアクセス可能な他の機械に記憶され得る。
【００５９】
バスサブシステム1112は、コンピュータシステム1110の様々な構成要素およびサブシステムに意図されたように互いに通信させるための機構を提供する。バスサブシステム1112は単一のバスとして概略的に示されているが、バスサブシステムの代替実装形態は複数のバスを使用してよい。
【００６０】
コンピュータシステム1110は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意の他のデータ処理システムもしくはコンピューティングデバイスを含む、異なるタイプを有してよい。コンピュータおよびネットワークの絶えず変化する性質に起因して、図11に示すコンピュータシステム1110の説明は、いくつかの実装形態を示す目的のための具体例としてのみ意図されている。図11に示すコンピュータシステムよりも多いまたは少ない構成要素を有するコンピュータシステム1110の多くの他の構成が可能である。
【００６１】
本明細書で説明するシステムがユーザ(または本明細書でしばしば言及する「参加者」)についての個人情報を収集するか、または個人情報を利用し得る状況では、ユーザは、プログラムもしくは特徴がユーザ情報(たとえば、ユーザのソーシャルネットワークについての情報、ソーシャル行動もしくは活動、職業、ユーザの選好、もしくはユーザの現在の地理的ロケーション)を収集するかどうかを制御するための、またはユーザにとってより関連し得るコンテンツサーバからのコンテンツを受信するかどうかおよび/もしくは受信する方法を制御するための機会を提供され得る。また、ある種のデータは、個人識別可能情報が除去されるように、記憶または使用される前に1つまたは複数の方法で処理され得る。たとえば、ユーザの識別情報が、個人識別可能情報がユーザに関して特定できないように処理され得、またはユーザの地理的ロケーションが、ユーザの特定の地理的ロケーションが特定できないように、地理的ロケーション情報が取得される場合に(たとえば、都市、郵便番号、もしくは州のレベルに)一般化され得る。したがって、ユーザは、情報がユーザについて収集され、かつ/または使用される方法を制御することができる。
【００６２】
いくつかの実装形態が本明細書で説明され示されたが、機能を実行し、かつ/もしくは結果を取得するための様々な他の手段および/もしくは構造、ならびに/または本明細書で説明する利点のうちの1つもしくは複数が利用されてよく、そのような変形形態および/または修正形態の各々は、本明細書で説明する実装形態の範囲内にあると見なされる。より一般的には、本明細書で説明するすべてのパラメータ、寸法、材料、および構成は、例示的なものであり、実際のパラメータ、寸法、材料、および/または構成は、本教示が使用される特定の適用例に依存することになる。当業者は、単に所定の実験を使用して、本明細書で説明する特定の実装形態の多くの等価物を認識し、または確認できよう。したがって、上記の実装形態が単に例として提示されていること、ならびに添付の特許請求の範囲およびその等価物の範囲内で、実装形態が具体的に説明され特許請求される方法とは異なる方法で実施されてよいことを理解されたい。本開示の実装形態は、本明細書で説明する各個の特徴、システム、物品、材料、キット、および/または方法を対象とする。加えて、2つ以上のそのような特徴、システム、物品、材料、キット、および/または方法の任意の組合せは、そのような特徴、システム、物品、材料、キット、および/または方法が相互に矛盾しない場合、本開示の範囲内に含まれる。
【符号の説明】
【００６３】
102  知識システム
106  クライアントデバイス、ホストクライアントデバイス
1061〜N  クライアントデバイス
107  メッセージ交換クライアント、構成要素
110  ネットワーク
120  メッセージ交換エンジン、エンジン、構成要素
124  インデックス付けエンジン、エンジン
126  インデックス
128  情報エンジン、エンジン
130  インデックス
134  ランク付けエンジン、エンジン
136  代替クエリ提案エンジン、エンジン
2061  クライアントデバイス
2062  クライアントデバイス
240  メッセージ
242  ICS機械学習モデル、機械学習モデル
244  SQSS機械学習モデル、機械学習モデル
250  グラフィカルユーザインターフェース
252  トランスクリプト
254  テキスト入力フィールド
306  クライアントデバイス
360  グラフィカルユーザインターフェース、ユーザインターフェース
362  トランスクリプト
364  テキスト入力フィールド
506  クライアントデバイス
550  グラフィカルユーザインターフェース
552  トランスクリプト
556  画像
706  クライアントデバイス
750  グラフィカルユーザインターフェース
752  トランスクリプト
758  アプレット
906  クライアントデバイス
950  グラフィカルユーザインターフェース
952  トランスクリプト
954  テキスト入力フィールド
1000  方法
1110  コンピュータシステム
1112  バスサブシステム
1114  プロセッサ
1116  ネットワークインターフェースサブシステム
1120  ユーザインターフェース出力デバイス
1122  ユーザインターフェース入力デバイス
1124  記憶サブシステム
1125  メモリサブシステム、メモリ
1126  ファイル記憶サブシステム
1130  メインランダムアクセスメモリ(RAM)
1132  読取り専用メモリ(ROM)
【図１】
2019523923.tif 000003
【図２】
2019523923.tif 000004
【図３】
2019523923.tif 000005
【図４】
2019523923.tif 000006
【図５】
2019523923.tif 000007
【図６】
2019523923.tif 000008
【図７】
2019523923.tif 000009
【図８】
2019523923.tif 000010
【図９】
2019523923.tif 000011
【図１０】
2019523923.tif 000012
【図１１】
2019523923.tif 000013
【手続補正書】
【提出日】平成30年5月31日(2018.5.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサによって、2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドを調査するステップと、
前記プロセッサのうちの1つまたは複数によって、前記調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別するステップであって、参加者が検索クエリとして前記1つまたは複数のアイテムを特に識別することなく、前記進行中のメッセージ交換スレッドの一部として前記2人以上の参加者のうちの1人によって前記2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて前記1つまたは複数のアイテムが識別される、ステップと、
前記1つまたは複数のプロセッサのうちの1つによって、前記1つまたは複数の識別されたアイテムにより前記検索クエリを形成するステップと、
前記プロセッサのうちの1つまたは複数によって、前記検索クエリに応答するコンテンツを取得するステップと、
前記プロセッサのうちの1つまたは複数によって、前記メッセージ交換クライアントのうちの少なくとも1つのグラフィカルユーザインターフェースに表示される前記進行中のメッセージ交換スレッドのトランスクリプトに、前記応答するコンテンツに関連する1つまたは複数のグラフィカル要素を組み込むステップであって、前記1つまたは複数のグラフィカル要素は、
前記グラフィカルユーザインターフェース内で1つまたは複数の動作を実行するためにアプリケーションを切り替えることなく参加者によって操作可能であるアプレット
を含む、ステップと
を含むコンピュータ実装方法。
【請求項２】
前記1つまたは複数のグラフィカル要素は、前記応答するコンテンツを伝達するテキストを含む、請求項1に記載のコンピュータ実装方法。
【請求項３】
前記1つまたは複数のグラフィカル要素は、前記応答するコンテンツを伝達する1つまたは複数の画像を含む、請求項1または2に記載のコンピュータ実装方法。
【請求項４】
前記1つまたは複数のグラフィカル要素は、前記参加者のために前記トランスクリプトに所定のテキストを自動的に追加するように前記参加者によって選択可能である、請求項1に記載のコンピュータ実装方法。
【請求項５】
前記1つまたは複数のグラフィカル要素は、前記1つまたは複数のアイテムの翻訳を含む、請求項1から4のいずれか一項に記載のコンピュータ実装方法。
【請求項６】
前記1つまたは複数のグラフィカル要素は、前記検索クエリに応答する1つまたは複数の電子ドキュメントにリンクする、請求項1から5のいずれか一項に記載のコンピュータ実装方法。
【請求項７】
前記1つまたは複数のグラフィカル要素は、前記メッセージ交換クライアントのうちの少なくとも1つを動作させているコンピューティングデバイス上にインストールされたアプリケーションにリンクし、前記アプリケーションは前記検索クエリに応答する、請求項1から6のいずれか一項に記載のコンピュータ実装方法。
【請求項８】
前記アプレットは計算機を含む、請求項1から7のいずれか一項に記載のコンピュータ実装方法。
【請求項９】
前記プロセッサのうちの1つまたは複数によって、既知のエンティティおよびそれらの間の関係の記録を含む知識ベースから、前記1つまたは複数のアイテムに関連する言及された第1のエンティティを識別するステップ
をさらに含み、
前記応答するコンテンツは、前記第1のエンティティに関連する情報を含む、請求項1から8のいずれか一項に記載のコンピュータ実装方法。
【請求項１０】
前記プロセッサのうちの1つまたは複数によって、前記知識ベースから、前記第1のエンティティに関係する第2のエンティティを識別するステップをさらに含み、
前記1つまたは複数のグラフィカル要素は、前記第2のエンティティに関連する情報を伝達する、請求項9に記載のコンピュータ実装方法。
【請求項１１】
前記1つまたは複数のグラフィカル要素は、前記第1のエンティティの1つまたは複数の属性についての情報を伝達する、請求項9または10に記載のコンピュータ実装方法。
【請求項１２】
メモリおよび1つまたは複数のプロセッサを含むシステムであって、前記メモリは、前記1つまたは複数のプロセッサによって実行されたときに、前記1つまたは複数のプロセッサに、請求項1から11のいずれか一項に記載の方法を実行させる命令を記憶する、システム。
【請求項１３】
1つまたは複数のプロセッサによる命令の実行に応答して、前記1つまたは複数のプロセッサに以下の動作、すなわち、
2つ以上のメッセージ交換クライアントを操作している2人以上の参加者の間の進行中のメッセージ交換スレッドを調査するステップと、
前記調査に基づいて、検索クエリを形成するための1つまたは複数のアイテムを識別するステップであって、参加者が検索クエリとして前記1つまたは複数のアイテムを特に識別することなく、前記進行中のメッセージ交換スレッドの一部として前記2人以上の参加者のうちの1人によって前記2人以上の参加者のうちの別人に向けられた1つまたは複数のメッセージにおいて前記1つまたは複数のアイテムが識別される、ステップと、
前記1つまたは複数の識別されたアイテムにより前記検索クエリを形成するステップと、
前記検索クエリに応答するコンテンツを取得するステップと、
前記メッセージ交換クライアントのうちの少なくとも1つのグラフィカルユーザインターフェースに表示される前記進行中のメッセージ交換スレッドのトランスクリプトに、前記応答するコンテンツに関連する1つまたは複数のグラフィカル要素を組み込むステップであって、前記1つまたは複数のグラフィカル要素は、
前記グラフィカルユーザインターフェース内で1つまたは複数の動作を実行するためにアプリケーションを切り替えることなく参加者によって操作可能であるアプレット
を含む、ステップと
を実行させる前記命令を記憶した少なくとも1つの非一時的コンピュータ可読記憶媒体。
【請求項１４】
1つまたは複数のプロセッサによる命令の実行に応答して、前記1つまたは複数のプロセッサに、請求項2から11のいずれか一項に記載の方法を実行させる前記命令を記憶した、請求項13に記載の少なくとも1つの非一時的コンピュータ可読記憶媒体。
【請求項１５】
請求項1から11のいずれか一項に記載の方法を実行するように構成された装置。
【請求項１６】
コンピューティング装置によって実行されたときに、請求項1から11のいずれか一項に記載の方法が実行されるようにする機械可読命令を含むコンピュータプログラム。
【国際調査報告】
2019523923.tif 000014
2019523923.tif 000015
2019523923.tif 000016