(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025003050
(43)【公開日】2025-01-09
(54)【発明の名称】情報提供装置、情報提供方法及び情報提供プログラム
(51)【国際特許分類】
G06F 16/90 20190101AFI20241226BHJP
【FI】
G06F16/90 100
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023103506
(22)【出願日】2023-06-23
(71)【出願人】
【識別番号】591280485
【氏名又は名称】ソフトバンクグループ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】孫 正義
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175EA01
(57)【要約】
【課題】提供される情報の信頼度をユーザが把握できること。
【解決手段】実施形態に係る情報提供装置は、生成部及び提供部を有する。生成部は、ユーザによって入力されたプロンプトに対する回答を、訓練に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する。提供部は、生成部によって生成された回答を、回答の生成に用いられた言語モデルの訓練に用いられたデータソースの提供元を示す情報とともにユーザに提供する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
ユーザによって入力されたプロンプトに対する回答を、訓練に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する生成部と、
前記生成部によって生成された回答を、前記回答の生成に用いられた前記言語モデルの訓練に用いられたデータソースの提供元を示す情報とともに前記ユーザに提供する提供部と、
を有する情報提供装置。
【請求項2】
前記生成部は、前記ユーザに対応付けられた料金のプランが、第1のプランである場合、第1の言語モデルを用いて回答を生成し、前記ユーザに対応付けられた料金のプランが、前記第1のプランよりも少額な第2のプランである場合、前記第1の言語モデルよりも少ないデータソースが訓練に用いられた第2の言語モデルを用いて回答を生成する
請求項1に記載の情報提供装置。
【請求項3】
前記生成部は、前記ユーザに対応付けられた料金のプランが、前記第1のプランである場合、第1の時間までに取得されたデータソースが訓練に用いられた前記第1の言語モデルを用いて回答を生成し、前記ユーザに対応付けられた料金のプランが、前記第2のプランである場合、前記第1の時間よりも一定期間だけ過去の第2の時間までに取得されたデータソースが訓練に用いられた前記第2の言語モデルを用いて回答を生成する
請求項2に記載の情報提供装置。
【請求項4】
前記生成部が前記言語モデルを用いて第1の回答の生成を開始してから、前記生成部によって生成された前記第1の回答が示されるまでの間に取得されたデータソースを用いて、前記言語モデルを訓練し更新する更新部をさらに有し、
前記生成部は、前記更新部によって更新された前記言語モデルを用いて前記プロンプトに対する第2の回答を生成し、
前記提供部は、前記第2の回答を前記ユーザに提供する
請求項1に記載の情報提供装置。
【請求項5】
情報提供装置によって実行される情報提供方法であって、
ユーザによって入力されたプロンプトに対する回答を、訓練に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する生成工程と、
前記生成工程によって生成された回答を、前記回答の生成に用いられた前記言語モデルの訓練に用いられたデータソースの提供元を示す情報とともに前記ユーザに提供する提供工程と、
を含む情報提供方法。
【請求項6】
ユーザによって入力されたプロンプトに対する回答を、訓練に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する生成ステップと、
前記生成ステップによって生成された回答を、前記回答の生成に用いられた前記言語モデルの訓練に用いられたデータソースの提供元を示す情報とともに前記ユーザに提供する提供ステップと、
をコンピュータに実行させる情報提供プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
開示の実施形態は、情報提供装置、情報提供方法及び情報提供プログラムに関する。
【背景技術】
【0002】
従来、ユーザによって入力された質問文に対する回答文を、生成モデルを用いて生成するシステムが知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の技術では、提供される情報の信頼度をユーザが把握できない場合があるという問題がある。
【0005】
例えば、特許文献1に記載のシステムは、ニュース記事を基に回答文を生成する。一方で、ユーザは、ニュース記事の出所を知ることができないため、回答文の信頼度を把握できない。
【0006】
本発明は、上記に鑑みてなされたものであって、提供される情報の信頼度をユーザが把握できるようにすることを目的とする。
【課題を解決するための手段】
【0007】
実施形態の一態様に係る情報提供装置は、ユーザによって入力されたプロンプトに対する回答を、訓練に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する生成部と、前記生成部によって生成された回答を、前記回答の生成に用いられた前記言語モデルの訓練に用いられたデータソースの提供元を示す情報とともに前記ユーザに提供する提供部と、を有する。
【発明の効果】
【0008】
実施形態の一態様によれば、提供される情報の信頼度をユーザが把握できるようにすることができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施形態に係る情報提供装置の概要を説明する図である。
【
図2】
図2は、実施形態に係る情報提供装置の構成例を示す機能ブロック図である。
【
図3】
図3は、データ量の変化を説明する図である。
【
図4】
図4は、情報提供画面の一例を示す図である。
【
図5】
図5は、情報提供画面の一例を示す図である。
【
図6】
図6は、情報提供画面の一例を示す図である。
【
図7】
図7は、事前訓練処理の流れを説明するフローチャートである。
【
図8】
図8は、情報提供処理の流れを説明するフローチャートである。
【
図9】
図9は、情報提供装置として機能するコンピュータハードウェア構成の一例を概略的に示す図である。
【発明を実施するための形態】
【0010】
以下、実施形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0011】
図1を用いて、実施形態に係る情報提供装置の処理の流れを説明する。
図1は、実施形態に係る情報提供装置の概要を説明する図である。
【0012】
図1に示すように、情報提供装置10は、データソース提供元からデータソースを取得する(ステップS1)。例えば、データソース提供元の実体は、情報を配信するための複数のサーバ(サーバ20_1、サーバ20_2、サーバ20_3)である。
【0013】
データソース提供元は、インターネット上でWebサイト又はSNS(Social Networking Service)を介して情報を配信する。データソースは、データソース提供元によって配信されるテキスト、音声、画像等の形式のデータである。
【0014】
データソース提供元は、例えば新聞社、通信社、放送事業者、出版社、ネットニュース提供事業者等である。
【0015】
情報提供装置10は、取得したデータソースを基に、モデルの訓練(学習処理)を行う。モデルは、言語モデルである。言語モデルとしては、例えばOpenAI社のChatGPTが知られている(参考文献:https://openai.com/blog/chatgpt)。言語モデルは、ニューラルネットワークを利用したGAN(Generative Adversarial Networks)、VAE(Variational Autoencoder)等の生成モデルであってもよい。
【0016】
本実施形態では、モデルは、ユーザによって入力された問い合わせのテキスト(以下、プロンプト)に対する回答のテキストを生成する。また、モデルは、データソースを用いて事前に訓練される。モデルの訓練は、既知の機械学習の手法によって行われてもよい。
【0017】
これにより、モデルは、データソースに基づいた回答を生成することができるようになる。例えば、モデルは、プロンプトに「電気自動車」というキーワードが含まれる場合、当該キーワードに関連するニュース記事に基づいた回答を生成することができる。言い換えると、訓練により、ニュース記事の内容がモデルによる回答の生成に影響を与えるようになる。
【0018】
ステップS1において、情報提供装置10は、継続的にデータソースを取得する。このため、情報提供装置10が取得したデータソースの量は、時間の経過に従って増加していく。
【0019】
情報提供装置10は、訓練に使用するデータソースが互いに異なる2つのモデルを有する。2つのモデルは、標準モデル及び先進モデルである。
【0020】
情報提供装置10は、過去のデータソースを基に標準モデルを訓練する(ステップS2)。また、情報提供装置10は、現在のデータソースを基に先進モデルを訓練する(ステップS3)。
【0021】
ここで、過去のデータソースは、モデルの訓練が行われるタイミングの一定期間だけ過去の時点までに取得されたデータソースである。例えば、一定期間を2年間とすると、「2023/6/22 16:05」に訓練が行われる場合、過去のデータソースは、データソースの取得開始時点から、「2021/6/22 16:05」までに取得されたデータソースである。
【0022】
一方、現在のデータソースは、モデルの訓練が行われるタイミングまでに取得されたデータソースである。例えば、「2023/6/22 16:05」に訓練が行われる場合、現在のデータソースは、データソースの取得開始時点から、「2023/6/22 16:05」までに取得されたデータソースである。
【0023】
モデルの訓練が行われるタイミングは、1秒ごとであってもよいし、さらに短い時間ごと(例えば、1ナノ秒ごと)であってもよい。
【0024】
ここで、情報提供装置10は、ユーザからの問い合わせを受け付ける(ステップS4)。そして、情報提供装置10は、ユーザのプランに応じたモデルを用いて問い合わせに対する回答を生成する(ステップS5)。
【0025】
なお、ユーザからの問い合わせは、端末30を介して情報提供装置10に送信される。また、情報提供装置10は、回答を端末30に送信する。端末30は、例えばパーソナルコンピュータ及びスマートフォン等である。また、端末30は、インターネットにより情報提供装置10と接続されているものとする。
【0026】
情報提供装置10は、サービスとして回答を提供する。サービスには、上位のプレミアムプランと下位のフリーミアムプランがあるものとする。プレミアムプランは、ある期間(例えば、年間又は月間)ごとに一定の料金がかかるサブスクリプション、又は利用料に応じて料金が決まる従量制のプランである。また、フリーミアムプランは、無料のプランである。フリーミアムプランは、プレミアムプランより料金が少額のプラン(例えば、ベーシックプラン)に置き換えられてもよい。
【0027】
情報提供装置10は、使用するモデルの訓練に用いられるデータの違いによって、プランごとのサービス品質の差別化を実現する。すなわち、ユーザがプレミアムプランに加入している場合、情報提供装置10は、先進モデルを使って回答を生成する。一方、ユーザがフリーミアムプランに加入している場合、情報提供装置10は、標準モデルを使って回答を生成する。
【0028】
情報提供装置10は、生成した回答をユーザに提供する(ステップS6)。情報提供装置10は、チャット形式のUIを介してプロンプトの受け付け及び回答の提供を行ってもよい。
【0029】
ここで、情報提供装置10は、ユーザがプレミアムプランに加入している場合、最新のデータソースを基に先進モデルを更新し、さらに回答を生成する(ステップS7)。ステップS7で更新されたモデルをリアルタイムモデルと呼ぶ。情報提供装置10は、リアルタイムモデルを使って生成した追加の回答を提供する(ステップS8)。
【0030】
情報提供装置10は、回答を生成し、生成した回答を提供するまでの期間(ステップS5~ステップS6)にも、データソースを継続的に取得する。情報提供装置10は、リアルタイムモデルを用いることで、この期間に発生した差分を反映させた回答を生成することができる。
【0031】
図2を用いて、情報提供装置10の構成を説明する。
図2は、実施形態に係る情報提供装置の構成例を示す機能ブロック図である。
【0032】
図2に示すように、情報提供装置10は、通信部11と、記憶部12と、制御部13と、を備える。
【0033】
通信部11は、ネットワークを介して、データソース提供元の各サーバ又は端末30との間で情報の送受信を行う。
【0034】
記憶部12は、例えばRAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又はHDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置によって実現される。記憶部12には、各種プログラム及び各種データ等が記憶される。記憶部12は、ユーザ情報121、標準モデル情報122、先進モデル情報123、及びリアルタイムモデル情報124を有する。
【0035】
ユーザ情報121は、ユーザごとの加入しているプランの情報である。例えば、ユーザ情報121は、ユーザのIDとプレミアムプラン又はフリーミアムプランを対応付けた情報である。
【0036】
標準モデル情報122、先進モデル情報123、及びリアルタイムモデル情報124は、それぞれ標準モデル、先進モデル及びリアルタイムモデルを構築するためのパラメータ等の情報である。モデルを構築するためのパラメータは、例えばニューラルネットワークの重み及びバイアス等である。モデルの訓練においては、これらのパラメータが更新される。
【0037】
制御部13は、コントローラであり、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM、入出力ポート等を有するマイクロコンピュータや各種の回路を含む。また、制御部13は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路等のハードウェアで構成されてもよい。制御部13は、取得部131、更新部132、判定部133、生成部134及び提供部135を有する。
【0038】
取得部131は、データソース提供元からデータソースを取得する。取得部131は、取得したデータソースを記憶部12に蓄積する。また、取得部131は、他の処理部の動作に非同期で継続的にデータソースを取得する。すなわち、取得部131は、モデルの訓練、回答の生成及び提供といった処理に非同期でデータソースを取得し続ける。
【0039】
取得部131によって記憶部12に蓄積されるデータ量は、
図3に示すように時間の経過に従って変化する。
図3は、データ量の変化を説明する図である。
【0040】
図3の横軸は時間(時刻)である。また、
図3の縦軸はデータ量である。現在の時間t
2におけるデータ量はv
2である。また、時間t
2より期間Tだけ過去の時間t
1におけるデータ量はv
1である。また、v
1はv
2より小さい。
【0041】
また、時間t2に先進モデルの訓練が行われ、訓練済みの先進モデルを使って回答が生成された時間をt2+Δtとする。取得部131はデータを取得し続けるため、Δtの期間にデータ量がΔvだけ増加する。
【0042】
更新部132は、訓練によりモデルのパラメータを更新する。更新部132は、訓練のタイミングごとに、モデルを生成し直してもよいし、前回の訓練との差分のデータソースをモデルに反映させるようにしてもよい。
【0043】
判定部133は、ユーザ情報121を参照し、ユーザのプランを判定する。判定部133は、ユーザがプレミアムプランに加入しているかフリーミアムプランに加入しているかを判定する。
【0044】
生成部134は、モデルにプロンプトを入力し、回答を生成する。生成部134は、ユーザによって入力されたプロンプトに対する回答を、訓練に用いられたデータソースの量が互いに異なる複数の言語モデルのいずれかを用いて生成する。例えば、生成部134は、標準モデル及び先進モデルのいずれかを用いて回答を生成する。
【0045】
提供部135は、生成部134によって生成された回答を、回答の生成に用いられた言語モデルの訓練に用いられたデータソースの提供元を示す情報とともにユーザに提供する。例えば、提供部135は、端末30に情報提供画面を表示させる。
図4、
図5及び
図6は、情報提供画面の一例を示す図である。
【0046】
図4に、ユーザがフリーミアムモデルに加入している場合の情報提供画面500を示す。
図4に示すように、提供部135は、情報提供画面500の領域501に、データソース提供元を示す。
図4には、データソース提供元が「A経済新聞」、「Bジャーナル」、「Cニュース」、「Dスポーツ速報」であることが示されている。
【0047】
領域501には、データソース提供元の企業の名称が表示されてもよいし、企業が提供するコンテンツ(ニュース番組、新聞、書籍、Webサイト又はサービス等)の名称が表示されてもよい。データソース提供元の企業の名称は、回答の生成に用いられた言語モデルの訓練に用いられたデータソースの提供元を示す情報の一例である。
【0048】
このように、データソースの提供元をユーザに示すことで、ユーザは、提供される情報の信頼度を把握することができる。例えば、ユーザが強く信頼している企業がデータソースの提供元に含まれている場合、ユーザは回答の信頼度が高いものであると考えることができる。
【0049】
提供部135は、ユーザによって入力されるプロンプトと情報提供装置10によって提供される回答を、チャットUIにより表示する。領域502には、ユーザのプラン及びチャットUIが表示される。なお、領域503は、ユーザがプロンプトを入力するための領域である。
【0050】
図4には、ユーザのプランが「フリーミアム」であることが示されている。また、
図4には、ユーザによって入力されたプロンプトが「電気自動車ってどうなの?」であることが示されている。また、
図4には、情報提供装置10によって提供された回答が「EUでは2035年までに100%電気自動車に移行する目標が掲げられています。」であることが示されている。
【0051】
図5に、ユーザがプレミアムモデルに加入している場合の情報提供画面500を示す。
図5には、ユーザのプランが「プレミアム」であることが示されている。また、
図5には、ユーザによって入力されたプロンプトが「電気自動車ってどうなの?」であることが示されている。また、
図5には、情報提供装置10によって提供された回答が「EUでは2035年までに100%電気自動車に移行する目標が掲げられていますが、最近ではその目標が見直される動きもあります。」であることが示されている。
【0052】
このように、フリーミアムプラン(
図4)とプレミアムプラン(
図5)では、プロンプトが同じであっても、回答が異なる。このように、生成部134は、ユーザに対応付けられた料金のプランが、プレミアムプランである場合、先進モデルを用いて回答を生成し、ユーザに対応付けられた料金のプランが、プレミアムプランよりも少額なフリーミアムプランである場合、先進モデルよりも少ないデータソースが訓練に用いられた標準モデルを用いて回答を生成する。
【0053】
さらに具体的には、生成部134は、ユーザに対応付けられた料金のプランが、プレミアムプランである場合、第1の時間(例えば、
図3のt
2)までに取得されたデータソースが訓練に用いられた先進モデルを用いて回答を生成し、ユーザに対応付けられた料金のプランが、フリーミアムプランである場合、第1の時間よりも一定期間(例えば、
図3のT)だけ過去の第2の時間(例えば、
図3のt
1)までに取得されたデータソースが訓練に用いられた標準モデルを用いて回答を生成する。
【0054】
さらに、
図6を用いて、リアルタイムモデルによって生成される追加の回答について説明する。
図6には、ユーザのプランが「プレミアム」であることが示されている。また、
図6には、ユーザによって入力されたプロンプトが「プロ野球のチームXの試合はどうなってる?」であることが示されている。また、
図6には、回答が「現在の状況です。[5回表]チームX 1-2 チームY」であることが示されている。
【0055】
上記の回答は「16:05:33」にされたものである。その後、「16:05:35」に、情報提供装置10は、追加の回答「ホームランでチームXが逆転しました![5回表]チームX 3-2 チームY」を提供している。これは、「16:05:33」から「16:05:35」の間の2秒間で、情報提供装置10がリアルタイムモデルを更新し、回答を生成したことを示している。
【0056】
また、
図6には、「16:05:33」から「16:05:35」の間に、取得部131が、プロ野球の試合において、チームXがホームランでチームYに逆転したことを示すデータソースを取得したことが示唆されている。
【0057】
このように、更新部132は、生成部134が言語モデル(先進モデル)を用いて第1の回答の生成を開始してから、生成部134によって生成された第1の回答が示されるまでの間に取得されたデータソースを用いて、言語モデルを訓練し更新する。生成部134は、更新部によって更新された言語モデル(リアルタイムモデル)を用いてプロンプトに対する第2の回答を生成する。提供部135は、第2の回答をユーザに提供する。
【0058】
これにより、リアルタイムなモデルのチューニングが可能になり、ユーザにより高精度な情報を提供することが可能になる。
【0059】
さらに、更新部132は、プロンプトの内容に合わせて訓練に用いるデータソースを取捨選択してもよい。例えば、更新部132は、プロンプトから導かれる分野(スポーツ、政治、経済、天気等)に応じたデータソースを選択する。
図6の例では、更新部132は、野球に関するデータソースを用いて、先進モデルを更新し、リアルタイムモデルを得る。
【0060】
図7を用いて、事前訓練処理の流れを説明する。
図7は、事前訓練処理の流れを説明するフローチャートである。
【0061】
図7に示すように、情報提供装置10は、継続的にデータソースを取得する(ステップS101)。次に、情報提供装置10は、モデル生成タイミングであるか否かを判定する(ステップS102)。
【0062】
情報提供装置10は、モデル生成タイミングでない場合(ステップS102、No)、ステップS101に戻り、引き続きデータソースを取得する。一方、情報提供装置10は、モデル生成タイミングである場合(ステップS102、Yes)、ステップS103に進む。
【0063】
情報提供装置10は、一定期間だけ過去のデータソースを用いて標準モデルを訓練する(ステップS103)。また、情報提供装置10は、現在までのデータソースを用いて先進モデルを訓練する(ステップS104)。例えば、情報提供装置10は、現在までのデータソースを用いて先進モデルを訓練し、2年前までのデータソースを用いて標準モデルを訓練する。
【0064】
図8を用いて、情報提供処理の流れを説明する。
図8は、情報提供処理の流れを説明するフローチャートである。情報提供装置10は、事前訓練処理と情報提供処理を並列で実行することができる。
【0065】
図8に示すように、情報提供装置10は、継続的にデータソースを取得する(ステップS201)。情報提供装置10は、ユーザからの問い合わせがあるか否かを判定する(ステップS202)。
【0066】
情報提供装置10は、ユーザからの問い合わせがなかった場合(ステップS202、No)、ステップS201に戻り、引き続きデータソースを取得する。一方、情報提供装置10は、ユーザからの問い合わせがあった場合(ステップS202、Yes)、ユーザのプランを判定する(ステップS203)。
【0067】
情報提供装置10は、ユーザのプランがフリーミアムプランである場合(ステップS203、フリーミアム)、ステップS204に進む。一方、情報提供装置10は、ユーザのプランがプレミアムプランである場合(ステップS203、プレミアム)、ステップS206に進む。
【0068】
ステップS204では、情報提供装置10は、標準モデルに問い合わせ内容を入力し、回答を生成する。そして、情報提供装置10は、生成した回答をユーザに提供する(ステップS205)。
【0069】
ステップS206では、情報提供装置10は、先進モデルに問い合わせ内容を入力し、回答を生成する。そして、情報提供装置10は、生成した回答をユーザに提供する(ステップS207)。
【0070】
さらに、情報提供装置10は、最新のデータソースを用いて先進モデルを更新する(ステップS208)。情報提供装置10は、更新した先進モデル(リアルタイムモデル)に問い合わせ内容を入力し、回答を生成する(ステップS209)。情報提供装置10は、生成した回答をユーザに提供する(ステップS210)。
【0071】
本実施形態によれば、一般的に優良企業として認識されている企業とパートナーを組み、そのような企業をデータソースの提供元とすることで、言語モデルを用いて回答を提供するサービスの信頼性を高めることができる。
【0072】
さらに、本実施形態によれば、個人の無料会員向けにフリーミアムプランによる一般的な回答を提供し、個人の有料会員、企業、政府等の公的機関向けにプレミアムプランによる高精度の回答を提供することができる。
【0073】
図9は、情報提供装置として機能するコンピュータハードウェア構成の一例を概略的に示す図である。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又は全てに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。
【0074】
本実施形態によるコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブは、DVD-ROMドライブ及びDVD-RAMドライブ等であってよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってよい。コンピュータ1200はまた、ROM1230及びキーボードのような入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。
【0075】
CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
【0076】
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブは、プログラム又はデータをDVD-ROM等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
【0077】
ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してよい。
【0078】
プログラムは、DVD-ROM又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
【0079】
例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD-ROM、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【0080】
また、CPU1212は、記憶装置1224、DVDドライブ(DVD-ROM)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【0081】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それによりあらかじめ定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
【0082】
上記したプログラム又はソフトウエアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
【0083】
本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表してよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。
【0084】
コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。
【0085】
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk(登録商標)、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでもよい。
【0086】
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
【0087】
以上、実施形態を用いて本発明を説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0088】
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0089】
10 情報提供装置
11 通信部
12 記憶部
13 制御部
121 ユーザ情報
122 標準モデル情報
123 先進モデル情報
124 リアルタイムモデル情報
131 取得部
132 更新部
133 判定部
134 生成部
135 提供部
500 情報提供画面
501、502、503 領域