(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-02-10
(45)【発行日】2025-02-19
(54)【発明の名称】情報処理システム、情報処理方法及びプログラム
(51)【国際特許分類】
G06N 3/006 20230101AFI20250212BHJP
G10L 15/00 20130101ALI20250212BHJP
G06T 13/40 20110101ALI20250212BHJP
G06F 3/16 20060101ALI20250212BHJP
H04N 21/234 20110101ALI20250212BHJP
H04N 21/233 20110101ALI20250212BHJP
【FI】
G06N3/006
G10L15/00 200Z
G06T13/40
G06F3/16 650
G06F3/16 690
H04N21/234
H04N21/233
(21)【出願番号】P 2024025844
(22)【出願日】2024-02-22
【審査請求日】2024-10-22
【早期審査対象出願】
(73)【特許権者】
【識別番号】520296934
【氏名又は名称】デジタルヒューマン株式会社
(74)【代理人】
【識別番号】110002789
【氏名又は名称】弁理士法人IPX
(72)【発明者】
【氏名】荒尾 和宏
【審査官】三沢 岳志
(56)【参考文献】
【文献】特開2022-054294(JP,A)
【文献】特開2019-061111(JP,A)
【文献】特開2021-086415(JP,A)
【文献】特開2022-180282(JP,A)
【文献】特表2022-534708(JP,A)
【文献】特表2011-519079(JP,A)
【文献】米国特許出願公開第2017/0011745(US,A1)
【文献】「[デジタルヒューマン株式会社]AI デジタルヒューマンを使ってプロダクトジーニアスをライブで作ろう VOICE & AI 2023」,YouTube [online] [video],デジタルヒューマン株式会社,2023年11月27日,[2024年11月06日検索],<https://www.youtube.com/watch?v= xKW63CcJvV4>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/006
G10L 15/00
G06T 13/40
G06F 3/16
H04N 21/234
H04N 21/233
(57)【特許請求の範囲】
【請求項1】
情報処理システムであって、
少なくとも1つのプロセッサを備え、前記プロセッサはプログラムを読み出すことで次の各ステップを実行するように構成され、
第1の受付ステップでは、ユーザの発した音声に対応する音声情報を受け付け、
入力ステップでは、前記音声情報を含むプロンプトを人工知能モジュールに入力し、
生成ステップでは、前記人工知能モジュールからの返答を複数のセグメントに分割し、前記複数のセグメントのそれぞれに対応する動画データを順番に生成し、ここで、前記動画データは、前記返答をアバターが発話するアニメーションと、前記返答に対応する合成音声とを含み、
出力ステップでは、前記動画データのそれぞれを順番に出力し、
前記生成ステップと、前記出力ステップとは、並列で実行され
、ここで、
前記生成ステップでは、n-1番目のセグメントに対応するn-1番目の動画データと連続してn番目のセグメントに対応するn番目の動画データを出力することができるように、前記n番目の動画データを生成し、
前記生成ステップにおいて、前記n番目の動画データを生成したとき、前記n-1番目の動画データの出力が完了していない場合には、前記プロセッサは、前記出力ステップにおいて前記n番目の動画データの出力をキューイングし、
前記生成ステップでは、前記キューイング中の動画データの数を適正化するように前記動画データを生成する生成速度を調整する、システム。
【請求項2】
請求項1に記載の情報処理システムにおいて、
前記第1の受付ステップでは、前記ユーザの音声をリアルタイムでテキスト化し、前記ユーザの音声が途切れた場合に、それまでにテキスト化した前記ユーザの音声を前記音声情報として受け付ける、システム。
【請求項3】
請求項1に記載の情報処理システムにおいて、
さらに、第2の受付ステップでは、前記人工知能モジュールからストリーミング形式で送信された前記返答を、前記複数のセグメントに分割して受け付け、
前記生成ステップでは、受け付けたセグメントから順番に当該セグメントに対応する動画データを生成する、システム。
【請求項4】
請求項1に記載の情報処理システムにおいて、
前記セグメントは、前記返答が句読記号に基づいて分割されたものである、システム。
【請求項5】
請求項1に記載の情報処理システムにおいて、
前記アニメーションは、前記アバターの発話に合わせた、前記アバターの口の動き、体の動き、及び顔の表情のうちの少なくとも1つを含む、システム。
【請求項6】
請求項1に記載の情報処理システムにおいて、
前記第1の受付ステップでは、さらに前記音声情報とは異なるデータを受け付け、
前記入力ステップでは、前記音声情報と前記音声情報とは異なる前記データとを含む前記プロンプトを前記人工知能モジュールに入力する、システム。
【請求項7】
情報処理方法であって、
請求項1~請求項
6までの何れか一つに記載の情報処理システムにおける各ステップを含む、方法。
【請求項8】
プログラムであって、
少なくとも1つのコンピュータに、請求項1~請求項
6までの何れか一つに記載の情報処理システムにおける各ステップを実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1は、ユーザが質問に関するチャットメッセージを送信した際に、ユーザが期待する回答メッセージを効率よく得ることに関する文献である。この特許文献1に示されたマルチクラウドチャットサービス提供装置10は、ユーザ端末20から質問メッセージを受け付けると、AIチャットクラウドサービスシステム30に対して質問メッセージを送信し、質問メッセージに対する回答メッセージをAIチャットクラウドサービスシステム30から受信する。また、マルチクラウドチャットサービス提供装置10は、所定の条件を満たしたと判定した場合には、質問メッセージをオペレータによって操作されるオペレータ端末40Aに対して送信し、質問メッセージに対する回答メッセージをオペレータ端末40Aから受信する。そして、マルチクラウドチャットサービス提供装置10は、AIチャットクラウドサービスシステム30又はオペレータ端末40Aから受信された回答メッセージをユーザ端末20に返信する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、ユーザの発話に対するAIを用いた応答システムの技術には、未だ改善の余地がある。
【課題を解決するための手段】
【0005】
本発明の一態様によれば、情報処理システムが提供される。この情報処理システムは、少なくとも1つのプロセッサを備え、プロセッサはプログラムを読み出すことで次の各ステップを実行するように構成される。第1の受付ステップでは、ユーザの発した音声に対応する音声情報を受け付ける。入力ステップでは、音声情報を含むプロンプトを人工知能モジュールに入力する。生成ステップでは、人工知能モジュールからの返答を複数のセグメントに分割し、複数のセグメントのそれぞれに対応する動画データを順番に生成する。動画データは、返答をアバターが発話するアニメーションと、返答に対応する合成音声とを含む。出力ステップでは、動画データのそれぞれを順番に出力する。生成ステップと、出力ステップとは、並列で実行される。
【0006】
本発明の一つによれば、ユーザにとってより有益な情報処理システム等を提供することができる。
【図面の簡単な説明】
【0007】
【
図2】サーバ2のハードウェア構成を示すブロック図である。
【
図3】情報処理装置3のハードウェア構成を示すブロック図である。
【
図4】情報処理システム1によって実行される処理の概要を示すフローチャートである。
【
図5】情報処理システム1の使用態様の一例を示す図である。
【
図6】情報処理システム1の情報処理の流れの一例を示す概念図である。
【
図7】情報処理システム1によって実行される処理の流れの一例を示すアクティビティ図である。
【
図8】返答8を複数のセグメントに分割する一例を示す図である。
【
図9】各セグメントに対応する動画データの生成と出力の関係を説明する説明
図9である。
【発明を実施するための形態】
【0008】
以下、図面を用いて本発明の実施形態について説明する。以下に示す実施形態中で示した各種特徴事項は、互いに組み合わせ可能である。
【0009】
ところで、本実施形態に登場するソフトウェアを実現するためのプログラムは、コンピュータが読み取り可能な非一時的な記録媒体(Non-Transitory Computer-Readable Medium)として提供されてもよいし、外部のサーバからダウンロード可能に提供されてもよいし、外部のコンピュータで当該プログラムを起動させてクライアント端末でその機能を実現(いわゆるクラウドコンピューティング)するように提供されてもよい。
【0010】
また、本実施形態において「部」とは、例えば、広義の回路によって実施されるハードウェア資源と、これらのハードウェア資源によって具体的に実現されうるソフトウェアの情報処理とを合わせたものも含みうる。また、本実施形態においては様々な情報を取り扱うが、これら情報は、例えば電圧・電流を表す信号値の物理的な値、0又は1で構成される2進数のビット集合体としての信号値の高低、又は量子的な重ね合わせ(いわゆる量子ビット)によって表され、広義の回路上で通信・演算が実行されうる。
【0011】
また、広義の回路とは、回路(Circuit)、回路類(Circuitry)、プロセッサ(Processor)、及びメモリ(Memory)等を少なくとも適当に組み合わせることによって実現される回路である。すなわち、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、及びフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))等を含むものである。
【0012】
1.ハードウェア構成
本節では、ハードウェア構成について説明する。
【0013】
<情報処理システム1>
図1は、情報処理システム1を表す構成図である。情報処理システム1は、サーバ2と、情報処理装置3とを備える。サーバ2と情報処理装置3とは、電気通信回線(ネットワーク)を通じて通信可能に構成されている。ここで、情報処理システム1に例示されるシステムとは、1つ又はそれ以上の装置又は構成要素からなるものである。したがって、サーバ2単体であっても、あるいはサーバ2と情報処理装置3との何れかであっても、情報処理システム1に含まれることに留意されたい。より詳細には、情報処理システム1は、サーバ2と情報処理装置3とからなる群より選択される要素を備えていてもよい。選択されない要素は、情報処理システム1に含まれずとも、外部の要素として、選択された要素と電気的に接続されていてもよい。以下、これらの構成要素について説明する。
【0014】
<サーバ2>
図2は、サーバ2のハードウェア構成を示すブロック図である。サーバ2は、通信部21と、記憶部22と、制御部23とを備え、これらの構成要素がサーバ2の内部において通信バス20を介して電気的に接続されている。各構成要素についてさらに説明する。
【0015】
通信部21は、USB、IEEE1394、Thunderbolt(登録商標)、有線LANネットワーク通信等といった有線型の通信手段が好ましいものの、無線LANネットワーク通信、3G/LTE/5G等のモバイル通信、BLUETOOTH(登録商標)通信等を必要に応じて含めてもよい。すなわち、これら複数の通信手段の集合として実施することがより好ましい。すなわち、サーバ2は、通信部21及びネットワークを介して、外部から種々の情報を通信してもよい。
【0016】
記憶部22は、前述の記載により定義される様々な情報を記憶する。これは、例えば、制御部23によって実行されるサーバ2に係る種々のプログラム等を記憶するソリッドステートドライブ(Solid State Drive:SSD)等のストレージデバイスとして、あるいは、プログラムの演算に係る一時的に必要な情報(引数、配列等)を記憶するランダムアクセスメモリ(Random Access Memory:RAM)等のメモリとして実施されうる。記憶部22は、制御部23によって実行されるサーバ2に係る種々のプログラムや変数等を記憶している。
【0017】
制御部23は、サーバ2に関連する全体動作の処理・制御を行う。制御部23は、例えば不図示の中央処理装置(Central Processing Unit:CPU)である。制御部23は、記憶部22に記憶された所定のプログラムを読み出すことによって、サーバ2に係る種々の機能を実現する。すなわち、記憶部22に記憶されているソフトウェアによる情報処理が、ハードウェアの一例である制御部23によって具体的に実現されることで、後述の各機能に係る各ステップが実行されうる。これらについては、次節においてさらに詳述する。なお、制御部23は単一であることに限定されず、機能ごとに複数の制御部23を有するように実施してもよい。またそれらの組合せであってもよい。
【0018】
<情報処理装置3>
図3は、情報処理装置3のハードウェア構成を示すブロック図である。情報処理装置3は、通信部31と、記憶部32と、制御部33と、表示部34と、入力部35と出力部36を備え、これらの構成要素が情報処理装置3の内部において通信バス30を介して電気的に接続されている。各構成要素についてさらに説明する。通信部31、記憶部32及び制御部33の説明は、サーバ2における各部の説明と同様のため省略する。
【0019】
表示部34は、情報処理装置3筐体に含まれるものであってもよいし、外付けされるものであってもよい。表示部34は、ユーザが操作可能なグラフィカルユーザインターフェース(Graphical User Interface:GUI)の画面を表示する。これは例えば、CRTディスプレイ、液晶ディスプレイ、有機ELディスプレイ及びプラズマディスプレイ等の表示デバイスを、情報処理装置3の種類に応じて使い分けて実施することが好ましい。
【0020】
入力部35は、情報処理装置3の筐体に含まれるものであってもよいし、外付けされるものであってもよい。入力部35はユーザによって発せられた音声等を受け付ける。入力部35は、例えば、マイク等の集音器により構成され、外部の音を集音して、集音した音を示す音信号を出力してもよい。当該音信号が命令信号として、通信バス30を介して制御部33に転送され、制御部33が必要に応じて所定の制御や演算を実行しうる。また、入力部35が受け付ける情報は上述した音声等に制限されない。具体的に、入力部35は、表示部34と一体となってタッチパネル、スイッチボタン、マウス、QWERTYキーボード等によるユーザからの入力を受付可能に構成されてもよい。
【0021】
出力部36は、情報処理装置3筐体に含まれるものであってもよいし、外付けされるものであってもよい。例えば、スピーカ等により構成され、情報処理システム1にて生成された音声又は信号音等を出力する。
【0022】
情報処理装置3として、スマートフォンやタブレット端末、パーソナルコンピュータ、ウェアラブルデバイス等を利用することができる。
【0023】
2.サーバ2の機能構成
制御部23は、例えば、以下の各ステップを実行するように構成される。以下のステップは、任意に省略可能である。
【0024】
制御部23は、受付ステップとして、情報処理装置3又は他のデバイスからの情報を受付可能に構成されている。また、制御部23は、記憶部22の少なくとも一部であるストレージ領域に記憶されている種々の情報を読み出し、読み出された情報を記憶部22の少なくとも一部である作業領域に書き込むことで、種々の情報を受付可能に構成されている。ストレージ領域とは、例えば、記憶部22のうち、SSD等のストレージデバイスとして実施される領域である。作業領域とは、例えば、RAM等のメモリとして実施される領域である。受付ステップは、以下の第1のステップや第2の受付ステップであってよい。例えば、第1の受付ステップは、ユーザの発した音声に対応する音声情報を受け付けるステップであってもよい。第2の受付ステップは、人工知能モジュールの返答を、複数のセグメントに分割して受け付けるステップであってもよい。
【0025】
制御部23は、入力ステップとして、種々の情報を人工知能モジュールに入力する。当該情報は、ユーザの発話を含む情報である。当該情報は、ユーザの発話と予め記憶部22に記憶された参照情報とに基づき生成される人工知能モジュールに対するプロンプトであってもよい。当該情報は、ユーザの発話以外の情報を含んでもよい。
【0026】
制御部23は、生成ステップとして、通信部21及びネットワークを介して、人工知能モジュールから受け付けた返答に基づき、種々の情報を生成する。当該情報は、アバターが発話するアニメーションと、前記返答に対応する合成音声とを含む動画データである。制御部23は、生成ステップとして、合成音声やアニメーションを生成可能に構成される。例えば、制御部23は、生成ステップとして、人工知能モジュールからの返答を複数のセグメントに分割し、複数のセグメントのそれぞれに対応する動画データを順番に生成してもよい。
【0027】
制御部23は、出力ステップとして、種々の情報を出力する。当該情報は、表示部34又は他のデバイスを介して、ユーザに出力可能である。かかる場合、例えば、制御部23は画面、静止画又は動画を含む画像、アイコン、メッセージ等の視覚情報を、表示部34に表示させるように制御してもよい。例えば、出力ステップは、動画データのそれぞれを順番に出力するステップであってもよい。
【0028】
制御部23は、表示制御ステップとして、画面、静止画又は動画を含む画像、アイコン、メッセージ等の視覚情報を、表示部34に表示させるように制御する。制御部23は、表示部34に視覚情報を表示させるためのレンダリング情報だけを生成してもよい。制御部23は、表示制御ステップとしてアバターをユーザに視認可能な態様で表示させてもよい。
【0029】
3.情報処理の流れ
本節では、情報処理システム1が実行する情報処理方法の流れについて説明する。下記に示す通り、情報処理方法は、情報処理システムが実行する各ステップを含む。本実施形態の情報処理プログラムは、コンピュータに、情報処理システムの各ステップを実行させる。なお、処理の順番は適宜入れ替えることができ、複数の処理が同時に実行されてもよいし、一部の処理が省略されてもよい。
【0030】
3.1 概要
図4は、情報処理システム1によって実行される処理の概要を示すフローチャートである。かかる処理では、まず、制御部23は、受付ステップとしてユーザの発した音声に対応する音声情報を受け付ける(ステップS001)。続いて、制御部23は、入力ステップとして、音声情報を含むプロンプトを人工知能モジュールに入力する(ステップS002)。続いて、制御部23は、生成ステップとして、人工知能モジュールからの返答を複数のセグメントに分割し、複数のセグメントのそれぞれに対応する動画データを順番に生成する(ステップS003)。続いて、制御部23は、出力ステップとして、動画データのそれぞれを順番に出力する(ステップS004)。ここで、ステップS003とステップS004はセグメント毎に順番に実行されるため、1番目のセグメントに対応する動画データが出力される間に、並行して、2番目のセグメントに対応する動画データの生成が行われる。
【0031】
以上をまとめると、一実施形態に係る、情報処理システムは、少なくとも1つのプロセッサを備え、プロセッサはプログラムを読み出すことで次の各ステップを実行する。制御部23は、第1の受付ステップとして、ユーザの発した音声に対応する音声情報を受け付ける。制御部23は、入力ステップとして、音声情報を含むプロンプトを人工知能モジュールに入力する。制御部23は、生成ステップとして、人工知能モジュールからの返答を複数のセグメントに分割し、複数のセグメントのそれぞれに対応する動画データを順番に生成する。動画データは、返答をアバターが発話するアニメーションと、返答に対応する合成音声とを含む。制御部23は、出力ステップとして、動画データのそれぞれを順番に出力する。生成ステップと、出力ステップとは、並列で実行される。このような構成によれば、ユーザから受け付けた音声に対して、人工知能モジュールにより返答を生成させ、その返答をアバターが発話する動画データをユーザに対して出力する情報処理システムにおいて、返答を複数のセグメントに分割し、セグメント毎に動画データを生成するため、動画データの出力までにかかる時間が短くなり、ユーザビリティが向上する。
【0032】
3.2 具体例
以下、
図5~
図9を用いて、上記情報処理の詳細について、一例として説明する。
図5は、情報処理システム1の使用態様の一例を示す図である。
図5には情報処理装置3とユーザYとが示されている。情報処理装置3の表示部34には、アバターAVが表示され、ユーザYは、音声51を発話している。情報処理装置3の制御部33は、入力部35を介して、ユーザYが発話する音声51を受け付ける。このように、情報処理システム1は、例えば、ユーザYが発する音声に対し、アバターAVが音声で返答するシステムである。アバターを用いることにより、テキストのみの会話にはない没入感をユーザYに対して提供することができる。
【0033】
図6は、情報処理システム1の情報処理の流れの一例を示す概念図である。制御部23は、制御部33からユーザYの音声を受け付けると、受け付けた音声に対応する音声情報を会話型AIに入力する。会話型AIは、人工知能モジュールの一例である。ここで、音声情報は、受け付けた音声について音声認識を行うことにより生成する情報であってもよい。次に、制御部23は、会話型AIから返答を受け付け、当該返答に基づき動画データを生成する。動画データは、返答に基づき生成したアバターが発話するアニメーションと、返答に基づき生成した合成音声とを含む。次に、制御部23は、動画データを出力する。
【0034】
図7は、情報処理システム1によって実行される処理の流れの一例を示すアクティビティ図である。流れの一例は、前述した概要に規定される範囲に包含されうる。以下、このアクティビティ図の各アクティビティに沿って、説明するものとする。なお、当該情報処理は、図示されない任意の例外処理を含みうる。例外処理は、当該情報処理の中断や、各処理の省略を含む。当該情報処理にて行われる選択又は入力は、ユーザによる操作に基づくものでも、ユーザの操作に依らず自動で行われるものでもよい。
【0035】
まず、制御部23は、表示部34に、アバターAVを表示させる(アクティビティA101)。ここで、アバターAVは、人間の姿であってもよいし、動物や無生物を擬人化したものを用いてもよい。好ましくは、アバターAVは、人間そっくりの姿に作成され、人間に近い動きをするリアルな3Dモデルであるとよい。より人間に近い姿であることにより、よりユーザYの没入感を高め、深い対話を促すことができる。
【0036】
次に、制御部23は、第1の受付ステップとして、入力部35を介して、ユーザYの発した音声を受け付ける(アクティビティA102)。より典型的な態様においては、制御部23は、ユーザYの発話の音声をリアルタイムでテキスト化してもよい。すなわち、制御部23は、ユーザYの音声に対応する音声情報を音声認識モデルに入力し、音声情報をテキストデータに変換してもよい。音声認識モデルは、言語モデルや音響モデルなどの要素で構成されるものであってもよく、音声情報とテキストデータにより事前に学習されたモデルを用いてもよい。
【0037】
前述したように制御部23がユーザYの発話の音声をリアルタイムでテキスト化した場合、制御部23は、ユーザYの発話の音声が途切れた場合に、それまでにテキスト化したユーザの音声を音声情報として受け付けてもよい(アクティビティA103)。ユーザYの発話の音声が途切れた場合とは、ユーザYからの音声が所定の期間途切れた場合であってもよい。具体的には例えば、ユーザYからの音声が、1秒間以上,2秒間以上,3秒間以上,4秒間以上,もしくは5秒間以上途切れた場合に、制御部23は、ユーザYの音声が途切れたと判定してもよい。このような構成によれば、ユーザの発話が途切れたタイミングで、迅速にユーザYの音声を音声情報として受け付けることができる。なお、後述する人工知能モジュールが所定の情報を出力するにあたって、テキスト化されたプロンプトを要さない場合、ユーザYの発話の音声のテキスト化(音声の途切れの判定等を含む)は省略されてよい。制御部23は、例えば、音声認識機能を内部に有する人工知能モジュールに対し、音声そのものを入力してもよい。
【0038】
次に、制御部23は、入力ステップとして、音声情報を含むプロンプトを人工知能モジュールに入力する(アクティビティA104)。人工知能モジュールは、典型的には音声情報を含むプロンプトに対する返答を出力するモジュールである。好ましくは、音声情報を含むプロンプトに対して、自然な言語による返答を出力するモジュールであるとよい。さらに、好ましくは、ユーザYの発話の内容を理解し、その内容に応じた返答をするモジュールであるとよい。したがって、人工知能モジュールは、好ましくは、会話型人工知能モジュールであるとよい。
【0039】
より典型的なものとして、人工知能モジュールは大規模言語モデルを有していてもよい。すなわち、人工知能モジュールは、当該大規模言語モデルに基づいて、入力事項に対する返答を行うものであってよい。なお、大規模言語モデルとは、人間の話す言葉をその出現確率でモデル化した言語モデルについて、膨大なデータから事前学習する深層学習モデルである。なお、人工知能モジュールの有することのできるモデルは上記には制限されない。
【0040】
次に、制御部23は、第2の受付ステップとして、人工知能モジュールからの返答を複数のセグメントに分割して受け付ける(アクティビティA105)。この段階で、返答を複数のセグメントに分割しておくことにより、アクティビティA106以降で対応する動画データの生成等の処理に要する時間を短くすることができる。
【0041】
ここで、人工知能モジュールが返答をストリーミング形式で出力する場合には,制御部23は、第2の受付ステップとして、人工知能モジュールからストリーミング形式で送信された返答を、複数のセグメントに分割して受け付けてもよい。ストリーミング形式で出力するとは、換言すると、人工知能モジュールが、入力されたプロンプトに対する返答を段階的に連続して出力することである。そのような場合に、制御部23は、段階的に出力される返答を、複数のセグメントに分割して受け付けてもよい。このような態様により、制御部23は、全ての返答が出力されてから受け付けるよりも早いタイミングで、第2の受付ステップとして、返答のうちの1番目のセグメントを受け付けることができる。
【0042】
なお、セグメントは、返答が句読記号に基づいて分割されたものであってもよい。句読記号には、句点、読点、カンマ、ピリオド、セミコロン、コロン、ハイフン、括弧等がある。句読記号は、文章を分かりやすく整理し読みやすくするための記号である。このような態様により、制御部23は、分かりやすく整理されたまとまりごとに返答をセグメントに分割することができる。
【0043】
次に、制御部23は、生成ステップとして、セグメント毎に返答に対応する動画データを生成する(アクティビティA106)。ここで、制御部23は、生成ステップとして、受け付けたセグメントから順番に当該セグメントに対応する動画データを生成してもよい。このような構成によれば、人工知能モジュールからの返答を最後まで待つことなく、受け付けたセグメントから順番に、動画データを生成するため、1番目のセグメントに対応する動画データが生成するまでにかかる時間が短くなり、ユーザビリティが向上する。
【0044】
次に、制御部23は、出力ステップとして、セグメント毎に順番に動画データを出力する(アクティビティA107)。ここで、動画データは、返答をアバターAVが発話するアニメーションと、返答に対応する合成音声とを含むものである。
【0045】
アバターAVが発話するアニメーションは、アバターAVの発話に合わせた、アバターAVの口の動き、体の動き、及び顔の表情のうちの少なくとも1つを含むものであってもよい。このような構成によれば、アバターAVが発話するアニメーションのリアリティがより向上し、ユーザの没入感もさらに向上する。
【0046】
続いて、生成ステップと、出力ステップとが並列で実行されることについて、
図8と
図9とを用いてさらに詳しく説明する。
【0047】
図8は、返答8を複数のセグメントに分割する一例を示す図である。返答8は、セグメントS1と、セグメントS2と,セグメントS3と,セグメントSnとを含む。返答8は、人工知能モジュールからストリーミング形式で送信された返答の一例である。セグメントS1~Snは、返答8が句点によりに分割されたものである。
【0048】
図9は、各セグメントに対応する動画データの生成と出力の関係を説明する説明
図9である。
図9として示される説明
図9はセグメントS1~Snのそれぞれについて、アクティビティA105~A107が実行されるタイミングを説明するものである。制御部23は、まず、人工知能モジュールからセグメントS1を受け付けると、セグメントS1に対応する動画データAD1を生成し、セグメントS1に対応する動画データAD1を出力する。ここで、制御部23は、セグメントS1に続いてセグメントS2を受け付け、セグメントS1に対応する動画データAD1を生成した後に続けて、セグメントS2に対応する動画データAD2を生成する。制御部23は、さらに、セグメントS2に対応する動画データAD2を生成した後に続けて、セグメントS3に対応する動画データAD3を生成する。このように、制御部23は、生成ステップとして、セグメントSnー1に対応する動画データAD nー1を生成した後に続けて、セグメントSnに対応する動画データADnを生成する。一方、制御部23は、生成ステップとして、セグメントS2に対応する動画データAD2を生成することと並行して、セグメントS1に対応する動画データAD1を出力する。
【0049】
ところで、セグメントS1に対応する動画データAD1を生成するためにかかる時間と、セグメントS1に対応する動画データAD1を出力するためにかかる時間は、必ずしも同一とは限らない。
【0050】
もし、生成するためにかかる時間が、出力するためにかかる時間よりも長い場合、動画データAD1を出力したときに、動画データAD2を生成が終わっていないため、動画データAD1を出力したあと、動画データAD2の出力を開始するまでに時間が空いてしまうことになる。そこで、制御部23は、生成ステップとして、n-1番目のセグメントに対応するn-1番目の動画データと連続してn番目のセグメントに対応するn番目の動画データを出力することができるように、n番目の動画データを生成することが好ましい。このような構成によれば、複数のセグメントに対応する動画データを途切れることなく連続して出力することができる。動画データが途切れることがないため、ユーザYはストレスなくアバターAVと会話をすることができる。
【0051】
一方、もし、生成するためにかかる時間が、出力するためにかかる時間よりも短い場合、動画データAD2の生成が終わったときに、動画データAD1の出力が終わっていないため、すぐに動画データAD2を出力することができない状況が生じ得る。本実施形態においては、制御部23は、生成ステップにおいてn番目の動画データを生成したとき、n-1番目の動画データの出力が完了していない場合には、プロセッサは、出力ステップにおいてn番目の動画データの出力をキューイングするように構成されてもよい。このような構成によれば、n-1番目の動画データの出力前に、n番目の動画データが生成された場合には、一旦キューイングした上で順番に出力することができる。
【0052】
ところで、
図9に示されるように、生成するためにかかる時間が、出力するためにかかる時間よりも短い場合、セグメントS2に対応する動画データAD2を生成した後、動画データAD2を出力するまでにキューイングQ2が発生し、セグメントS3に対応する動画データAD3を生成した後、動画データAD3を出力するまでにキューイングQ3が発生し、セグメントSnに対応する動画データADnを生成した後、動画データADnを出力するまでにキューイングQnが発生する。このような場合には、キューイング中の動画データの数が増えていくことがある。そこで、制御部23は、生成ステップとして、キューイング中の動画データの数を適正化するように動画データを生成する生成速度を調整してもよい。このような構成によれば、出力の速度に合わせて、動画データが生成されるため、リソースの適正化を図ることができる。
【0053】
5.変形例
さらに、以下のような態様を採用してもよい。上記情報処理の態様はあくまで一例である。本発明はこれに限定されることなく、その発明の技術的思想を逸脱しない範囲で適宜変更可能である。
【0054】
上記実施形態では、アクティビティA102において、制御部23は、第1の受付ステップとして、ユーザYが発話する音声を受け付けたが、制御部23は、さらに音声情報とは異なるデータを受け付け、入力ステップとして、音声情報と、当該音声情報とは異なるデータとを含むプロンプトを人工知能モジュールに入力してもよい。このような構成によれば、ユーザから音声以外の情報を受け付け、音声以外の情報に関する会話を行うことができる。
【0055】
ここで、音声情報とは異なるデータとは、撮像データ、文書データ、温度湿度等のセンサにより取得されるデータ等である。例えば、ユーザから「この写真について意見を聞かせてほしい」という音声とともに撮像データを受け付けた場合に、写真に対する意見を含む返答をすることや、ユーザから「この文章を読んだ感想がほしい」という音声とともに文書データを受け付けた場合に、その文章についての感想を返答することや、ユーザから「寒いですね」という音声を受け付けた場合に、温度センサより取得される情報に基づき返答をすることができる。このような場合には、人工知能モジュールとして、マルチモーダルに対応したタイプの人工知能モジュールを用いるとよい。マルチモーダルに対応したタイプの人工知能モジュールとは、テキスト、音声、画像、動画等、複数の異なる形式のデータを統合して処理する人工知能モジュールである。マルチモーダルに対応したタイプの人工知能モジュールを用いることで、例えば、画像と音声の関連付け等を行ったうえで返答することができる。
【0056】
上記実施形態では、アクティビティA101で表示部34にアバターを表示させるとして記載したが、アクティビティA101の段階でアバターは表示部34に表示されなくてもよい。制御部23は、ユーザからの発話に応じて、アバターを出力させてもよい。
【0057】
上記実施形態では、アクティビティA102でユーザYの発話が途切れたとして記載したが、制御部23は、ユーザの発話が区切られるかどうかを音声認識システムにより、ユーザYの発話の文脈を判定し、ユーザYからの一連の質問が途切れたと判例した場合に、ユーザYの発話が途切れたと判定してもよい。
【0058】
上記実施形態のアクティビティA104において、制御部23は、入力ステップとして、音声情報を人工知能モジュールに入力する際に、人工知能モジュールが出力する言語に関する要求事項を含んでもよい。このような態様により、人工知能モジュールに入力した言語とは異なる言語により返答を得ることができる。言語に関する要求事項は、例えば、言語タグにより指定してもよい。
【0059】
さらに、アクティビティA105において、制御部23は、第2の受付ステップとして、人工知能モジュールからの返答を複数のセグメントに分割して受け付ける場合に、返答の言語に応じて、返答を複数のセグメントに分割して受け付けてもよい。換言すると、制御部23は、返答の言語に応じた句読記号により、返答を分割してもよい。
【0060】
図1に示す全体構成は一例であり、これに限られない。例えば、サーバ2は、2台以上の装置に分散されてもよいし、クラウドコンピューティングシステムに代替されてもよい。また、全ての処理がサーバ2で行われてもよいし、全ての処理が情報処理装置3で行われてもよい。情報処理装置3にアプリケーションをインストールし、情報処理装置3とサーバ2とが連携して上記したような処理を実行するようにしてもよい。
【0061】
サーバ2は、オンプレミス形態であってもよく、クラウド形態であってもよい。クラウド形態のサーバ2としては、例えば、SaaS(Software as a Service)、クラウドコンピューティングという形態で、上記の機能や処理を提供してもよい。
【0062】
上記実施形態では、サーバ2が種々の記憶・制御を行ったが、サーバ2に代えて、複数の外部装置が用いられてもよい。すなわち、種々の情報やプログラムは、ブロックチェーン技術等を用いて複数の外部装置に分散して記憶されてもよい。
【0063】
次に記載の各態様で提供されてもよい。
【0064】
(1)情報処理システムであって、少なくとも1つのプロセッサを備え、前記プロセッサはプログラムを読み出すことで次の各ステップを実行するように構成され、第1の受付ステップでは、ユーザの発した音声に対応する音声情報を受け付け、入力ステップでは、前記音声情報を含むプロンプトを人工知能モジュールに入力し、生成ステップでは、前記人工知能モジュールからの返答を複数のセグメントに分割し、前記複数のセグメントのそれぞれに対応する動画データを順番に生成し、ここで、前記動画データは、前記返答をアバターが発話するアニメーションと、前記返答に対応する合成音声とを含み、出力ステップでは、前記動画データのそれぞれを順番に出力し、前記生成ステップと、前記出力ステップとは、並列で実行される、システム。
【0065】
このような構成によれば、ユーザから受け付けた音声に対して、人工知能モジュールにより返答を生成させ、その返答をアバターが発話する動画データをユーザに対して出力する情報処理システムにおいて、返答を複数のセグメントに分割し、セグメント毎に動画データを生成するため、動画データの出力までにかかる時間が短くなり、ユーザビリティが向上する。
【0066】
(2)上記(1)に記載の情報処理システムにおいて、前記第1の受付ステップでは、前記ユーザの音声をリアルタイムでテキスト化し、前記ユーザの音声が途切れた場合に、それまでにテキスト化した前記ユーザの音声を前記音声情報として受け付ける、システム。
【0067】
このような構成によれば、ユーザが発話し終えたタイミングで、かつ、迅速にユーザの音声を音声情報として受け付けることができる。
【0068】
(3)上記(1)又は(2)に記載の情報処理システムにおいて、さらに、第2の受付ステップでは、前記人工知能モジュールからストリーミング形式で送信された前記返答を、前記複数のセグメントに分割して受け付け、前記生成ステップでは、受け付けたセグメントから順番に当該セグメントに対応する動画データを生成する、システム。
【0069】
このような構成によれば、人工知能モジュールからの返答を最後まで待つことなく、複数のセグメントに分割して受け付け、受け付けたセグメントから順番に、動画データを生成するため、1番目のセグメントに対応する動画データが生成するまでにかかる時間が短くなり、ユーザビリティが向上する。
【0070】
(4)上記(1)~(3)の何れか一つに記載の情報処理システムにおいて、前記生成ステップでは、n-1番目のセグメントに対応するn-1番目の動画データと連続してn番目のセグメントに対応するn番目の動画データを出力することができるように、前記n番目の動画データを生成する、システム。
【0071】
このような構成によれば、動画データを連続して出力することができる。動画データが途切れることがないため、ユーザはストレスなくアバターと会話をすることができる。
【0072】
(5)上記(4)に記載の情報処理システムにおいて、前記生成ステップにおいて前記n番目の動画データを生成したとき、前記n-1番目の動画データの出力が完了していない場合には、前記プロセッサは、前記出力ステップにおいて前記n番目の動画データの出力をキューイングする、システム。
【0073】
このような構成によれば、n-1番目の動画データの出力前に、n番目の動画データが生成された場合には、一旦キューイングした上で順番に出力することができる。
【0074】
(6)上記(5)に記載の情報処理システムにおいて、前記生成ステップでは、前記キューイング中の動画データの数を適正化するように前記動画データを生成する生成速度を調整する、システム。
【0075】
このような構成によれば、出力の速度に合わせて、動画データが生成されるため、リソースの適正化を図ることができる。
【0076】
(7)上記(1)~(6)の何れか一つに記載の情報処理システムにおいて、前記セグメントは、前記返答が句読記号に基づいて分割されたものである、システム。
【0077】
このような構成によれば、人工知能モジュールから受け付けた返答を、意味のまとまりごとにセグメントに分割することができる。
【0078】
(8)上記(1)~(7)の何れか一つに記載の情報処理システムにおいて、前記アニメーションは、前記アバターの発話に合わせた、前記アバターの口の動き、体の動き、及び顔の表情のうちの少なくとも1つを含む、システム。
【0079】
このような構成によれば、アバターが発話するアニメーションのリアリティがより向上し、ユーザの没入感もさらに向上する。
【0080】
(9)上記(1)~(8)の何れか一つに記載の情報処理システムにおいて、前記第1の受付ステップでは、さらに前記音声情報とは異なるデータを受け付け、前記入力ステップでは、前記音声情報と前記音声情報とは異なる前記データとを含む前記プロンプトを前記人工知能モジュールに入力する、システム。
【0081】
このような構成によれば、ユーザから音声以外の情報を受け付け、音声以外の情報に関する会話を行うことができる。
【0082】
(10)情報処理方法であって、上記(1)~(9)までの何れか一つに記載の情報処理システムにおける各ステップを含む、方法。
【0083】
このような構成によれば、ユーザから受け付けた音声に対して、人工知能モジュールにより返答を生成させ、その返答をアバターが発話する動画データをユーザに対して出力する情報処理システムにおいて、返答を複数のセグメントに分割し、セグメント毎に動画データを生成するため、動画データの出力までにかかる時間が短くなり、ユーザビリティが向上する。
【0084】
(11)プログラムであって、少なくとも1つのコンピュータに、上記(1)~(9)までの何れか一つに記載の情報処理システムにおける各ステップを実行させる、プログラム。
【0085】
このような構成によれば、ユーザから受け付けた音声に対して、人工知能モジュールにより返答を生成させ、その返答をアバターが発話する動画データをユーザに対して出力する情報処理システムにおいて、返答を複数のセグメントに分割し、セグメント毎に動画データを生成するため、動画データの出力までにかかる時間が短くなり、ユーザビリティが向上する。
もちろん、この限りではない。
【0086】
最後に、本発明に係る種々の実施形態を説明したが、これらは、例として提示したものであり、発明の範囲を限定することは意図していない。当該新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。当該実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0087】
1 :情報処理システム
2 :サーバ
20 :通信バス
21 :通信部
22 :記憶部
23 :制御部
3 :情報処理装置
30 :通信バス
31 :通信部
32 :記憶部
33 :制御部
34 :表示部
35 :入力部
36 :出力部
51 :音声
8 :返答
9 :説明図
AD :動画データ
AD1 :動画データ
AD2 :動画データ
AD3 :動画データ
ADn :動画データ
AV :アバター
Q2 :キューイング
Q3 :キューイング
Qn :キューイング
S1 :セグメント
S2 :セグメント
S3 :セグメント
Sn :セグメント
Y :ユーザ
【要約】 (修正有)
【課題】動画データの出力までにかかる時間を短くし、ユーザビリティを向上させる情報処理システム、情報処理方法及びプログラムを提供する。
【解決手段】少なくとも1つのプロセッサを備える情報処理システムにおいて、プロセッサがプログラムを読み出すことで実行する方法は、第1の受付ステップ(音声情報を受け付けるステップ)では、ユーザの発した音声に対応する音声情報を受け付け、入力ステップでは、音声情報を含むプロンプトを人工知能モジュール(会話型AI)に入力し、生成ステップでは、人工知能モジュールからの返答を複数のセグメントに分割し、複数のセグメントのそれぞれに対応する動画データを順番に生成する。前記動画データは、返答をアバターが発話するアニメーションと、返答に対応する合成音声と、を含む。さらに、生成ステップと並列で実行される出力ステップでは、動画データのそれぞれを順番に出力する。
【選択図】
図6