IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 17LIVE株式会社の特許一覧

特許7497002ストリーミングのためのシステム及び方法
<>
  • 特許-ストリーミングのためのシステム及び方法 図1
  • 特許-ストリーミングのためのシステム及び方法 図2
  • 特許-ストリーミングのためのシステム及び方法 図3
  • 特許-ストリーミングのためのシステム及び方法 図4
  • 特許-ストリーミングのためのシステム及び方法 図5
  • 特許-ストリーミングのためのシステム及び方法 図6
  • 特許-ストリーミングのためのシステム及び方法 図7
  • 特許-ストリーミングのためのシステム及び方法 図8
  • 特許-ストリーミングのためのシステム及び方法 図9
  • 特許-ストリーミングのためのシステム及び方法 図10
  • 特許-ストリーミングのためのシステム及び方法 図11
  • 特許-ストリーミングのためのシステム及び方法 図12
  • 特許-ストリーミングのためのシステム及び方法 図13
  • 特許-ストリーミングのためのシステム及び方法 図14
  • 特許-ストリーミングのためのシステム及び方法 図15
  • 特許-ストリーミングのためのシステム及び方法 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-05-31
(45)【発行日】2024-06-10
(54)【発明の名称】ストリーミングのためのシステム及び方法
(51)【国際特許分類】
   H04N 21/27 20110101AFI20240603BHJP
   H04L 51/02 20220101ALI20240603BHJP
   H04N 21/235 20110101ALI20240603BHJP
