(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025033003
(43)【公開日】2025-03-12
(54)【発明の名称】情報提供装置、情報提供方法及び情報提供プログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20250305BHJP
G06Q 20/16 20120101ALI20250305BHJP
G06Q 20/14 20120101ALI20250305BHJP
【FI】
G06Q50/10
G06Q20/16
G06Q20/14 300
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2024145243
(22)【出願日】2024-08-27
(31)【優先権主張番号】P 2023138115
(32)【優先日】2023-08-28
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】591280485
【氏名又は名称】ソフトバンクグループ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】孫 正義
【テーマコード(参考)】
5L020
5L050
【Fターム(参考)】
5L020AA32
5L020AA36
5L050CC12
(57)【要約】
【課題】提供元に対して適切な報酬を支給すること。
【解決手段】実施形態に係る情報提供装置は、信頼性に関する条件を満たした提供元から提供されるデータソースを収集する収集部と、収集したデータソースの信頼度を判定する判定部と、収集したデータソースを学習して生成された言語モデルであって、ユーザによって入力されたプロンプトに対する回答を生成する言語モデルを生成する生成部と、データソースに関係する回答をユーザへ提供した場合に、当該データソースの提供元に対して信頼度に応じて報酬を支給する支給部とを有する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
信頼性に関する条件を満たした提供元から提供されるデータソースを収集する収集部と、
収集した前記データソースの信頼度を判定する判定部と、
収集した前記データソースを学習して生成された言語モデルであって、ユーザによって入力されたプロンプトに対する回答を生成する言語モデルを生成する生成部と、
前記データソースに関係する前記回答をユーザへ提供した場合に、当該データソースの前記提供元に対して前記信頼度に応じて報酬を支給する支給部と
を有する情報提供装置。
【請求項2】
前記判定部は、
前記提供元の情報に基づいて前記信頼度を判定する
請求項1に記載の情報提供装置。
【請求項3】
前記判定部は、
前記提供元の属性情報と、前記データソースの種別とに基づいて前記信頼度を判定する
請求項2に記載の情報提供装置。
【請求項4】
前記判定部は、
前記提供元から過去に提供された前記データソースの前記信頼度に基づいて、今回提供された前記データソースの前記信頼度を判定する
請求項1に記載の情報提供装置。
【請求項5】
前記支給部は、
前記信頼度が高い程、前記報酬を多く支給する
請求項1に記載の情報提供装置。
【請求項6】
前記支給部は、
過去に前記ユーザへ提供した複数の前記データソースの前記信頼度に基づいて支給する前記報酬を決定する
請求項1に記載の情報提供装置。
【請求項7】
情報提供装置によって実行される情報提供方法であって、
信頼性に関する条件を満たした提供元から提供されるデータソースを収集する収集工程と、
収集した前記データソースの信頼度を判定する判定工程と、
収集した前記データソースを学習して生成された言語モデルであって、ユーザによって入力されたプロンプトに対する回答を生成する言語モデルを生成する生成工程と、
前記データソースに関係する前記回答をユーザへ提供した場合に、当該データソースの前記提供元に対して前記信頼度に応じて報酬を支給する支給工程と
を含む情報提供方法。
【請求項8】
信頼性に関する条件を満たした提供元から提供されるデータソースを収集する収集ステップと、
収集した前記データソースの信頼度を判定する判定ステップと、
収集した前記データソースを学習して生成された言語モデルであって、ユーザによって入力されたプロンプトに対する回答を生成する言語モデルを生成する生成ステップと、
前記データソースに関係する前記回答をユーザへ提供した場合に、当該データソースの前記提供元に対して前記信頼度に応じて報酬を支給する支給ステップと
をコンピュータに実行させる情報提供プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
開示の実施形態は、情報提供装置、情報提供方法及び情報提供プログラムに関する。
【背景技術】
【0002】
従来、ユーザによって入力された質問文に対する回答文を、生成モデルを用いて生成するシステムが知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の技術では、情報を提供してくれる提供元に対して適切な報酬を支給する点で改善の余地があった。
【0005】
本発明は、上記に鑑みてなされたものであって、提供元に対して適切な報酬を支給することを目的とする。
【課題を解決するための手段】
【0006】
実施形態の一態様に係る情報提供装置は、信頼性に関する条件を満たした提供元から提供されるデータソースを収集する収集部と、収集した前記データソースの信頼度を判定する判定部と、収集した前記データソースを学習して生成された言語モデルであって、ユーザによって入力されたプロンプトに対する回答を生成する言語モデルを生成する生成部と、前記データソースに関係する前記回答をユーザへ提供した場合に、当該データソースの前記提供元に対して前記信頼度に応じて報酬を支給する支給部と、を有する。
【発明の効果】
【0007】
実施形態の一態様によれば、提供元に対して適切な報酬を支給することができる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態に係る情報提供装置の概要を説明する図である。
【
図2】
図2は、実施形態に係る情報提供装置の構成例を示す機能ブロック図である。
【
図3】
図3は、データ量の変化を説明する図である。
【
図4】
図4は、信頼性の判定処理の流れを説明するフローチャートである。
【
図5】
図5は、事前訓練処理の流れを説明するフローチャートである。
【
図6】
図6は、情報提供処理の流れを説明するフローチャートである。
【
図7】
図7は、情報提供装置として機能するコンピュータハードウェア構成の一例を概略的に示す図である。
【発明を実施するための形態】
【0009】
以下、実施形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0010】
図1を用いて、実施形態に係る情報提供装置の処理の流れを説明する。
図1は、実施形態に係る情報提供装置の概要を説明する図である。
図1では、実施形態に係る情報提供装置10を含む情報提供システム1の構成を示している。
【0011】
図1に示すように、情報提供システム1は、情報提供装置10と、データソース提供元20と、回答提供先30とを含む。データソース提供元20の実体は、情報を配信するためのサーバ20-1や、ユーザが所持するユーザ端末20-2、自動運転機能を有する車両20-3等である。サーバ20-1は、例えば新聞社、通信社、放送事業者、出版社、ネットニュース提供事業者等が管理するサーバである。サーバ20-1は、インターネット上でWebサイト又はSNS(Social Networking Service)を介して情報を配信する。
【0012】
回答提供先30は、情報提供装置10が有する言語モデルを用いた、ユーザの質問に対する回答の提供先である。回答提供先30の実体は、ユーザ端末30-1や、自動運転機能を有する車両30-2等である。
【0013】
図1に示すように、情報提供装置10は、データソース提供元20から提供元に関する情報を取得する(ステップS1)。提供元に関する情報は、提供先の属性情報(事業内容や事業規模、従業員数、会員登録者数)や、事業を展開している地域等の情報である。
【0014】
つづいて、情報提供装置10は、提供元に関する情報に基づいて、提供先が信頼性に関する条件を満たすか否かを判定する(ステップS2)。例えば、情報提供装置10は、事業内容がニュース配信である提供元(新聞社、通信社、放送事業者、出版社、ネットニュース提供事業者)については、信頼性に関する条件を満たすと判定する。つまり、情報提供装置10は、ニュース配信を事業内容とする提供元から提供されるニュース記事のデータソースについては信頼度が高いため、信頼性に関する条件を満たすと判定する。また、情報提供装置10は、事業規模が一定以上の提供元については信頼性に関する条件を満たすと判定する。事業規模とは、例えば、ニュース配信の配信数(新聞社なら発行部数、通信社なら配信したユーザ数、放送事業者なら視聴率、出版社なら発行部数、ネットニュース提供事業者なら配信数または登録ユーザ数等)である。つまり、情報提供装置10は、ニュース記事が一定以上のユーザに配信されている提供元については、信頼性に関する条件を満たすと判定する。
【0015】
また、情報提供装置10は、データソース提供元20がユーザ端末20-2や車両20-3等の機器である場合、機器の製造元が信頼性に関する条件を満たすか否かを判定する。例えば、情報提供装置10は、売上高が一定以上の製造元について信頼性に関する条件を満たすと判定する。
【0016】
つづいて、情報提供装置10は、信頼性に関する条件を満たしたデータソース提供元20に対して通信接続を許可し、データソース提供元20からデータソースを収集する(ステップS3)。なお、情報提供装置10とデータソース提供元20とは、VPN(Virtual Private Network)によって通信接続される。
【0017】
データソースは、データソース提供元20のサーバ20-1によって配信されるテキスト、音声、画像等の形式のデータである。また、データソースは、ユーザ端末20-2によって提供されるユーザの投稿内容(テキスト、音声、画像等)である。データソースは、車両20-3によって提供される過去の移動経路や、移動している際の道路や歩道の混雑状況、目的地までに要した移動時間、目的地まで移動した際の車両20-3の挙動(アクセル、ブレーキ、ステアリング等)等である。
【0018】
情報提供装置10は、収集したデータソースの信頼度を判定する(ステップS4)。例えば、情報提供装置10は、提供元の情報に基づいて信頼度を判定する。具体的には、情報提供装置10は、提供元の属性情報と、データソースの種別とに基づいて信頼度を判定する。例えば、情報提供装置10は、経済関連のニュースを主に発信している提供元から経済関連のデータソースが提供される場合には、信頼度が高いと判定し、経済関連以外のデータソースが提供される場合には、信頼度が低いと判定する。なお、信頼度は、高/低の2値に限定されず、1から10の10段落のスコアで表現されてもよい。また、情報提供装置10は、事業規模が一定以上の提供元から提供されるデータソースについては信頼度が高いと判定してもよい。事業規模とは、例えば、ニュース配信の配信数(新聞社なら発行部数、通信社なら配信したユーザ数、放送事業者なら視聴率、出版社なら発行部数、ネットニュース提供事業者なら配信数または登録ユーザ数等)である。また、情報提供装置10は、提供元から過去に提供されたデータソースの信頼度に基づいて、今回提供されたデータソースの信頼度を判定してもよい。具体的には、情報提供装置10は、提供元から過去に提供されたデータソースの信頼度がすべて高い場合には、今回提供されたデータソースの信頼度を高いと判定する。また、情報提供装置10は、提供元から過去に提供されたデータソースのうち、特定の分野のデータソースの信頼度がすべて高い場合には、今回提供されたデータソースが特定の分野である場合には、信頼度を高いと判定する。
【0019】
情報提供装置10は、取得したデータソースを基に、モデルの学習を行う。モデルは、言語モデルである。言語モデルとしては、例えばOpenAI社のChatGPTが知られている(参考文献:https://openai.com/blog/chatgpt)。言語モデルは、ニューラルネットワークを利用したGAN(Generative Adversarial Networks)、VAE(Variational Autoencoder)等の生成モデルであってもよい。
【0020】
本実施形態では、言語モデルは、ユーザによって入力された問い合わせのテキスト(以下、プロンプト)に対する回答のテキストを生成する。また、モデルは、データソースを用いて事前に学習される。モデルの学習は、既知の機械学習の手法によって行われてもよい。
【0021】
これにより、モデルは、データソースに基づいた回答を生成することができるようになる。例えば、モデルは、プロンプトに「電気自動車」というキーワードが含まれる場合、当該キーワードに関連するニュース記事に基づいた回答を生成することができる。言い換えると、学習により、ニュース記事の内容がモデルによる回答の生成に影響を与えるようになる。
【0022】
ステップS1において、情報提供装置10は、継続的にデータソースを取得する。このため、情報提供装置10が取得したデータソースの量は、時間の経過に従って増加していく。
【0023】
情報提供装置10は、学習に使用するデータソースが互いに異なる2つのモデルを有する。2つのモデルは、標準モデル及び先進モデルである。
【0024】
情報提供装置10は、データソースを基に2つの言語モデルを学習する(ステップS5)。具体的には、情報提供装置10は、過去のデータソースを基に標準モデルを学習する。また、情報提供装置10は、現在のデータソースを基に先進モデルを学習する。
【0025】
ここで、過去のデータソースは、モデルの学習が行われるタイミングの一定期間だけ過去の時点までに取得されたデータソースである。例えば、一定期間を2年間とすると、「2023/6/22 16:05」に学習が行われる場合、過去のデータソースは、データソースの取得開始時点から、「2021/6/22 16:05」までに取得されたデータソースである。
【0026】
一方、現在のデータソースは、モデルの学習が行われるタイミングまでに取得されたデータソースである。例えば、「2023/6/22 16:05」に学習が行われる場合、現在のデータソースは、データソースの取得開始時点から、「2023/6/22 16:05」までに取得されたデータソースである。
【0027】
つまり、情報提供装置10は、所定期間だけ遡った時点までに取得した過去のデータソースを学習した標準モデルと、所定期間を含む現在までに取得した過去のデータソースを学習した先進モデルとを生成する。
【0028】
モデルの学習が行われるタイミングは、1秒ごとであってもよいし、さらに短い時間ごと(例えば、1ナノ秒ごと)であってもよい。
【0029】
また、情報提供装置10は、先進モデルを学習する際に、所定期間において取得したデータソースについては、ステップS4で判定した信頼度が所定の条件を満たすデータソースを用いて学習する。具体的には、情報提供装置10は、信頼度が高いデータソースを用いて先進モデルを学習する。これにより、学習量を減らしつつ、信頼度が高い先進モデルを学習することができる。
【0030】
ここで、情報提供装置10は、ユーザから言語モデルへの入力となるプロンプトを受け付ける(ステップS6)。そして、情報提供装置10は、ユーザのプランに応じたモデルを用いてプロンプトに対する回答を生成する(ステップS7)。
【0031】
なお、ユーザからのプロンプトは、回答提供先30を介して情報提供装置10に送信される。また、情報提供装置10は、回答を回答提供先30に送信する。
【0032】
情報提供装置10は、サービスとして回答を提供する。サービスには、上位のプレミアムプランと下位のフリーミアムプランがあるものとする。プレミアムプランは、ある期間(例えば、年間又は月間)ごとに一定の料金がかかるサブスクリプション、又は利用料に応じて料金が決まる従量制のプランである。また、フリーミアムプランは、無料のプランである。フリーミアムプランは、プレミアムプランより料金が少額のプラン(例えば、ベーシックプラン)に置き換えられてもよい。
【0033】
情報提供装置10は、使用するモデルの学習に用いられるデータの違いによって、プランごとのサービス品質の差別化を実現する。すなわち、ユーザがプレミアムプランに加入している場合、情報提供装置10は、先進モデルを使って回答を生成する。一方、ユーザがフリーミアムプランに加入している場合、情報提供装置10は、標準モデルを使って回答を生成する。
【0034】
情報提供装置10は、生成した回答をユーザに提供する(ステップS8)。情報提供装置10は、チャット形式のユーザインタフェースを介してプロンプトの受け付け及び回答の提供を行ってもよい。また、情報提供装置10は、回答提供先30が車両30-2である場合、例えば、車両30-2に搭載されたディスプレイ(例えば、ナビゲーション装置等)に回答を表示させる。あるいは、情報提供装置10は、プロンプトが目的地までの自動運転依頼であった場合、車両30-2の制御装置を制御して、自動運転を行う。
【0035】
また、情報提供装置10は、ユーザがプレミアムプランに加入している場合、最新のデータソースを基に先進モデルを更新し、さらに回答を生成してもよい。このように更新した先進モデルをリアルタイムモデルと呼ぶ。情報提供装置10は、リアルタイムモデルを使って生成した追加の回答を提供してもよい。
【0036】
情報提供装置10は、回答を生成し、生成した回答を提供するまでの期間にも、データソースを継続的に取得して言語モデルの更新を行う。情報提供装置10は、リアルタイムモデルを用いることで、この期間に発生した差分を反映させた回答を生成することができる。
【0037】
つづいて、情報提供装置10は、データソースに関係する回答をユーザへ提供した場合に、当該データソースのデータソース提供元20に対して報酬を支給する(ステップS9)。例えば、情報提供装置10は、データソースに関係する回答を行った回数(またはユーザ数)に応じて支給する報酬の内容を決定する。また、情報提供装置10は、標準モデルによる提供と、先進モデルによる提供とで報酬を異ならせてもよい。例えば、情報提供装置10は、データソースに関係する回答を先進モデルを介して提供した場合の報酬を、標準モデルを介して提供した場合の報酬よりも多くする。
【0038】
また、情報提供装置10は、ステップS4で判定した信頼度に応じた報酬を支給する。例えば、情報提供装置10は、信頼度が高い程、報酬を多く支給する。また、情報提供装置10は、過去にユーザへ提供した複数のデータソースの信頼度に基づいて支給する報酬を決定してもよい。具体的には、情報提供装置10は、過去の所定期間内に提供したデータソースにおいて、信頼度が高いデータソースが多い程、報酬を多く支給する。このように、実施形態に係る情報提供装置10によれば、提供元に対して信頼度に応じた報酬を提供することで、提供元に対して適切な報酬を支給することができる。
【0039】
このように、情報提供装置10は、信頼性に関する条件を満たしたデータソース提供元20のみからデータソースを収集することで、言語モデルの学習に信頼度低いデータソースが混ざることを回避できるため、提供される情報の信頼度を高めることができる。
【0040】
また、情報提供システム1において、情報提供装置10と、データソース提供元20(サーバ20-1、ユーザ端末20-2および車両20-3)とは、製造メーカが同じ半導体チップが組み込まれる。この半導体チップは、それぞれ自身が機械学習やディープラーニングを行ってもよい。
【0041】
また、情報提供装置10やデータソース提供元20で使用される半導体チップは、それぞれの筐体にあった大きさのチップが使用される。例えば、情報提供装置10のチップサイズをXLサイズと仮定した場合、サーバ20-1や車両20-3にはLサイズを使用し、ユーザ端末20-2にはSもしくはMサイズを使用する。また、ユーザ端末20-2よりもさらに筐体サイズが小さいデータソース提供元20については、SSサイズを使用し、SoC(System on a chip)の中に入れてワンチップ化する。なお、XLサイズは、半導体チップの数が200タイル、Lサイズが50タイル、Mサイズが20タイル、Sサイズが10タイル、SSサイズが2タイルであるが、各サイズのタイル数は一例であり、上記に限定されるものではない。もし、ユーザ端末20-2にカメラやマイクといった付属品を付けたい場合は、SoCの中の半導体チップの近くの空いているスペースに半導体チップとは別の付属品専用のチップを設定しても良い。
【0042】
このように、情報提供装置10およびデータソース提供元20において製造メーカが同じ半導体チップを使用することで、情報提供装置10およびデータソース提供元20の間で閉じた系を確立できるため、情報提供装置10およびデータソース提供元20の間をセキュアな状態に保つことができる。つまり、情報提供装置10およびデータソース提供元20の間において、ハッキングや、ウィルス感染、ディープフェイクを高精度に回避できるとともに、情報提供装置10およびデータソース提供元20の間におけるプライバシーを確保することができる。
【0043】
図2を用いて、情報提供装置10の構成を説明する。
図2は、実施形態に係る情報提供装置の構成例を示す機能ブロック図である。
【0044】
図2に示すように、情報提供装置10は、通信部11と、記憶部12と、制御部13と、を備える。
【0045】
通信部11は、ネットワークを介して、データソース提供元20又は回答提供先30との間で情報の送受信を行う。
【0046】
記憶部12は、例えばRAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又はHDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置によって実現される。記憶部12には、各種プログラム及び各種データ等が記憶される。記憶部12は、ユーザ情報121、標準モデル情報122、先進モデル情報123、及びリアルタイムモデル情報124を有する。
【0047】
ユーザ情報121は、ユーザごとの加入しているプランの情報である。例えば、ユーザ情報121は、ユーザのIDとプレミアムプラン又はフリーミアムプランを対応付けた情報である。
【0048】
標準モデル情報122、先進モデル情報123、及びリアルタイムモデル情報124は、それぞれ標準モデル、先進モデル及びリアルタイムモデルを構築するためのパラメータ等の情報である。モデルを構築するためのパラメータは、例えばニューラルネットワークの重み及びバイアス等である。モデルの学習においては、これらのパラメータが更新される。
【0049】
制御部13は、コントローラであり、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM、入出力ポート等を有するマイクロコンピュータや各種の回路を含む。また、制御部13は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路等のハードウェアで構成されてもよい。制御部13は、取得部31、判定部32、収集部33、生成部34、提供部35および支給部36を有する。
【0050】
取得部31は、データソース提供元20から提供元に関する情報を取得する。提供元に関する情報は、提供先の属性情報(事業内容や事業規模、従業員数、会員登録者数)や、事業を展開している地域等の情報である。
【0051】
判定部32は、提供元に関する情報に基づいて、提供先が信頼性に関する条件を満たすか否かを判定する。例えば、判定部32は、事業内容がニュース配信である提供元(新聞社、通信社、放送事業者、出版社、ネットニュース提供事業者)については、信頼性に関する条件を満たすと判定する。つまり、判定部32は、ニュース配信を事業内容とする提供元から提供されるニュース記事のデータソースについては信頼度が高いため、信頼性に関する条件を満たすと判定する。また、判定部32は、事業規模が一定以上の提供元については信頼性に関する条件を満たすと判定する。事業規模とは、例えば、ニュース配信の配信数(新聞社なら発行部数、通信社なら配信したユーザ数、放送事業者なら視聴率、出版社なら発行部数、ネットニュース提供事業者なら配信数または登録ユーザ数等)である。つまり、判定部32は、ニュース記事が一定以上のユーザに配信されている提供元については、信頼性に関する条件を満たすと判定する。
【0052】
また、判定部32は、データソース提供元20がユーザ端末20-2や車両20-3等の機器である場合、機器の製造元が信頼性に関する条件を満たすか否かを判定する。例えば、判定部32は、売上高が一定以上の製造元について信頼性に関する条件を満たすと判定する。
【0053】
また、判定部32は、収集したデータソースの信頼度を判定する。例えば、判定部32は、提供元の情報に基づいて信頼度を判定する。具体的には、判定部32は、提供元の属性情報と、データソースの種別とに基づいて信頼度を判定する。例えば、判定部32は、経済関連のニュースを主に発信している提供元から経済関連のデータソースが提供される場合には、信頼度が高いと判定し、経済関連以外のデータソースが提供される場合には、信頼度が低いと判定する。なお、信頼度は、高/低の2値に限定されず、1から10の10段落のスコアで表現されてもよい。また、判定部32、事業規模が一定以上の提供元から提供されるデータソースについては信頼度が高いと判定してもよい。事業規模とは、例えば、ニュース配信の配信数(新聞社なら発行部数、通信社なら配信したユーザ数、放送事業者なら視聴率、出版社なら発行部数、ネットニュース提供事業者なら配信数または登録ユーザ数等)である。また、判定部32は、提供元から過去に提供されたデータソースの信頼度に基づいて、今回提供されたデータソースの信頼度を判定してもよい。具体的には、判定部32は、提供元から過去に提供されたデータソースの信頼度がすべて高い場合には、今回提供されたデータソースの信頼度を高いと判定する。また、判定部32は、提供元から過去に提供されたデータソースのうち、特定の分野のデータソースの信頼度がすべて高い場合には、今回提供されたデータソースが特定の分野である場合には、信頼度を高いと判定する。
【0054】
収集部33は、判定部32によって信頼性に関する条件を満たすと判定されたデータソース提供元20からデータソースを収集する。収集部33は、収集したデータソースを記憶部12に蓄積する。また、収集部33は、他の処理部の動作に非同期で継続的にデータソースを収集する。すなわち、収集部33は、モデルの訓練、回答の生成及び提供といった処理に非同期でデータソースを収集し続ける。
【0055】
収集部33によって記憶部12に蓄積されるデータ量は、
図3に示すように時間の経過に従って変化する。
図3は、データ量の変化を説明する図である。
【0056】
図3の横軸は時間(時刻)である。また、
図3の縦軸はデータ量である。現在の時間t
2におけるデータ量はv
2である。また、時間t
2より期間Tだけ過去の時間t
1におけるデータ量はv
1である。また、v
1はv
2より小さい。
【0057】
また、時間t2に先進モデルの学習が行われ、学習済みの先進モデルを使って回答が生成された時間をt2+Δtとする。収集部33はデータを収集し続けるため、Δtの期間にデータ量がΔvだけ増加する。
【0058】
生成部34は、言語モデルを生成する。具体的には、生成部34は、標準モデルおよび先進モデルを生成する。具体的には、生成部34は、データソースを基に2つの言語モデルを学習する。具体的には、生成部34は、過去のデータソースを基に標準モデルを学習する。また、生成部34は、現在のデータソースを基に先進モデルを学習する。
【0059】
また、生成部34は、学習によりモデルのパラメータを更新する。生成部34は、学習のタイミングごとに、モデルを生成し直してもよいし、前回の学習との差分のデータソースをモデルに反映させるようにしてもよい。
【0060】
また、生成部34は、提供元から収集したデータソースの信頼度を判定し、信頼度に基づいて言語モデルの学習に用いるか否かを判定する。例えば、生成部34は、データソースの内容を解析(テキスト解析、音声解析、画像解析)して、データソースの内容が虚偽である可能性がある場合には、当該データソースを言語モデルの学習に用いることを禁止する。
【0061】
また、生成部34は、先進モデルを学習する際に、所定期間において取得したデータソースについては、ステップS4で判定した信頼度が所定の条件を満たすデータソースを用いて学習する。具体的には、生成部34は、信頼度が高いデータソースを用いて先進モデルを学習する。
【0062】
提供部35は、生成した言語モデルを用いて、ユーザから受け付けたプロンプトに対する回答を生成して提供する。
【0063】
提供部35は、ユーザ情報121を参照し、ユーザのプランを判定する。提供部35は、ユーザがプレミアムプランに加入しているかフリーミアムプランに加入しているかを判定する。
【0064】
提供部35は、言語モデルにプロンプトを入力し、回答を生成する。提供部35は、ユーザによって入力されたプロンプトに対する回答を、学習に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する。例えば、提供部35は、標準モデル及び先進モデルのいずれかを用いて回答を生成する。
【0065】
提供部35は、言語モデルによって生成された回答を、回答の生成に用いられた言語モデルの学習に用いられたデータソースの提供元を示す情報とともにユーザに提供する。例えば、提供部35は、ユーザ端末に情報提供画面を表示させる。例えば、提供部35は、チャット形式のユーザインタフェースを介してプロンプトの受け付け及び回答の提供を行ってもよい。また、提供部35は、回答提供先30が車両30-2である場合、例えば、車両30-2に搭載されたディスプレイ(例えば、ナビゲーション装置等)に回答を表示させる。あるいは、提供部35は、プロンプトが目的地までの自動運転依頼であった場合、車両30-2の制御装置を制御して、自動運転を行う。
【0066】
支給部36は、データソースに関係する回答をユーザへ提供した場合に、当該データソースのデータソース提供元20に対して報酬を支給する。例えば、支給部36は、データソースに関係する回答を行った回数(またはユーザ数)に応じて支給する報酬の内容を決定する。また、支給部36は、標準モデルによる提供と、先進モデルによる提供とで報酬を異ならせてもよい。例えば、支給部36は、データソースに関係する回答を先進モデルを介して提供した場合の報酬を、標準モデルを介して提供した場合の報酬よりも多くする。
【0067】
また、支給部36は、ステップS4で判定した信頼度に応じた報酬を支給する。例えば、支給部36は、信頼度が高い程、報酬を多く支給する。また、支給部36は、過去にユーザへ提供した複数のデータソースの信頼度に基づいて支給する報酬を決定してもよい。具体的には、支給部36は、過去の所定期間内に提供したデータソースにおいて、信頼度が高いデータソースが多い程、報酬を多く支給する。
【0068】
図4を用いて、信頼性の判定処理の流れを説明する。
図4は、信頼性の判定処理の流れを説明するフローチャートである。
【0069】
図4に示すように、情報提供装置10は、データソース提供元20から提供元に関する情報を取得する(ステップS101)。
【0070】
つづいて、情報提供装置10は、提供元に関する情報に基づいて、信頼性に関する条件を満たすか否かを判定する(ステップS102)。
【0071】
情報提供装置10は、信頼性に関する条件を満たす場合(ステップS102:Yes)、データソースの提供元として採用し(ステップS103)、処理を終了する。一方、情報提供装置10は、信頼性に関する条件を満たさない場合(ステップS102:No)、提供元として採用せずに、処理を終了する。
【0072】
図5を用いて、事前訓練処理の流れを説明する。
図5は、事前訓練処理の流れを説明するフローチャートである。
【0073】
図5に示すように、情報提供装置10は、継続的にデータソースを取得する(ステップS201)。次に、情報提供装置10は、モデル生成タイミングであるか否かを判定する(ステップS202)。
【0074】
情報提供装置10は、モデル生成タイミングでない場合(ステップS202:No)、ステップS201に戻り、引き続きデータソースを取得する。一方、情報提供装置10は、モデル生成タイミングである場合(ステップS202:Yes)、ステップS203に進む。
【0075】
情報提供装置10は、一定期間だけ過去のデータソースを用いて標準モデルを訓練する(ステップS203)。また、情報提供装置10は、現在までのデータソースを用いて先進モデルを訓練する(ステップS204)。例えば、情報提供装置10は、現在までのデータソースを用いて先進モデルを訓練し、2年前までのデータソースを用いて標準モデルを訓練する。
【0076】
図6を用いて、情報提供処理の流れを説明する。
図6は、情報提供処理の流れを説明するフローチャートである。情報提供装置10は、事前訓練処理と情報提供処理を並列で実行することができる。
【0077】
図6に示すように、情報提供装置10は、継続的にデータソースを取得する(ステップS301)。情報提供装置10は、ユーザからの問い合わせがあるか否かを判定する(ステップS302)。
【0078】
情報提供装置10は、ユーザからの問い合わせがなかった場合(ステップS302:No)、ステップS301に戻り、引き続きデータソースを取得する。一方、情報提供装置10は、ユーザからの問い合わせがあった場合(ステップS302:Yes)、ユーザのプランを判定する(ステップS303)。
【0079】
情報提供装置10は、ユーザのプランがフリーミアムプランである場合(ステップS303:フリーミアム)、ステップS304に進む。一方、情報提供装置10は、ユーザのプランがプレミアムプランである場合(ステップS303:プレミアム)、ステップS306に進む。
【0080】
ステップS304では、情報提供装置10は、標準モデルに問い合わせ内容を入力し、回答を生成する。そして、情報提供装置10は、生成した回答をユーザに提供する(ステップS305)。そして、情報提供装置10は、回答に関係したデータソースの提供元に対して報酬を支給し(ステップS311)、処理を終了する。
【0081】
ステップS306では、情報提供装置10は、先進モデルに問い合わせ内容を入力し、回答を生成する。そして、情報提供装置10は、生成した回答をユーザに提供する(ステップS307)。
【0082】
さらに、情報提供装置10は、最新のデータソースを用いて先進モデルを更新する(ステップS308)。情報提供装置10は、更新した先進モデル(リアルタイムモデル)に問い合わせ内容を入力し、回答を生成する(ステップS309)。情報提供装置10は、生成した回答をユーザに提供する(ステップS310)。
【0083】
本実施形態によれば、一般的に優良企業として認識されている企業とパートナーを組み、そのような企業をデータソースの提供元とすることで、言語モデルを用いて回答を提供するサービスの信頼性を高めることができる。
【0084】
さらに、本実施形態によれば、個人の無料会員向けにフリーミアムプランによる一般的な回答を提供し、個人の有料会員、企業、政府等の公的機関向けにプレミアムプランによる高精度の回答を提供することができる。
【0085】
図7は、情報提供装置として機能するコンピュータハードウェア構成の一例を概略的に示す図である。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又は全てに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。
【0086】
本実施形態によるコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブは、DVD-ROMドライブ及びDVD-RAMドライブ等であってよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってよい。コンピュータ1200はまた、ROM1230及びキーボードのような入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。
【0087】
CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
【0088】
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブは、プログラム又はデータをDVD-ROM等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
【0089】
ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してよい。
【0090】
プログラムは、DVD-ROM又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
【0091】
例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD-ROM、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【0092】
また、CPU1212は、記憶装置1224、DVDドライブ(DVD-ROM)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【0093】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それによりあらかじめ定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0094】
上記したプログラム又はソフトウエアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
【0095】
本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表してよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。
【0096】
コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0097】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでもよい。
【0098】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0099】
以上、実施形態を用いて本発明を説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0100】
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0101】
10 情報提供装置
11 通信部
12 記憶部
13 制御部
31 取得部
32 判定部
33 収集部
34 生成部
35 提供部
36 支給部
121 ユーザ情報
122 標準モデル情報
123 先進モデル情報
124 リアルタイムモデル情報