(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162162
(43)【公開日】2024-11-21
(54)【発明の名称】プログラム、情報処理装置、製造方法、情報処理方法
(51)【国際特許分類】
G06F 16/90 20190101AFI20241114BHJP
【FI】
G06F16/90 100
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2023077455
(22)【出願日】2023-05-09
【新規性喪失の例外の表示】新規性喪失の例外適用申請有り
(71)【出願人】
【識別番号】505392916
【氏名又は名称】弁護士ドットコム株式会社
(74)【代理人】
【識別番号】110002815
【氏名又は名称】IPTech弁理士法人
(72)【発明者】
【氏名】仮屋崎 崇
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA01
(57)【要約】
【課題】ユーザから受け付けた法律に関する質問に対してより品質の高い回答内容を得ることができていないという課題がある。
【解決手段】プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、ユーザから質問を受け付ける質問受付ステップと、質問受付ステップにおいて受け付けた質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップと、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップと、を実行するプログラム。
【選択図】
図10
【特許請求の範囲】
【請求項1】
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、
前記プロセッサが、
ユーザから質問を受け付ける質問受付ステップと、
前記質問受付ステップにおいて受け付けた前記質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップと、
前記質問受付ステップにおいて受け付けた前記質問と、前記特定ステップにおいて特定した前記所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップと、
を実行するプログラム。
【請求項2】
前記特定ステップは、前記質問受付ステップにおいて受け付けた前記質問に基づき、前記複数の相談回答データの質問を検索することにより、前記所定の相談回答データを特定するステップである、
請求項1記載のプログラム。
【請求項3】
前記生成ステップは、前記質問受付ステップにおいて受け付けた前記質問と、前記特定ステップにおいて特定した前記所定の相談回答データとの関連度が所定値以下である場合には前記プロンプトを生成しない、
請求項1記載のプログラム。
【請求項4】
前記特定ステップは、前記複数の相談回答データに含まれる1または複数の回答のうち、質問に対して適した回答であることを示す情報に基づき、前記所定の相談回答データから1または複数の回答を除外するステップを含む、
請求項2記載のプログラム。
【請求項5】
前記特定ステップは、前記複数の相談回答データに含まれる1または複数の回答のうち、回答に対して関連付けられて記憶された評価情報に基づき、前記所定の相談回答データから1または複数の回答を除外するステップを含む、
請求項2記載のプログラム。
【請求項6】
前記評価情報は、所定の専門家により付与されたリアクションに基づく情報である、
請求項5記載のプログラム。
【請求項7】
前記特定ステップは、前記複数の相談回答データに含まれる1または複数の回答のうち、回答を行った回答者に基づき、前記所定の相談回答データから1または複数の回答を除外するステップを含む、
請求項2記載のプログラム。
【請求項8】
前記生成ステップは、前記特定ステップにおいて検索された質問と、当該質問に対する回答とからなる前記所定の相談回答データを含む前記プロンプトを生成するステップである、
請求項2記載のプログラム。
【請求項9】
前記質問受付ステップは、前記ユーザから複数の質問を受け付けるステップであり、
前記特定ステップは、前記質問受付ステップにおいて受け付けた前記複数の質問を結合させた質問に基づき、前記所定の相談回答データを特定するステップである、
請求項1記載のプログラム。
【請求項10】
前記プロセッサが、
前記生成ステップにおいて生成した前記プロンプトをLLM(大規模言語モデル)へ出力する出力ステップと、
前記出力ステップにおいて出力したプロンプトに対する、前記LLMからの回答内容を受信する受信ステップと、
前記受信ステップにおいて受信した前記回答内容を提示する提示ステップと、
を実行する、
請求項1から9のいずれか記載のプログラム。
【請求項11】
前記プロセッサが、
前記質問受付ステップにおいて受け付けた前記質問と、前記受信ステップにおいて受信した前記回答内容と、に基づき、専門家へ相談する際の法律相談カードを作成するカード作成ステップと、
を実行する、
請求項10記載のプログラム。
【請求項12】
前記カード作成ステップは、前記質問受付ステップにおいて受け付けた前記質問と、前記受信ステップにおいて受信した前記回答内容と、をLLMへ出力することに応じて得られる文章に基づき作成するステップである、
請求項11記載のプログラム。
【請求項13】
前記プロセッサが、
前記カード作成ステップにおいて作成した前記法律相談カードに基づき、複数の専門家に対して当該相談に対して対応可能か否かの問い合わせを行う問合ステップと、
を実行する、
請求項11記載のプログラム。
【請求項14】
前記提示ステップは、前記回答内容と、前記特定ステップにおいて特定した前記所定の相談回答データの少なくとも一部と関連付けて提示するステップである、
請求項10記載のプログラム。
【請求項15】
前記提示ステップは、前記所定の相談回答データを参照するためのリンクを提示しないステップである、
請求項14記載のプログラム。
【請求項16】
前記提示ステップは、前記所定の相談回答データを参照するためのリンクを、前記所定の相談回答データの少なくとも一部と関連付けて提示するステップである、
請求項14記載のプログラム。
【請求項17】
前記提示ステップは、前記所定の相談回答データの少なくとも一部と、前記所定の相談回答データに含まれる回答を行った専門家に関する情報とを関連付けて提示するステップを含む、
請求項14記載のプログラム。
【請求項18】
プロセッサと、記憶部とを備える情報処理装置であって、
前記プロセッサが、
ユーザから質問を受け付ける質問受付ステップと、
前記質問受付ステップにおいて受け付けた前記質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップと、
前記質問受付ステップにおいて受け付けた前記質問と、前記特定ステップにおいて特定した前記所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップと、
を実行する情報処理装置。
【請求項19】
プロセッサと、記憶部とを備える情報処理装置を含む情報処理システムの製造方法であって、
前記情報処理装置に、請求項1から17のいずれか記載のプログラムを提供することを含む、
情報処理システムの製造方法。
【請求項20】
プロセッサと、記憶部とを備えるコンピュータにより実行される情報処理方法であって、
前記コンピュータが、
ユーザから質問を受け付ける質問受付ステップと、
前記質問受付ステップにおいて受け付けた前記質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップと、
前記質問受付ステップにおいて受け付けた前記質問と、前記特定ステップにおいて特定した前記所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップと、
を実行する情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、情報処理装置、製造方法、情報処理方法に関する。
【背景技術】
【0002】
法律問題に関する事例をウェブサイト上で提供するウェブサービスが知られている。
特許文献1には、法律に関する検索キーワードを知らなくても所望の条文や裁判例を検索でき、動詞と目的語の組み合わせから容易迅速に検索でき、更に適当な選択肢から順次選択することで所望の結論が得られる法律等検索システムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ユーザから受け付けた法律に関する質問に対してより品質の高い回答内容を得ることができていないという課題がある。
そこで、本開示は、上記課題を解決すべくなされたものであって、その目的は、ユーザから受け付けた法律に関する質問に対してより品質の高い回答内容を得る技術を提供することである。
【課題を解決するための手段】
【0005】
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、ユーザから質問を受け付ける質問受付ステップと、質問受付ステップにおいて受け付けた質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップと、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップと、を実行するプログラム。
【発明の効果】
【0006】
本開示によれば、ユーザから受け付けた法律に関する質問に対してより品質の高い回答内容を得ることができる。
【図面の簡単な説明】
【0007】
【
図1】システム1の機能構成を示すブロック図である。
【
図2】サーバ10の機能構成を示すブロック図である。
【
図3】ユーザ端末20の機能構成を示すブロック図である。
【
図4】ユーザテーブル1012のデータ構造を示す図である。
【
図5】質問テーブル1013のデータ構造を示す図である。
【
図6】回答テーブル1014のデータ構造を示す図である。
【
図7】質問ログテーブル1021のデータ構造を示す図である。
【
図8】回答ログテーブル1022のデータ構造を示す図である。
【
図9】質問回答処理の動作を示すフローチャートである。
【
図11】コンピュータ90の基本的なハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【0008】
以下、本開示の実施形態について図面を参照して説明する。実施形態を説明する全図において、共通の構成要素には同一の符号を付し、繰り返しの説明を省略する。なお、以下の実施形態は、特許請求の範囲に記載された本開示の内容を不当に限定するものではない。また、実施形態に示される構成要素のすべてが、本開示の必須の構成要素であるとは限らない。また、各図は模式図であり、必ずしも厳密に図示されたものではない。
【0009】
<システム1の構成>
本開示におけるシステム1は、法律に関する質問に対する回答を作成する情報処理システムである。
システム1は、ネットワークNを介して接続された、サーバ10、ユーザ端末20、LLMシステム50の情報処理装置を備える。
図1は、システム1の機能構成を示すブロック図である。
図2は、サーバ10の機能構成を示すブロック図である。
図3は、ユーザ端末20の機能構成を示すブロック図である。
【0010】
各情報処理装置は演算装置と記憶装置とを備えたコンピュータにより構成されている。コンピュータの基本ハードウェア構成および、当該ハードウェア構成により実現されるコンピュータの基本機能構成は後述する。サーバ10、ユーザ端末20、LLMシステム50のそれぞれについて、後述するコンピュータの基本ハードウェア構成およびコンピュータの基本機能構成と重複する説明は省略する。
【0011】
<サーバ10の構成>
サーバ10は、法律に関する質問に対する回答を作成する情報処理サービスを提供する情報処理装置である。
サーバ10は、記憶部101、制御部104を備える。
【0012】
<サーバ10の記憶部101の構成>
サーバ10の記憶部101は、アプリケーションプログラム1011、ユーザテーブル1012、質問テーブル1013、回答テーブル1014、質問ログテーブル1021、回答ログテーブル1022を備える。
【0013】
アプリケーションプログラム1011は、サーバ10の制御部104を各機能ユニットとして機能させるためのプログラムである。
アプリケーションプログラム1011は、ウェブブラウザアプリケーションなどのアプリケーションを含む。
【0014】
ユーザテーブル1012は、サービスを利用する会員ユーザ(以下、ユーザ)の情報を記憶し管理するテーブルである。ユーザは、サービスの利用登録を行うことで、当該ユーザの情報がユーザテーブル1012の新しいレコードに記憶される。これにより、ユーザは本開示にかかるサービスを利用できるようになる。
ユーザテーブル1012は、ユーザIDを主キーとして、ユーザID、ユーザ名のカラムを有するテーブルである。
図4は、ユーザテーブル1012のデータ構造を示す図である。
【0015】
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。ユーザ識別情報は、ユーザごとにユニークな値が設定されている項目である。
ユーザ名は、ユーザの氏名を記憶する項目である。ユーザ名は、氏名ではなく、ニックネームなど任意の文字列を設定しても良い。
【0016】
質問テーブル1013は、質問に関する情報(質問情報)を記憶し管理するためのテーブルである。
質問テーブル1013は、質問IDを主キーとして、質問ID、親質問ID、ユーザID、質問データ、日時のカラムを有するテーブルである。
図5は、質問テーブル1013のデータ構造を示す図である。
【0017】
質問IDは、質問を識別するための質問識別情報を記憶する項目である。質問識別情報は、質問情報ごとにユニークな値が設定されている項目である。
親質問IDは、親質問を識別するための質問識別情報を記憶する項目である。
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。なお、ユーザは、本開示にかかる情報処理サービスへ予めユーザ登録している必要はない。その場合、ユーザIDは記憶されてなくても構わないし、ユーザのIPアドレス、Cookie情報等、ユーザを特定するための任意の情報を記憶する構成としても良い。
質問データは、ユーザから受け付けた法律に関する質問文を記憶する項目である。
日時は、質問テーブルに新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
【0018】
回答テーブル1014は、回答に関する情報(回答情報)を記憶し管理するためのテーブルである。
回答テーブル1014は、質問ID、プロンプト、回答データ、日時のカラムを有するテーブルである。
図6は、回答テーブル1014のデータ構造を示す図である。
【0019】
質問IDは、質問を識別するための質問識別情報を記憶する項目である。
プロンプトは、後述するLLMシステム50に対して送信される入力文を記憶する項目である。
回答データは、LLMシステム50に対して送信した入力文に対する回答文を記憶する項目である。
日時は、回答テーブルに新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
【0020】
質問ログテーブル1021は、過去の法律相談に対する質問に関する情報(質問ログ情報)を記憶し管理するためのテーブルである。具体的に、ユーザが過去に法律に関する質問を行うことができるウェブサービスにおいて行った質問内容が質問ログデータとして記憶される。
質問ログテーブル1021は、質問ログIDを主キーとして、質問ログID、ユーザID、質問ログデータ、日時のカラムを有するテーブルである。
図7は、質問ログテーブル1021のデータ構造を示す図である。
【0021】
質問ログIDは、質問ログを識別するための質問ログ識別情報を記憶する項目である。質問ログ識別情報は、質問ログ情報ごとにユニークな値が設定されている項目である。
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。
質問ログデータは、ユーザにより行われた質問内容を記憶する項目である。具体的に、質問ログデータには、法律に関する質問内容のテキストデータ、画像データ、その他添付ファイル等が記憶される。
日時は、質問ログテーブルに新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
【0022】
回答ログテーブル1022は、過去の法律相談に対する回答に関する情報(回答ログ情報)を記憶し管理するためのテーブルである。具体的に、質問ログテーブル1021に記憶されている質問ログデータに対して、専門家が行った回答内容が回答ログデータとして記憶される。
回答ログテーブル1022は、質問ログID、ユーザID、回答ログデータ、評価ログデータ、日時のカラムを有するテーブルである。
図8は、回答ログテーブル1022のデータ構造を示す図である。
【0023】
質問ログIDは、質問ログを識別するための質問ログ識別情報を記憶する項目である。
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。
回答ログデータは、専門家による回答内容を記憶する項目である。具体的に、回答ログデータには、法律に関する質問内容に対する専門家の回答内容のテキストデータ、画像データ、その他添付ファイル等が記憶される。
評価ログデータは、回答内容に対する評価を記憶する項目である。
質問者は複数の専門家が行った複数の回答内容(回答ログデータ)のうち、最も質問に適した回答を「ベストアンサー」として選定することができる。評価ログデータは、回答ログデータがベストアンサーであるか否かを示す情報を含む。
専門家は、他の専門家が行った回答内容(回答ログデータ)に対して、いいね、やレーティング等の評価(リアクション)を行うことができる。評価ログデータは、回答ログデータに対して、どの専門家が、どのようなリアクションを行ったのかを示す情報を含む。なお、リアクションは、専門家のみにより行われる必要はなく、質問者および質問者以外の一般のユーザが行ったリアクションを記憶する構成としても良い。
日時は、回答ログテーブルに新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
【0024】
<サーバ10の制御部104の構成>
サーバ10の制御部104は、ユーザ登録制御部1041、質問回答部1042を備える。制御部104は、記憶部101に記憶されたアプリケーションプログラム1011を実行することにより、各機能ユニットが実現される。
【0025】
ユーザ登録制御部1041は、本開示に係るサービスの利用を希望するユーザの情報をユーザテーブル1012に記憶する処理を行う。
ユーザテーブル1012に記憶される情報は、ユーザが任意の情報処理端末からサービス提供者が運営するウェブページなどを開き、所定の入力フォームに情報を入力しサーバ10へ送信する。ユーザ登録制御部1041は、受信した情報をユーザテーブル1012の新しいレコードに記憶し、ユーザ登録が完了する。これにより、ユーザテーブル1012に記憶されたユーザはサービスを利用することができるようになる。
ユーザ登録制御部1041によるユーザ情報のユーザテーブル1012への登録に先立ち、サービス提供者は所定の審査を行いユーザによるサービス利用可否を制限しても良い。
ユーザIDは、ユーザを識別できる任意の文字列または数字で良く、ユーザが希望する任意の文字列または数字、もしくはユーザ登録制御部1041が自動的に任意の文字列または数字を設定しても良い。
【0026】
質問回答部1042は、質問回答処理を実行する。詳細は、後述する。
【0027】
<ユーザ端末20の構成>
ユーザ端末20は、サービスを利用するユーザが操作する情報処理装置である。ユーザ端末20は、例えば、スマートフォン、タブレット等の携帯端末でもよいし、据え置き型のPC(Personal Computer)、ラップトップPCであってもよい。また、HMD(Head Mount Display)、腕時計型端末等のウェアラブル端末であってもよい。
ユーザ端末20は、記憶部201、制御部204、入力装置206、出力装置208を備える。
【0028】
<ユーザ端末20の記憶部201の構成>
ユーザ端末20の記憶部201は、ユーザID2011、アプリケーションプログラム2012を備える。
【0029】
ユーザID2011はユーザのアカウントIDである。ユーザは、ユーザ端末20からユーザID2011を、サーバ10へ送信する。サーバ10は、ユーザID2011に基づきユーザを識別し、本開示にかかるサービスをユーザに対して提供する。なお、ユーザID2011には、ユーザ端末20を利用しているユーザを識別するにあたりサーバ10から一時的に付与されるセッションIDなどの情報を含む。
【0030】
アプリケーションプログラム2012は、記憶部201に予め記憶されていても良いし、通信IFを介してサービス提供者が運営するウェブサーバ等からダウンロードする構成としても良い。
アプリケーションプログラム2012は、ウェブブラウザアプリケーションなどのアプリケーションを含む。
アプリケーションプログラム2012は、ユーザ端末20に記憶されているウェブブラウザアプリケーション上で実行されるJavaScript(登録商標)などのインタープリター型プログラミング言語を含む。
【0031】
<ユーザ端末20の制御部204の構成>
ユーザ端末20の制御部204は、入力制御部2041、出力制御部2042を備える。制御部204は、記憶部201に記憶されたアプリケーションプログラム2012を実行することにより、各機能ユニットが実現される。
【0032】
<ユーザ端末20の入力装置206の構成>
ユーザ端末20の入力装置206は、カメラ2061、マイク2062、位置情報センサ2063、モーションセンサ2064、タッチデバイス2065を備える。
【0033】
<ユーザ端末20の出力装置208の構成>
ユーザ端末20の出力装置208は、ディスプレイ2081、スピーカ2082を備える。
【0034】
<LLMシステム50の構成>
LLMシステム50は、対話応対AIサービスを提供する情報処理装置である。具体的に、LLMシステム50は、LLM(Large Language Model、大規模言語モデル)を内部に有しており、プロンプトと呼ばれる入力文に対して、出力文(回答文)を出力することが可能である。LLMは、ChatGPT、BERTなどが知られている。LLMシステム50は、本開示にかかる情報処理サービス事業者が運営しても良いし、他の事業者が運営する外部のLLMシステム50が提供するAPI(Application Programming Interface)を介して利用しても良い。
【0035】
<システム1の動作>
以下、システム1の各処理について説明する。
図9は、質問回答処理の動作を示すフローチャートである。
図10は、質問回答処理の動作を示す画面例である。
【0036】
<質問回答処理>
質問回答処理は、ユーザから受け付けた質問に対し、人工知能モデルからの回答をユーザに対して提示する処理である。
【0037】
<質問回答処理の概要>
質問回答処理は、ユーザから質問を受け付け、過去の法律相談に対する質問または回答からな複数の相談回答データを検索し、対話応対AIに対する入力文であるプロンプトを生成し、対話応対AIに対してプロンプトを出力し、回答内容を受信し、回答内容を提示し、ユーザからの入力操作に応じて専門家へ相談する際の法律相談カードを作成する一連の処理である。
【0038】
<質問回答処理の詳細>
以下に、質問回答処理の詳細を説明する。
【0039】
<質問受付(第一実施形態)>
ステップS101において、サーバ10の質問回答部1042は、ユーザから質問を受け付ける質問受付ステップを実行する。
具体的に、ユーザは、ユーザ端末20の入力装置206を操作し、ブラウザアプリケーション等を実行し、質問回答処理を実行するためのウェブページ(質問回答ページ)のURL等を入力することにより質問回答ページD1を開く。ユーザ端末20の制御部204は、質問回答ページを開くためのユーザID2011を含むリクエストをサーバ10へ送信する。
【0040】
サーバ10は、リクエストを受信すると質問回答ページを生成しユーザ端末20へ送信する。ユーザ端末20の制御部204は、質問回答ページをユーザ端末20のディスプレイ2081に表示し、提示する。
図10は、質問回答処理における質問回答画面の画面例である。ユーザ端末20のディスプレイ2081には、質問回答ページD1が表示される。質問回答ページD1は、質問入力欄D101、送信ボタンD102、ユーザから入力された質問文D111、D112、質問文に基づき生成されたプロンプトに対する対話応対AIによる回答文D121、関連記事D131、D132、D133、関連記事の専門家を示すアイコンD141、D142、D143、法律相談カードを作成するための作成ボタンD151を含む。
【0041】
ユーザは、ユーザ端末20の入力装置206を操作することにより、質問入力欄D101に質問文を入力する。本開示においては、ユーザは、「離婚慰謝料の相場を教えてください」といった法的な質問に関する質問文を入力する。
ユーザは、ユーザ端末20の入力装置206を操作することにより、送信ボタンD102を押下する。ユーザ端末20の制御部204は、ユーザID2011、質問入力欄D101に入力された文字列(ユーザからの質問文)をサーバ10へ送信する。
【0042】
サーバ10の質問回答部1042は、ユーザからの質問文を受信し、受け付ける。サーバ10の質問回答部1042は、受信したユーザID2011、ユーザからの質問文を、それぞれ、質問テーブル1013のユーザID、質問データの項目に記憶する。質問IDには、記憶された質問情報を特定する質問識別情報が記憶される。
【0043】
<質問受付(第二実施形態)>
ステップS101において、質問受付ステップは、ユーザから複数の質問を受け付けるステップを実行する。
具体的に、本開示における質問回答ページD1の質問入力欄D101は、ユーザから複数の質問文を受け付け可能に構成されている。例えば、ユーザは、ユーザ端末20の入力装置206を操作することにより、質問文D111を質問入力欄D101に入力し送信する。その後、質問回答処理のステップS107においてユーザ端末20の制御部204は、回答文D121をユーザに対して提示する。ユーザは、ユーザ端末20の入力装置206を操作することにより、質問文D112を質問入力欄D101に入力し送信することができる。
ユーザ端末20の制御部204は、ユーザID2011、ユーザからの質問文、質問文D111に関連付けられた質問識別情報を、それぞれ、質問テーブル1013のユーザID、質問データ、親質問IDの項目に記憶する。これにより、質問文D111と、それに続いて質問された質問文D112、D113・・・とが関連付けて記憶される。
これにより、
図10における質問回答ページD1のように、ユーザから入力された質問文D111、D112、質問文に基づき生成されたプロンプトに対する対話応対AIによる回答文D121が、ユーザ端末20のディスプレイ2081に表示される。
【0044】
<質問ログ検索(第一実施形態)>
ステップS102において、サーバ10の質問回答部1042は、質問受付ステップにおいて受け付けた質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップを実行する。
具体的に、サーバ10の質問回答部1042は、ステップS101において受け付けたユーザからの質問文に基づき、質問ログテーブル1021の質問ログデータの項目を検索し、質問ログID、質問ログデータ、日時の項目を含む複数の質問ログ情報を取得する。
また、サーバ10の質問回答部1042は、ステップS101において受け付けたユーザからの質問文に基づき、回答ログテーブル1022の回答ログデータの項目を検索し、質問ID、回答ログデータ、評価ログデータ、日時の項目を含む複数の回答ログ情報を取得しても良い。
【0045】
検索は、質問文に基づき質問ログデータまたは回答ログデータの全文検索を行う手法を一例として説明する。全文検索は、質問文を形態素解析することにより得られる単語と、質問ログデータまたは回答ログデータに含まれる文章を形態素解析することにより得られる単語との一致度に基づき検索される。検索アルゴリズムは、TF-IDF、LexRank、質問文と質問ログデータまたは回答ログデータとのコサイン類似度等を算定する手法がある。検索手法は任意の手法を用いることができる。
検索により、得られた複数の質問ログ情報および回答ログ情報は、質問文との類似度等に基づき算定される類似度、関連度(以下、類似度)といった数値指標と関連付けられる。
サーバ10の質問回答部1042は、類似度順に所定数(例えば5つ)、または、類似度が所定値以上の複数の質問ログ情報、回答ログ情報を検索結果として取得し、特定する。
【0046】
なお、ユーザからの質問文に対して、検索により得られた質問ログ情報、回答ログ情報との類似度が所定値以下の場合(ユーザからの質問文に関連する質問ログ情報、回答ログ情報が見つからなかった場合)には、検索結果が得られなかったものとしてステップS103へ進まずに処理を終了しても良い。
この場合、ユーザに対して、「お問い合わせの質問内容については十分にお答えすることができません。」といったメッセージを通知しても良い。
これにより、質問文に基づき検索された相談回答データの内容が質問文と関連性が低い場合において、生成されたプロンプトに基づき不適切な回答が生成されてしまうことを避けることができる。
【0047】
ステップS102において、特定ステップは、質問受付ステップにおいて受け付けた質問に基づき、複数の相談回答データの質問を検索することにより、所定の相談回答データを特定するステップを実行する。
具体的に、サーバ10の質問回答部1042は、ステップS101において受け付けたユーザからの質問文に基づき、回答ログテーブル1022に記憶された回答ログデータではなく、質問ログテーブル1021の質問ログデータを検索することが好適である。
ユーザからの質問文により関連性が高いのは、回答ログ情報ではなく質問ログ情報だからである。これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0048】
<質問ログ検索(第二実施形態)>
ステップS102において、特定ステップは、質問受付ステップにおいて受け付けた複数の質問を結合させた質問に基づき、所定の相談回答データを特定するステップを実行する。
具体的に、ステップS101において質問受付(第二実施形態)のように、複数の質問を受け付けた場合を説明する。サーバ10の質問回答部1042は、受信した親質問IDに基づき、質問テーブル1013の質問IDの項目および親質問IDの項目を検索し、過去に行われた質問データを含む質問情報を取得する。
サーバ10の質問回答部1042は、取得した質問データを、日時の順番にソートしそれぞれの質問文を結合し、質問文を作成する。
例えば、第一の質問文D111の質問データ(第一質問データ)が「慰謝料の相場を教えてください。」とする。第二の質問文D112の質問データ(第二質問データ)が「配偶者の不倫の有無 夫は不倫しています。不倫相手との関係や扱い方 週に3日程度会っているようです。」とする。この場合、サーバ10の質問回答部1042は、第一質問データと、第二質問データとを結合し、「慰謝料の相場を教えてください。配偶者の不倫の有無 夫は不倫しています。不倫相手との関係や扱い方 週に3日程度会っているようです。」という質問文を生成する。
サーバ10の質問回答部1042は、生成した質問文に基づき、質問ログ検索(第一実施形態)と同様に質問ログテーブル1021、回答ログテーブル1022を検索する。これにより、複数の質問を結合させた質問に基づき、より品質の高い回答内容を得ることができる。
【0049】
なお、質問ログ検索(第一実施形態)、質問ログ検索(第二実施形態)においては、質問ログ情報、回答ログ情報の日時の項目に基づき、直近所定期間内(2年以内)の質問ログ情報、回答ログ情報のみを対象に検索を行う構成としても良い。例えば、法改正等の影響により、古い質問ログ情報、回答ログ情報は、ユーザによる質問時点において参考にならない情報である場合が考えられるためである。なるべく、新しい質問ログ情報、回答ログ情報を検索することが好適である。
【0050】
<回答ログ特定>
ステップS103において、サーバ10の質問回答部1042は、ステップS102において検索した質問ログ情報に関連付けられた回答ログ情報を特定する。具体的に、サーバ10の質問回答部1042は、ステップS102において検索した質問ログ情報に含まれる質問ログIDに基づき、回答ログテーブル1022の質問ログIDの項目を検索し、回答ログデータ、ユーザID、評価ログデータ、日時を含む複数の回答ログ情報を取得する。
なお、通常、質問ログ情報、回答ログ情報においては、1つの質問ログ情報に対して複数の回答ログ情報が関連付けられていることが一般的である。例えば、ユーザからの1の質問(質問ログ)に対して、複数の専門家から複数の回答(回答ログ)がなされる。
サーバ10の質問回答部1042は、ステップS102において検索した質問ログに関連付けられたすべての回答ログ情報を特定しても良いし、一部の回答ログ情報を特定しても良い。以下、一部の回答ログ情報の特定手法として複数の実施形態を説明する。
【0051】
<回答ログ特定(第一実施形態)>
ステップS103において、特定ステップは、複数の相談回答データに含まれる1または複数の回答のうち、質問に対して適した回答であることを示す情報に基づき、所定の相談回答データから1または複数の回答を除外するステップを含む。
具体的に、サーバ10の質問回答部1042は、ステップS102において検索した質問ログに関連付けられたすべての回答ログ情報に含まれる評価ログデータを参照し、質問者により最も質問に適した回答として選定された「ベストアンサー」であることを示す情報が記憶された一部の回答ログ情報を特定し、他の回答ログ情報を除外して回答ログ情報を特定する。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データのうち、品質が低い回答を除外することにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
なお、サーバ10の質問回答部1042は、「ベストアンサー」ではないすべての回答ログ情報を除外する必要は必ずしもなく、少なくとも1の回答ログ情報を除外する構成としても良い。例えば、他の回答ログ特定の実施形態と組み合わせて適用しても良い。
【0052】
<回答ログ特定(第二実施形態)>
ステップS103において、特定ステップは、複数の相談回答データに含まれる1または複数の回答のうち、回答に対して関連付けられて記憶された評価情報に基づき、所定の相談回答データから1または複数の回答を除外するステップを含む。評価情報は、所定の専門家により付与されたリアクションに基づく情報である。
具体的に、サーバ10の質問回答部1042は、ステップS102において検索した質問ログに関連付けられたすべての回答ログ情報に含まれる評価ログデータを参照し、いいね、やレーティング等の評価(リアクション)が付与された一部の回答ログ情報を特定し、他の回答ログ情報を除外して回答ログ情報を特定する。また、サーバ10の質問回答部1042は、リアクションの回数、リアクションの品質等に基づき、一部の回答ログ情報を特定しても良い。
弁護士等の所定の専門家により付与されたリアクションのみを考慮する構成としても良い。これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データのうち、専門家により付与された精度が高い評価情報に基づき品質が低い回答を除外することにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
なお、サーバ10の質問回答部1042は、リアクションが付与されていないすべての回答ログ情報を除外する必要は必ずしもなく、少なくとも1の回答ログ情報を除外する構成としても良い。例えば、他の回答ログ特定の実施形態と組み合わせて適用しても良い。
【0053】
<回答ログ特定(第三実施形態)>
ステップS103において、特定ステップは、複数の相談回答データに含まれる1または複数の回答のうち、回答を行った回答者に基づき、所定の相談回答データから1または複数の回答を除外するステップを含む。
具体的に、サーバ10の質問回答部1042は、ステップS102において検索した質問ログに関連付けられたすべての回答ログ情報に含まれるユーザIDを参照し、ユーザIDに基づき特定される回答者の情報に基づき一部の回答ログ情報を特定し、他の回答ログ情報を除外して回答ログ情報を特定する。
例えば、回答ログ情報を特定する際に用いることが可能な情報としては、回答者である専門家の経験年数、資格等の登録番号、専門家に対するいいね等のリアクションの数、回答ログテーブル1022に記憶されている回答ログ情報の数(専門家の過去の回答数)、専門家が過去に回答した回答ログ情報にたいするいいね等のリアクションの数、元裁判官、元検事等の職歴に関する情報、専門分野等の情報を用いることができる。
例えば、サーバ10の質問回答部1042は、上記情報に基づき専門家に対する評価指標値を算定し、当該評価指標値に基づき、一部の回答ログ情報を特定し、他の回答ログ情報を除外して回答ログ情報を特定しても良い。評価指標値は、上記情報を入力データとして、任意の機械学習モデル、深層学習モデル、人工知能モデル等を適用することにより出力データとして得られるものとしても良い。
また、ステップS101において受け付けた質問文に基づき特定されるジャンル、カテゴリと、当該専門家の専門分野との関連度に基づき、一部の回答ログ情報を特定し、他の回答ログ情報を除外して回答ログ情報を特定しても良い。例えば、質問文が「離婚」に関する質問である場合において、専門分野が「離婚」の専門家による回答ログ情報を優先し、他の専門分野の専門家による回答ログ情報を除外しても良い。
なお、質問文のジャンル、カテゴリは、質問文を入力データとして、任意の機械学習モデル、深層学習モデル、人工知能モデル等を適用することにより出力データとして得られるものとしても良い。例えば、モデルは、過去の質問ログデータに対する、回答ログデータにかかる回答者の専門分野を教師データとして学習させることにより得ることができる。
【0054】
<プロンプト生成>
ステップS104において、サーバ10の質問回答部1042は、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップを実行する。生成ステップは、特定ステップにおいて検索された質問と、質問に対する回答とからなる所定の相談回答データを含むプロンプトを生成するステップを実行する。
【0055】
具体的に、サーバ10の質問回答部1042は、ステップS101において受け付けた質問文と、ステップS102において検索した質問ログ情報(質問ログデータ)、ステップS103において特定した回答ログ情報(回答ログデータ)とを結合することにより、対話応対AIに対する入力文であるプロンプトを生成する。
例えば、質問文が「離婚慰謝料の相場を教えてください」であり、質問ログデータ、回答ログデータが、それぞれ「Q1、A11、A12」、「Q2、A2」、「Q3、A3、A31」とする。なお、Q1、Q2、Q3は質問ログデータにかかる文字列。A11、A12、A2、A31は、回答ログデータにかかる文字列である。
この場合、サーバ10の質問回答部1042は、以下の通りプロンプトを生成する。
「
以下の参考事例に基づき、質問文に対する回答を作成してください。
#質問文
離婚慰謝料の相場を教えてください
#参考事例
Q:Q1
A:A11、A12
Q:Q2
A:A2
Q:Q3
A:A3、A31
」
【0056】
なお、本開示においてはプロンプトに質問ログ情報および回答ログ情報の両方を含めたが、質問ログ情報または回答ログ情報のいずれか一方のみを含める構成としても構わない。
【0057】
ステップS104において、生成ステップは、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データとの関連度が所定値以下である場合にはプロンプトを生成しない。
具体的に、ステップS102の質問ログ検索において、ユーザからの質問文に対して、ステップS102およびステップS103において得られた質問ログ情報および回答ログ情報の情報が不十分である、または、質問文との関連度が所定値よりも低いと判定した場合には、プロンプトを生成せず、ステップS105には進まない。例えば、ユーザからの質問文と、質問ログデータ、回答ログデータとのコサイン類似度等を関連度としても良い。
これにより、質問文に基づき検索された相談回答データの内容が質問文と関連性が低い場合において、生成されたプロンプトに基づき不適切な回答が生成されてしまうことを避けることができる。
【0058】
ステップS105において、サーバ10の質問回答部1042は、生成ステップにおいて生成したプロンプトをLLM(大規模言語モデル)へ出力する出力ステップを実行する。
具体的に、サーバ10の質問回答部1042は、ステップS104において生成したプロンプトを含むリクエストをLLMシステム50が提供する対話応対AIサービスにかかるAPIエンドポイントへ送信する。
【0059】
ステップS106において、サーバ10の質問回答部1042は、出力ステップにおいて出力したプロンプトに対する、LLMからの回答内容を受信する受信ステップを実行する。
具体的に、LLMシステム50は、受信したリクエストに対するレスポンスをサーバ10へ送信する。レスポンスは、リクエストに含まれるプロンプトに対する回答文にかかる文字列を含む。サーバ10の質問回答部1042は、プロンプトに対する回答を受信し、受け付ける。
【0060】
<回答提示(第一実施形態)>
ステップS107において、サーバ10の質問回答部1042は、受信ステップにおいて受信した回答内容を提示する提示ステップを実行する。
具体的に、サーバ10の質問回答部1042は、受信した回答文をユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した回答文D121を、質問回答ページD1に表示し、ユーザに対して提示する。
【0061】
ステップS107において、提示ステップは、回答内容と、特定ステップにおいて特定した所定の相談回答データの少なくとも一部と関連付けて提示するステップを実行する。
具体的に、サーバ10の質問回答部1042は、ステップS102において特定した質問ログデータに対応する関連記事D131、D132、D133をユーザ端末20へ送信する。ユーザ端末20の制御部204は、関連記事D131、D132、D133を回答文D121に関連付けて、質問回答ページD1に表示し、ユーザに対して提示する。なお、関連記事D131、D132、D133に含まれる文字列は、質問ログデータ、当該質問ログデータに関連付けられた回答ログデータに含まれる文字列の要約、タイトル、その他見出し等の一部であっても良い。
これにより、ユーザは、LLMからの回答内容とともに、出典となる相談回答データを確認することができる。質問に対して、ユーザはより充実した情報を参照することができる。
【0062】
ステップS107において、提示ステップは、所定の相談回答データの少なくとも一部と、所定の相談回答データに含まれる回答を行った専門家に関する情報とを関連付けて提示するステップを含む。
具体的に、サーバ10の質問回答部1042は、ステップS102において特定した質問ログデータごとに、ステップS103において特定した回答ログ情報に含まれるユーザIDに基づきユーザテーブル1012等を参照して特定される回答者の氏名、写真等の情報をユーザ端末20へ送信する。ユーザ端末20の制御部204は、回答者の氏名、写真等の情報に基づき、関連記事の専門家を示すアイコンD141、D142、D143を生成し、それぞれの回答者が回答した質問ログ情報にかかる関連記事D131、D132、D133に関連付けて、質問回答ページD1に表示し、ユーザに対して提示する。
ユーザは、ユーザ端末20の入力装置206を操作することにより、アイコンD141、D142、D143を選択することにより、メッセージフォーム等の入力フォームが表示され、当該入力フォームからそれぞれの専門家へ連絡することができる。
これにより、ユーザは、LLMからの回答内容とともに、リンクを開くことにより回答内容を生成する際の出典となる相談回答の回答を行った専門家の情報を参照することができる。ユーザは、ユーザの質問内容に対して対応可能な専門家を容易に探すことができる。
【0063】
<回答提示(第二実施形態)>
ステップS107において、提示ステップは、所定の相談回答データを参照するためのリンクを、所定の相談回答データの少なくとも一部と関連付けて提示するステップを実行する。
具体的に、サーバ10の質問回答部1042は、関連記事D131、D132、D133に、当該関連記事の出典元となる質問ログデータに関する個別記事ページへのリンクを設定する。ユーザは、ユーザ端末20の入力装置206を操作することにより、関連記事D131、D132、D133を選択することにより、それぞれに関連付けられた質問ログデータに関する個別記事ページを開くことができる。
例えば、個別記事ページには、質問ログ情報に含まれる、ユーザIDに基づきユーザテーブル1012等を参照することにより特定される質問者の情報(ユーザ名、氏名、写真等、メールアドレス等の連絡先)、質問文である質問ログデータ、質問日時の情報が含まれる。個別記事ページには、質問ログ情報に含まれる質問ログIDに基づき、回答ログテーブル1022の質問ログIDを参照することにより特定される質問ログ情報に対する1または複数の回答ログ情報が含まれる。個別記事ページには、回答ログ情報に含まれる、ユーザIDに基づきユーザテーブル1012等を参照することにより特定される回答者の情報(ユーザ名、氏名、写真等、メールアドレス等の連絡先)、回答文である回答ログデータ、ベストアンサー、リアクション等の評価ログデータ、回答日時の情報が含まれる。
これにより、ユーザは、LLMからの回答内容とともに、回答内容を生成する際の出典となる相談回答データを参照することができる。質問に対して、ユーザはより充実した情報を得ることができる。
【0064】
<回答提示(第三実施形態)>
ステップS107において、提示ステップは、所定の相談回答データを参照するためのリンクを提示しないステップを実行する。
なお、サーバ10の質問回答部1042は、関連記事D131、D132、D133に、当該関連記事の出典元となる質問ログデータに関する個別記事ページへのリンクを設定しないものとしても良い。
これにより、ユーザは、LLMからの回答内容とともに、回答内容を生成する際の出典となる相談回答データを参照できないようにすることができる。LLMからの回答内容のみを提示し、出典となる相談回答データの参照を制限することができる。提供するサービスの内容においては、このように出典元のリンクを設定しないことが好適である場合がある。これにより、ユーザに対して提供する情報を制限することができる。
【0065】
<カード作成処理>
ステップS108において、サーバ10の質問回答部1042は、質問受付ステップにおいて受け付けた質問と、受信ステップにおいて受信した回答内容と、に基づき、専門家へ相談する際の法律相談カードを作成するカード作成ステップを実行する。
具体的に、ユーザは、ユーザ端末20の入力装置206を操作することにより、作成ボタンD151を押下する。ユーザ端末20の制御部204は、法律相談カードを作成するためのリクエストをサーバ10へ送信する。サーバ10の質問回答部1042は、リクエストを受信すると、質問文D111、D112、回答文D121に基づき、外部の弁護士等の法律専門家へ相談する際の法律相談にかかる文章(法律相談カード)を作成する。例えば、サーバ10の質問回答部1042は、質問文D111、D112の文字列を結合することにより、法律相談の内容にかかる文字列を作成し、不図示の法律相談カードのテンプレート文書に適用することにより法律相談カードを作成する。サーバ10の質問回答部1042は、作成した法律相談カードをユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した法律相談カードを、ユーザ端末20のディスプレイ2081に表示し、提示する。
なお、ユーザは、ユーザ端末20の入力装置206を操作することにより、アイコンD141、D142、D143を選択することにより、相談先となる専門家の情報(氏名、写真、メールアドレス等の連絡先等)を法律相談カードに含めても良い。
これにより、専門家へ相談する際に必要となる法律相談カードを容易に作成することができる。
【0066】
ステップS108において、サーバ10の質問回答部1042は、カード作成ステップにおいて作成した法律相談カードに基づき、複数の専門家に対して、相談に対応可能か否かの問い合わせを行う問合ステップを実行する。
具体的に、サーバ10の質問回答部1042は、法律相談カードをユーザ端末20へ送信する際に、当該法律相談カードに関連付けられた1または複数の専門家の情報をユーザ端末20へ送信する。例えば、専門家は、関連記事D131、D132、D133に関連付けられた専門家、特に、回答ログ情報において実際に類似した質問へ過去に回答を行った専門家が好適である。
ユーザ端末20の制御部204は、受信した1または複数の専門家を示すアイコンを法律相談カードと併せてユーザに提示する。ユーザは、ユーザ端末20の入力装置206を操作することにより、提示されたアイコンを選択することにより、当該専門家に対して法律相談カードを含む法律相談を行うためのリクエストをサーバ10へ送信する。サーバ10の質問回答部1042は、受信したリクエストに基づき、選択された専門家に対して法律相談カードを含む、当該法律相談に対して対応可能か否かの問い合わせを行う。
これにより、ユーザは、ユーザの質問内容に対して対応可能な専門家を容易に探すことができる。
【0067】
ステップS108において、カード作成ステップは、質問受付ステップにおいて受け付けた質問と、受信ステップにおいて受信した回答内容と、をLLMへ出力することに応じて得られる文章に基づき作成するステップを実行する。
なお、法律相談カードは、質問文D111、D112、回答文D121を、所定のプロンプトとともにLLMシステム50へ送信することにより得られる回答内容に基づき作成しても良い。例えば、サーバ10の質問回答部1042は、以下のようなプロンプトを生成し、LLMシステム50へ送信する。
「
以下の質問文、回答文、参考事例に基づき、法律の専門家に相談するための文書を作成してください。
#質問文1
離婚慰謝料の相場を教えてください
#回答文1
そうですね、具体的な事情や背景によって相場は異なってくるため、以下のような情報が必要になります。
#参考事例
Q:Q1
A:A11、A12
Q:Q2
A:A2
Q:Q3
A:A3、A31
#質問文2
配偶者の不倫の有無 夫は不倫しています。不倫相手との関係や扱い方 週に3日程度会っているようです。
#回答文2
・・・
」
【0068】
サーバ10の質問回答部1042は、LLMシステム50から受信した回答内容(法律相談文書)に基づき、法律相談カードを生成し、ユーザ端末20へ送信することによりユーザに提示する。
【0069】
<コンピュータの基本ハードウェア構成>
図11は、コンピュータ90の基本的なハードウェア構成を示すブロック図である。コンピュータ90は、プロセッサ901、主記憶装置902、補助記憶装置903、通信IF991(インタフェース、Interface)を少なくとも備える。これらは通信バス921により相互に電気的に接続される。
【0070】
プロセッサ901とは、プログラムに記述された命令セットを実行するためのハードウェアである。プロセッサ901は、演算装置、レジスタ、周辺回路等から構成される。
【0071】
主記憶装置902とは、プログラム、及びプログラム等で処理されるデータ等を一時的に記憶するためのものである。例えば、DRAM(Dynamic Random Access Memory)等の揮発性のメモリである。
【0072】
補助記憶装置903とは、データ及びプログラムを保存するための記憶装置である。例えば、フラッシュメモリ、HDD(Hard Disc Drive)、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等である。
【0073】
通信IF991とは、有線又は無線の通信規格を用いて、他のコンピュータとネットワークを介して通信するための信号を入出力するためのインタフェースである。
ネットワークは、インターネット、LAN、無線基地局等によって構築される各種移動通信システム等で構成される。例えば、ネットワークには、3G、4G、5G移動通信システム、LTE(Long Term Evolution)、所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が含まれる。無線で接続する場合、通信プロトコルとして例えば、Z-Wave(登録商標)、ZigBee(登録商標)、Bluetooth(登録商標)等が含まれる。有線で接続する場合は、ネットワークには、USB(Universal Serial Bus)ケーブル等により直接接続するものも含む。
【0074】
なお、各ハードウェア構成の全部または一部を複数のコンピュータ90に分散して設け、ネットワークを介して相互に接続することによりコンピュータ90を仮想的に実現することができる。このように、コンピュータ90は、単一の筐体、ケースに収納されたコンピュータ90だけでなく、仮想化されたコンピュータシステムも含む概念である。
【0075】
<コンピュータ90の基本機能構成>
コンピュータ90の基本ハードウェア構成(
図11)により実現されるコンピュータの機能構成を説明する。コンピュータは、制御部、記憶部、通信部の機能ユニットを少なくとも備える。
【0076】
なお、コンピュータ90が備える機能ユニットは、それぞれの機能ユニットの全部または一部を、ネットワークで相互に接続された複数のコンピュータ90に分散して設けても実現することができる。コンピュータ90は、単一のコンピュータ90だけでなく、仮想化されたコンピュータシステムも含む概念である。
【0077】
制御部は、プロセッサ901が補助記憶装置903に記憶された各種プログラムを読み出して主記憶装置902に展開し、当該プログラムに従って処理を実行することにより実現される。制御部は、プログラムの種類に応じて様々な情報処理を行う機能ユニットを実現することができる。これにより、コンピュータは情報処理を行う情報処理装置として実現される。
【0078】
記憶部は、主記憶装置902、補助記憶装置903により実現される。記憶部は、データ、各種プログラム、各種データベースを記憶する。また、プロセッサ901は、プログラムに従って記憶部に対応する記憶領域を主記憶装置902または補助記憶装置903に確保することができる。また、制御部は、各種プログラムに従ってプロセッサ901に、記憶部に記憶されたデータの追加、更新、削除処理を実行させることができる。
【0079】
データベースは、リレーショナルデータベースを指し、行と列によって構造的に規定された表形式のテーブル、マスタと呼ばれるデータ集合を、互いに関連づけて管理するためのものである。データベースでは、表をテーブル、マスタ、表の列をカラム、表の行をレコードと呼ぶ。リレーショナルデータベースでは、テーブル、マスタ同士の関係を設定し、関連づけることができる。
通常、各テーブル、各マスタにはレコードを一意に特定するための主キーとなるカラムが設定されるが、カラムへの主キーの設定は必須ではない。制御部は、各種プログラムに従ってプロセッサ901に、記憶部に記憶された特定のテーブル、マスタにレコードを追加、削除、更新を実行させることができる。
また、記憶部に、データ、各種プログラム、各種データベースを記憶させることにより、本開示にかかる情報処理装置、情報処理システムが製造されたものとして捉えることができる。
【0080】
なお、本開示におけるデータベース、マスタは、情報が構造的に規定された任意のデータ構造体(リスト、辞書、連想配列、オブジェクトなど)を含み得る。データ構造体には、データと、任意のプログラミング言語により記述された関数、クラス、メソッドなどを組み合わせることにより、データ構造体と見なし得るデータも含むものとする。
【0081】
通信部は、通信IF991により実現される。通信部は、ネットワークを介して他のコンピュータ90と通信を行う機能を実現する。通信部は、他のコンピュータ90から送信された情報を受信し、制御部へ入力することができる。制御部は、各種プログラムに従ってプロセッサ901に、受信した情報に対する情報処理を実行させることができる。また、通信部は、制御部から出力された情報を他のコンピュータ90へ送信することができる。
【0082】
<付記>
以上の各実施形態で説明した事項を以下に付記する。
【0083】
(付記1)
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、ユーザから質問を受け付ける質問受付ステップ(101)と、質問受付ステップにおいて受け付けた質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップ(S102,S103)と、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップ(S104)と、を実行するプログラム。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0084】
(付記2)
特定ステップ(S102)は、質問受付ステップにおいて受け付けた質問に基づき、複数の相談回答データの質問を検索することにより、所定の相談回答データを特定するステップである、付記1記載のプログラム。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0085】
(付記3)
生成ステップ(S104)は、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データとの関連度が所定値以下である場合にはプロンプトを生成しない、付記1記載のプログラム。
これにより、質問文に基づき検索された相談回答データの内容が質問文と関連性が低い場合において、生成されたプロンプトに基づき不適切な回答が生成されてしまうことを避けることができる。
【0086】
(付記4)
特定ステップ(S103)は、複数の相談回答データに含まれる1または複数の回答のうち、質問に対して適した回答であることを示す情報に基づき、所定の相談回答データから1または複数の回答を除外するステップを含む、付記2記載のプログラム。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データのうち、品質が低い回答を除外することにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0087】
(付記5)
特定ステップ(S103)は、複数の相談回答データに含まれる1または複数の回答のうち、回答に対して関連付けられて記憶された評価情報に基づき、所定の相談回答データから1または複数の回答を除外するステップを含む、付記2記載のプログラム。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データのうち、品質が低い回答を除外することにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0088】
(付記6)
評価情報は、所定の専門家により付与されたリアクションに基づく情報である、付記5記載のプログラム。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データのうち、専門家により付与された精度が高い評価情報に基づき品質が低い回答を除外することにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0089】
(付記8)
生成ステップ(S104)は、特定ステップにおいて検索された質問と、当該質問に対する回答とからなる所定の相談回答データを含むプロンプトを生成するステップである、付記2記載のプログラム。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0090】
(付記9)
質問受付ステップ(S101)は、ユーザから複数の質問を受け付けるステップであり、特定ステップ(S102,S103)は、質問受付ステップにおいて受け付けた複数の質問を結合させた質問に基づき、所定の相談回答データを特定するステップである、付記1記載のプログラム。
これにより、複数の質問を結合させた質問に基づき、より品質の高い回答内容を得ることができる。
【0091】
(付記10)
プロセッサが、生成ステップにおいて生成したプロンプトをLLM(大規模言語モデル)へ出力する出力ステップ(S105)と、出力ステップにおいて出力したプロンプトに対する、LLMからの回答内容を受信する受信ステップ(S106)と、受信ステップにおいて受信した回答内容を提示する提示ステップ(S107)と、を実行する、付記1から9のいずれか記載のプログラム。
これにより、LLMを利用することにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0092】
(付記11)
プロセッサが、質問受付ステップにおいて受け付けた質問と、受信ステップにおいて受信した回答内容と、に基づき、専門家へ相談する際の法律相談カードを作成するカード作成ステップ(S108)と、を実行する、付記10記載のプログラム。
これにより、専門家へ相談する際に必要となる法律相談カードを容易に作成することができる。
【0093】
(付記12)
カード作成ステップ(S108)は、質問受付ステップにおいて受け付けた質問と、受信ステップにおいて受信した回答内容と、をLLMへ出力することに応じて得られる文章に基づき作成するステップである、付記11記載のプログラム。
これにより、専門家へ相談する際に必要となる法律相談カードを容易に作成することができる。
【0094】
(付記13)
プロセッサが、カード作成ステップにおいて作成した法律相談カードに基づき、複数の専門家に対して当該相談に対して対応可能か否かの問い合わせを行う問合ステップ(S108)と、を実行する、付記11記載のプログラム。
これにより、ユーザは、ユーザの質問内容に対して対応可能な専門家を容易に探すことができる。
【0095】
(付記14)
提示ステップ(S107)は、回答内容と、特定ステップにおいて特定した所定の相談回答データの少なくとも一部と関連付けて提示するステップである、付記10記載のプログラム。
これにより、ユーザは、LLMからの回答内容とともに、回答内容を生成する際の出典となる相談回答データを参照することができる。質問に対して、ユーザはより充実した情報を得ることができる。
【0096】
(付記15)
提示ステップ(S107)は、所定の相談回答データを参照するためのリンクを提示しないステップである、付記14記載のプログラム。
これにより、ユーザは、LLMからの回答内容とともに、回答内容を生成する際の出典となる相談回答データを参照できないようにすることができる。
【0097】
(付記16)
提示ステップ(S107)は、所定の相談回答データを参照するためのリンクを、所定の相談回答データの少なくとも一部と関連付けて提示するステップである、付記14記載のプログラム。
これにより、ユーザは、LLMからの回答内容とともに、リンクを開くことにより回答内容を生成する際の出典となる相談回答のページを参照することができる。質問に対して、ユーザはより充実した情報を参照することができる。
【0098】
(付記17)
提示ステップ(S107)は、所定の相談回答データの少なくとも一部と、所定の相談回答データに含まれる回答を行った専門家に関する情報とを関連付けて提示するステップを含む、付記14記載のプログラム。
これにより、ユーザは、LLMからの回答内容とともに、リンクを開くことにより回答内容を生成する際の出典となる相談回答の回答を行った専門家の情報を参照することができる。ユーザは、ユーザの質問内容に対して対応可能な専門家を容易に探すことができる。
【0099】
(付記18)
プロセッサと、記憶部とを備える情報処理装置であって、プロセッサが、ユーザから質問を受け付ける質問受付ステップ(101)と、質問受付ステップにおいて受け付けた質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップ(S102,S103)と、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップ(S104)と、を実行する情報処理装置。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0100】
(付記19)
プロセッサと、記憶部とを備える情報処理装置を含む情報処理システムの製造方法であって、情報処理装置に、付記1から17のいずれか記載のプログラムを提供することを含む、情報処理システムの製造方法。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【0101】
(付記20)
プロセッサと、記憶部とを備えるコンピュータにより実行される情報処理方法であって、コンピュータが、ユーザから質問を受け付ける質問受付ステップ(101)と、質問受付ステップにおいて受け付けた質問に基づき、過去の法律相談に対する質問または回答からなる複数の相談回答データから、1または複数の所定の相談回答データを特定する特定ステップ(S102,S103)と、質問受付ステップにおいて受け付けた質問と、特定ステップにおいて特定した所定の相談回答データと、に基づき、対話応対AIに対する入力文であるプロンプトを生成する生成ステップ(S104)と、を実行する情報処理方法。
これにより、対話応対AIに対して入力するプロンプトに過去に実際に行われた相談回答データを含めることにより、ユーザから受け付けた質問に対してより品質の高い回答内容を得ることができる。
【符号の説明】
【0102】
1 システム、10 サーバ、101 記憶部、104 制御部、106 入力装置、108 出力装置、20 ユーザ端末、201 記憶部、204 制御部、206 入力装置、208 出力装置、50 LLMシステム、501 記憶部、504 制御部、506 入力装置、508 出力装置