【FI】
H04N21/27
H04L51/02
H04N21/235
【請求項の数】 10
【外国語出願】
(21)【出願番号】P 2023223539
(22)【出願日】2023-12-28
【審査請求日】2024-02-08
(31)【優先権主張番号】P 2023178184
(32)【優先日】2023-10-16
(33)【優先権主張国・地域又は機関】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】517287224
【氏名又は名称】17LIVE株式会社
(74)【代理人】
【識別番号】100199277
【弁理士】
【氏名又は名称】西守 有人
(72)【発明者】
【氏名】徐永吉
(72)【発明者】
【氏名】林奇▲い▼
(72)【発明者】
【氏名】劉謹▲い▼
(72)【発明者】
【氏名】張家翰
(72)【発明者】
【氏名】蔡幸祐
【審査官】鈴木 隆夫
(56)【参考文献】
【文献】特表2013-543610(JP,A)
【文献】特表2003-532220(JP,A)
【文献】特開2022-106160(JP,A)
【文献】中国特許出願公開第116600152(CN,A)
【文献】国際公開第2017/075017(WO,A1)
【文献】米国特許出願公開第2018/0121830(US,A1)
【文献】特開2022-114471(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00-21/858
H04L 51/02
(57)【特許請求の範囲】
【請求項1】
サーバにより実行されるコメントに応答する方法であって、
第1のコメントを取得する工程と、
第2のコメントを取得する工程と、
前記第1のコメントのパラメータを取得する工程と、
前記第2のコメントのパラメータを取得する工程と、
前記第1のコメントの前記パラメータに基づき、前記第1のコメントの第1の優先度スコアを決定する工程と、
前記第2のコメントの前記パラメータに基づき、前記第2のコメントの第2の優先度スコアを決定する工程と、
前記第1の優先度スコアと前記第2の優先度スコアに基づき、応答するために前記第1のコメントまたは前記第2のコメントを選択する工程と、
を含むことを特徴とする、コメントに応答する方法。
【請求項2】
さらに、前記第1の優先度スコアが、前記第2の優先度スコアより高いと判定する工程と、
前記第1のコメントに第1の応答を送信してから、前記第2のコメントに第2の応答を送信する工程と、
を含むことを特徴とする、請求項1に記載のコメントに応答する方法。
【請求項3】
前記第1のコメントの前記パラメータが、第1のコメント長を含み、前記第1のコメント長がより長いとき、前記第1の優先度スコアがより高いと判定されることを特徴とする、請求項1に記載のコメントに応答する方法。
【請求項4】
前記第1のコメントの前記パラメータが、現在のタイミングと前記第1のコメントをした第1の視聴者に対する最後の応答の最後のタイミング間の時間長さを含み、前記時間長さがより短いとき、前記第1の優先度スコアがより高いと判定されることを特徴とする、請求項1に記載のコメントに応答する方法。
【請求項5】
前記第1のコメントの前記パラメータが、前記第1のコメントのトピック類似度スコアを含み、前記トピック類似度スコアが高いとき、前記第1の優先度スコアがより高いと判定され、前記トピック類似度スコアは、前記第1のコメントが最後の応答により関連していると増加し、前記最後の応答は、前記第1のコメントを取得する前に送信されることを特徴とする、請求項1に記載のコメントに応答する方法。
【請求項6】
さらに、前記最後の応答に関してシミュレーションコメントを生成する工程と、
前記シミュレーションコメントと前記第1のコメント間の第1の相関係数を計算する工程と、
前記第1の相関係数がより大きいとき、前記トピック類似度スコアをより高いと判定する工程と、
を含むことを特徴とする、請求項5に記載のコメントに応答する方法。
【請求項7】
前記最後の応答に関して前記シミュレーションコメントを生成する工程が、前記最後の応答をLLMモデルに入力することを含むことを特徴とする、請求項6に記載のコメントに応答する方法。
【請求項8】
前記方法が、ライブストリームにおいて仮想キャラクターが前記コメントに応答するためのものであり、前記第1のコメントと前記第2のコメントが前記ライブストリーム内の異なる視聴者からのものであることを特徴とする、請求項1に記載のコメントに応答する方法。
【請求項9】
コメントに応答するためのシステムであって、1以上のプロセッサを備え、前記1以上のプロセッサが機械可読命令を実行して、
第1のコメントを取得する工程と、
第2のコメントを取得する工程と、
前記第1のコメントのパラメータを取得する工程と、
前記第2のコメントのパラメータを取得する工程と、
前記第1のコメントの前記パラメータに基づき、前記第1のコメントの第1の優先度スコアを決定する工程と、
前記第2のコメントの前記パラメータに基づき、前記第2のコメントの第2の優先度スコアを決定する工程と、
前記第1の優先度スコアと前記第2の優先度スコアに基づき、応答するために前記第1のコメントまたは前記第2のコメントを選択する工程と、
を実行することを特徴とする、コメントに応答するためのシステム。
【請求項10】
コメントに応答するためのプログラムを含む非一時的なコンピュータ可読媒体であって、前記プログラムが、1以上のコンピュータに、
第1のコメントを取得する工程と、
第2のコメントを取得する工程と、
前記第1のコメントのパラメータを取得する工程と、
前記第2のコメントのパラメータを取得する工程と、
前記第1のコメントの前記パラメータに基づき、前記第1のコメントの第1の優先度スコアを決定する工程と、
前記第2のコメントの前記パラメータに基づき、前記第2のコメントの第2の優先度スコアを決定する工程と、
前記第1の優先度スコアと前記第2の優先度スコアに基づき、応答するために前記第1のコメントまたは前記第2のコメントを選択する工程と、
を実行させることを特徴とする、非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストリーミングに関し、特に、ライブストリーミングに関するものである。
【背景技術】
【0002】
ライブストリーミングサービスに代表されるように、インターネット上におけるリアルタイムの交流が日常生活に浸透している。さまざまなプラットフォームやプロバイダーがライブストリーミングサービスを提供しており、競争も激しい。プラットフォームにとって、ユーザが望むサービスを提供することが重要である。
【0003】
中国特許出願公開第116600152号は、仮想ストリーマーのシステムを開示している。
【発明の概要】
【0004】
本発明の一実施態様による方法は、1以上のコンピュータにより実行されるコメントに応答する方法であって、第1のコメントを取得する工程と、第2のコメントを取得する工程と、当該第1のコメントのパラメータを取得する工程と、当該第2のコメントのパラメータを取得する工程と、当該第1のコメントの当該パラメータに基づき、当該第1のコメントの第1の優先度スコアを決定する工程と、当該第2のコメントの当該パラメータに基づき、当該第2のコメントの第2の優先度スコアを決定する工程と、当該第1の優先度スコアと当該第2の優先度スコアに基づき、応答するために当該第1のコメントまたは第2のコメントを選択する工程と、を含む。
【0005】
本発明の一実施態様によるシステムは、1以上のプロセッサを含むコメントに応答するためのシステムであって、当該1以上のコンピュータプロセッサが、機械可読命令を実行して、第1のコメントを取得する工程と、第2のコメントを取得する工程と、当該第1のコメントのパラメータを取得する工程と、当該第2のコメントのパラメータを取得する工程と、当該第1のコメントの当該パラメータに基づき、当該第1のコメントの第1の優先度スコアを決定する工程と、当該第2のコメントの当該パラメータに基づき、当該第2のコメントの第2の優先度スコアを決定する工程と、当該第1の優先度スコアと当該第2の優先度スコアに基づき、応答するために当該第1のコメントまたは第2のコメントを選択する工程と、を実行する。
【0006】
コメントに応答するためのプログラムを含む非一時的なコンピュータ可読媒体であって、前記プログラムが、1以上のコンピュータに、第1のコメントを取得する工程と、第2のコメントを取得する工程と、当該第1のコメントのパラメータを取得する工程と、当該第2のコメントのパラメータを取得する工程と、当該第1のコメントの当該パラメータに基づき、当該第1のコメントの第1の優先度スコアを決定する工程と、当該第2のコメントの当該パラメータに基づき、当該第2のコメントの第2の優先度スコアを決定する工程と、当該第1の優先度スコアと当該第2の優先度スコアに基づき、応答するために当該第1のコメントまたは第2のコメントを選択する工程と、を実行させる。
【図面の簡単な説明】
【0007】
図1】本発明の一部の実施態様に基づくライブストリーミングシステム1の構成を示す概略図である。
図2】本発明の一部の実施態様に基づく、図1のユーザ端末30の機能と構成を示すブロック図である。
図3】本発明の一部の実施態様に基づく、図1のサーバの機能と構成を示すブロック図である。
図4図3のストリームDB310の例示的データ構造を示す表である。
図5図3のユーザDB312の例示的データ構造を示す表である。
図6図3の贈り物DB314の例示的データ構造を示す表である。
図7】キャラクターDB324の例示的データ構造を示す表である。
図8】コメントDB338の例示的データ構造を示す表である。
図9】コメントの優先度スコア決定を示す例である。
図10】コメントDB338の例示的データ構造を示す表である。
図11】本発明の一部の実施態様に基づく例示的なフローチャートである。
図12】応答DB340の例示的データ構造を示す表である。
図13】本発明の一部の実施態様に基づく例示的なフローチャートである。
図14】本発明の一部の実施態様に基づく例示的なAI VLiverシステムの例である。
図15】本発明の一部の実施態様に基づく例示的な仮想キャラクターである。
図16】本発明の一部の実施態様に基づく情報処理装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0008】
以下、各図面に示す同一または類似の構成要素、部材、手順または信号には、すべての図面において同様の符号を付し、それによって重複する説明は適宜省略される。また、各図面の説明において重要でない一部部材は省略される。
【0009】
仮想ストリーマー(またはバーチャルライバー、仮想ライブストリーマー、バーチャル配信者、バーチャルアンカーなど)は、ライブストリーミングプラットフォームが提供するライブストリーミングルームで、視聴者と交流することができる。仮想キャラクター(アニメキャラクターなど)である。一部の実施態様において、実際の人間のストリーマーが仮想キャラクターの背後にいたり、仮想キャラクターをコントロールしたりすることなく、当該仮想キャラクターが自動で視聴者と交流する。当該仮想キャラクターは、視聴者からのコメントをダイジェストし、アクション、音声、またはテキストメッセージで応答してもよい。ロボットのように各コメントに1つずつ応答するのではなく、視聴者のコメントに実際の人間のように応答できる仮想キャラクターを有することが望ましい。AIまたは機械学習技術を利用した仮想ストリーマーは、AI VLiverと呼ぶことができる。
【0010】
図1は、本発明の一部の実施態様に基づくライブストリーミングシステム1の構成を示す概略図である。当該ライブストリーミングシステム1は、ストリーミングのストリーマー(ライバー、アンカー、配信者、ライブストリーマーとも呼ばれる)LVと視聴者(オーディエンスとも呼ばれる)AU(AU1、AU2...)に、リアルタイムで交流または通信するためのライブストリーミングサービスを提供する。図1に示すように、当該ライブストリーミングシステム1は、サーバ10と、ユーザ端末20と、ユーザ端末30(30a、30b...)を含む。一部の実施態様において、当該ストリーマーと視聴者は、集合的にユーザと呼ばれてもよい。当該サーバ10は、ネットワークNWに接続された、1以上の情報処理装置を含むことができる。当該ユーザ端末20、30は、例えば、スマートフォン、タブレット、ノートPC、レコーダー、携帯ゲーム機、ウェアラブル端末などのモバイル端末装置、あるいはデスクトップPCなどの据え置き型装置であってもよい。当該サーバ10、当該ユーザ端末20及び当該ユーザ端末30は、各種有線または無線ネットワークNWを介して相互に通信可能に接続される。
【0011】
当該ライブストリーミングシステム1には、配信者LV、視聴者AU、及び当該サーバ10を管理する管理者(またはアプリプロバイダー、図示せず)が参加する。当該配信者LVは、自身のユーザ端末20でコンテンツを記録し、当該サーバ10に直接または間接的にアップロードすることにより、リアルタイムで当該コンテンツを配信する者である。当該コンテンツの例としては、当該配信者自身の歌、トーク、パフォーマンス、ゲームプレイ、その他あらゆるコンテンツであってもよい。当該管理者は、当該サーバ10上で当該コンテンツをライブストリーミングするためのプラットフォームを提供するとともに、当該配信者LVと当該視聴者AU間のリアルタイムの交流を仲介または管理する。当該視聴者AUは、自分のユーザ端末30で当該プラットフォームにアクセスし、所望のコンテンツを選択して視聴する。当該視聴者AUは、選択したコンテンツのライブストリーミング中に、当該ユーザ端末30を介してコメントや応援、贈り物の送信などの操作を実行する。当該コンテンツを配信している当該配信者LVは、それらのコメント、応援、または贈り物に対して応答してもよい。当該応答が、映像および(または)音声で当該視聴者AUに送信され、双方向のコミュニケーションが確立される。
【0012】
「ライブストリーミング」という用語は、当該配信者LVのユーザ端末20で記録したコンテンツを、当該視聴者AUのユーザ端末30で実質的にリアルタイムに再生・視聴することを可能にするデータ伝送モードを指しても、そのような伝送モードにより実現されるライブブロードキャストを指してもよい。当該ライブストリーミングは、HTTPライブストリーミング、CMAF(Common Media Application Format)、WebRTC(Web Real-Time Communications)、RTMP(Real―Time Messaging Protocol)、RTMP(Real―Time Messaging Protocolなどの既存のライブストリーミング技術を利用して実現されてもよい。ライブストリーミングには、当該配信者LVによるコンテンツの記録と同時に、当該視聴者AUが所定の遅延をもって当該コンテンツを視聴でき伝送モードを含む。当該遅延の長さについては、当該配信者LVと当該視聴者AUの交流が成立可能な程度の遅延であってもよい。なお、当該ライブストリーミングは、当該コンテンツの全記録データを一度当該サーバに格納し、その後ユーザの要求に応じて当該サーバから当該ユーザに提供する、いわゆるオンデマンド配信と区別される。
【0013】
ここでいう「映像データ」とは、当該ユーザ端末20または30の撮像機能を用いて生成された画像データ(映像データとも呼ばれる)と、当該ユーザ端末20または30の音声入力機能を用いて生成された音声データとを含むデータを指す。当該映像データは、当該ユーザがコンテンツを視聴できるように、当該ユーザ端末20、30で再生される。一部の実施態様において、当該配信者のユーザ端末における映像データの生成と当該視聴者のユーザ端末における映像データの再生との間に、当該映像データに対して圧縮、展開、符号化、復号化、トランスコーディングなど、その形式、サイズ、またはデータの仕様を変更する処理が行われると想定される。しかし、そのような処理の前後で、当該映像データが表す当該コンテンツ(例えば、映像や音声)は実質的に変化しないため、本明細書においては、そのような処理後の当該映像データを、そのような処理前の当該映像データと同一ものと表現している。すなわち、当該配信者のユーザ端末で映像データが生成された後、当該サーバ10を介して当該視聴者のユーザ端末で再生される場合、当該配信者のユーザ端末で生成された当該映像データ、当該サーバ10を通過する当該映像データ、および当該視聴者のユーザ端末で受信して再生される当該映像データは、いずれも同一の映像データである。
【0014】
図1に示す例において、当該配信者LVは、ライブストリーミングデータを提供する。当該配信者LVのユーザ端末20は、当該配信者LVの映像や音声を記録して当該ストリーミングデータを生成し、生成された当該データは当該ネットワークNWを介して当該サーバ10に送信される。同時に、当該ユーザ端末20は、当該配信者LVの記録された映像VDを当該ユーザ端末20のディスプレイに表示し、当該配信者LVが現在行っているライブストリーミングコンテンツを確認できるようにする。
【0015】
当該プラットフォームに当該配信者LVのライブストリーミングを視聴することを要求した当該視聴者AU1、AU2のそれぞれのユーザ端末30a、30bは、当該ネットワークNWを介して当該ライブストリーミングに関連する映像データ(以下、「ライブストリーミングの映像データ」と呼ばれてもよい)を受信し、受信した当該映像データを再生して当該映像VD1、VD2をディスプレイに表示し、スピーカーから音声を出力する。当該ユーザ端末30a、30bでそれぞれ表示される映像VD1、VD2は、当該配信者LVの当該ユーザ端末20により撮像された映像VDと実質的に同じであり、当該ユーザ端末30a、30bで出力される音声は、当該配信者LVの当該ユーザ端末20で記録された音声と実質的に同じである。
【0016】
当該配信者LVの当該ユーザ端末20での映像・音声の記録と、当該視聴者AU1、AU2の当該ユーザ端末30a、30bでの映像データの再生は、実質的に同時に行われる。当該視聴者AU1が、当該配信者LVにより提供される当該コンテンツに関するコメントを当該ユーザ端末30aに入力すると、当該サーバ10は当該コメントを配信者LVの当該ユーザ端末20にリアルタイムで表示するとともに、当該視聴者AU1とAU2の当該ユーザ端末30aと30bにも当該コメントをそれぞれ表示する。当該配信者LVが当該コメントを読み、当該コメントに対応するトークを展開すると、そのトークの映像と音声が、それぞれ当該視聴者AU1、AU2のユーザ端末30a、30bに表示される。このインタラクティブな動作は、当該配信者LVと当該視聴者AU1間で会話が成立していると認識される。これにより、当該ライブストリーミングシステム1では、一方的なコミュニケーションではなく、双方向のコミュニケーションを可能にするライブストリーミングを実現する。
【0017】
図2は、本発明の一部の実施態様に基づく、図1のユーザ端末30の機能と構成を示すブロック図である。当該ユーザ端末20は、当該ユーザ端末30と同じまたは類似した機能と構成を有する。図2の各ブロックと以降のブロック図は、ハードウェアがコンピュータのCPUや機械装置などの要素によって実現されてもよく、ソフトウェアがコンピュータプログラムなどによって実現されてもよい。機能ブロックは、これらの要素間の連携動作により実現されてもよい。したがって、これらの機能ブロックは、ハードウェアとソフトウェアの組み合わせによる多様な形態で実現され得ることが、当業者には理解されよう。
【0018】
当該配信者LV及び当該視聴者AUは、当該ネットワークNWを介してダウンロードサイトからライブストリーミングアプリケーションプログラム(以下、ライブストリーミングアプリケーションという)をダウンロードし、当該ユーザ端末20、30にインストールしてもよい。あるいは、当該ライブストリーミングアプリケーションは、当該ユーザ端末20と30に予めインストールされていてもよい。当該ライブストリーミングアプリケーションが当該ユーザ端末20、30上で実行されると、当該ユーザ端末20、30は、当該ネットワークNWを介して当該サーバ10と通信し、各種機能を実装または実行する。以下、当該ライブストリーミングアプリケーションが実行されるユーザ端末20、30(CPUなどのプロセッサ)によって実装される機能を、当該ユーザ端末20、30の機能として説明する。これらの機能は、実際には、当該ユーザ端末20、30上で当該ライブストリーミングアプリケーションにより実現される。一部の実施態様において、これらの機能は、HTML(HyperText Markup Language)などのプログラミング言語で記述され、当該サーバ10から当該ネットワークNWを介して当該ユーザ端末20、30のウェブブラウザに送信され、当該ウェブブラウザにより実行されるコンピュータプログラムによって実現されてもよい。
【0019】
当該ユーザ端末30は、配信ユニット100と視聴ユニット200を含む。当該配信ユニット100は、当該ユーザ(またはユーザ側)の映像と音声が記録された映像データを生成し、当該映像データを当該サーバ10に提供する。当該視聴ユニット200は、当該サーバ10から映像データを受信し、当該映像データを再生する。当該ユーザは、ライブストリーミングを行う際に、当該配信ユニット100を起動し、当該ユーザが映像を視聴する際に、当該視聴ユニット200を起動する。当該配信ユニット100が起動される当該ユーザ端末は、当該配信者の端末、すなわち、当該映像データを生成する当該ユーザ端末である。当該視聴ユニット200が起動される当該ユーザ端末は、当該視聴者の端末、即ち、当該映像データが再現され、再生される当該ユーザ端末である。
【0020】
当該配信ユニット100は、撮像コントロールユニット102と、オーディオコントロールユニット104と、映像送信ユニット106と、配信者側UIコントロールユニット108を含む。当該撮像コントロールユニット102は、カメラ(図2に表示せず)に接続され、当該カメラで実行される撮像を制御する。当該撮像コントロールユニット102は、当該カメラからの画像データを取得する。当該オーディオコントロールユニット104は、マイク(図2に表示せず)に接続され、当該マイクからの音声入力を制御する。当該オーディオコントロールユニット104は、当該マイクから当該オーディオデータを取得する。当該映像送信ユニット106は、当該撮像コントロールユニット102により取得された当該画像データと、当該オーディオコントロールユニット104により取得された当該オーディオデータを含む映像データを、当該ネットワークNWを介して当該サーバ10に送信する。当該映像データは、当該映像送信ユニット106によりリアルタイムに送信される。すなわち、当該撮像コントロールユニット102と当該オーディオコントロールユニット104による当該映像データの生成と、生成された当該映像データの当該映像送信ユニット106による送信とは、実質的に同時に実行される。当該配信者側UIコントロールユニット108は、当該配信者のUI(ユーザインターフェイス)をコントロールする。当該配信者側UIコントロールユニット108は、ディスプレイ(図2に表示せず)に接続されてもよく、当該映像送信ユニット106により送信される当該映像データを再生することにより、当該ディスプレイに映像を表示する。当該配信者側UIコントロールユニット108は、操作オブジェクトや指示許諾オブジェクトを当該ディスプレイに表示し、当該オブジェクトをタップした当該配信者からの入力を受け付けてもよい。
【0021】
当該視聴ユニット200は、視聴者側UIコントロールユニット202と、重ね合わせ情報生成ユニット204と、入力情報送信ユニット206を含む。当該視聴ユニット200は、当該ネットワークNWを介して当該サーバ10から、当該配信者、当該ユーザ端末30のユーザである視聴者、及び他の視聴者が参加する、ライブストリーミングに関連する映像データを受信する。当該視聴者側UIコントロールユニット202は、当該視聴者のUIを制御する。当該視聴者側UIコントロールユニット202は、ディスプレイとスピーカー(図2に表示せず)に接続され、受信した映像データを再生して、当該ディスプレイに映像を表示し、当該スピーカーから音声を出力する。当該映像が当該ディスプレイに出力され、当該音声が当該スピーカーから出力されている状態を「映像データが再生されている」状態と呼ぶことができる。当該視聴者側UIコントロールユニット202は、タッチパネル、キーボード、ディスプレイ等の入力手段(図2に表示せず)にも接続され、当該入力手段を介してユーザの入力を取得する。当該重ね合わせ情報生成ユニット204は、当該サーバ10からの映像データから生成された画像上に、所定のフレーム画像を重ねる。当該フレーム画像には、当該ユーザからの入力を受け付けるためのさまざまなユーザインターフェイスオブジェクト(以下、単に「オブジェクト」という)、当該視聴者により入力されたコメント、及び(または)当該サーバ10から取得した情報などが含まれる。当該入力情報送信ユニット206は、当該ネットワークNWを介して、当該視聴者側UIコントロールユニット202により取得された当該ユーザ入力を当該サーバ10に送信する。
【0022】
図3は、本発明の一部の実施態様に基づく、図1の当該サーバ10の機能と構成を示すブロック図である。当該サーバ10は、配信情報提供ユニット302と、中継ユニット304と、贈り物処理ユニット306と、支払い処理ユニット308と、ストリームDB310と、ユーザDB312と、贈り物DB314と、映像生成ユニット320と、音声生成ユニット322と、キャラクターDB324と、言語モデルDB326と、取得ユニット330と、処理ユニット332と、判定ユニット334と、送信ユニット336と、コメントDB338と、応答DB340と、を含む。
【0023】
当該配信者側の当該ユーザ端末20から当該ネットワークNWを介してライブストリーミングの開始通知または要求を受信すると、当該配信情報提供ユニット302は、このライブストリーミングを識別するためのストリームIDと当該ライブストリーミングを行う配信者の配信者IDをストリームDB310に登録する。
【0024】
当該配信情報提供ユニット302が、当該ネットワークNWを介して当該視聴者側の当該ユーザ端末30の当該視聴ユニット200からライブストリームに関する情報の提供要求を受信すると、当該配信情報提供ユニット302は、当該ストリームDB310から現在利用可能なライブストリームを取得または確認し、利用可能なライブストリームのリストを作成する。当該配信情報提供ユニット302は、作成したリストを当該ネットワークNW経由で要求元の当該ユーザ端末30に送信する。要求元の当該ユーザ端末30の当該視聴者側UIコントロールユニット202は、受信したリストに基づいてライブストリーム選択画面を生成し、当該ユーザ端末30のディスプレイ上に表示する。
【0025】
当該ユーザ端末30の当該入力情報送信ユニット206が、当該ライブストリーム選択画面上で当該視聴者の選択結果を受信すると、当該入力情報送信ユニット206は、選択されたライブストリームのストリームIDを含む配信要求を生成し、当該ネットワークNWを介して当該サーバ10に当該要求を送信する。当該配信情報提供ユニット302は、要求元の当該ユーザ端末30に対して、受信した当該配信要求に含まれる当該ストリームIDで指定されるライブストリームの提供を開始する。当該配信情報提供ユニット302は、当該ストリームIDの(または対応する)視聴者IDに、要求元の当該ユーザ端末30の当該視聴者のユーザIDを含めるように当該ストリームDB310を更新する。
【0026】
当該中継ユニット304は、当該配信情報提供ユニット302により開始された当該ライブストリーミングにおいて、配信者側の当該ユーザ端末20から視聴者側の当該ユーザ端末30に当該映像データを中継する。当該中継ユニット304は、当該ライブストリーミング中または当該映像データの再生中に、当該入力情報送信ユニット206から視聴者によるユーザ入力を表す信号を受信する。当該ユーザ入力を表す信号は、当該ユーザ端末30のディスプレイに表示されたオブジェクトを指定するオブジェクト指定信号であってもよい。当該オブジェクト指定信号は、当該視聴者の視聴者ID、当該視聴者が視聴しているライブストリームの配信者の配信者ID、及び当該オブジェクトを特定するオブジェクトIDを含んでもよい。当該オブジェクトが贈り物であるとき、当該オブジェクトIDは贈り物IDである。同様に、当該中継ユニット304は、当該ユーザ端末20の当該配信ユニット100から、当該映像データの再生中(またはライブストリーミング中)に配信者により行われたユーザ入力を表す信号を受信する。当該信号は、オブジェクト指定信号であってもよい。
【0027】
また、当該ユーザ入力を表す信号は、視聴者が当該ユーザ端末30に入力したコメントと当該視聴者の視聴者IDを含むコメント入力信号であってもよい。当該コメント入力信号を受信すると、当該中継ユニット304は、当該コメントと信号に含まれる当該視聴者IDを、当該配信者の当該ユーザ端末20と他の視聴者の当該ユーザ端末30に送信する。これらユーザ端末20、30において、当該視聴者側UIコントロールユニット202と、当該重ね合わせ情報生成ユニット204は、同じく受信した当該視聴者IDと関連付けられたディスプレイ上に受信したコメントを表示する。
【0028】
当該贈り物処理ユニット306は、当該オブジェクト指定信号に含まれる贈り物IDによって特定される贈り物のポイントに基づき、当該配信者のポイントを増加させ、当該ユーザDB312を更新する。具体的には、当該贈り物処理ユニット306は、当該贈り物DB314を参照して、受信した当該オブジェクト指定信号に含まれる当該贈り物IDに対して付与するポイントを特定する。その後、当該贈り物処理ユニット306は、当該ユーザDB312を更新し、当該オブジェクト指定信号に含まれる当該配信者IDの(または当該配信者IDに対応する)ポイントに、特定されたポイントを追加する。
【0029】
当該支払い処理ユニット308は、当該オブジェクト指定信号の受信に応答して、視聴者からの贈り物の代金の支払いを処理する。具体的には、当該支払い処理ユニット308は、当該贈り物DB314を参照して、当該オブジェクト指定信号に含まれる当該贈り物IDにより特定される当該贈り物の価格ポイントを特定する。その後、当該支払い処理ユニット308は、当該ユーザDB312を更新し、当該オブジェクト指定信号に含まれる当該視聴者IDにより特定される当該視聴者のポイントから、特定された当該価格ポイントを差し引く。
【0030】
図4は、図3のストリームDB310の例示的データ構造を示す表である。当該ストリームDB310は、現在行われているライブストリームに関する情報を保持する。当該ストリームDB310は、ストリームID、配信者ID、視聴者IDを、相互に関連付けて格納する。当該ストリームIDは、当該ライブストリーミングシステム1により提供されるライブストリーミングプラットフォームにおけるライブストリームを識別するためのIDである。当該配信者IDは、当該ライブストリームを提供する配信者を識別するためのユーザIDである。当該視聴者IDは、当該ライブストリームの視聴者を識別するためのユーザIDである。一部の実施態様による当該ライブストリーミングシステム1により提供されるライブストリーミングプラットフォームにおいて、ユーザがライブストリームを開始すると、当該ユーザは配信者となり、同じユーザが別のユーザによりブロードキャストされるライブストリームを視聴すると、当該ユーザは視聴者にもなる。したがって、配信者と視聴者の区別は固定されておらず、あるとき配信者IDとして登録されたユーザIDが、別のときに視聴者IDとして登録されることもあり得る。
【0031】
図5は、図3のユーザDB312の例示的データ構造を示す表である。当該ユーザDB312は、ユーザに関する情報を保持する。当該ユーザDB312は、当該ユーザIDと当該ポイントを、相互に関連付けて格納する。当該ユーザIDは、ユーザを識別する。当該ポイントは、対応する当該ユーザが保持するポイントに相当する。当該ポイントは、当該ライブストリーミングプラットフォーム内で流通する電子的な価値である。一部の実施態様において、配信者がライブ配信中に視聴者から贈り物を受け取ると、当該配信者のポイントは当該贈り物に対応する価値だけ増加する。当該ポイントは、例えば、当該配信者が当該ライブストリーミングプラットフォームの管理者から受け取る報酬(金銭など)の量を決定するために使用される。一部の実施態様において、当該配信者が視聴者から贈り物を受け取る際に、当該ポイントに代えて、当該贈り物に対応する金額を付与してもよい。
【0032】
図6は、図3の贈り物DB314の例示的データ構造を示す表である。当該贈り物DB314は、当該ライブストリーミング中に当該視聴者が利用できる贈り物についての情報を保持する。贈り物は、電子データである。贈り物は、ポイントまたは金銭で購入するか、無償で提供することができてもよい。贈り物は、視聴者が配信者に贈ることができる。配信者に贈り物を贈ることは、贈り物を使う、贈り物を送る、贈り物を投げるなどとも呼ばれる。贈り物の中には、購入と同時に使用できるものと、購入後、購入した視聴者が後から任意のタイミングで使用できるものとがある。視聴者が配信者に贈り物を贈ると、当該贈り物に対応する量のポイントが当該配信者に付与される。贈り物が使用されると、その使用によって当該贈り物に関連するエフェクトが発生してもよい。例えば、ライブストリーミング画面に当該贈り物に対応したエフェクト(視覚的効果や聴覚的効果など)が表示される。
【0033】
当該贈り物DB314は、贈り物ID、付与ポイント、価格ポイントを、相互に関連付けて格納する。当該贈り物IDは、贈り物を識別するためのものである。当該付与ポイントは、配信者に贈り物が贈られたときに当該配信者に付与されるポイントの量である。当該価格ポイントは、贈り物の使用(購入)に対して支払われるポイントの量である。視聴者は、ライブストリームを視聴しているときに、所望の贈り物の当該価格ポイントを支払うことで、配信者に当該所望の贈り物を贈ることができる。当該価格ポイントの支払いは、適宜の電子決済手段により行うことができる。例えば、視聴者が管理者に当該価格ポイントを支払うことにより、支払いが行われてもよい。あるいは、銀行振り込みやクレジットカードによる支払いが利用されてもよい。当該管理者は、当該付与ポイントと当該価格ポイントとの関係を任意に設定することができる。例えば、付与ポイント=価格ポイントとして設定してもよい。あるいは、当該付与ポイントに1.2などの所定の係数を乗じたポイントを当該価格ポイントとして設定しても、当該付与ポイントに所定の手数料ポイントを加算したポイントを当該価格ポイントとして設定してもよい。
【0034】
図7は、キャラクターDB324の例示的データ構造を示す表である。当該キャラクターDB324は、キャラクターIDと、ステータスタグと、映像データと、音声データを相互に関連付けて格納する。
【0035】
当該キャラクターIDは、当該仮想キャラクターを特定する。当該キャラクターDB324には複数のキャラクターが保存されてもよい。
【0036】
当該ステータスタグは、当該キャラクターのステータス(または気分)を示す。例えば、一般的な(冷静、落ち着いているなど)ステータス、ポジティブな(楽しい、興奮しているなど)ステータス、またはネガティブな(悲しい、退屈など)ステータスがあってもよい。
【0037】
当該映像データは、当該キャラクターの異なるステータスタグに対応したビデオソース(または映像データ)を格納する。例えば、URL1vは、一般的なステータスのキャラクターCR1のビデオソースに対応するURLである。URL2vは、ポジティブなステータスのキャラクターCR1のビデオソースに対応するURLである。
【0038】
当該音声データは、当該キャラクターの異なるステータスタグに対応したオーディオソース(または音声データ、またはオーディオテクスチャデータ、またはイントネーションデータ)を格納する。例えば、URL1aは、一般的なステータスのキャラクターCR1のオーディオソースに対応するURLである。URL2aは、ポジティブなステータスのキャラクターCR1のオーディオソースに対応するURLである。
【0039】
当該映像生成ユニット320は、当該キャラクターDB324からの当該キャラクター映像データに基づいてストリーム映像データを生成するように構成される。例えば、当該映像生成ユニット320は、当該キャラクターの映像を背景画像(または背景映像)と組み合わせ、当該ストリーム映像データを生成してもよい。例えば、当該映像生成ユニット320は、当該キャラクターの映像を実際の人間のストリーマーのライブ映像と組み合わせ、当該ストリーム映像データを生成してもよい。
【0040】
一部の実施態様において、当該映像生成ユニット320は、(当該応答DB340内の)当該キャラクターの応答内容を参照し、当該応答内容に基づいて、当該キャラクターの映像データを調整してもよい。例えば、当該映像生成ユニット320は、当該応答内容に合わせて当該キャラクターの顔の表情や口の動きを調整し、当該キャラクターが実際の人間に似た話し方をするようにしてもよい。一部の実施態様において、当該映像生成ユニット320は、当該応答DB340内の応答内容の応答ステータスに対応する当該キャラクターDB324内の当該ステータスタグに基づいて、当該キャラクターDB324内の当該映像データを選択してもよい。
【0041】
当該音声生成ユニット322は、当該キャラクターDB324からの当該キャラクター音声データに基づいてストリーム音声データを生成するように構成される。一部の実施態様において、当該音声生成ユニット322は、当該応答DB340内の応答内容の応答ステータスに対応する当該キャラクターDB324内の当該ステータスタグに基づいて、当該キャラクターDB324内の当該音声データを選択してもよい。当該音声生成ユニット322は、当該音声データと音声のテキスト読み上げ(TTS)機能を利用して、当該応答DB340内の(テキストデータである)当該応答内容を当該ストリーム音声データに変換する。
【0042】
図8は、コメントDB338の例示的データ構造を示す表である。当該コメントDB338は、コメントのタイミング、視聴者ID、コメント内容、コメント長、最後のチャットからの時間長さ、トピック類似度スコア、視聴者属性スコア、優先度スコアを互いに関連付けて格納する。
【0043】
当該コメントのタイミングは、当該コメントを取得したタイミングであってもよい。当該IDは、コメントした視聴者を特定する。当該コメント内容は、当該コメントのコンテンツを格納する。当該コメント長は、当該コメントの長さである。本実施態様において、単語数が当該コメント長として使用される。一部の実施態様において、当該コメント長には、コメントの総文字数の使用など、さまざまな計算方法が使用されてもよい。
【0044】
「最後のチャットからの時間長さ」は、コメントをした視聴者と当該キャラクターがどのくらい近く、またはどのくらい最近、最後にチャット(または最後に応答)したかを特定する。一部の実施態様において、当該「最後のチャットからの時間長さ」は、現在のタイミングと当該キャラクターから当該コメントをした当該視聴者への最後のチャットのタイミング間の時間長さである。当該計算は同一のライブストリーム内である。したがって、当該ストリーム内で当該キャラクターがまだ話して(または応答して)いない視聴者によるコメントについて、そのコメントに対する値は「NA(該当なし)」またはゼロ(一部の実施態様において)となる。
【0045】
例えば、視聴者V3によって行われたコメント「OK、ではロケットを送ります」より前に当該キャラクターが当該視聴者V3に対して応答していないため、値は「NA」である。例えば、現在のタイミングと、「ロケットの送り方は?」というコメントをした視聴者V1に対する当該キャラクターからの最後のチャットの間には6秒ある。当該最後のチャットは、視聴者V1からの「好きな贈り物は何ですか?」というコメントに対して、t1とt4の間に当該キャラクターによって行われた応答であってもよい。当該最後のチャットからの時間長さは、時間とともに変化し続けてもよい。
【0046】
一部の実施態様において、当該最後のチャットからの時間長さは、当該コメントの取得時間と当該コメントをした当該視聴者に対する当該キャラクターからの最後のチャットのタイミング間の時間長さである。この場合、値は時間と共に変化しない。
【0047】
当該トピック類似度スコアは、当該キャラクターの視点から、そのコメントと現在の話題との類似度を特定する。その詳細と計算については後述する。
【0048】
当該視聴者属性スコアは、当該コメントをする視聴者の属性を特定する。この実施態様において、当該視聴者属性スコアは、当該キャラクターに関する当該視聴者の貢献度スコアである。当該貢献度スコアは、当該視聴者が当該キャラクターにどの程度貢献したかを特定してもよい。当該貢献度スコアは、当該視聴者が当該キャラクターに対して行った贈り物の合計数や贈り物の総額であってもよい。一部の実施態様において、当該視聴者属性スコアは、他の貢献者や他のキャラクターに関する当該視聴者の貢献度スコアであってもよい。一部の実施態様において、当該視聴者属性スコアは、当該ストリーミングプラットフォームにおける当該視聴者のポイント(または課金ポイント)であってもよい。
【0049】
当該優先度スコアは、当該キャラクターの視点から、コメントに応答する優先度を特定する。
【0050】
一部の実施態様において、当該優先度スコアは、当該コメントのタイミングがより最近であるにつれて増加する。このメカニズムは、直近のコメントを覚えていてそれに反応しがちである実際の人間の配信者に当該キャラクターを似せるものである。
【0051】
一部の実施態様において、当該優先度スコアは、当該コメント長が長くなるにつれて増加する。このメカニズムは、より長いコメントに引き付けられて応答しがちである実際の人間の配信者に当該キャラクターを似せるものである。
【0052】
一部の実施態様において、当該優先度スコアは、「最後のチャットからの時間長さ」が短いほど増加する。「最後のチャットからの時間長さ」が短いことは、現在のタイミングと、当該キャラクターが当該コメントをした当該視聴者に話した、または応答した最後のタイミング間の時間長さがより短いことを示す。このメカニズムは、最近話したばかりの視聴者に最初に反応しがちである実際の人間の配信者に当該キャラクターを似せるものである。一部の実施態様において、「最後のチャットからの時間長さ」が短いことは、当該視聴者と当該キャラクターが「同じこと(トピック)を考えている」ことを意味する。
【0053】
一部の実施態様において、当該優先度スコアは、当該「トピック類似度スコア」が高くなるにつれて増加する。トピック類似度スコアが高いほど、コメントが当該キャラクターの「思考」における現在のトピックに沿っていることを示してもよい。このメカニズムは、配信者が考えていることに近いコメントに最初に応答しがちである実際の人間の配信者に当該キャラクターを似せるものである。詳細は後述する。
【0054】
一部の実施態様において、当該優先度スコアは、当該「視聴者属性スコア」が高くなるにつれて増加する(例えば、視聴者V2)。例えば、当該優先度スコアは、当該キャラクターに対してより貢献度が高い視聴者によるコメントほど高くなってもよい。一部の実施態様において、当該優先度スコアは、他の配信者に対してより貢献度が高い視聴者によるコメントほど高くなってもよい。一部の実施態様において、当該優先度スコアは、高い課金ポイントを持っている視聴者によるコメントに対して高くなってもよい。このメカニズムは、配信者に対して潜在的貢献度がより高い視聴者によるコメントに最初に応答しがちである実際の人間の配信者に当該キャラクターを似せるものである。
【0055】
図9は、コメントの優先度スコア決定を示す例である。図に示すように、スコア「S」は、パラメータTL、CL、TS、TC、CSに基づいて決定される。
【0056】
TLは現在のタイミング「T現在」と、コメント受信のタイミング「T受信」により決定される。図に示すように、TLが大きいほど、より最近のコメントとなる。
【0057】
CLは、コメント長によって決定される。例えば、「len(コメント)」は、コメントの単語数または文字数であってもよい。この例において、この例では、長さが50より長いコメントと、長さが50のコメントが同じCL値を有する。
【0058】
TSはトピック類似度スコアを示す。TSが大きいほど、そのコメントは当該キャラクターが現在「思考」中のトピックにより類似している(またはより関連性がある)ことを示す。計算は後述する。
【0059】
TCは、現在のタイミング「T現在」と、コメントした視聴者と当該キャラクターが最後に話したタイミング「T最後」によって決定される。図に示すように、当該キャラクターが当該コメントをした当該視聴者により最近応答しているほど、TC値が大きくなる。一部の実施態様において、TCは「最後のチャットからの時間長さ」の逆数である。
【0060】
CSは、コメントする視聴者の貢献度スコアである。
【0061】
重み値w1、w2、w3、w4、w5が実際の運用に応じてストリーミングプラットフォーム運営者により決定されてもよい。当該運営者がより重視する要素により高い重み値を付与してもよい。一部の実施態様において、優先度スコア決定の計算は当該処理ユニット332により実行されてもよい。
【0062】
図10は、コメントDB338の例示的データ構造を示す表である。当該コメントDB338は、タイミング、応答内容(またはチャット内容)、シミュレーションコメント、シミュレーションコメントベクタ、視聴者コメント、視聴者コメントベクタ、トピック類似度スコアを互いに関連付けて格納する。
【0063】
当該応答内容は、異なるタイミングでの当該キャラクターからの応答(またはチャット/応答/コメント)である。当該応答内容は、当該応答DB340からアクセスされてもよい。
【0064】
当該シミュレーションコメントは、予想されるコメントと呼ばれてもよく、当該キャラクターの応答(またはキャラクターのチャット)に関してシミュレーションされた視聴者からの潜在的(または可能性のある)コメントである。当該シミュレーションコメントは、当該キャラクターの応答内容を言語モデル(ChatGPTなど)に入力することにより生成されてもよい。当該言語モデルは、当該言語モデルDB326に含まれていてもよい。一部の実施態様において、当該言語モデルは、言語モデルDB326とは別に実装でき、当該言語モデルDB326よりもはるかに軽量にすることができる。その後、当該言語モデルは、応答に対してシミュレーションしたコメントを生成する。例えば、図10に示す実施態様において、「今日は不機嫌なんだ」という当該キャラクターのチャットに関連して「何で不機嫌なの?」というシミュレーションコメントが生成される。一部の実施態様において、当該シミュレーションコメント生成の実行は、当該処理ユニット332により行われてもよい。
【0065】
当該シミュレーションコメントベクタは、当該シミュレーションコメントをテキストからベクタモデル(またはコンバーター)に入力することで生成される。一部の実施態様において、当該モデルはBERT(Bidirectional Encoder Representations from Transformers、Transformerによる双方向のエンコード表現)やSBERT(Sentence-BERT)ワード埋め込みモデルである、またはそれらを含んでもよい。当該モデルは当該言語モデルDB326に含まれていてもよい。一部の実施態様において、当該モデルは当該言語モデルDB326と異なってもよく、当該サーバ10外部に実装されてもよい。一部の実施態様において、当該変換処理は当該処理ユニット332により実行されてもよい。
【0066】
当該視聴者コメントは、異なるタイミングでの視聴者からのコメントを格納する。
【0067】
当該視聴者コメントベクタは、当該視聴者コメントをテキストからベクタモデル(またはコンバーター)に入力することで生成される。一部の実施態様において、当該変換処理は当該処理ユニット332により実行されてもよい。
【0068】
当該トピック類似度スコアは、視聴者コメントがシミュレーションコメント(または最新のシミュレーションコメント)にどの程度類似しているかを示す。類似度スコアの計算には、さまざまな方法を用いることができる。例えば、視聴者コメントとシミュレーションコメントベクタ間のドット積が実行されてもよい。例えば、視聴者コメントとシミュレーションコメントベクタ間の相関係数が計算されてもよい。この例において、当該視聴者コメント「何で不機嫌?」は、当該シミュレーションコメント「何で不機嫌なの?」に最も類似したコメントであるため、最大のトピック類似度スコアに対応する。一部の実施態様において、当該計算処理は当該処理ユニット332により実行されてもよい。一部の実施態様において、より高いトピック類似度スコアは、当該コメント(例:「何で不機嫌?」)が当該キャラクターの最後のチャット/応答(例:「今日は不機嫌なんだ」)により関連性があることを示す。
【0069】
例えば、図8に示す実施態様において、当該コメント「OK、ではロケットを送ります」は、最高のトピック類似度スコアを有する。その理由は、当該キャラクターが「好きな贈り物は何ですか?」というコメントに関して「ロケットが好き」(図15参照)などの応答をするためであってもよい。「ロケットをあげます」(図示しない)などのシミュレーションコメントがその応答に関して生成され、当該シミュレーションコメントにより関連性があるその後の視聴者コメントは、より高いトピック類似度スコアを有する。
【0070】
図11に、本発明の一部の実施態様に基づく例示的なフローチャートを示す。
【0071】
工程S1100において、当該判定ユニット334は現在のトピックを代表する当該キャラクターからの代表的な応答(以前のチャットであってもよい)を決定する。一部の実施態様において、当該判定ユニット334は現在のトピックを代表するために、最新の応答を選択してもよい。一部の実施態様において、当該判定ユニット334は当該言語モデルDB326を利用して、(例えば、直近の5件の応答のうち)どの応答が現在のトピックを最も代表しているかを判定する。一部の実施態様において、代表的な応答の選択にはルールベースの方法(キーワード一致など)が使用されてもよい。
【0072】
工程S1102において、当該処理ユニット332は当該代表的な応答に関するシミュレーションコメント(またはシミュレーション視聴者コメント)を生成する。
【0073】
工程S1104において、当該処理ユニット332は、当該シミュレーションコメントからシミュレーションコメントベクタVsimを生成する。
【0074】
工程S1106において、当該判定ユニット334は、後続の視聴者コメント(当該代表的な応答の後に視聴者から取得されたコメント)を決定する。
【0075】
工程S1108において、当該処理ユニット332は、これら後続の視聴者コメントから視聴者コメントベクタVv1、Vv2、…を生成する。
【0076】
工程S1110において、当該処理ユニット332は、当該シミュレーションコメントに対するそれらの各視聴者コメントについて当該類似度スコアを算出する。その後当該スコアは、当該コメントDB338に格納される。
【0077】
図12は、応答DB340の例示的データ構造を示す表である。当該応答DB340は、優先度スコア、視聴者コメント内容、応答内容、応答ステータス、応答映像データ、応答音声データを相互に関連付けて格納する。
【0078】
当該優先度スコアと当該視聴者コメント内容は、当該コメントDB338から取得されてもよい。
【0079】
当該応答内容は、当該キャラクターが当該視聴者コメントに対して応答(またはチャット)する内容であり、当該コメントを当該言語モデルDB326に入力することにより生成されてもよい。その後、当該言語モデルDB326は、当該コメントに関する当該応答内容を生成する。当該応答ステータスは、当該応答内容に対応するステータス(または気分)であり、当該応答内容と同時に生成されてもよい。例えば、当該言語モデルDB326は、当該応答内容の分析に利用され、当該応答内容を生成するときに対応する応答ステータスを提供してもよい。上述のプロセスは、例えば、当該処理ユニット332によって実行されてもよい。
【0080】
当該応答映像データは、当該応答内容と当該応答ステータスに基づいて、当該映像生成ユニット320により生成されるストリーム映像データである。当該応答映像データは、対応する視聴者コメントに対する当該キャラクターの視覚的反応(または視覚的応答)を含む。当該応答音声データは、当該応答内容と当該応答ステータスに基づいて、当該音声生成ユニット322により生成されるストリーム音声データである。当該応答音声データは、対応する視聴者コメントに対する当該キャラクターの音声反応(または音声応答)を含む。
【0081】
当該言語モデルDB326は、GPT(Generative Pre-trained Transformer)yaLLaMA(Language Model for Many Applications)、BLOOM(BigScience Large Open―science Open―access Multilingual Language Model)などの1つ以上の大規模言語モデル(LLM)を含んでいてもよい。その他の言語モデルも、当該言語モデルDB326に実装されてもよい。
【0082】
当該取得ユニット330は、視聴者コメントの取得と、当該視聴者コメントのパラメータ取得/抽出を行うように構成されてもよい。例えば、当該取得ユニット330は、当該コメントタイミングや当該コメントの視聴者ID、当該コメント内容、当該コメント長、当該「最後のチャットからの時間長さ」、当該トピック類似度スコア、当該視聴者属性スコアを取得するように構成されてもよい。
【0083】
当該判定ユニット334は、当該コメントの優先度スコアに基づき、応答する当該コメントを選択(または決定)するように構成されてもよい。当該判定ユニット334は、より高い優先度スコアを有する当該コメントに最初に応答することを決定してもよい。例えば、第1のコメントの第1の優先度スコアが、第2のコメントの第2の優先度スコアより高いと判定したとき、当該判定ユニット334はその後、第1の応答を当該第1のコメントに送信してから、第2の応答を当該第2のコメントに送信することを決定する。
【0084】
当該送信ユニット336は、当該映像生成ユニット320により生成された当該応答映像データと、当該音声生成ユニット322により生成された当該応答音声データを、当該キャラクターのライブストリーム内の当該視聴者のユーザ端末に送信するように構成される。一部の実施態様において、当該配信情報提供ユニット302や当該中継ユニット304が当該送信に関与してもよい。
【0085】
図13に、本発明の一部の実施態様に基づく例示的なフローチャートを示す。
【0086】
工程S1300において、当該取得ユニット330がキャラクターのライブストリーム内の視聴者からコメントを取得する。
【0087】
工程S1302において、当該取得ユニット330が、当該コメントDB338内のパラメータなど、当該コメントのパラメータを抽出する。
【0088】
工程S1304において、当該処理ユニット332が、各コメントのパラメータに基づいて各コメントの当該優先度スコアを算出し、当該優先度スコアを当該コメントDB338に格納する。
【0089】
工程S1306において、当該判定ユニット334が、当該優先度スコアに基づいて、当該コメントに応答する順序を決定する。
【0090】
工程S1308において、当該処理ユニット332が、応答先となる当該コメントに対する当該応答内容を生成する。その後、当該応答内容に基づいて、当該応答映像データと当該応答音声データが生成される。当該応答映像データと当該応答音声データは、応答データと呼ばれてもよい。
【0091】
工程S1310において、当該応答映像データと当該応答音声データが、当該キャラクターのストリーム内の視聴者に送信される。
【0092】
一部の実施態様において、当該応答データの生成前または後に、当該判定ユニット334により当該応答データの送信先である当該視聴者がまだストリーミングルーム内にいるか否かを判定してもよい。例えば、当該応答データを生成する前に、当該判定ユニット334によって当該視聴者がすでにストリーミングルームを退出したことが検出された場合、当該判定ユニット334は処理リソースを節約するために当該応答データを生成しないことを決定してもよい。例えば、当該応答データを生成した後、ただし当該応答データを送信する前に、当該判定ユニット334によって当該視聴者がすでにストリーミングルームを退出したことが検出された場合、当該判定ユニット334は処理リソースを節約するために当該応答データを送信しないことを決定してもよい。
【0093】
一部の実施態様において、コメントの当該優先度スコアが閾値より低い場合、当該判定ユニット334は当該コメントを無視して応答しないことを決定してもよい。
【0094】
一部の実施態様において、当該処理ユニット332は当該言語モデルDB326を利用して、コメントに有害な意図が含まれているか否かを検出してもよい。その後、当該判定ユニット334は、有害な意図を有する当該コメントを無視することを決定し、ストリーミングルーム内で有害なトピックが継続されないようにしてもよい。
【0095】
本開示は、当該キャラクターが実際の人間の配信者のようにコメントに応答することを可能にする。本開示は、ライブストリーミング以外の状況において実装されてもよい。例えば、非ライブストリーミングプラットフォームや、電子商取引サイトでの応答サービス、自動メッセージングサービス、あらゆる自動応答カスタマーサービスシステムなどに本開示の機能を実装してもよい。
【0096】
図14に、本発明の一部の実施態様に基づく例示的なAI VLiverシステムの例を示す。
【0097】
図に示すように、当該システムはAI VLiverサーバ、スキンモジュール、音声合成モジュール、感情モジュール、記憶モジュール、推論モジュールを含む。
【0098】
当該感情モジュールは、当該キャラクターに感情(日々のニュースや蓄積された情報に影響を受けてもよい)を提供するように構成される。当該記憶モジュールは、当該キャラクターに記憶を提供するように構成され、短期記憶モジュールと長期記憶モジュールを含む。
【0099】
当該推論モジュールは、当該キャラクターに応答を生成するように構成され、再順位付けモジュール、推論システム、実務的調整のためのモデレーター、LLMモデルを含む。当該再順位付けモジュールは、並べ替えモジュールと呼ばれてもよく、本開示を利用して視聴者からのコメントに応答する順序を決定してもよい。当該推論システムと当該LLMモデルは、当該応答内容を生成するために利用されてもよい。
【0100】
図15に、本発明の一部の実施態様に基づく例示的な仮想キャラクターを示す。当該視聴者と当該キャラクター間の会話は、図8に示す実施態様に類似している。
【0101】
当該タイミングt1までに、当該キャラクターは視聴者V3と視聴者V1からコメントを取得する。
【0102】
タイミングt2で、当該キャラクターは視聴者V1に応答し、視聴者V3からのコメントを無視しているが、これは当該コメント「こんにちは」の優先度スコアが低すぎるためである。
【0103】
タイミングt4で、当該キャラクターは視聴者V3と視聴者V1から新しいコメントを取得する。当該キャラクターは視聴者V3に応答するが、これは「OK、ではロケットを送ります」というコメントが、当該キャラクターの思考において予想されるコメントにより類似しているためである。
【0104】
図16を参照しながら、当該情報処理装置のハードウェア構成について説明する。図16は、本発明の一部の実施態様に基づく情報処理装置のハードウェア構成例を示すブロック図である。図に示された情報処理装置900は、例えば、一部の実施態様における、当該サーバ10及び(または)当該ユーザ端末20、30を実現することができる。
【0105】
当該情報処理装置900は、CPU901と、ROM(リードオンリーメモリ)903と、RAM(ランダムアクセスメモリ)905を含む。また、当該情報処理装置900は、ホストバス907、ブリッジ909、外部バス911、インターフェイス913、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート925、通信装置929を含んでもよい。さらに、当該情報処理装置900は、カメラ(図示せず)などの撮像装置を含む。また、当該情報処理装置900は、当該CPU901に加えて、あるいは当該CPU901の代わりに、DSP(デジタルシグナルプロセッサ)やASIC(特定用途向け集積回路)を含んでもよい。
【0106】
当該CPU901は、演算処理装置および制御装置として機能し、当該ROM903、当該RAM905、当該ストレージ装置919、または当該リムーバブル記録媒体923に格納された各種プログラムに従って、当該情報処理装置900のすべてまたは一部の動作を制御する。例えば、当該CPU901は、一部の実施態様における当該サーバ10及び当該ユーザ端末20、30に含まれる各機能ユニットの動作全般を制御する。当該ROM903は、当該CPU901が使用するプログラムや演算パラメータなどを格納する。当該RAM905は、当該CPU901の実行時に使用されるプログラムや、実行時に適宜変化するパラメータなどを格納する主記憶装置として機能する。当該CPU901、ROM903、RAM905は、ホストバス907によって相互接続され、当該ホストバス907は、CPUバスなどの内部バスであってもよい。さらに、当該ホストバス907は、ブリッジ909を介してPCI(ペリフェラルコンポーネントインターコネクト/インターフェイス)バスなどの外部バス911に接続される。
【0107】
当該入力装置915は、マウス、キーボード、タッチパネル、ボタン、スイッチ、レバーなどのユーザが操作する装置、あるいはマイクに代表される音センサ、加速度センサ、傾斜センサ、赤外線センサ、深度センサ、温度センサ、湿度センサなど物理量を電気信号に変換する装置であってもよい。当該入力装置915は、例えば、赤外線等の電波を利用したリモコン装置や、当該情報処理装置900の操作に対応した携帯電話等の外部接続装置927であってもよい。当該入力装置915は、当該ユーザが入力した情報または検出された物理量に基づいて入力信号を生成し、当該CPU901に出力する入力制御回路を含む。当該ユーザは、当該入力装置915を操作することにより、当該情報処理装置900に各種データを入力し、動作を指示する。
【0108】
当該出力装置917は、取得した情報を視覚的または聴覚的に当該ユーザに通知することができる装置である。当該出力装置917は、例えば、LCD、PDP、OLED等のディスプレイ、スピーカーやヘッドフォン等の音声出力装置、プリンタなどであってもよい。当該出力装置917は、当該情報処理装置900による処理結果を、テキスト、画像などの映像、または音声などのオーディオとして出力する。
【0109】
当該ストレージ装置919は、データストレージ用装置であり、当該情報処理装置900のストレージユニットの一例として構成される。当該ストレージ装置919は、例えば、ハードディスクドライブ(HDD)などの磁気記憶装置、半導体記憶装置、光記憶装置、または光磁気記憶装置である。このストレージ装置919は、当該CPU901が実行するプログラム、各種データ、外部から取得した各種データなどを格納する。
【0110】
当該ドライブ921は、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどのリムーバブル記録媒体923のリーダー/ライターであり、当該情報処理装置900に内蔵または外付けされる。当該ドライブ921は、装着されたリムーバブル記録媒体923に記録された情報を読み出し、当該RAM905にそれを出力する。さらに、当該ドライブ921は、装着された当該リムーバブル記録媒体923に記録を書き込む。
【0111】
当該接続ポート925は、当該情報処理装置900に機器を直接接続するためのポートである。当該接続ポート925は、例えば、USB(ユニバーサルシリアルバス)ポート、IEEE1394ポート、またはSCSI(小型計算機システムインターフェイス)ポートなどであってもよい。さらに、当該接続ポート925は、RS-232Cポート、光オーディオ端子、HDMI(登録商標)(高精細度マルチメディアインターフェイス)ポートなどであってもよい。当該接続ポート925に当該外部接続装置927を接続することにより、当該情報処理装置900と当該外部接続装置927との間で様々なデータのやり取りを行うことができる。
【0112】
当該通信装置929は、例えば、当該ネットワークNWに接続するための通信装置で形成された通信インターフェイスである。当該通信装置929は、例えば、有線または無線のローカルエリアネットワーク(LAN)、Bluetooth(商標)、または、無線USB(WUSB)用の通信カードであってもよい。さらに、当該通信装置929は、光通信用のルータ、ADSL(非対称デジタル加入者線)用のルータ、または、各種通信用のモデムなどであってもよい。当該通信装置929は、TCP/IPなどの所定のプロトコルを用いて、インターネット上や他の通信装置との間で信号等の送受信を行う。当該通信装置929に接続される当該通信ネットワークNWは、有線または無線で接続されるネットワークであり、例えば、インターネット、家庭内LAN、赤外線通信、電波通信、衛星通信などである。当該通信装置929は、通信装置としての機能を実現する。
【0113】
当該撮像装置(図示せず)は、CCD(電荷結合デバイス)やCMOS(相補型金属酸化膜半導体)などの撮像素子と、当該撮像素子上の被写体像の結像を制御するためのレンズなど各種部材を用いて現実空間の画像を撮像し、撮像画像を生成する装置である。当該撮像装置は、静止画を撮像しても、動画を撮像してもよい。
【0114】
以上、本実施態様に係る当該ライブストリーミングシステム1の構成及び動作について説明した。本実施態様は単なる一例であり、各構成要素や各処理の組み合わせについてさまざまな変更が可能であり、それらの変更も本発明の範囲内であることは当業者には理解されるところである。
【0115】
本発明で説明した処理及び手順は、明示的に説明したものに加えて、ソフトウェア、ハードウェア、またはそれらの任意の組み合わせにより実現することができる。例えば、本明細書で説明した処理および手順は、その処理および手順に対応するロジックを集積回路、揮発性メモリ、不揮発性メモリ、非一時的なコンピュータ可読媒体、磁気ディスクなどの媒体に実装することにより実現することができる。さらに、本明細書に記載された処理および手順は、その処理および手順に対応するコンピュータプログラムとして実現することができ、各種のコンピュータにより実行することができる。
【0116】
さらに、上記実施態様で説明したシステムまたは方法は、固体記憶装置、光ディスク記憶装置、磁気ディスク記憶装置などの非一時的なコンピュータ可読媒体に格納されたプログラムに統合されてもよい。あるいは、プログラムは、インターネットを介してサーバからダウンロードされ、プロセッサにより実行されるものとしてもよい。
【0117】
以上、本発明の技術的内容及び特徴を説明したが、本発明の属する技術分野において通常の知識を有する者であれば、本発明の教示及び開示から逸脱することなく、なお多くの変形及び修正を行うことができる。したがって、本発明の範囲は、既に開示された実施態様に限定されず、本発明から逸脱しない別の変形や修正を含む、特許請求の範囲に含まれる範囲である。
【符号の説明】
【0118】
1 通信システム
10 サーバ
20 ユーザ端末
30、30a、30b ユーザ端末
LV 配信者
AU1、AU2 視聴者
VD、VD1、VD2 映像
NW ネットワーク
30 ユーザ端末
100 配信ユニット
102 撮像コントロールユニット
104 オーディオコントロールユニット
106 映像送信ユニット
108 配信者側UIコントロールユニット
200 視聴ユニット
202 視聴者側UIコントロールユニット
204 重ね合わせ情報生成ユニット
206 入力情報送信ユニット
302 配信情報提供ユニット
304 中継ユニット
306 贈り物処理ユニット
308 支払い処理ユニット
310 ストリームDB
312 ユーザDB
314 贈り物DB
320 映像生成ユニット
322 音声生成ユニット
324 キャラクターDB
326 言語モデルDB
330 取得ユニット
332 処理ユニット
334 判定ユニット
336 送信ユニット
338 コメントDB
340 応答DB
900 情報処理装置
901 CPU
903 ROM
905 RAM
907 ホストバス
909 ブリッジ
911 外部バス
913 インターフェイス
915 入力装置
917 出力装置
919 ストレージ装置
921 ドライブ
923 リムーバブル記録媒体
925 接続ポート
927 外部接続装置
929 通信装置
【要約】      (修正有)
【課題】双方向のコミュニケーションを可能にするライブストリーミングにおいて、よりユーザが望むサービスを提供する。
【解決手段】コメントに応答するためのシステムおよび方法は、当該方法が、第1のコメントを取得する工程と、第2のコメントを取得する工程と、当該第1のコメントのパラメータを取得する工程と、当該第2のコメントのパラメータを取得する工程と、当該第1のコメントの当該パラメータに基づき、当該第1のコメントの第1の優先度スコアを決定する工程と、当該第2のコメントの当該パラメータに基づき、当該第2のコメントの第2の優先度スコアを決定する工程と、当該第1の優先度スコアと当該第2の優先度スコアに基づき、応答するために当該第1のコメントまたは当該第2のコメントを選択する工程と、を含む。
【選択図】図13
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16