JP7488617B1 - Program, method, information processing device, and system - Google Patents
Program, method, information processing device, and system Download PDFInfo
- Publication number
- JP7488617B1 JP7488617B1 JP2023169034A JP2023169034A JP7488617B1 JP 7488617 B1 JP7488617 B1 JP 7488617B1 JP 2023169034 A JP2023169034 A JP 2023169034A JP 2023169034 A JP2023169034 A JP 2023169034A JP 7488617 B1 JP7488617 B1 JP 7488617B1
- Authority
- JP
- Japan
- Prior art keywords
- question
- sentence
- answer
- user
- answering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 138
- 230000010365 information processing Effects 0.000 title claims abstract description 31
- 230000004044 response Effects 0.000 claims abstract description 44
- 230000008569 process Effects 0.000 description 131
- 230000002452 interceptive effect Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 5
- 230000004308 accommodation Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 208000004547 Hallucinations Diseases 0.000 description 1
- 238000012356 Product development Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000033001 locomotion Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】質問文に対して適した回答文を出力するプログラム、方法、情報処理装置及びシステムを提供する。【解決手段】方法は、ユーザから質問文を受け付け、受け付けた質問文を入力データとして大規模言語モデルに入力することにより、質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得し、質問文が適当である判断結果を取得した場合には、質問文に基づく入力データを質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示し、質問文が適当であるとの判断結果を取得しなかった場合には、質問文に基づく入力データを大規模言語モデルに入力することにより出力される、質問文に対する回答文ではなく質問文を掘り下げるための返答文をユーザに提示する。【選択図】図11[Problem] To provide a program, method, information processing device, and system for outputting an appropriate answer to a question. [Solution] The method receives a question from a user, inputs the received question as input data into a large-scale language model, and obtains a judgment result as to whether the question is appropriate as input data for a question answering system capable of outputting an answer in response to the input of the question, and if a judgment result that the question is appropriate is obtained, an answer to the question that is output by inputting input data based on the question into the question answering system is presented to the user, and if a judgment result that the question is not appropriate is obtained, a reply to delve deeper into the question, rather than an answer to the question, is presented to the user, which is output by inputting input data based on the question into a large-scale language model. [Selected Figure] Figure 11
Description
本開示は、プログラム、方法、情報処理装置、システムに関する。 This disclosure relates to a program, a method, an information processing device, and a system.
ユーザからのオンラインでの質問等の問い合わせに対して、質問に応じた回答内容を出力するシステム(チャットボットシステム)が知られている。
特許文献1には、ユーザからの問合せに対してチャットボットが自動的に対応しつつ、有人対応に引き継ぐ際に、回答者にシームレスに引き継ぐことを可能とする技術が開示されている。
2. Description of the Related Art Systems (chatbot systems) that respond to online inquiries such as questions from users and output answers corresponding to those questions are known.
Patent Literature 1 discloses a technology that enables a chatbot to automatically respond to inquiries from users, and when the time comes to hand over to a human responder, to seamlessly hand over the response to the respondent.
質問文に対して適した回答文を出力できていないという課題がある。
そこで、本開示は、上記課題を解決すべくなされたものであって、その目的は、質問文に対して適した回答文を出力する技術を提供することである。
There is a problem in that it is not possible to output an appropriate answer to a question.
Therefore, the present disclosure has been made to solve the above problem, and has an object to provide a technology for outputting an appropriate answer to a question.
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、ユーザから質問文を受け付ける質問受付ステップと、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより、質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得する判断ステップと、判断ステップにおいて質問文が適当である判断結果を取得した場合に、質問文に基づく入力データを質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示する第1回答ステップと、判断ステップにおいて質問文が適当である判断結果を取得しなかった場合に、質問文に基づく入力データを大規模言語モデルに入力することにより出力される、質問文に対する回答文ではなく質問文を掘り下げるための返答文をユーザに提示する第2回答ステップと、を実行するプログラム。 A program to be executed by a computer having a processor and a storage unit, the program executing: a question receiving step in which the processor receives a question from a user; a judgment step in which the question received in the question receiving step is input as input data into a large-scale language model to obtain a judgment result as to whether the question is appropriate as input data for a question answering system capable of outputting an answer in response to the input of the question; a first answering step in which, if the judgment step obtains a judgment result that the question is appropriate, an answer to the question is output by inputting input data based on the question into the question answering system, to the user; and a second answering step in which, if the judgment step does not obtain a judgment result that the question is appropriate, an answer to the question is output by inputting input data based on the question into the large-scale language model, to the user, instead of an answer to the question, but a response to delve deeper into the question.
本開示によれば、質問文に対して適した回答文を出力できる。 According to this disclosure, it is possible to output an appropriate answer to a question.
以下、本開示の実施形態について図面を参照して説明する。実施形態を説明する全図において、共通の構成要素には同一の符号を付し、繰り返しの説明を省略する。なお、以下の実施形態は、特許請求の範囲に記載された本開示の内容を不当に限定するものではない。また、実施形態に示される構成要素のすべてが、本開示の必須の構成要素であるとは限らない。また、各図は模式図であり、必ずしも厳密に図示されたものではない。 Embodiments of the present disclosure will be described below with reference to the drawings. In all figures describing the embodiments, common components are given the same reference numerals, and repeated explanations will be omitted. Note that the following embodiments do not unduly limit the contents of the present disclosure described in the claims. Furthermore, not all components shown in the embodiments are necessarily essential components of the present disclosure. Furthermore, each figure is a schematic diagram, and is not necessarily a precise illustration.
<システム1の構成>
本開示におけるシステム1は、ユーザから入力を受け付けた質問文に対して好適な回答文を出力する情報処理サービス(FAQサービス)を提供する情報処理システムである。例えば、銀行等においては口座開設、国内外送金、ローンの申し込み、ATM、キャッシュカードの利用方法、モバイルバンキングの利用方法などに関するユーザからの質問文を受け付け、当該質問文にかかるユーザの疑問や問題を解決するための回答文をユーザに対して提供する情報処理サービスを提供する。
本開示にかかる情報処理サービスの適用は、銀行に限られず、鉄道、航空機、タクシー等の公共交通機関、ホテル、民宿等の宿泊施設、その他、ソフトウェアサービス、病院等、任意の事業体に対して適用することが可能である。
システム1は、ネットワークNを介して接続された、サーバ10、ユーザ端末20、生成AI50、質問回答システム60の情報処理装置を備える。
図1は、システム1の機能構成を示すブロック図である。
図2は、サーバ10の機能構成を示すブロック図である。
図3は、ユーザ端末20の機能構成を示すブロック図である。
<Configuration of System 1>
The system 1 in the present disclosure is an information processing system that provides an information processing service (FAQ service) that outputs suitable answers to questions input by a user. For example, in a bank or the like, the system provides an information processing service that receives questions from users regarding account opening, domestic and international remittances, loan applications, ATMs, how to use cash cards, how to use mobile banking, etc., and provides the users with answers to solve their doubts and problems related to the questions.
The application of the information processing service according to the present disclosure is not limited to banks, but can be applied to any business entity, such as public transportation such as railways, airplanes, and taxis, accommodation facilities such as hotels and guesthouses, software services, hospitals, etc.
The system 1 comprises information processing devices including a server 10, a user terminal 20, a generation AI 50, and a question and answer system 60, all connected via a network N.
FIG. 1 is a block diagram showing the functional configuration of the system 1.
FIG. 2 is a block diagram showing the functional configuration of the server 10. As shown in FIG.
FIG. 3 is a block diagram showing the functional configuration of the user terminal 20. As shown in FIG.
各情報処理装置は演算装置と記憶装置とを備えたコンピュータにより構成されている。コンピュータの基本ハードウェア構成および、当該ハードウェア構成により実現されるコンピュータの基本機能構成は後述する。サーバ10、ユーザ端末20、生成AI50、質問回答システム60のそれぞれについて、後述するコンピュータの基本ハードウェア構成およびコンピュータの基本機能構成と重複する説明は省略する。 Each information processing device is composed of a computer equipped with an arithmetic unit and a storage device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by the hardware configuration will be described later. For each of the server 10, the user terminal 20, the generation AI 50, and the question answering system 60, explanations that overlap with the basic hardware configuration of the computer and the basic functional configuration of the computer described later will be omitted.
<サーバ10の構成>
サーバ10は、後述する生成AI50、質問回答システム60などと通信することにより、ユーザから入力を受け付けた質問文に対して好適な回答文を出力する情報処理サービス(FAQサービス)を提供する情報処理装置である。
サーバ10は、記憶部101、制御部104を備える。
<Configuration of Server 10>
The server 10 is an information processing device that provides an information processing service (FAQ service) that outputs appropriate answers to questions input by a user by communicating with the generation AI 50 and question answering system 60 described below.
The server 10 includes a memory unit 101 and a control unit 104 .
<サーバ10の記憶部101の構成>
サーバ10の記憶部101は、アプリケーションプログラム1011、ユーザテーブル1012、質問テーブル1013、キーワードテーブル1014、候補テーブル1015、回答テーブル1016を備える。
<Configuration of storage unit 101 of server 10>
The storage unit 101 of the server 10 includes an application program 1011 , a user table 1012 , a question table 1013 , a keyword table 1014 , a candidate table 1015 , and an answer table 1016 .
アプリケーションプログラム1011は、サーバ10の制御部104を各機能ユニットとして機能させるためのプログラムである。
アプリケーションプログラム1011は、ウェブブラウザアプリケーションなどのアプリケーションを含む。
The application program 1011 is a program for causing the control unit 104 of the server 10 to function as each functional unit.
The application programs 1011 include applications such as a web browser application.
ユーザテーブル1012は、サービスを利用する会員ユーザ(以下、ユーザ)の情報を記憶し管理するテーブルである。ユーザは、サービスの利用登録を行うことで、当該ユーザの情報がユーザテーブル1012の新しいレコードに記憶される。これにより、ユーザは本開示にかかるサービスを利用できるようになる。
ユーザテーブル1012は、ユーザIDを主キーとして、ユーザID、ユーザ名のカラムを有するテーブルである。
図4は、ユーザテーブル1012のデータ構造を示す図である。
The user table 1012 is a table that stores and manages information about member users (hereinafter, users) who use the service. When a user registers to use the service, the user's information is stored in a new record in the user table 1012. This allows the user to use the service according to the present disclosure.
The user table 1012 is a table having columns of user ID and user name, with the user ID as the primary key.
FIG. 4 is a diagram showing the data structure of the user table 1012. As shown in FIG.
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。ユーザ識別情報は、ユーザごとにユニークな値が設定されている項目である。
ユーザ名は、ユーザの氏名を記憶する項目である。ユーザ名は、氏名ではなく、ニックネームなど任意の文字列を設定しても良い。
The user ID is an item for storing user identification information for identifying a user. The user identification information is an item for which a unique value is set for each user.
The user name is an item for storing the name of the user. The user name may be set to any character string such as a nickname instead of a name.
質問テーブル1013は、質問に関する情報(質問情報)を記憶し管理するためのテーブルである。
質問テーブル1013は、質問IDを主キーとして、質問ID、親質問ID、ユーザID、質問文、日時のカラムを有するテーブルである。
図5は、質問テーブル1013のデータ構造を示す図である。
The question table 1013 is a table for storing and managing information relating to questions (question information).
The question table 1013 is a table having a question ID as a primary key, and columns of a question ID, a parent question ID, a user ID, a question text, and a date and time.
FIG. 5 is a diagram showing the data structure of the question table 1013. As shown in FIG.
質問IDは、質問を識別するための質問識別情報を記憶する項目である。質問識別情報は、質問情報ごとにユニークな値が設定されている項目である。
親質問IDは、親質問を識別するための親質問識別情報を記憶する項目である。
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。
質問文は、質問文にかかる文字列情報(テキスト情報)を記憶する項目である。
日時は、質問テーブル1013に新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
The question ID is an item for storing question identification information for identifying a question. The question identification information is an item for which a unique value is set for each piece of question information.
The parent question ID is an item for storing parent question identification information for identifying a parent question.
The user ID is an item for storing user identification information for identifying a user.
The question sentence is an item for storing character string information (text information) related to the question sentence.
The date and time is an item for storing the date and time when a record is newly stored or updated in the question table 1013.
キーワードテーブル1014は、検索キーワードに関する情報(検索キーワード情報)を記憶し管理するためのテーブルである。
キーワードテーブル1014は、質問ID、入力文、キーワード、日時のカラムを有するテーブルである。
図6は、キーワードテーブル1014のデータ構造を示す図である。
The keyword table 1014 is a table for storing and managing information relating to search keywords (search keyword information).
The keyword table 1014 is a table having columns for question ID, input sentence, keyword, and date and time.
FIG. 6 is a diagram showing the data structure of the keyword table 1014. As shown in FIG.
質問IDは、質問を識別するための質問識別情報を記憶する項目である。
入力文は、生成AI50に対する入力文にかかる文字列情報(テキスト情報)を記憶する項目である。
キーワードは、検索キーワードにかかる文字列情報(テキスト情報)を記憶する項目である。キーワードは、1または複数の検索キーワードにかかる文字列情報を記憶する。
日時は、キーワードテーブル1014に新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
The question ID is an item for storing question identification information for identifying a question.
The input sentence is an item that stores character string information (text information) related to the input sentence to the generation AI 50.
The keyword is an item for storing character string information (text information) related to a search keyword. The keyword stores character string information related to one or more search keywords.
The date and time is an item for storing the date and time when a record is newly stored or updated in the keyword table 1014.
候補テーブル1015は、候補に関する情報(候補情報)を記憶し管理するためのテーブルである。
候補テーブル1015は、質問ID、入力文、質問候補、日時のカラムを有するテーブルである。
図7は、候補テーブル1015のデータ構造を示す図である。
The candidate table 1015 is a table for storing and managing information relating to candidates (candidate information).
The candidate table 1015 is a table having columns for question ID, input sentence, question candidate, and date and time.
FIG. 7 is a diagram showing the data structure of the candidate table 1015. As shown in FIG.
質問IDは、質問を識別するための質問識別情報を記憶する項目である。
入力文は、生成AI50に対する入力文にかかる文字列情報(テキスト情報)を記憶する項目である。
質問候補は、質問候補にかかる文字列情報(テキスト情報)を記憶する項目である。質問候補は、1または複数の質問候補にかかる文字列情報を記憶する。
日時は、候補テーブル1015に新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
The question ID is an item for storing question identification information for identifying a question.
The input sentence is an item that stores character string information (text information) related to the input sentence to the generation AI 50.
The question candidate is an item that stores character string information (text information) related to the question candidate. The question candidate stores character string information related to one or more question candidates.
The date and time is an item for storing the date and time when a record is newly stored or updated in the candidate table 1015.
回答テーブル1016は、回答に関する情報(回答情報)を記憶し管理するためのテーブルである。
回答テーブル1016は、質問ID、処理種別、入力文、回答文、日時のカラムを有するテーブルである。
図8は、回答テーブル1016のデータ構造を示す図である。
The answer table 1016 is a table for storing and managing information related to answers (answer information).
The answer table 1016 is a table having columns for question ID, process type, input text, answer text, and date and time.
FIG. 8 is a diagram showing the data structure of the answer table 1016. As shown in FIG.
質問IDは、質問を識別するための質問識別情報を記憶する項目である。
処理種別は、回答文を得るために実行した処理の種類を記憶するための項目である。
具体的に、処理種別には、対話処理、検索処理、提案処理のいずれかを示す情報が記憶される。
入力文は、生成AI50または質問回答システム60に対する入力文にかかる文字列情報(テキスト情報)を記憶する項目である。
回答文は、生成AI50または質問回答システム60から出力される出力文にかかる文字列情報(テキスト情報)を記憶する項目である。
日時は、回答テーブル1016に新たにレコードが記憶されたり更新された際の記憶日時を記憶する項目である。
The question ID is an item for storing question identification information for identifying a question.
The processing type is an item for storing the type of processing executed to obtain the answer sentence.
Specifically, the process type stores information indicating any one of an interactive process, a search process, and a proposal process.
The input sentence is an item that stores string information (text information) related to the input sentence to the generation AI 50 or the question and answering system 60.
The answer sentence is an item that stores string information (text information) related to the output sentence output from the generation AI 50 or the question answering system 60.
The date and time is an item for storing the date and time when a record is newly stored or updated in the answer table 1016.
<サーバ10の制御部104の構成>
サーバ10の制御部104は、ユーザ登録制御部1041、AI制御部1042、質問回答部1043を備える。制御部104は、記憶部101に記憶されたアプリケーションプログラム1011を実行することにより、各機能ユニットが実現される。
<Configuration of control unit 104 of server 10>
The control unit 104 of the server 10 includes a user registration control unit 1041, an AI control unit 1042, and a question answering unit 1043. The control unit 104 executes an application program 1011 stored in the storage unit 101, thereby realizing each functional unit.
ユーザ登録制御部1041は、本開示に係るサービスの利用を希望するユーザの情報をユーザテーブル1012に記憶する処理を行う。
ユーザテーブル1012に記憶される情報は、ユーザが任意の情報処理端末からサービス提供者が運営するウェブページなどを開き、所定の入力フォームに情報を入力しサーバ10へ送信する。ユーザ登録制御部1041は、受信した情報をユーザテーブル1012の新しいレコードに記憶し、ユーザ登録が完了する。これにより、ユーザテーブル1012に記憶されたユーザはサービスを利用することができるようになる。
ユーザ登録制御部1041によるユーザ情報のユーザテーブル1012への登録に先立ち、サービス提供者は所定の審査を行いユーザによるサービス利用可否を制限しても良い。
ユーザIDは、ユーザを識別できる任意の文字列または数字で良く、ユーザが希望する任意の文字列または数字、もしくはユーザ登録制御部1041が自動的に任意の文字列または数字を設定しても良い。
The user registration control unit 1041 performs processing to store information about users who wish to use the service according to the present disclosure in the user table 1012 .
The information stored in the user table 1012 is generated when a user opens a web page operated by a service provider from any information processing terminal, inputs information into a specific input form, and transmits the information to the server 10. The user registration control unit 1041 stores the received information in a new record in the user table 1012, completing the user registration. This allows the user stored in the user table 1012 to use the service.
Before the user registration control unit 1041 registers user information in the user table 1012, the service provider may carry out a predetermined examination to restrict whether or not the user is permitted to use the service.
The user ID may be any character string or number that can identify the user, any character string or number desired by the user, or an arbitrary character string or number may be automatically set by the user registration control unit 1041.
AI制御部1042は、生成AI50に対する入出力を制御する制御部である。詳細は、後述する。 The AI control unit 1042 is a control unit that controls input and output to the generated AI 50. Details will be described later.
質問回答部1043は、質問回答システム60に対する入出力を制御する制御部である。詳細は、後述する。 The question answering unit 1043 is a control unit that controls input and output to the question answering system 60. Details will be described later.
<ユーザ端末20の構成>
ユーザ端末20は、サービスを利用するユーザが操作する情報処理装置である。ユーザ端末20は、例えば、スマートフォン、タブレット等の携帯端末でもよいし、据え置き型のPC(Personal Computer)、ラップトップPCであってもよい。また、HMD(Head Mount Display)、腕時計型端末等のウェアラブル端末であってもよい。
ユーザ端末20は、記憶部201、制御部204、入力装置206、出力装置208を備える。
<Configuration of User Terminal 20>
The user terminal 20 is an information processing device operated by a user who uses the service. The user terminal 20 may be, for example, a mobile terminal such as a smartphone or a tablet, a stationary personal computer (PC) or a laptop PC, or a wearable terminal such as a head mounted display (HMD) or a wristwatch terminal.
The user terminal 20 includes a memory unit 201 , a control unit 204 , an input device 206 , and an output device 208 .
<ユーザ端末20の記憶部201の構成>
ユーザ端末20の記憶部201は、ユーザID2011、アプリケーションプログラム2012を備える。
<Configuration of storage unit 201 of user terminal 20>
The storage unit 201 of the user terminal 20 includes a user ID 2011 and an application program 2012 .
ユーザID2011はユーザのアカウントIDである。ユーザは、ユーザ端末20からユーザID2011を、サーバ10へ送信する。サーバ10は、ユーザID2011に基づきユーザを識別し、本開示にかかるサービスをユーザに対して提供する。なお、ユーザID2011には、ユーザ端末20を利用しているユーザを識別するにあたりサーバ10から一時的に付与されるセッションIDなどの情報を含む。 The user ID 2011 is the user's account ID. The user transmits the user ID 2011 from the user terminal 20 to the server 10. The server 10 identifies the user based on the user ID 2011 and provides the user with the services disclosed herein. The user ID 2011 includes information such as a session ID that is temporarily assigned by the server 10 when identifying the user who is using the user terminal 20.
アプリケーションプログラム2012は、記憶部201に予め記憶されていても良いし、通信IFを介してサービス提供者が運営するウェブサーバ等からダウンロードする構成としても良い。
アプリケーションプログラム2012は、ウェブブラウザアプリケーションなどのアプリケーションを含む。
アプリケーションプログラム2012は、ユーザ端末20に記憶されているウェブブラウザアプリケーション上で実行されるJavaScript(登録商標)などのインタープリター型プログラミング言語を含む。
The application program 2012 may be pre-stored in the storage unit 201, or may be configured to be downloaded from a web server operated by a service provider via a communication IF.
The application programs 2012 include applications such as a web browser application.
The application programs 2012 include an interpreted programming language such as JavaScript (registered trademark) that runs on a web browser application stored on the user terminal 20 .
<ユーザ端末20の制御部204の構成>
ユーザ端末20の制御部204は、入力制御部2041、出力制御部2042を備える。制御部204は、記憶部201に記憶されたアプリケーションプログラム2012を実行することにより、各機能ユニットが実現される。
<Configuration of the control unit 204 of the user terminal 20>
The control unit 204 of the user terminal 20 includes an input control unit 2041 and an output control unit 2042. The control unit 204 executes an application program 2012 stored in the storage unit 201, thereby realizing each functional unit.
<ユーザ端末20の入力装置206の構成>
ユーザ端末20の入力装置206は、カメラ2061、マイク2062、位置情報センサ2063、モーションセンサ2064、タッチデバイス2065を備える。
<Configuration of the input device 206 of the user terminal 20>
The input device 206 of the user terminal 20 includes a camera 2061 , a microphone 2062 , a position information sensor 2063 , a motion sensor 2064 , and a touch device 2065 .
<ユーザ端末20の出力装置208の構成>
ユーザ端末20の出力装置208は、ディスプレイ2081、スピーカ2082を備える。
<Configuration of the output device 208 of the user terminal 20>
The output device 208 of the user terminal 20 includes a display 2081 and a speaker 2082 .
<生成AI50の構成>
生成AI50とは、自然言語処理(NLP)の分野で使用される大規模な人工知能モデルを指す。これらのモデルは、大量のテキストデータ(ウェブページ、書籍、記事等)を学習することで、人間が使用する言語のパターンを理解し、自然言語生成(NLG)タスクを効果的に行うことができる。
生成AI50は、特定の問いへの応答生成、文章の自動生成、テキストの要約、翻訳、感情分析など、多くのNLPタスクで使用される。また、教育、エンターテイメント、カスタマーサービス、製品開発など、様々な用途に活用できる。生成AI50には、以下のようなものが存在する。本開示においては、主に出力情報としてテキスト情報を出力する大規模言語モデルを生成AI50の一種として説明する。
・OpenAI ChatGPT
・Google Bard
・Stable Diffusion
・midjourney
なお、生成AI50は、サーバ10の一部の機能として実現する構成としても構わない。
<Configuration of Generation AI 50>
Generative AI50 refers to large-scale artificial intelligence models used in the field of natural language processing (NLP). These models learn from large amounts of text data (web pages, books, articles, etc.) to understand patterns in human language and perform natural language generation (NLG) tasks effectively.
The generative AI 50 is used in many NLP tasks, such as generating responses to specific questions, automatically generating sentences, summarizing text, translation, and sentiment analysis. It can also be used for a variety of purposes, such as education, entertainment, customer service, and product development. The generative AI 50 includes the following: In this disclosure, a large-scale language model that mainly outputs text information as output information will be described as a type of generative AI 50.
・OpenAI ChatGPT
・Google Bard
・Stable Diffusion
・midjourney
In addition, the generation AI 50 may be configured to be realized as part of the function of the server 10.
<質問回答システム60の構成>
質問回答システム60は、質問文にかかる文字列の入力に応じて、回答文にかかる文字列を出力する情報処理システムである。例えば、質問回答システム60は、FAQシステムを含む。
具体的に、質問回答システム60は、ユーザからのよくある質問とその回答のペア(質問回答情報)を記憶する情報処理システムである。質問回答システム60は、入力文字列の入力を受け付けると、当該文字列に基づき質問回答情報に含まれる質問または回答の少なくともいずれかを全文検索等により検索し、検索結果にかかる質問回答情報を入力文字列との関連度(スコア)と関連付けて出力することができる。
質問回答システム60へ、検索キーワード、質問文などの文字列を入力することにより、当該文字列と関連する質問回答情報の出力を取得することができる。質問回答システム60は、1つである必要はなく、例えば、銀行Aにおける質問回答情報が記憶された質問回答システムA、銀行B、銀行C、宿泊施設A、宿泊施設B等の質問にかかるサービスを提供する事業者ごとに複数の質問回答システム60を用意する構成としても良い。
なお、質問回答システム60は、サーバ10の一部の機能として実現する構成としても構わない。
<Configuration of question and answer system 60>
The question and answering system 60 is an information processing system that outputs a character string related to an answer in response to an input of a character string related to a question. For example, the question and answering system 60 includes a FAQ system.
Specifically, the question and answering system 60 is an information processing system that stores pairs of frequently asked questions from users and their answers (question and answer information). When the question and answering system 60 receives an input of an input character string, it searches for at least one of the questions or answers included in the question and answer information based on the input character string by full-text search or the like, and outputs the question and answer information related to the search result in association with the relevance (score) to the input character string.
By inputting a character string such as a search keyword or a question sentence into question answering system 60, it is possible to obtain an output of question answering information related to the character string. There does not need to be only one question answering system 60, and for example, a configuration may be adopted in which a question answering system A storing question answering information for Bank A, a plurality of question answering systems 60 are provided for each business operator providing a service related to questions, such as Bank B, Bank C, Accommodation Facility A, Accommodation Facility B, etc.
The question and answer system 60 may be configured to be realized as a part of the functions of the server 10 .
<システム1の動作>
以下、システム1の各処理について説明する。
図9は、検索処理の動作を示すフローチャートである。
図10は、対話処理の動作を示すフローチャートである。
図11は、提案処理の動作を示すフローチャートである。
図12は、対話画面の第一画面例である。
図13は、対話画面の第二画面例である。
<Operation of System 1>
Each process of the system 1 will be described below.
FIG. 9 is a flowchart showing the operation of the search process.
FIG. 10 is a flowchart showing the operation of the dialogue processing.
FIG. 11 is a flowchart showing the operation of the proposal process.
FIG. 12 is an example of the first screen of the dialogue screen.
FIG. 13 is an example of a second screen of the dialogue screen.
本開示における検索処理、対話処理、提案処理を以下に説明する。
本開示の情報処理システムにおいては、ユーザから受け付けた1の質問文に対して検索処理、対話処理、提案処理のそれぞれが実行される。なお、ユーザから受け付けた1の質問文に対して検索処理、対話処理、提案処理のすべてが実行される必要はない。ユーザから受け付けた1の質問文に対して検索処理、対話処理、提案処理の少なくともいずれか1つが実行される構成としても良い。
また、検索処理、対話処理、提案処理は並列に実行しても良いし、順番に実行されても良い。また、順番に実行される場合には、所定の処理の実行結果に応じて、当該処理の処理より後の一部の処理を実行しない(スキップする)構成としても良い。なお、検索処理、対話処理、提案処理の開始を並列に実行し、それぞれの処理結果を取得した後に、処理結果の提示を順番に実行しても良い。この場合も、所定の処理の実行結果に応じて、当該処理の処理より後の一部の処理結果を提示しない(スキップする)構成としても良い。
例えば、検索処理、提案処理、対話処理の順番に実行される場合において、検索処理の処理結果に応じて提案処理、対話処理の実行を省略しても良い。同様に、提案処理の処理結果に応じて対話処理の実行を省略しても良い。
The search process, dialogue process, and suggestion process in this disclosure will be described below.
In the information processing system disclosed herein, a search process, a dialogue process, and a proposal process are each executed for one question received from a user. Note that it is not necessary to execute all of the search process, the dialogue process, and the proposal process for one question received from a user. A configuration may be adopted in which at least one of the search process, the dialogue process, and the proposal process is executed for one question received from a user.
In addition, the search process, the dialogue process, and the proposal process may be executed in parallel or in sequence. When executed in sequence, a configuration may be adopted in which, depending on the execution result of a specific process, some of the processes subsequent to the specific process are not executed (skiped). The start of the search process, the dialogue process, and the proposal process may be executed in parallel, and after obtaining the respective process results, the presentation of the process results may be executed in sequence. In this case, too, a configuration may be adopted in which, depending on the execution result of a specific process, some of the process results subsequent to the specific process are not presented (skiped).
For example, in a case where a search process, a proposal process, and an interactive process are executed in this order, the execution of the proposal process and the interactive process may be omitted depending on the processing result of the search process. Similarly, the execution of the interactive process may be omitted depending on the processing result of the proposal process.
本開示の情報処理システムは、検索処理または提案処理による質問回答システム60からの出力結果を最終的にユーザに提示するものである。一方、ユーザは、適切な質問を入力できるとは限らない。そのため、ユーザから入力された質問文に対して、質問回答システム60から適切な回答が得られると判断するまでは、質問文に基づき生成AI50により生成される、質問文を具体的に掘り下げるための返答文をユーザに対して提示することにより、ユーザに対して追加質問文を入力することを促す。十分な追加質問文に応じて質問回答システム60から適切な回答結果が得られると判断した場合は、質問回答システム60からの出力結果をユーザに提示する。 The information processing system disclosed herein ultimately presents to the user the output results from the question answering system 60 resulting from the search process or suggestion process. However, the user is not necessarily able to input an appropriate question. Therefore, until it is determined that the question answering system 60 can provide an appropriate answer to the question input by the user, a response text that is generated by the generation AI 50 based on the question text and that delves more specifically into the question text is presented to the user, thereby encouraging the user to input an additional question text. When it is determined that the question answering system 60 can provide an appropriate answer in response to a sufficient additional question text, the output results from the question answering system 60 are presented to the user.
本開示における情報処理システムにおいては、ユーザからの質問文に対して、質問回答システム60に予め記憶されている回答文が提示されるため、ユーザに対して不適切な回答文が提示されることはない。一方、従来の生成AI50において同様の処理を行わせようとすると、ハルシネーション(事実とは異なる内容、文脈とは無関係な内容を回答する)問題や、誤った内容を含む回答文を生成してしまう問題が生じてしまう。
また、生成AI50からはユーザから受け付けた質問文に対する回答を行わせないものの、ユーザから受け付けた質問を自然に掘り下げるための提案を含む文章(返答文)をユーザに対して提示することにより、抽象的なユーザからの質問をより具体的なものとすることができる。
本開示における情報処理システムは、生成AI50を利用することによりユーザ自身が言語化できていない質問内容を掘り下げることができるとともに、具体化された質問文に基づき質問回答システム60に予め記憶された誤った内容を含まない適切な回答文をユーザに対して提供することを実現するものである。
In the information processing system of the present disclosure, in response to a question from a user, an answer sentence stored in advance in the question answering system 60 is presented, so that an inappropriate answer sentence is not presented to the user. On the other hand, if a similar process is performed in the conventional generation AI 50, problems such as hallucination (answering content that is different from the facts or content that is unrelated to the context) and generating an answer sentence containing an incorrect content will occur.
In addition, although the generation AI 50 does not provide an answer to the question received from the user, by presenting the user with a sentence (response sentence) that includes suggestions for naturally digging deeper into the question received from the user, it is possible to make abstract questions from the user more concrete.
The information processing system of the present disclosure utilizes a generation AI 50 to delve into the content of a question that the user himself has not been able to verbalize, and provides the user with an appropriate answer that does not contain erroneous content and is pre-stored in a question answering system 60 based on the specified question.
<検索処理>
検索処理は、ユーザから受け付けた質問文に応じた検索キーワードに基づく質問回答システム60からの出力文をユーザに提示する処理である。
<Search process>
The search process is a process of presenting to the user an output statement from the question and answer system 60 based on a search keyword corresponding to a question received from the user.
<検索処理の概要>
検索処理は、ユーザから質問文の入力を受け付け、入力した質問文を生成AI50へ入力し、生成AI50から出力された検索キーワードを取得し、当該検索キーワードを質問回答システム60へ入力し、質問回答システム60から出力された出力内容を取得し、当該出力内容を回答文として提示する処理である。
<Search process overview>
The search process is a process of accepting a question from a user, inputting the input question into generation AI 50, obtaining search keywords output from generation AI 50, inputting the search keywords into question answering system 60, obtaining the output content output from question answering system 60, and presenting the output content as an answer.
<検索処理の詳細>
以下に、検索処理の詳細を説明する。
<Search process details>
The search process will be described in detail below.
ユーザは、ユーザ端末20の入力装置206を操作し、ブラウザアプリケーション等を実行し、検索処理を実行するためのウェブページ(対話画面)のURL等を入力することにより対話画面D1を開く。ユーザ端末20の制御部204は、対話画面D1を開くためのユーザID2011を含むリクエストをサーバ10へ送信する。 The user operates the input device 206 of the user terminal 20 to execute a browser application or the like, and opens the interactive screen D1 by inputting the URL or the like of a web page (interactive screen) for performing a search process. The control unit 204 of the user terminal 20 transmits a request including the user ID 2011 to open the interactive screen D1 to the server 10.
サーバ10は、リクエストを受信すると対話画面D1を生成しユーザ端末20へ送信する。ユーザ端末20の制御部204は、対話画面D1をユーザ端末20のディスプレイ2081に表示し、提示する。 When the server 10 receives the request, it generates an interactive screen D1 and transmits it to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the interactive screen D1 on the display 2081 of the user terminal 20.
図12は、対話画面の第一画面例である。ユーザ端末20のディスプレイ2081には、対話画面D1が表示される。
対話画面D1は、質問文の入力欄D11、質問文D121、D122、回答文D131、D132、D133、D134、D135、を含む。
12 shows an example of the first screen of the interactive screen. An interactive screen D1 is displayed on the display 2081 of the user terminal 20.
The dialogue screen D1 includes a question input field D11, questions D121 and D122, and answers D131, D132, D133, D134, and D135.
図13は、対話画面の第二画面例である。ユーザ端末20のディスプレイ2081には、対話画面D2が表示される。
対話画面D2は、質問文の入力欄D21、質問文D221、D222、D223、D224、回答文D231、D232、D233、D234、D235、質問候補D251、D252、を含む。
13 is an example of a second screen of the interactive screen. An interactive screen D2 is displayed on the display 2081 of the user terminal 20.
The dialogue screen D2 includes a question input field D21, questions D221, D222, D223, and D224, answers D231, D232, D233, D234, and D235, and question candidates D251 and D252.
対話画面の第一画面例および第二画面例はいずれも検索処理、対話処理、提案処理における処理結果を回答文として提示する画面例である。具体的に、第一画面例ではユーザが質問文として最初に「海外」と入力した場合の画面例であり、第二画面例ではユーザが質問文として最初に「口座」と入力した場合の画面例である。ユーザから受け付けた質問文の内容に応じて異なる回答文が表示される。
第二画面例においては質問候補D251、D252が表示されている。質問候補については、提案処理において後述する。
The first and second example screens of the dialogue screen are both examples of screens that present the results of the search process, dialogue process, and suggestion process as answers. Specifically, the first example screen is an example of a screen that appears when the user first inputs "overseas" as a question, and the second example screen is an example of a screen that appears when the user first inputs "account" as a question. Different answers are displayed depending on the content of the question received from the user.
In the second screen example, question candidates D251 and D252 are displayed. The question candidates will be described later in the proposal process.
ステップS101において、サーバ10のAI制御部1042は、ユーザから質問文を受け付ける質問受付ステップを実行する。
ユーザは、ユーザ端末20の入力装置206を操作することにより、入力欄D11に質問文を入力する。ユーザ端末20の制御部204は、入力欄D11に入力された質問文を、サーバ10へ送信する。例えば、ユーザは、ユーザ端末20のエンターキー等を押下することにより入力欄D11に入力された質問文を、サーバ10へ送信することができる。サーバ10へ送信されるリクエストは、ユーザID2011を含む。
サーバ10の制御部104は、質問文、ユーザID2011を受信し、受け付ける。サーバ10の制御部104は、受け付けた質問文、ユーザID2011をそれぞれ、質問テーブル1013の新たなレコードの質問文、ユーザIDの項目に記憶する。
In step S101, the AI control unit 1042 of the server 10 executes a question receiving step of receiving a question from a user.
The user inputs a question into the input field D11 by operating the input device 206 of the user terminal 20. The control unit 204 of the user terminal 20 transmits the question input into the input field D11 to the server 10. For example, the user can transmit the question input into the input field D11 to the server 10 by pressing an enter key or the like on the user terminal 20. The request transmitted to the server 10 includes a user ID 2011.
The control unit 104 of the server 10 receives and accepts the question and the user ID 2011. The control unit 104 of the server 10 stores the accepted question and user ID 2011 in the question and user ID fields of the new record in the question table 1013, respectively.
ステップS101において、質問受付ステップは、第1質問文を受け付けるステップを含む。質問受付ステップは、第2質問文を受け付けるステップを含む。
具体的に、本開示における検索処理においてユーザは質問文D121(第1質問文)に対して出力された回答文D132を確認し、さらに当該回答文D132を踏まえてあらたな追加の質問文D122(第2質問文)を送信することができる。
この場合、サーバ10の制御部104は、第2質問文の最前の質問文である第1質問文の質問テーブル1013における質問ID、質問文D122、ユーザID2011をそれぞれ、質問テーブル1013の新たなレコードの親質問ID、質問文、ユーザIDの項目に記憶する。
In step S101, the question receiving step includes a step of receiving a first question sentence, and a step of receiving a second question sentence.
Specifically, in the search process of the present disclosure, the user can check the answer sentence D132 outputted in response to the question sentence D121 (first question sentence), and can further send a new additional question sentence D122 (second question sentence) based on the answer sentence D132.
In this case, the control unit 104 of the server 10 stores the question ID, question D122, and user ID 2011 in the question table 1013 of the first question, which is the first question of the second question, in the parent question ID, question, and user ID fields of the new record in the question table 1013, respectively.
ステップS101において、質問受付ステップは、キーワード取得ステップにおいて1または複数の検索キーワードを取得できなかった場合に、追加質問文を受付可能なステップを実行する。
具体的に、ユーザ端末20の制御部204は、後述するステップS103において検索キーワードの取得ができなかった場合に質問文の入力欄D11は、ユーザ端末20の入力装置206からの入力操作を受付可能なものとし、検索キーワードの取得ができた場合に質問文の入力欄D11は、ユーザ端末20の入力装置206からの入力操作を入力受付可能ではないよう制御しても良い。
つまり、検索処理により質問回答システム60からの回答文が得られなかった場合には追加質問文を受付可能なものとし、検索処理により質問回答システム60からからの回答文が得られた場合には追加質問文を受け付け可能ではないように制御しても良い。
本開示にかかる検索処理により質問回答システム60からの回答文が得られた場合には、それ以降のユーザからの質問文の入力を受け付けない構成としても良い。これにより、質問回答システム60からの回答文をユーザに提示することに伴い、検索処理、対話処理、提案処理を終了することができる。つまり、検索処理に対する回答が得られた場合に、ユーザとの対話を終了する構成としても良い。
In step S101, the question receiving step executes a step capable of receiving an additional question sentence if one or more search keywords cannot be acquired in the keyword acquiring step.
Specifically, the control unit 204 of the user terminal 20 may control the question input field D11 to be capable of accepting input operations from the input device 206 of the user terminal 20 when the search keyword cannot be obtained in step S103 described below, and may control the question input field D11 to be unable to accept input operations from the input device 206 of the user terminal 20 when the search keyword can be obtained.
In other words, if the search process does not obtain an answer from question and answer system 60, additional questions may be accepted, and if the search process obtains an answer from question and answer system 60, additional questions may not be accepted.
When an answer sentence is obtained from the question and answering system 60 by the search process according to the present disclosure, the system may be configured not to accept any further question sentences input from the user. This makes it possible to end the search process, dialogue process, and proposal process by presenting the answer sentence from the question and answering system 60 to the user. In other words, when an answer to the search process is obtained, the dialogue with the user may be ended.
ステップS102において、サーバ10のAI制御部1042は、質問受付ステップにおいて受け付けた質問文を生成AI50へ送信する。
具体的に、サーバ10のAI制御部50は、大規模言語モデルである生成AI50に対する入力文(プロンプト)として、以下のプロンプトテンプレートの〔質問文〕の箇所を、ステップS101において受け付けた質問文を挿入したプロンプトを生成し、生成AI50へ送信する。本開示におけるプロンプトテンプレートには、ユーザからの質問文に対して、回答を行わずに、質問を掘り下げるための回答を指示する命令文が含まれる。つまり、本開示にかかる情報処理システムにおいては、生成AI50はユーザからの質問文に対して、当該質問文に対する回答は行わない。本開示にかかる情報処理システムにおいてユーザからの質問文に対する回答は、質問回答システム60による回答結果(検索結果)に基づき行われる。
なお、検索処理において、プロンプトに、生成AI50の出力形式として回答文ではなく検索キーワードを出力するような出力データ形式を制限するための命令を含める。具体的に、OpenAI社のGPTにおいては、FunctionCallingと呼ばれる仕組みにより、質問回答システム60へ入力するための検索キーワードを抽出するための命令を含める。
〔プロンプトテンプレート〕
あなたはとても親切で有能なAIアシスタントです。
FAQサイトに常駐し、ユーザのFAQ検索をサポートします。
ユーザの質問が曖昧な場合はさらに課題を深ぼるような質問をします。
あなたはあくまでもAIアシスタントであるため、ユーザーの課題に対して具体的な解決策を与えることは絶対にしてはいけません。
課題が明確になったら、どのような検索キーワードでFAQサイトを検索すればよいか提案します。
#ユーザの質問
〔質問文〕
In step S102, the AI control unit 1042 of the server 10 transmits the question received in the question receiving step to the generation AI 50.
Specifically, the AI control unit 50 of the server 10 generates a prompt by inserting the question received in step S101 into the [Question] section of the following prompt template as an input sentence (prompt) for the generation AI 50, which is a large-scale language model, and transmits the generated prompt to the generation AI 50. The prompt template in the present disclosure includes a command statement that instructs an answer to delve deeper into the question without providing an answer to the question from the user. In other words, in the information processing system according to the present disclosure, the generation AI 50 does not provide an answer to the question from the user. In the information processing system according to the present disclosure, an answer to a question from a user is provided based on the answer result (search result) by the question answering system 60.
In the search process, the prompt includes an instruction to restrict the output data format of the generation AI 50 to output search keywords instead of answer sentences. Specifically, in OpenAI's GPT, an instruction to extract search keywords to be input to the question answering system 60 is included using a mechanism called FunctionCalling.
[Prompt template]
You are a very kind and capable AI assistant.
It resides on the FAQ site and supports users in searching for FAQs.
If the user's question is unclear, ask questions to delve deeper into the issue.
Since you are an AI assistant, you should never give users specific solutions to their problems.
Once the problem has been clarified, we will suggest what search keywords to use on the FAQ site.
#User question [question text]
ステップS102において、サーバ10のAI制御部1042は、第1質問文、第2質問文に対する回答文、第2質問文を大規模言語モデルへ入力する。
具体的に、サーバ10のAI制御部50は、質問受付ステップにおいて追加の質問文D122を受け付けた場合には、質問文D121、回答文D132、質問文122を結合した文字列を、プロンプトテンプレートの〔質問文〕の箇所に挿入したプロンプトを生成し、生成AI50へ送信する。
つまり、ステップS101において過去に1または複数の質問文を受け付けており、また,当該1または複数の質問文に対する1または複数の回答文が得られている場合には、当該1または複数の質問文および1または複数の回答文を、新たに受け付けた質問文に結合した文字列を質問文として生成AI50へ送信する。
サーバ10の制御部104は、親質問IDに基づき質問テーブル1013の質問IDの項目を検索することにより過去に受け付けた1または複数の質問情報に含まれる1または複数の質問文を取得できる。サーバ10の制御部104は、取得した1または複数の質問情報に含まれる親質問IDに基づき質問テーブル1013の質問IDの項目を検索することにより任意の親世代の質問情報および質問文を取得することができる。
サーバ10の制御部104は、過去に受け付けた1または複数の質問情報に含まれる1または複数の質問IDに基づき回答テーブル1016の項目を検索することにより1または複数の回答情報に含まれる1または複数の回答文を取得できる。なお、質問情報および回答情報はそれぞれ質問IDにより対応関係(順序関係、どの質問文に対するどの回答文か)を定めることができる。また、1または複数の回答文の順序は回答情報に含まれる日時の順序としても良い。サーバ10の制御部104は、1または複数の質問文、1または複数の回答文を順序に従って結合し、文字列を生成する。
なお、結合させる1または複数の回答文は、検索処理により得られた回答文でも良いし、対話処理、提案処理により得られた回答文を含めても構わない。
また、1または複数の質問文および1または複数の回答文のすべてを結合する必要はなく、生成AI50が受け付け可能な文字数を上限として新しい順番に所定個数の質問文および回答文を順序に従って結合する構成としても良い。
In step S102, the AI control unit 1042 of the server 10 inputs the first question, the answer to the second question, and the second question into the large-scale language model.
Specifically, when the AI control unit 50 of the server 10 receives an additional question D122 in the question receiving step, it generates a prompt by inserting a string combining the question D121, answer D132, and question D122 into the [Question] section of the prompt template, and sends the prompt to the generation AI 50.
In other words, if one or more question sentences have been received in the past in step S101, and one or more answer sentences have been obtained for those one or more question sentences, a string formed by combining those one or more question sentences and one or more answer sentences with the newly received question sentence is sent to generation AI 50 as a question sentence.
The control unit 104 of the server 10 can acquire one or more question sentences included in one or more pieces of question information previously received by searching the question ID item of the question table 1013 based on the parent question ID included in the acquired one or more pieces of question information. The control unit 104 of the server 10 can acquire any parent generation question information and question sentence by searching the question ID item of the question table 1013 based on the parent question ID included in the acquired one or more pieces of question information.
The control unit 104 of the server 10 can obtain one or more answer sentences included in one or more pieces of answer information by searching the items in the answer table 1016 based on one or more question IDs included in one or more pieces of question information previously received. The question information and the answer information can be determined in correspondence (order relationship, which answer sentence corresponds to which question sentence) by the question ID. The order of the one or more answer sentences may also be the order of the date and time included in the answer information. The control unit 104 of the server 10 combines one or more question sentences and one or more answer sentences in order to generate a character string.
The one or more answer sentences to be combined may be answer sentences obtained by a search process, or may include answer sentences obtained by a dialogue process or a suggestion process.
In addition, it is not necessary to combine all of the one or more question sentences and one or more answer sentences. It is also possible to configure the generation AI 50 to combine a certain number of question sentences and answer sentences in order, starting with the most recent, up to the number of characters that it can accept.
ステップS103において、サーバ10のAI制御部1042は、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより、質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得する判断ステップを実行する。
具体的に、判断ステップは、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより質問文に含まれる1または複数のキーワードを取得するステップと、1または複数のキーワードを取得できた場合に、質問文が入力データとして適当である判断結果を取得するステップと、1または複数のキーワードを取得できなかった場合に、質問文が入力データとして適当ではない判断結果を取得するステップと、を含む。
判断ステップは、キーワード取得ステップを含む。
In step S103, the AI control unit 1042 of the server 10 executes a judgment step of inputting the question sentence received in the question receiving step into a large-scale language model as input data, and obtaining a judgment result as to whether the question sentence is suitable as input data for a question answering system capable of outputting an answer sentence in response to the input of a question sentence.
Specifically, the judgment step includes a step of acquiring one or more keywords contained in the question sentence by inputting the question sentence accepted in the question receiving step into a large-scale language model as input data, a step of acquiring a judgment result indicating that the question sentence is suitable as input data if the one or more keywords are acquired, and a step of acquiring a judgment result indicating that the question sentence is not suitable as input data if the one or more keywords are not acquired.
The determining step includes a keyword obtaining step.
ステップS103において、サーバ10のAI制御部1042は、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより出力される1または複数のキーワードを取得するキーワード取得ステップを実行する。
具体的に、サーバ10のAI制御部1042は、大規模言語モデルから出力された検索キーワードを受信し、受け付ける。
In step S103, the AI control unit 1042 of the server 10 executes a keyword acquisition step of acquiring one or more keywords that are output by inputting the question sentence received in the question receiving step into a large-scale language model as input data.
Specifically, the AI control unit 1042 of the server 10 receives and accepts the search keywords output from the large-scale language model.
ステップS103において、キーワード取得ステップは、質問文および追加質問文を入力データとして大規模言語モデルに入力することにより出力される1または複数のキーワードを取得するステップを実行する。
具体的に、ステップS102において、サーバ10のAI制御部50は、質問受付ステップにおいて追加の質問文D122を受け付けた場合には、質問文D121、回答文D132、質問文122を結合した文字列を、プロンプトテンプレートの〔質問文〕の箇所に挿入したプロンプトを入力データとして生成AI50に入力することに対して、大規模言語モデルから出力された検索キーワードを受信し、受け付ける。
In step S103, a keyword acquisition step executes a step of acquiring one or more keywords that are output by inputting the question sentence and the additional question sentence as input data into a large-scale language model.
Specifically, in step S102, when the AI control unit 50 of the server 10 receives an additional question D122 in the question receiving step, it receives and accepts the search keywords output from the large-scale language model in response to inputting the string combining the question D121, answer D132, and question 122 into the generation AI 50 as input data, which is a prompt inserted into the [question] section of the prompt template.
例えば、キーワード取得ステップは、第1質問文を入力データとして大規模言語モデルに入力することにより出力される第1キーワードを取得するステップを含む。キーワード取得ステップは、第1質問文、第2質問文および第1回答文を入力データとして大規模言語モデルに入力することにより出力される第2キーワードを取得するステップを含む。 For example, the keyword acquisition step includes a step of acquiring a first keyword that is output by inputting the first question sentence as input data into the large-scale language model. The keyword acquisition step includes a step of acquiring a second keyword that is output by inputting the first question sentence, the second question sentence, and the first answer sentence as input data into the large-scale language model.
サーバ10の制御部104は、ステップS101において作成した質問テーブル1013の新たなレコードの質問IDと、ステップS102において生成したプロンプトと、検索キーワードと、をそれぞれキーワードテーブル1014の新たなレコードの質問ID、入力文、キーワードの項目に記憶する。 The control unit 104 of the server 10 stores the question ID of the new record in the question table 1013 created in step S101, the prompt generated in step S102, and the search keyword in the question ID, input sentence, and keyword fields of the new record in the keyword table 1014, respectively.
なお、ステップS103において大規模言語モデルは検索キーワードを出力しない場合がある。例えば、プロンプトに含まれるユーザの質問に、十分な検索キーワードが含まれていない場合は、生成AI50は検索キーワードを出力しない。そのような場合は、ステップS104以降をスキップして、検索処理を終了する。
この場合、サーバ10の制御部104は、対話処理のステップS302以降を実行する構成としても良い。
この場合、サーバ10の制御部104は、提案処理のステップS502以降を実行する構成としても良い。
In addition, the large-scale language model may not output search keywords in step S103. For example, if the user's question included in the prompt does not contain enough search keywords, the generation AI 50 does not output search keywords. In such a case, steps S104 and after are skipped and the search process is terminated.
In this case, the control unit 104 of the server 10 may be configured to execute step S302 and subsequent steps of the dialogue process.
In this case, the control unit 104 of the server 10 may be configured to execute step S502 and subsequent steps of the proposal process.
ステップS104において、質問入力ステップは、キーワード取得ステップにおいて取得した1または複数のキーワードを、質問回答システムへ入力するステップを実行する。
具体的に、サーバ10の質問回答部1043は、ステップS103において生成AI50から出力された検索キーワードを、質問回答システム60へ送信する。
例えば、サーバ10の質問回答部1043は、ステップS103において生成AI50から出力された第1検索キーワード、第2検索キーワードを、質問回答システム60へ送信する。
In step S104, a question input step executes a step of inputting one or more keywords acquired in the keyword acquisition step into the question and answer system.
Specifically, the question answering unit 1043 of the server 10 transmits the search keywords output from the generation AI 50 in step S103 to the question answering system 60.
For example, the question answering unit 1043 of the server 10 transmits the first search keyword and the second search keyword output from the generation AI 50 in step S103 to the question answering system 60.
ステップS105において、サーバ10の質問回答部1043は、質問入力ステップにおいて質問回答システムに対する1または複数のキーワードの入力に応じて、所定の回答文を取得する回答取得ステップを実行する。
具体的に、サーバ10の質問回答部1043は、質問回答システム60から出力された出力内容を受信し、受け付ける。例えば、質問回答システム60は、検索キーワードにかかる入力文字列の入力を受けると、当該文字列に基づき質問回答システム60に記憶された質問回答情報に含まれる質問または回答の少なくともいずれかを全文検索等により検索し、検索結果にかかる質問回答情報を入力文字列との関連度(スコア)と関連付けて出力する。
サーバ10の質問回答部1043は、質問回答情報に含まれる回答文を受信し、取得する。
In step S105, the question and answering unit 1043 of the server 10 executes an answer acquisition step of acquiring a predetermined answer sentence in response to the input of one or more keywords to the question and answering system in the question input step.
Specifically, the question answering unit 1043 of the server 10 receives and accepts the output contents output from the question answering system 60. For example, when the question answering system 60 receives an input character string related to a search keyword, it searches for at least one of the questions or answers included in the question answering information stored in the question answering system 60 based on the input character string by full-text search or the like, and outputs the question answering information related to the search result in association with the relevance (score) to the input character string.
The question answering unit 1043 of the server 10 receives and acquires the answer sentence included in the question answer information.
例えば、回答取得ステップは、質問入力ステップにおいて質問回答システムに対する第1キーワードの入力に応じて、第1回答文を取得するステップを含む。回答取得ステップは、質問入力ステップにおいて質問回答システムに対する第2キーワードの入力に応じて、第2回答文を取得するステップを含む。 For example, the answer acquisition step includes a step of acquiring a first answer sentence in response to input of a first keyword to the question answering system in the question input step. The answer acquisition step includes a step of acquiring a second answer sentence in response to input of a second keyword to the question answering system in the question input step.
ステップS105において、サーバ10の質問回答部1043は、質問回答システム60から出力された回答文を受信し、受け付ける。サーバ10の制御部104は、ステップS101において作成した質問テーブル1013の新たなレコードの質問IDと、ステップS102において生成したプロンプトと、回答文と、をそれぞれ回答テーブル1016の新たなレコードの質問ID、入力文、回答文の項目に記憶する。 In step S105, the question answering unit 1043 of the server 10 receives and accepts the answer sentence output from the question answering system 60. The control unit 104 of the server 10 stores the question ID of the new record in the question table 1013 created in step S101, the prompt generated in step S102, and the answer sentence in the question ID, input sentence, and answer sentence fields of the new record in the answer table 1016, respectively.
ステップS106において、サーバ10の制御部104は、質問回答システム60から出力された回答文を提示する。
具体的に、サーバ10の制御部104は、ステップS105において受信した回答文をユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した回答文をユーザ端末20のディスプレイ2081に表示し、提示する。
例えば、ユーザ端末20の制御部204は、ステップS101において質問文D121を受け付けた場合は、質問文D121からは検索キーワードが取得できなかったため質問文D121に対する回答文は回答テーブル1016に記憶されず、対話画面D1には表示されない。ユーザ端末20の制御部204は、ステップS101において質問文D122を受け付けた場合は、回答文D135が対話画面D1に表示される。
また、キーワードテーブル1014に記憶されたキーワードを含む文章を回答文D134として対話画面D1に表示しても良い。ユーザは、回答文D134を参照することにより質問文D122からどのような検索キーワードが取得され、当該検索キーワードに応じてどのような回答文D135が得られたのかを視覚的に確認することができる。
なお、対話画面の第二画面例における対話画面D2においては、検索キーワードが取得できなかったため質問文に対する質問回答システム60からの回答文は回答テーブル1016に記憶されず、対話画面D2には表示されない。
In step S106, the control unit 104 of the server 10 presents the answer sentence output from the question and answer system 60.
Specifically, the control unit 104 of the server 10 transmits the answer sentence received in step S105 to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the received answer sentence on the display 2081 of the user terminal 20.
For example, when the control unit 204 of the user terminal 20 receives the question D121 in step S101, a search keyword cannot be obtained from the question D121, so that the answer to the question D121 is not stored in the answer table 1016 and is not displayed on the dialogue screen D1. When the control unit 204 of the user terminal 20 receives the question D122 in step S101, the answer D135 is displayed on the dialogue screen D1.
Furthermore, a sentence including a keyword stored in the keyword table 1014 may be displayed on the dialogue screen D1 as an answer sentence D134. By referring to the answer sentence D134, the user can visually confirm what search keyword has been acquired from the question sentence D122 and what answer sentence D135 has been obtained in response to the search keyword.
In addition, in the interactive screen D2 in the second screen example of the interactive screen, since the search keyword could not be obtained, the answer sentence from the question and answer system 60 to the question sentence is not stored in the answer table 1016 and is not displayed on the interactive screen D2.
ステップS106において、サーバ10の制御部104は、判断ステップにおいて質問文が適当である判断結果を取得した場合に、質問文に基づく入力データを質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示する第1回答ステップを実行する。
第1回答ステップは、判断ステップにおいて取得した1または複数のキーワードを入力データとして質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示するステップを含む。
第1回答ステップは、第2キーワードを入力データとして質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示するステップを含む。
In step S106, if the control unit 104 of the server 10 obtains a judgment result in the judgment step that the question is appropriate, it executes a first answering step of presenting to the user an answer to the question that is output by inputting input data based on the question into the question answering system.
The first answering step includes a step of presenting to the user an answer to the question, which is output by inputting the one or more keywords acquired in the determining step as input data to the question and answering system.
The first answering step includes a step of presenting to the user an answer to the question sentence that is output by inputting the second keyword as input data to the question and answering system.
サーバ10の制御部104は、第1質問文に基づき、第1回答ステップおよび第2回答ステップの少なくともいずれかのステップに基づく第1回答文を提示する回答ステップを実行する。
サーバ10のAI制御部1042は、第1質問文に基づき、第1回答ステップ、第2回答ステップおよび第3回答ステップの少なくともいずれかのステップに基づく第2回答文を提示する回答ステップを実行する。
具体的に、ステップS101において過去に1または複数の質問文を受け付けており、また、当該1または複数の質問文に対する1または複数の回答文が得られている場合には、当該1または複数の質問文および1または複数の回答文を、新たに受け付けた質問文に結合した文字列を質問文として生成AI50へ送信する。結合させる1または複数の回答文は、検索処理により得られた回答文でも良いし、対話処理、提案処理により得られた回答文を含めても構わない。
生成AI50から得られたキーワードを、質問回答システム60に対する入力データとして入力し、これにより得られた質問文に対する回答文をユーザに対して提示する。
The control unit 104 of the server 10 executes an answering step of presenting a first answer sentence based on at least one of a first answering step and a second answering step, based on the first question sentence.
The AI control unit 1042 of the server 10 executes an answering step of presenting a second answer sentence based on at least one of the first answering step, the second answering step, and the third answering step, based on the first question sentence.
Specifically, in step S101, if one or more question sentences have been received in the past and one or more answer sentences have been obtained for the one or more question sentences, the one or more question sentences and one or more answer sentences are combined with a newly received question sentence to generate a character string, which is then transmitted as a question sentence to the generation AI 50. The one or more answer sentences to be combined may be answer sentences obtained by a search process, or may include answer sentences obtained by a dialogue process or a suggestion process.
The keywords obtained from the generation AI 50 are input as input data to the question answering system 60, and the answer to the question obtained thereby is presented to the user.
ステップS106において、サーバ10の制御部104は、質問テーブル1013に記憶された質問情報を取得する。サーバ10の制御部104は、取得した質問情報に含まれる質問IDに基づき回答テーブル1016の質問IDの項目を検索し、回答情報を取得する。サーバ10の制御部104は、取得した質問情報および回答情報をユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した質問情報および回答情報をそれぞれに含まれる日時の順序に並べてユーザ端末20のディスプレイ2081に表示し、提示する。これにより、ユーザ端末20のディスプレイ2081には、検索処理、対話処理、提案処理のすべての処理の処理結果を含む第一画面例および第二画面例が表示され、提示される。
つまり、検索処理のステップS106、対話処理のステップS304、提案処理のステップS508の回答文提示にかかるステップは、質問テーブル1013に記憶された質問情報、回答テーブル1016に記憶された回答情報を一覧表示するという共通の処理としても良い。
In step S106, the control unit 104 of the server 10 acquires the question information stored in the question table 1013. The control unit 104 of the server 10 searches the question ID item in the answer table 1016 based on the question ID included in the acquired question information, and acquires the answer information. The control unit 104 of the server 10 transmits the acquired question information and answer information to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the received question information and answer information on the display 2081 of the user terminal 20 in the order of the date and time included therein. As a result, a first screen example and a second screen example including the processing results of all the processes of the search process, the dialogue process, and the proposal process are displayed and presented on the display 2081 of the user terminal 20.
In other words, the steps related to presenting answer sentences, namely step S106 of the search process, step S304 of the dialogue process, and step S508 of the proposal process, may be a common process of displaying a list of the question information stored in the question table 1013 and the answer information stored in the answer table 1016.
<対話処理>
対話処理は、ユーザから受け付けた質問文に応じた生成AI50からの出力文をユーザに提示する処理である。
<Dialogue processing>
Dialogue processing is a process in which output sentences from the generation AI 50 in response to questions received from the user are presented to the user.
<対話処理の概要>
対話処理は、ユーザから質問文の入力を受け付け、入力した質問文を生成AI50へ入力し、生成AI50から出力された出力内容を取得し、当該出力内容を回答文として提示する処理である。
<Overview of dialogue processing>
The dialogue processing is a process in which a question is input from a user, the input question is input to the generation AI 50, the output content output from the generation AI 50 is obtained, and the output content is presented as an answer.
<対話処理の詳細>
以下に、対話処理の詳細を説明する。
<Details of dialogue processing>
The details of the interaction process will be described below.
ステップS301において、サーバ10のAI制御部1042は、ユーザから質問文を受け付ける質問受付ステップを実行する。
質問受付ステップは、検索処理のステップS101と同様であるため処理を省略する。なお、本開示においては検索処理のステップS101において受け付けた質問文に応じて対話処理が実行される。つまり、対話処理のステップS301は、検索処理のステップS101と共通とする。
なお、検索処理は必ずしも実行される必要はなく、対話処理が実行される構成としても構わない。なお、本開示においては検索処理のステップS103において検索キーワードが取得できなかった場合(質問文が適当であると判断されなかった場合)に、対話処理が実行される構成としても良い。
In step S301, the AI control unit 1042 of the server 10 executes a question receiving step of receiving a question from a user.
The question reception step is the same as step S101 of the search process, and therefore will not be described here. In the present disclosure, a dialogue process is executed in response to the question received in step S101 of the search process. That is, step S301 of the dialogue process is common to step S101 of the search process.
In addition, the search process does not necessarily have to be executed, and the dialogue process may be executed. In addition, in the present disclosure, the dialogue process may be executed when the search keyword cannot be acquired in step S103 of the search process (when the question sentence is not determined to be appropriate).
ステップS302において、サーバ10のAI制御部1042は、質問受付ステップにおいて受け付けた質問文を生成AI50へ送信する。
具体的に、サーバ10のAI制御部50は、大規模言語モデルである生成AI50に対する入力文(プロンプト)として、プロンプトテンプレートの〔質問文〕の箇所に、ステップS301において受け付けた質問文を挿入したプロンプトを生成し、生成AI50へ送信する。
In step S302, the AI control unit 1042 of the server 10 transmits the question received in the question receiving step to the generation AI 50.
Specifically, the AI control unit 50 of the server 10 generates a prompt by inserting the question sentence received in step S301 into the [Question sentence] section of the prompt template as an input sentence (prompt) for the generation AI 50, which is a large-scale language model, and sends the prompt to the generation AI 50.
ステップS302において、サーバ10のAI制御部1042は、第1質問文、第2質問文に対する回答文、第2質問文を大規模言語モデルへ入力する。
具体的に、サーバ10のAI制御部50は、質問受付ステップにおいて追加の質問文D122を受け付けた場合には、質問文D121、回答文D132、質問文D122を結合した文字列を、プロンプトテンプレートの〔質問文〕の箇所に挿入したプロンプトを生成し、生成AI50へ送信する。
つまり、ステップS301において過去に1または複数の質問文を受け付けており、また、当該1または複数の質問文に対する1または複数の回答文が得られている場合には、当該1または複数の質問文および1または複数の回答文を、新たに受け付けた質問文に結合した文字列を質問文として生成AI50へ送信する。
サーバ10の制御部104は、親質問IDに基づき質問テーブル1013の質問IDの項目を検索することにより過去に受け付けた1または複数の質問情報に含まれる1または複数の質問文を取得できる。サーバ10の制御部104は、取得した1または複数の質問情報に含まれる親質問IDに基づき質問テーブル1013の質問IDの項目を検索することにより任意の親世代の質問情報および質問文を取得することができる。
サーバ10の制御部104は、過去に受け付けた1または複数の質問情報に含まれる1または複数の質問IDに基づき回答テーブル1016の項目を検索することにより1または複数の回答情報に含まれる1または複数の回答文を取得できる。なお、質問情報および回答情報はそれぞれ質問IDにより対応関係(順序関係、どの質問文に対するどの回答文か)を定めることができる。また、1または複数の回答文の順序は回答情報に含まれる日時の順序としても良い。サーバ10の制御部104は、1または複数の質問文、1または複数の回答文を順序に従って結合し、文字列を生成する。
なお、結合させる1または複数の回答文は、対話処理により得られた回答文でも良いし、後述する検索処理、提案処理により得られた回答文を含めても構わない。
また、1または複数の質問文および1または複数の回答文のすべてを結合する必要はなく、生成AI50が受け付け可能な文字数を上限として新しい順番に所定個数の質問文および回答文を結合する構成としても良い。
In step S302, the AI control unit 1042 of the server 10 inputs the first question, the answer to the second question, and the second question into the large-scale language model.
Specifically, when the AI control unit 50 of the server 10 receives an additional question D122 in the question receiving step, it generates a prompt by inserting a string combining the question D121, the answer D132, and the question D122 into the [Question] section of the prompt template, and sends the prompt to the generation AI 50.
In other words, if one or more question sentences have been received in the past in step S301, and one or more answer sentences have been obtained for those one or more question sentences, a string formed by combining those one or more question sentences and one or more answer sentences with the newly received question sentence is sent to generation AI 50 as a question sentence.
The control unit 104 of the server 10 can acquire one or more question sentences included in one or more pieces of question information previously received by searching the question ID item of the question table 1013 based on the parent question ID included in the acquired one or more pieces of question information. The control unit 104 of the server 10 can acquire any parent generation question information and question sentence by searching the question ID item of the question table 1013 based on the parent question ID included in the acquired one or more pieces of question information.
The control unit 104 of the server 10 can obtain one or more answer sentences included in one or more pieces of answer information by searching the items in the answer table 1016 based on one or more question IDs included in one or more pieces of question information previously received. The question information and the answer information can be determined in correspondence (order relationship, which answer sentence corresponds to which question sentence) by the question ID. The order of the one or more answer sentences may also be the order of the date and time included in the answer information. The control unit 104 of the server 10 combines one or more question sentences and one or more answer sentences in order to generate a character string.
The one or more answer sentences to be combined may be answer sentences obtained by dialogue processing, or may include answer sentences obtained by search processing and suggestion processing, which will be described later.
Furthermore, it is not necessary to combine all of the one or more question sentences and one or more answer sentences. It is also possible to combine a predetermined number of question sentences and answer sentences in order of most recent, with the number of characters that the generation AI 50 can accept as the upper limit.
このように、本開示にかかる情報処理システムにおいて、ユーザは入力した質問文に対する回答文の内容を確認し、さらに質問文を入力することができる。これにより、ユーザは情報処理システムからの回答内容を考慮して、自身が得たい情報を得るための質問文を徐々に対話形式で入力することができる。 In this way, in the information processing system disclosed herein, the user can check the content of the answer to the question they entered and then enter a further question. This allows the user to take into account the answer from the information processing system and gradually enter a question in an interactive format to obtain the information they want.
ステップS303において、サーバ10のAI制御部1042は、大規模言語モデルから出力された回答文(質問文に対する回答文ではなく質問文を掘り下げるための返答文)を受信し、受け付ける。生成AI50から出力される返答文は、ステップS301においてユーザ受け付けた質問文に対する回答内容を含まない文章であり、ユーザから受け付けた質問文をより具体的に掘り下げるための提案を含む文章(返答文)である。
サーバ10の制御部104は、ステップS301において作成した質問テーブル1013の新たなレコードの質問IDと、ステップS302において生成したプロンプトと、回答文と、をそれぞれ回答テーブル1016の新たなレコードの質問ID、入力文、回答文の項目に記憶する。
In step S303, the AI control unit 1042 of the server 10 receives and accepts the answer sentence (not an answer sentence to the question sentence but a response sentence for digging deeper into the question sentence) output from the large-scale language model. The response sentence output from the generation AI 50 is a sentence that does not include the answer content to the question sentence accepted by the user in step S301, and is a sentence (response sentence) that includes a suggestion for digging deeper into the question sentence accepted from the user in more detail.
The control unit 104 of the server 10 stores the question ID of the new record in the question table 1013 created in step S301, the prompt generated in step S302, and the answer sentence in the question ID, input sentence, and answer sentence fields of the new record in the answer table 1016, respectively.
ステップS304において、サーバ10の制御部104は、判断ステップにおいて質問文が適当である判断結果を取得しなかった場合に、質問文に基づく入力データを大規模言語モデルに入力することにより出力される、質問文に対する回答文ではなく質問文を掘り下げるための返答文をユーザに提示する第2回答ステップを実行する。
具体的に、サーバ10の制御部104は、ステップS303において受信した回答文をユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した回答文をユーザ端末20のディスプレイ2081に表示し、提示する。サーバ10の制御部104は、検索処理のステップS103において検索キーワードが取得できなかった場合に、ステップS303において受信した回答文をユーザ端末20へ送信する構成としても良い。
例えば、ユーザ端末20の制御部204は、ステップS301において質問文D121を受け付けた場合は、回答文D132が対話画面D1に表示される。ユーザ端末20の制御部204は、ステップS301において質問文D122を受け付けた場合は、回答文D133が対話画面D1に表示される。
例えば、ユーザ端末20の制御部204は、ステップS301において質問文D221を受け付けた場合は、回答文D232が対話画面D2に表示される。ユーザ端末20の制御部204は、ステップS301において質問文D222を受け付けた場合は、回答文D233が対話画面D2に表示される。
In step S304, if the control unit 104 of the server 10 does not obtain a judgment result that the question sentence is appropriate in the judgment step, it executes a second answering step in which it presents to the user a response sentence for digging deeper into the question sentence, rather than an answer sentence to the question sentence, which is output by inputting input data based on the question sentence into a large-scale language model.
Specifically, the control unit 104 of the server 10 transmits the answer sentence received in step S303 to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the received answer sentence on the display 2081 of the user terminal 20. The control unit 104 of the server 10 may be configured to transmit the answer sentence received in step S303 to the user terminal 20 when a search keyword cannot be acquired in step S103 of the search process.
For example, when the control unit 204 of the user terminal 20 receives the question sentence D121 in step S301, the control unit 204 displays the answer sentence D132 on the interactive screen D1. When the control unit 204 of the user terminal 20 receives the question sentence D122 in step S301, the control unit 204 displays the answer sentence D133 on the interactive screen D1.
For example, when the control unit 204 of the user terminal 20 receives the question sentence D221 in step S301, the control unit 204 displays the answer sentence D232 on the dialogue screen D2. When the control unit 204 of the user terminal 20 receives the question sentence D222 in step S301, the control unit 204 displays the answer sentence D233 on the dialogue screen D2.
<提案処理>
検索処理は、ユーザから受け付けた質問文に応じた質問候補に基づく質問回答システム60からの出力文をユーザに提示する処理である。
<Proposal Processing>
The search process is a process of presenting to the user output sentences from the question and answering system 60 based on question candidates corresponding to the question sentence received from the user.
<提案処理の概要>
提案処理は、ユーザから質問文の入力を受け付け、入力した質問文を生成AI50へ入力し、生成AI50から出力された質問候補を取得し、当該質問候補をユーザへ選択可能に提示し、ユーザにより選択された1または複数の質問候補を質問回答システム60へ入力し、質問回答システム60から出力された出力内容を取得し、当該出力内容を回答文として提示する処理である。
<Outline of proposal process>
The proposal process is a process in which a question sentence is input from a user, the input question sentence is input to the generation AI 50, question candidates are obtained from the generation AI 50, the question candidates are presented to the user for selection, one or more question candidates selected by the user are input to the question answering system 60, the output contents output from the question answering system 60 are obtained, and the output contents are presented as answer sentences.
<提案処理の詳細>
以下に、提案処理の詳細を説明する。
<Details of the proposal process>
The details of the proposal process will be described below.
ステップS501において、サーバ10のAI制御部1042は、ユーザから質問文を受け付ける質問受付ステップを実行する。
質問受付ステップは、対話処理のステップS301と同様であるため処理を省略する。なお、本開示においては対話処理のステップS301において受け付けた質問文に応じて提案処理が実行される。つまり、検索処理のステップS501は、対話処理のステップS301と共通とする。
なお、対話処理は必ずしも実行される必要はなく、提案処理が実行される構成としても構わない。
In step S501, the AI control unit 1042 of the server 10 executes a question receiving step of receiving a question from a user.
The question reception step is the same as step S301 of the dialogue processing, and therefore the process is omitted. Note that in the present disclosure, a proposal process is executed in response to the question received in step S301 of the dialogue processing. In other words, step S501 of the search process is common to step S301 of the dialogue processing.
It should be noted that the dialogue process does not necessarily have to be executed, and the configuration may be such that a proposal process is executed.
ステップS502において、サーバ10のAI制御部1042は、質問受付ステップにおいて受け付けた質問文を生成AI50へ送信する。
具体的に、サーバ10のAI制御部50は、大規模言語モデルである生成AI50に対する入力文(プロンプト)として、プロンプトテンプレートの〔質問文〕の箇所を、ステップS501において受け付けた質問文を挿入したプロンプトを生成し、生成AI50へ送信する。
なお、検索処理において、プロンプトに、生成AI50の出力形式として回答文ではなく1または複数の検索キーワード候補を出力するような出力データ形式を制限するための命令を含める。具体的に、OpenAI社のGPTにおいては、FunctionCallingと呼ばれる仕組みにより、質問回答システム60へ入力するための1または複数の検索キーワード候補を抽出するための命令を含める。
In step S502, the AI control unit 1042 of the server 10 transmits the question received in the question receiving step to the generation AI 50.
Specifically, the AI control unit 50 of the server 10 generates a prompt by inserting the question received in step S501 into the [Question] section of the prompt template as an input sentence (prompt) for the generation AI 50, which is a large-scale language model, and sends the prompt to the generation AI 50.
In the search process, the prompt includes an instruction to restrict the output data format of the generation AI 50 to output one or more search keyword candidates instead of an answer sentence. Specifically, in OpenAI's GPT, an instruction to extract one or more search keyword candidates to be input to the question answering system 60 is included using a mechanism called FunctionCalling.
ステップS502において、サーバ10のAI制御部1042は、第1質問文、第2質問文に対する回答文、第2質問文を大規模言語モデルへ入力する。
具体的に、サーバ10のAI制御部50は、質問受付ステップにおいて追加の質問文D122を受け付けた場合には、質問文D121、回答文D132、質問文122を結合した文字列を、プロンプトテンプレートの〔質問文〕の箇所に挿入したプロンプトを生成し、生成AI50へ送信する。
つまり、ステップS501において過去に1または複数の質問文を受け付けており、また、当該1または複数の質問文に対する1または複数の回答文が得られている場合には、当該1または複数の質問文および1または複数の回答文を、新たに受け付けた質問文に結合した文字列を質問文として生成AI50へ送信する。
サーバ10の制御部104は、親質問IDに基づき質問テーブル1013の質問IDの項目を検索することにより過去に受け付けた1または複数の質問情報に含まれる1または複数の質問文を取得できる。サーバ10の制御部104は、取得した1または複数の質問情報に含まれる親質問IDに基づき質問テーブル1013の質問IDの項目を検索することにより任意の親世代の質問情報および質問文を取得することができる。
サーバ10の制御部104は、過去に受け付けた1または複数の質問情報に含まれる1または複数の質問IDに基づき回答テーブル1016の項目を検索することにより1または複数の回答情報に含まれる1または複数の回答文を取得できる。なお、質問情報および回答情報はそれぞれ質問IDにより対応関係(順序関係、どの質問文に対するどの回答文か)を定めることができる。また、1または複数の回答文の順序は回答情報に含まれる日時の順序としても良い。サーバ10の制御部104は、1または複数の質問文、1または複数の回答文を順序に従って結合し、文字列を生成する。
なお、結合させる1または複数の回答文は、提案処理により得られた回答文でも良いし、検索処理、対話処理により得られた回答文を含めても構わない。
また、1または複数の質問文および1または複数の回答文のすべてを結合する必要はなく、生成AI50が受け付け可能な文字数を上限として新しい順番に所定個数の質問文および回答文を結合する構成としても良い。
In step S502, the AI control unit 1042 of the server 10 inputs the first question, the answer to the second question, and the second question into the large-scale language model.
Specifically, when the AI control unit 50 of the server 10 receives an additional question D122 in the question receiving step, it generates a prompt by inserting a string combining the question D121, answer D132, and question D122 into the [Question] section of the prompt template, and sends the prompt to the generation AI 50.
In other words, if one or more question sentences have been received in the past in step S501, and one or more answer sentences have been obtained for those one or more question sentences, a string formed by combining those one or more question sentences and one or more answer sentences with the newly received question sentence is sent to generation AI 50 as a question sentence.
The control unit 104 of the server 10 can acquire one or more question sentences included in one or more pieces of question information previously received by searching the question ID item of the question table 1013 based on the parent question ID included in the acquired one or more pieces of question information. The control unit 104 of the server 10 can acquire any parent generation question information and question sentence by searching the question ID item of the question table 1013 based on the parent question ID included in the acquired one or more pieces of question information.
The control unit 104 of the server 10 can obtain one or more answer sentences included in one or more pieces of answer information by searching the items in the answer table 1016 based on one or more question IDs included in one or more pieces of question information previously received. The question information and the answer information can be determined in correspondence (order relationship, which answer sentence corresponds to which question sentence) by the question ID. The order of the one or more answer sentences may also be the order of the date and time included in the answer information. The control unit 104 of the server 10 combines one or more question sentences and one or more answer sentences in order to generate a character string.
The one or more answer sentences to be combined may be answer sentences obtained by the suggestion process, or may include answer sentences obtained by the search process or the dialogue process.
Furthermore, it is not necessary to combine all of the one or more question sentences and one or more answer sentences. It is also possible to combine a predetermined number of question sentences and answer sentences in order of most recent, with the number of characters that the generation AI 50 can accept as the upper limit.
ステップS503において、質問文および追加質問文を入力データとして大規模言語モデルに入力することにより出力される1または複数の質問候補を取得するステップを実行する。
具体的に、サーバ10のAI制御部1042は、大規模言語モデルから出力された検索キーワード候補を受信し、受け付ける。
In step S503, a step of acquiring one or more candidate questions that are output by inputting the question sentence and the additional question sentence as input data into a large-scale language model is executed.
Specifically, the AI control unit 1042 of the server 10 receives and accepts search keyword candidates output from the large-scale language model.
なお、ステップS103において大規模言語モデルは検索キーワード候補を出力しない場合がある。例えば、プロンプトに含まれるユーザの質問に、十分な検索キーワード候補が含まれていない場合は、生成AI50は検索キーワード候補を出力しない。そのような場合は、ステップS504以降をスキップして、提案処理を終了する。 Note that the large-scale language model may not output search keyword candidates in step S103. For example, if the user's question included in the prompt does not include sufficient search keyword candidates, the generation AI 50 does not output search keyword candidates. In such a case, steps S504 and onward are skipped and the suggestion process is terminated.
ステップS504において、サーバ10のAI制御部1042は、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより出力される1または複数の質問候補をユーザに対して提示する候補提示ステップを実行する。
具体的に、サーバ10のAI制御部1042は、大規模言語モデルから出力された1または複数の検索キーワード候補を受信し、受け付ける。
サーバ10の制御部104は、ステップS501において作成した質問テーブル1013の新たなレコードの質問IDと、ステップS502において生成したプロンプトと、1または複数の検索キーワード候補と、をそれぞれ候補テーブル1015の新たなレコードの質問ID、入力文、質問候補の項目に記憶する。
サーバ10の質問回答部1043は、1または複数の検索キーワード候補を、ユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した1または複数の検索キーワード候補を、ユーザ端末20のディスプレイ2081に表示し、提示する。
例えば、ユーザ端末20の制御部204は、ステップS501において質問文D224を受け付けた場合は、対話画面D2の質問候補D251、D252に表示し、提示する。
In step S504, the AI control unit 1042 of the server 10 executes a candidate presentation step of presenting to the user one or more question candidates output by inputting the question sentence received in the question reception step into a large-scale language model as input data.
Specifically, the AI control unit 1042 of the server 10 receives and accepts one or more search keyword candidates output from the large-scale language model.
The control unit 104 of the server 10 stores the question ID of the new record in the question table 1013 created in step S501, the prompt generated in step S502, and one or more search keyword candidates in the question ID, input sentence, and question candidate fields of the new record in the candidate table 1015, respectively.
The question and answer unit 1043 of the server 10 transmits one or more search keyword candidates to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the received one or more search keyword candidates on the display 2081 of the user terminal 20.
For example, when the control unit 204 of the user terminal 20 receives the question D224 in step S501, the control unit 204 displays and presents the question D224 in the question candidates D251 and D252 of the dialogue screen D2.
例えば、候補提示ステップは、第1質問文に基づき第1質問候補を提示するステップを含む。候補提示ステップは、第1質問文、第2質問文および第1回答文に基づき第2質問候補を提示するステップを含む。 For example, the candidate presentation step includes a step of presenting a first question candidate based on the first question sentence. The candidate presentation step includes a step of presenting a second question candidate based on the first question sentence, the second question sentence, and the first answer sentence.
ステップS504において、候補提示ステップは、キーワード取得ステップにおいて1または複数の検索キーワードを取得できなかった場合に、1または複数の質問候補をユーザに対して提示するステップを実行する。
具体的に、検索処理の後に提案処理が実行される構成である場合において、検索処理のステップS103において検索キーワードの取得ができなかった場合に提案処理が実行され、検索処理のステップS103において検索キーワードの取得ができた場合に提案処理が実行されないよう制御しても良い。
つまり、本開示にかかる検索処理により質問回答システム60からの回答文が得られた場合には、ユーザに対して質問候補を提示する必要はないため、検索処理により質問回答システム60からの回答文が得られなかった場合には提案処理を実行し、検索処理により質問回答システム60からの回答文が得られた場合には提案処理を実行しないように制御しても良い。
これにより、質問回答システム60からの回答文をユーザに提示することに伴い、提案処理を実行しない構成とすることができる。つまり、検索処理に対する回答が得られた場合に、ユーザとの対話を終了する構成としても良い。
In step S504, a candidate presenting step is executed to present one or more question candidates to the user when one or more search keywords cannot be acquired in the keyword acquiring step.
Specifically, in a configuration in which a proposal process is executed after a search process, the proposal process may be executed if a search keyword cannot be obtained in step S103 of the search process, and the proposal process may be controlled not to be executed if a search keyword can be obtained in step S103 of the search process.
In other words, when an answer sentence is obtained from the question answering system 60 by the search process according to the present disclosure, there is no need to present question candidates to the user, so it is possible to control the system so that a suggestion process is executed when an answer sentence is not obtained from the question answering system 60 by the search process, and that the suggestion process is not executed when an answer sentence is obtained from the question answering system 60 by the search process.
This makes it possible to configure the system so that the suggestion process is not executed when the answer sentence from question and answering system 60 is presented to the user. In other words, when an answer to the search process is obtained, the dialogue with the user may be terminated.
ステップS505において、サーバ10のAI制御部1042は、ユーザから、候補提示ステップにおいて提示した1または複数の質問候補の少なくともいずれか1つである所定の質問候補の選択を受け付ける候補選択ステップを実行する。
具体的に、ユーザは、ユーザ端末20の入力装置206を操作することにより、対話画面D2に提示されている1または複数の質問候補D251、D252の少なくともいずれか1つを選択する。なお、複数の質問候補D251、D252を選択可能な構成としても構わない。ユーザ端末20の制御部204は、選択された所定の1または複数の質問候補D251、D252にかかる情報をサーバ10へ送信する。
In step S505, the AI control unit 1042 of the server 10 executes a candidate selection step of accepting, from the user, a selection of a predetermined question candidate, which is at least one of the one or more question candidates presented in the candidate presentation step.
Specifically, the user operates the input device 206 of the user terminal 20 to select at least one of one or more question candidates D251, D252 presented on the interactive screen D2. Note that a configuration may be adopted in which multiple question candidates D251, D252 can be selected. The control unit 204 of the user terminal 20 transmits information related to the selected predetermined one or more question candidates D251, D252 to the server 10.
例えば、候補選択ステップは、第1質問候補の少なくともいずれか1つである所定の第1質問候補の選択を受け付けるステップを含む。候補選択ステップは、第2質問候補の少なくともいずれか1つである所定の第2質問候補の選択を受け付けるステップを含む。 For example, the candidate selection step includes a step of accepting a selection of a predetermined first question candidate, which is at least one of the first question candidates. The candidate selection step includes a step of accepting a selection of a predetermined second question candidate, which is at least one of the second question candidates.
ステップS506において、サーバ10の質問回答部1043は、候補選択ステップにおいて選択を受け付けた所定の質問候補を、質問文の入力に応じて回答文を出力可能な質問回答システムへ入力する質問入力ステップを実行する。
具体的に、サーバ10の質問回答部1043は、ステップS505において選択された所定の1または複数の質問候補D251、D252を、質問回答システム60へ送信する。
例えば、質問入力ステップは、所定の第1質問候補を質問回答システムへ入力するステップを含む。質問入力ステップは、所定の第2質問候補を質問回答システムへ入力するステップを含む。
In step S506, the question answering unit 1043 of the server 10 executes a question input step of inputting the predetermined question candidate selected in the candidate selection step to a question answering system capable of outputting an answer sentence in response to an input of a question sentence.
Specifically, the question and answering section 1043 of the server 10 transmits to the question and answering system 60 the predetermined one or more candidate questions D251, D252 selected in step S505.
For example, the question input step includes a step of inputting a predetermined first question candidate to the question and answering system, and a step of inputting a predetermined second question candidate to the question and answering system.
ステップS507において、サーバ10の質問回答部1043は、質問入力ステップにおいて質問回答システムに対する所定の質問候補の入力に応じて出力される所定の回答文を取得する回答取得ステップを実行する。
具体的に、サーバ10の質問回答部1043は、質問回答システム60から出力された出力内容を受信し、受け付ける。例えば、質問回答システム60は、質問候補にかかる入力文字列の入力を受けると、当該文字列に基づき質問回答システム60に記憶された質問回答情報に含まれる質問または回答の少なくともいずれかを全文検索等により検索し、検索結果にかかる質問回答情報を入力文字列との関連度(スコア)と関連付けて出力する。
サーバ10の質問回答部1043は、質問回答情報に含まれる回答文を受信し、取得する。
In step S507, the question and answering unit 1043 of the server 10 executes an answer obtaining step of obtaining a predetermined answer sentence to be output in response to input of a predetermined question candidate to the question and answering system in the question input step.
Specifically, the question answering unit 1043 of the server 10 receives and accepts the output contents output from the question answering system 60. For example, when the question answering system 60 receives an input character string related to a candidate question, it searches for at least one of the questions or answers included in the question answering information stored in the question answering system 60 by full-text search or the like based on the character string, and outputs the question answering information related to the search result in association with the degree of relevance (score) with the input character string.
The question answering unit 1043 of the server 10 receives and acquires the answer sentence included in the question answer information.
例えば、回答取得ステップは、質問回答システムに対する所定の第1質問候補の出力に応じた所定の第1回答文を取得するステップを含む。回答取得ステップは、質問回答システムに対する所定の第2質問候補の出力に応じた所定の第2回答文を取得するステップを含む。 For example, the answer acquisition step includes a step of acquiring a predetermined first answer sentence in response to an output of a predetermined first question candidate to the question answering system. The answer acquisition step includes a step of acquiring a predetermined second answer sentence in response to an output of a predetermined second question candidate to the question answering system.
ステップS507において、サーバ10の質問回答部1043は、質問回答システム60から出力された回答文を受信し、受け付ける。サーバ10の制御部104は、ステップS101において作成した質問テーブル1013の新たなレコードの質問IDと、ステップS102において生成したプロンプトと、回答文と、をそれぞれ回答テーブル1016の新たなレコードの質問ID、入力文、回答文の項目に記憶する。 In step S507, the question answering unit 1043 of the server 10 receives and accepts the answer sentence output from the question answering system 60. The control unit 104 of the server 10 stores the question ID of the new record in the question table 1013 created in step S101, the prompt generated in step S102, and the answer sentence in the question ID, input sentence, and answer sentence fields of the new record in the answer table 1016, respectively.
ステップS508において、サーバ10の制御部104は、質問回答システム60から出力された回答文を提示する。
具体的に、サーバ10の制御部104は、ステップS507において受信した回答文をユーザ端末20へ送信する。ユーザ端末20の制御部204は、受信した回答文をユーザ端末20のディスプレイ2081に表示し、提示する。
In step S<b>508 , the control unit 104 of the server 10 presents the answer sentence output from the question and answer system 60 .
Specifically, the control unit 104 of the server 10 transmits the answer sentence received in step S507 to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the received answer sentence on the display 2081 of the user terminal 20.
<コンピュータの基本ハードウェア構成>
図14は、コンピュータ90の基本的なハードウェア構成を示すブロック図である。コンピュータ90は、プロセッサ901、主記憶装置902、補助記憶装置903、通信IF991(インタフェース、Interface)を少なくとも備える。これらは通信バス921により相互に電気的に接続される。
<Basic computer hardware configuration>
14 is a block diagram showing the basic hardware configuration of a computer 90. The computer 90 includes at least a processor 901, a main storage device 902, an auxiliary storage device 903, and a communication IF 991 (interface). These are electrically connected to each other by a communication bus 921.
プロセッサ901とは、プログラムに記述された命令セットを実行するためのハードウェアである。プロセッサ901は、演算装置、レジスタ、周辺回路等から構成される。 The processor 901 is hardware for executing a set of instructions written in a program. The processor 901 is composed of an arithmetic unit, registers, peripheral circuits, etc.
主記憶装置902とは、プログラム、及びプログラム等で処理されるデータ等を一時的に記憶するためのものである。例えば、DRAM(Dynamic Random Access Memory)等の揮発性のメモリである。 The main memory device 902 is used to temporarily store programs and data processed by the programs. For example, it is a volatile memory such as a DRAM (Dynamic Random Access Memory).
補助記憶装置903とは、データ及びプログラムを保存するための記憶装置である。例えば、フラッシュメモリ、HDD(Hard Disc Drive)、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等である。 The auxiliary storage device 903 is a storage device for saving data and programs. For example, it is a flash memory, a hard disk drive (HDD), a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, etc.
通信IF991とは、有線又は無線の通信規格を用いて、他のコンピュータとネットワークを介して通信するための信号を入出力するためのインタフェースである。
ネットワークは、インターネット、LAN、無線基地局等によって構築される各種移動通信システム等で構成される。例えば、ネットワークには、3G、4G、5G移動通信システム、LTE(Long Term Evolution)、所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が含まれる。無線で接続する場合、通信プロトコルとして例えば、Z-Wave(登録商標)、ZigBee(登録商標)、Bluetooth(登録商標)等が含まれる。有線で接続する場合は、ネットワークには、USB(Universal Serial Bus)ケーブル等により直接接続するものも含む。
The communication IF 991 is an interface for inputting and outputting signals for communicating with other computers via a network using a wired or wireless communication standard.
The network is composed of the Internet, a LAN, various mobile communication systems constructed by wireless base stations, etc. For example, the network includes 3G, 4G, 5G mobile communication systems, LTE (Long Term Evolution), wireless networks that can connect to the Internet through a predetermined access point (e.g., Wi-Fi (registered trademark)), etc. In the case of wireless connection, communication protocols include, for example, Z-Wave (registered trademark), ZigBee (registered trademark), Bluetooth (registered trademark), etc. In the case of wired connection, the network also includes a network directly connected by a USB (Universal Serial Bus) cable, etc.
なお、各ハードウェア構成の全部または一部を複数のコンピュータ90に分散して設け、ネットワークを介して相互に接続することによりコンピュータ90を仮想的に実現することができる。このように、コンピュータ90は、単一の筐体、ケースに収納されたコンピュータ90だけでなく、仮想化されたコンピュータシステムも含む概念である。 The computer 90 can be realized virtually by distributing all or part of each hardware configuration across multiple computers 90 and connecting them together via a network. In this way, the concept of computer 90 includes not only a computer 90 housed in a single housing or case, but also a virtualized computer system.
<コンピュータ90の基本機能構成>
コンピュータ90の基本ハードウェア構成(図14)により実現されるコンピュータの機能構成を説明する。コンピュータは、制御部、記憶部、通信部の機能ユニットを少なくとも備える。
<Basic Functional Configuration of Computer 90>
A description will now be given of the functional configuration of a computer realized by the basic hardware configuration (FIG. 14) of a computer 90. The computer includes at least the functional units of a control unit, a storage unit, and a communication unit.
なお、コンピュータ90が備える機能ユニットは、それぞれの機能ユニットの全部または一部を、ネットワークで相互に接続された複数のコンピュータ90に分散して設けても実現することができる。コンピュータ90は、単一のコンピュータ90だけでなく、仮想化されたコンピュータシステムも含む概念である。 The functional units of the computer 90 can also be realized by distributing all or part of each functional unit across multiple computers 90 connected to each other via a network. The concept of computer 90 includes not only a single computer 90 but also a virtualized computer system.
制御部は、プロセッサ901が補助記憶装置903に記憶された各種プログラムを読み出して主記憶装置902に展開し、当該プログラムに従って処理を実行することにより実現される。制御部は、プログラムの種類に応じて様々な情報処理を行う機能ユニットを実現することができる。これにより、コンピュータは情報処理を行う情報処理装置として実現される。 The control unit is realized by the processor 901 reading various programs stored in the auxiliary storage device 903, expanding them in the main storage device 902, and executing processing according to the programs. The control unit can realize functional units that perform various information processing depending on the type of program. In this way, the computer is realized as an information processing device that performs information processing.
記憶部は、主記憶装置902、補助記憶装置903により実現される。記憶部は、データ、各種プログラム、各種データベースを記憶する。また、プロセッサ901は、プログラムに従って記憶部に対応する記憶領域を主記憶装置902または補助記憶装置903に確保することができる。また、制御部は、各種プログラムに従ってプロセッサ901に、記憶部に記憶されたデータの追加、更新、削除処理を実行させることができる。 The storage unit is realized by a main storage device 902 and an auxiliary storage device 903. The storage unit stores data, various programs, and various databases. Furthermore, the processor 901 can secure a storage area corresponding to the storage unit in the main storage device 902 or the auxiliary storage device 903 in accordance with a program. Furthermore, the control unit can cause the processor 901 to execute processes for adding, updating, and deleting data stored in the storage unit in accordance with various programs.
データベースは、リレーショナルデータベースを指し、行と列によって構造的に規定された表形式のテーブル、マスタと呼ばれるデータ集合を、互いに関連づけて管理するためのものである。データベースでは、表をテーブル、マスタ、表の列をカラム、表の行をレコードと呼ぶ。リレーショナルデータベースでは、テーブル、マスタ同士の関係を設定し、関連づけることができる。
通常、各テーブル、各マスタにはレコードを一意に特定するための主キーとなるカラムが設定されるが、カラムへの主キーの設定は必須ではない。制御部は、各種プログラムに従ってプロセッサ901に、記憶部に記憶された特定のテーブル、マスタにレコードを追加、削除、更新を実行させることができる。
また、記憶部に、データ、各種プログラム、各種データベースを記憶させることにより、本開示にかかる情報処理装置、情報処理システムが製造されたものとして捉えることができる。
The term database refers to a relational database, which is used to manage sets of data called masters and tables in a tabular format structurally defined by rows and columns, by associating them with each other. In a database, a table is called a table or master, a column in a table is called a column, and a row in a table is called a record. In a relational database, relationships between tables and masters can be set and associated.
Usually, a column that serves as a primary key for uniquely identifying a record is set in each table and each master, but setting a primary key to a column is not essential. The control unit can cause the processor 901 to add, delete, or update records in a specific table or master stored in the storage unit according to various programs.
Furthermore, by storing data, various programs, and various databases in the storage unit, it can be considered that the information processing device and information processing system according to the present disclosure have been manufactured.
なお、本開示におけるデータベース、マスタは、情報が構造的に規定された任意のデータ構造体(リスト、辞書、連想配列、オブジェクトなど)を含み得る。データ構造体には、データと、任意のプログラミング言語により記述された関数、クラス、メソッドなどを組み合わせることにより、データ構造体と見なし得るデータも含むものとする。 In addition, the databases and masters in this disclosure may include any data structure (such as a list, dictionary, associative array, or object) in which information is structurally defined. Data structures also include data that can be considered as data structures by combining data with functions, classes, methods, etc. written in any programming language.
通信部は、通信IF991により実現される。通信部は、ネットワークを介して他のコンピュータ90と通信を行う機能を実現する。通信部は、他のコンピュータ90から送信された情報を受信し、制御部へ入力することができる。制御部は、各種プログラムに従ってプロセッサ901に、受信した情報に対する情報処理を実行させることができる。また、通信部は、制御部から出力された情報を他のコンピュータ90へ送信することができる。 The communication unit is realized by the communication IF 991. The communication unit realizes the function of communicating with other computers 90 via a network. The communication unit can receive information transmitted from other computers 90 and input the information to the control unit. The control unit can cause the processor 901 to execute information processing on the received information in accordance with various programs. In addition, the communication unit can transmit information output from the control unit to other computers 90.
<付記>
以上の各実施形態で説明した事項を以下に付記する。
<Additional Notes>
The matters described in the above embodiments will be supplemented below.
(付記1)
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、ユーザから質問文を受け付ける質問受付ステップ(S101,S301,S501)と、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより、質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得する判断ステップ(S103)と、判断ステップにおいて質問文が適当である判断結果を取得した場合に、質問文に基づく入力データを質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示する第1回答ステップ(S106)と、判断ステップにおいて質問文が適当である判断結果を取得しなかった場合に、質問文に基づく入力データを大規模言語モデルに入力することにより出力される、質問文に対する回答文ではなく質問文を掘り下げるための返答文をユーザに提示する第2回答ステップ(S304)と、を実行するプログラム。
これにより、ユーザから受け付けた質問文が質問回答システムに対する入力データとして適当である場合には質問回答システムからの回答文の提示をユーザは受けることができ、適当ではない場合には質問文を掘り下げるための返答文の提示をユーザは受けることができる。
(Appendix 1)
A program to be executed by a computer having a processor and a memory unit, the program executing: a question receiving step (S101, S301, S501) in which the processor receives a question from a user; a judgment step (S103) in which the question received in the question receiving step is input as input data into a large-scale language model, thereby obtaining a judgment result as to whether the question is appropriate as input data for a question answering system capable of outputting an answer sentence in response to the input of the question sentence; a first answering step (S106) in which, if the judgment result that the question sentence is appropriate is obtained in the judgment step, an answer sentence to the question sentence that is output by inputting input data based on the question sentence into the question answering system is presented to the user; and a second answering step (S304) in which, if the judgment result that the question sentence is appropriate is not obtained in the judgment step, a reply sentence for digging deeper into the question sentence, rather than an answer sentence to the question sentence, is output by inputting the input data based on the question sentence into the large-scale language model.
This allows the user to receive an answer from the question answering system if the question received from the user is appropriate as input data for the question answering system, and allows the user to receive a response to delve deeper into the question if the question is not appropriate.
(付記2)
質問回答システムは、大規模言語モデルとは異なるシステムである、付記1記載のプログラム。
これにより、ユーザから受け付けた質問文が質問回答システムに対する入力データとして適当である場合には質問回答システムからの回答文の提示をユーザは受けることができ、適当ではない場合には質問文を掘り下げるための返答文の提示をユーザは受けることができる。
(Appendix 2)
2. The program of claim 1, wherein the question answering system is a system different from the large-scale language model.
This allows the user to receive an answer from the question answering system if the question received from the user is appropriate as input data for the question answering system, and allows the user to receive a response to delve deeper into the question if the question is not appropriate.
(付記3)
質問回答システムは、キーワードに基づき回答文を検索し、当該検索結果にかかる所定の回答文を出力するシステムであり、判断ステップ(S103)は、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより質問文に含まれる1または複数のキーワードを取得するステップと、1または複数のキーワードを取得できた場合に、質問文が入力データとして適当である判断結果を取得するステップと、1または複数のキーワードを取得できなかった場合に、質問文が入力データとして適当ではない判断結果を取得するステップと、を含み、第1回答ステップ(S106)は、判断ステップにおいて取得した1または複数のキーワードを入力データとして質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示するステップである、付記1記載のプログラム。
これにより、ユーザから受け付けた質問文が質問回答システムに対する入力データとして適当なキーワードを含む場合には、当該キーワードに基づく質問回答システムからの回答文の提示をユーザは受けることができ、キーワードを含まない場合には質問文を掘り下げるための返答文の提示をユーザは受けることができる。
(Appendix 3)
The question answering system is a system that searches for answer sentences based on keywords and outputs a predetermined answer sentence related to the search result, and the judgment step (S103) includes a step of acquiring one or more keywords contained in the question sentence by inputting the question sentence accepted in the question receiving step into a large-scale language model as input data, a step of acquiring a judgment result that the question sentence is suitable as input data if the one or more keywords are acquired, and a step of acquiring a judgment result that the question sentence is not suitable as input data if the one or more keywords are not acquired, and the first answering step (S106) is a step of presenting to a user an answer sentence to the question sentence output by inputting the one or more keywords acquired in the judgment step into the question answering system as input data.
As a result, if a question received from a user contains keywords that are appropriate as input data for the question answering system, the user can be presented with an answer from the question answering system based on those keywords, and if the keyword is not included, the user can be presented with a response that delves deeper into the question.
(付記4)
質問受付ステップ(S101)は、判断ステップにおいて1または複数の検索キーワードを取得できなかった場合に、追加質問文を受付可能なステップであり、判断ステップ(S103)は、質問文および追加質問文を入力データとして大規模言語モデルに入力することにより出力される1または複数のキーワードを取得するステップを含む、付記3記載のプログラム。
これにより、ユーザが入力した質問文に基づき検索キーワードが取得できなかった場合に、追加質問を受け付けることができ、当該追加質問に基づき出力された検索キーワードを質問回答システムへ入力することができる。
(Appendix 4)
A program as described in Appendix 3, wherein the question receiving step (S101) is a step in which an additional question text can be received if one or more search keywords cannot be obtained in the judgment step, and the judgment step (S103) includes a step of obtaining one or more keywords that are output by inputting the question text and the additional question text as input data into a large-scale language model.
This makes it possible to accept an additional question if a search keyword cannot be obtained based on the question entered by the user, and to input a search keyword output based on the additional question into the question answering system.
(付記5)
プロセッサが、質問受付ステップにおいて受け付けた質問文を入力データとして大規模言語モデルに入力することにより出力される1または複数の質問候補をユーザに対して提示する候補提示ステップ(S504)と、ユーザから、候補提示ステップにおいて提示した1または複数の質問候補の少なくともいずれか1つである所定の質問候補の選択を受け付ける候補選択ステップ(S505)と、候補選択ステップにおいて選択を受け付けた所定の質問候補を質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示する第3回答ステップ(S508)と、を実行する、付記1記載のプログラム。
これにより、ユーザから受け付けた質問文が不十分な場合においても、大規模言語モデルから出力される質問候補に基づくより適した回答文を出力するための質問文を質問回答システムへ入力することができる。
(Appendix 5)
The program described in Appendix 1, wherein a processor executes a candidate presentation step (S504) of presenting to a user one or more question candidates that are output by inputting the question sentence received in the question receiving step into a large-scale language model as input data, a candidate selection step (S505) of accepting from the user a selection of a predetermined question candidate that is at least one of the one or more question candidates presented in the candidate presentation step, and a third answering step (S508) of presenting to the user an answer sentence to the question sentence that is output by inputting the predetermined question candidate whose selection was accepted in the candidate selection step into a question answering system.
This makes it possible to input a question to the question answering system in order to output a more appropriate answer based on question candidates output from the large-scale language model, even if the question received from the user is insufficient.
(付記6)
候補提示ステップ(S504)は、判断ステップにおいて質問文に含まれる1または複数のキーワードを取得できなかった場合に、1または複数の質問候補をユーザに対して提示するステップである、付記5記載のプログラム。
これにより、ユーザが入力した質問文に基づき検索キーワードが取得できなかった場合に、質問候補をユーザに対して提示することができる。質問候補に基づき、より適した回答文を出力するための質問文を質問回答システムへ入力することができる。
(Appendix 6)
The program according to claim 5, wherein the candidate presenting step (S504) is a step of presenting one or more question candidates to the user when one or more keywords included in the question sentence cannot be obtained in the determining step.
This allows the system to present candidate questions to the user when a search keyword cannot be obtained based on the question sentence entered by the user. Based on the candidate questions, a question sentence for outputting a more suitable answer sentence can be input to the question answering system.
(付記7)
質問受付ステップ(S101,S301,S501)は、第1質問文を受け付けるステップを含み、第1質問文に基づき、第1回答ステップおよび第2回答ステップの少なくともいずれかのステップに基づく第1回答文を提示する回答ステップ(S106,S304,S508)と、質問受付ステップ(S101)は、第2質問文を受け付けるステップを含み、判断ステップ(S103)は、第1質問文、第2質問文および第1回答文を入力データとして大規模言語モデルに入力することにより出力される第2キーワードを取得するステップを含み、第1回答ステップ(S106)は、第2キーワードを入力データとして質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示するステップを含む、付記3記載のプログラム。
これにより、ユーザは複数の質問文を質問することができ、当該質問文に応じて得られた回答文を含めた内容に対する検索キーワードを質問回答システムへ入力することができる。当該検索キーワードに基づく第2回答文を質問回答システムから取得し提示することができる。
(Appendix 7)
The program described in Appendix 3, wherein the question receiving step (S101, S301, S501) includes a step of receiving a first question sentence, and an answering step (S106, S304, S508) of presenting a first answer sentence based on at least one of a first answering step and a second answering step based on the first question sentence, the question receiving step (S101) includes a step of accepting a second question sentence, the judgment step (S103) includes a step of acquiring second keywords output by inputting the first question sentence, the second question sentence, and the first answer sentence as input data into a large-scale language model, and the first answering step (S106) includes a step of presenting to a user an answer sentence to the question sentence output by inputting the second keywords as input data into the question answering system.
This allows the user to ask multiple questions and input search keywords for the content including the answers obtained in response to the questions to the question and answering system, and the second answer based on the search keywords can be obtained from the question and answering system and presented.
(付記8)
質問受付ステップ(S101,S301,S501)は、第1質問文を受け付けるステップを含み、第1質問文に基づき、第1回答ステップ、第2回答ステップおよび第3回答ステップの少なくともいずれかのステップに基づく第2回答文を提示する回答ステップ(S106,S304,S508)と、質問受付ステップ(S501)は、第2質問文を受け付けるステップを含み、候補提示ステップ(S504)は、第1質問文、第2質問文および第2回答文を入力データとして大規模言語モデルに入力することにより出力される第2質問候補をユーザに提示するステップを含み、候補選択ステップ(S505)は、第2質問候補の少なくともいずれか1つである所定の第2質問候補の選択を受け付けるステップを含み、第3回答ステップ(S508)は、所定の第2質問候補を、質問回答システムへ入力することにより出力される質問文に対する回答文をユーザに提示するステップを含む、付記5記載のプログラム。
これにより、ユーザは複数の質問文を質問することができ、当該質問文に応じて得られた回答文を含めた内容に対する質問候補を大規模言語モデルから取得することができる。当該質問候補に基づく第2回答文を質問回答システムから取得し提示することができる。
(Appendix 8)
the question receiving step (S101, S301, S501) includes a step of receiving a first question sentence, and an answering step (S106, S304, S508) of presenting a second answer sentence based on at least one of a first answering step, a second answering step, and a third answering step based on the first question sentence; the question receiving step (S501) includes a step of accepting a second question sentence, the candidate presenting step (S504) includes a step of presenting to a user second question candidates output by inputting the first question sentence, the second question sentence, and the second answer sentence as input data into a large-scale language model, the candidate selecting step (S505) includes a step of accepting a selection of a predetermined second question candidate which is at least one of the second question candidates, and the third answering step (S508) includes a step of presenting to the user an answer sentence to the question sentence output by inputting the predetermined second question candidate into the question answering system.
This allows the user to ask multiple questions, and a candidate question for the content including the answer sentence obtained in response to the question sentence can be obtained from the large-scale language model. A second answer sentence based on the candidate question can be obtained from the question answering system and presented.
(付記9)
プロセッサと、メモリとを備えるコンピュータに実行される方法であって、プロセッサが、付記1から付記8のいずれかに係る発明において実行される全てのステップを実行する方法。
これにより、ユーザから受け付けた質問文が質問回答システムに対する入力データとして適当である場合には質問回答システムからの回答文の提示をユーザは受けることができ、適当ではない場合には質問文を掘り下げるための返答文の提示をユーザは受けることができる。
(Appendix 9)
A method implemented on a computer having a processor and a memory, the processor performing all of the steps performed in the invention according to any one of claims 1 to 8.
This allows the user to receive an answer from the question answering system if the question received from the user is appropriate as input data for the question answering system, and allows the user to receive a response to dig deeper into the question if the question is not appropriate.
(付記10)
制御部と、記憶部とを備える情報処理装置であって、制御部が、付記1から付記8のいずれかに係る発明において実行される全てのステップを実行する情報処理装置。
これにより、ユーザから受け付けた質問文が質問回答システムに対する入力データとして適当である場合には質問回答システムからの回答文の提示をユーザは受けることができ、適当ではない場合には質問文を掘り下げるための返答文の提示をユーザは受けることができる。
(Appendix 10)
An information processing device comprising a control unit and a memory unit, wherein the control unit executes all of the steps executed in the invention according to any one of Supplementary Note 1 to Supplementary Note 8.
This allows the user to receive an answer from the question answering system if the question received from the user is appropriate as input data for the question answering system, and allows the user to receive a response to delve deeper into the question if the question is not appropriate.
(付記11)
付記1から付記8のいずれかに係る発明において実行される全てのステップを実行する手段を備えるシステム。
これにより、ユーザから受け付けた質問文が質問回答システムに対する入力データとして適当である場合には質問回答システムからの回答文の提示をユーザは受けることができ、適当ではない場合には質問文を掘り下げるための返答文の提示をユーザは受けることができる。
(Appendix 11)
A system comprising means for performing all the steps performed in any of the inventions according to any one of appendixes 1 to 8.
This allows the user to receive an answer from the question answering system if the question received from the user is appropriate as input data for the question answering system, and allows the user to receive a response to delve deeper into the question if the question is not appropriate.
1 システム、10 サーバ、101 記憶部、104 制御部、106 入力装置、108 出力装置、20 ユーザ端末、201 記憶部、204 制御部、206 入力装置、208 出力装置、50 生成AI、501 記憶部、504 制御部、506 入力装置、508 出力装置、60 質問回答システム、601 記憶部、604 制御部、606 入力装置、608 出力装置
1 System, 10 Server, 101 Memory unit, 104 Control unit, 106 Input device, 108 Output device, 20 User terminal, 201 Memory unit, 204 Control unit, 206 Input device, 208 Output device, 50 Generating AI, 501 Memory unit, 504 Control unit, 506 Input device, 508 Output device, 60 Question answering system, 601 Memory unit, 604 Control unit, 606 Input device, 608 Output device
Claims (11)
前記プロセッサが、
ユーザから質問文を受け付ける質問受付ステップと、
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして大規模言語モデルに入力することにより、前記質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得する判断ステップと、
前記判断ステップにおいて前記質問文が適当である判断結果を取得した場合に、前記質問文に基づく入力データを前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示する第1回答ステップと、
前記判断ステップにおいて前記質問文が適当である判断結果を取得しなかった場合に、前記質問文を挿入したプロンプトを生成し、当該プロンプトを入力データとして前記大規模言語モデルに入力することにより出力される、前記質問文に対する回答文ではなく前記質問文を掘り下げるための返答文を前記ユーザに提示する第2回答ステップと、
を実行し、
前記質問受付ステップは、前記判断ステップにおいて前記質問文が入力データとして適当ではない判断結果を取得した場合に、追加質問文を受付可能なステップであり、
前記判断ステップは、前記質問文および前記追加質問文を挿入したプロンプトを生成し、当該プロンプトを入力データとして前記大規模言語モデルに入力することにより、前記質問文および前記追加質問文が前記質問回答システムに対する入力データとして適当か否かに関する判断結果を取得するステップを含む、
プログラム。 A program to be executed by a computer having a processor and a storage unit,
The processor,
a question receiving step of receiving a question from a user;
a determination step of inputting the question sentence received in the question receiving step into a large-scale language model as input data, thereby obtaining a determination result as to whether or not the question sentence is suitable as input data for a question answering system capable of outputting an answer sentence in response to an input of a question sentence;
a first answering step of presenting to the user an answer to the question, which is output by inputting input data based on the question into the question answering system, when a judgment result that the question is appropriate is obtained in the judging step;
a second answering step of generating a prompt into which the question sentence is inserted and inputting the prompt as input data into the large-scale language model when the question sentence is not judged to be appropriate in the judging step, and presenting to the user a response sentence for delving into the question sentence, rather than an answer sentence to the question sentence;
Run
the question receiving step is a step of receiving an additional question when a determination result is obtained in the determining step that the question is not appropriate as input data,
the determining step includes a step of generating a prompt into which the question sentence and the additional question sentence are inserted, and inputting the prompt as input data into the large-scale language model, thereby obtaining a determination result as to whether the question sentence and the additional question sentence are appropriate as input data for the question answering system;
program.
請求項1記載のプログラム。 The question answering system is a system different from the large-scale language model.
The program according to claim 1.
前記判断ステップは、
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして前記大規模言語モデルに入力することにより前記質問文に含まれる1または複数のキーワードを取得するステップと、
前記1または複数のキーワードを取得できた場合に、前記質問文が入力データとして適当である判断結果を取得するステップと、
前記1または複数のキーワードを取得できなかった場合に、前記質問文が入力データとして適当ではない判断結果を取得するステップと、
を含み、
前記第1回答ステップは、前記判断ステップにおいて取得した前記1または複数のキーワードを入力データとして前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示するステップである、
請求項1記載のプログラム。 the question and answering system is a system for searching for an answer sentence based on a keyword, and outputting a predetermined answer sentence related to the search result,
The determining step includes:
a step of inputting the question sentence received in the question receiving step as input data into the large-scale language model to acquire one or more keywords included in the question sentence;
acquiring a determination result that the question sentence is appropriate as input data when the one or more keywords are acquired;
obtaining a determination result that the question sentence is not suitable as input data when the one or more keywords cannot be obtained;
Including,
the first answering step is a step of presenting to the user an answer to the question sentence, the answer being output by inputting the one or more keywords acquired in the determining step as input data to the question answering system;
The program according to claim 1.
前記判断ステップは、前記質問文および前記追加質問文を入力データとして前記大規模言語モデルに入力することにより出力される1または複数のキーワードを取得するステップを含む、
請求項3記載のプログラム。 the question receiving step is a step of receiving an additional question sentence when the one or more search keywords cannot be acquired in the determining step,
the determining step includes a step of acquiring one or more keywords output by inputting the question sentence and the additional question sentence as input data into the large-scale language model;
The program according to claim 3.
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして前記大規模言語モデルに入力することにより出力される1または複数の質問候補を前記ユーザに対して提示する候補提示ステップと、
前記ユーザから、前記候補提示ステップにおいて提示した前記1または複数の質問候補の少なくともいずれか1つである所定の質問候補の選択を受け付ける候補選択ステップと、
前記候補選択ステップにおいて選択を受け付けた前記所定の質問候補を前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示する第3回答ステップと、
を実行する、
請求項1記載のプログラム。 The processor,
a candidate presenting step of presenting to the user one or more question candidates output by inputting the question sentence accepted in the question accepting step as input data into the large-scale language model;
a candidate selection step of accepting, from the user, a selection of a predetermined question candidate which is at least one of the one or more question candidates presented in the candidate presentation step;
a third answering step of presenting to the user an answer sentence to the question sentence that is output by inputting the predetermined question candidate selected in the candidate selecting step into the question and answering system;
Execute
The program according to claim 1.
請求項5記載のプログラム。 the candidate presentation step is a step of presenting the one or more question candidates to the user when the one or more keywords included in the question sentence cannot be acquired in the determination step;
The program according to claim 5.
前記プロセッサが、
ユーザから質問文を受け付ける質問受付ステップと、
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして大規模言語モデルに入力することにより、前記質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得する判断ステップと、
前記判断ステップにおいて前記質問文が適当である判断結果を取得した場合に、前記質問文に基づく入力データを前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示する第1回答ステップと、
前記判断ステップにおいて前記質問文が適当である判断結果を取得しなかった場合に、前記質問文に基づく入力データを前記大規模言語モデルに入力することにより出力される、前記質問文に対する回答文ではなく前記質問文を掘り下げるための返答文を前記ユーザに提示する第2回答ステップと、
を実行し、
前記質問回答システムは、キーワードに基づき回答文を検索し、当該検索結果にかかる所定の回答文を出力するシステムであり、
前記判断ステップは、
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして前記大規模言語モデルに入力することにより前記質問文に含まれる1または複数のキーワードを取得するステップと、
前記1または複数のキーワードを取得できた場合に、前記質問文が入力データとして適当である判断結果を取得するステップと、
前記1または複数のキーワードを取得できなかった場合に、前記質問文が入力データとして適当ではない判断結果を取得するステップと、
を含み、
前記第1回答ステップは、前記判断ステップにおいて取得した前記1または複数のキーワードを入力データとして前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示するステップであり、
前記質問受付ステップは、第1質問文を受け付けるステップを含み、
前記第1質問文に基づき、前記第1回答ステップおよび前記第2回答ステップの少なくともいずれかのステップに基づく第1回答文を提示する回答ステップと、
前記質問受付ステップは、第2質問文を受け付けるステップを含み、
前記判断ステップは、前記第1質問文、前記第2質問文および前記第1回答文を入力データとして前記大規模言語モデルに入力することにより出力される第2キーワードを取得するステップを含み、
前記第1回答ステップは、前記第2キーワードを入力データとして前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示するステップを含む、
プログラム。 A program to be executed by a computer having a processor and a storage unit,
The processor,
a question receiving step of receiving a question from a user;
a determination step of inputting the question sentence received in the question receiving step into a large-scale language model as input data, thereby obtaining a determination result as to whether or not the question sentence is suitable as input data for a question answering system capable of outputting an answer sentence in response to an input of a question sentence;
a first answering step of presenting to the user an answer to the question, which is output by inputting input data based on the question into the question answering system, when a judgment result that the question is appropriate is obtained in the judging step;
a second answering step of presenting to the user, when a judgment result that the question sentence is appropriate is not obtained in the judgment step, a response sentence for digging deeper into the question sentence, which is output by inputting input data based on the question sentence into the large-scale language model, instead of an answer sentence to the question sentence;
Run
the question and answering system is a system for searching for an answer sentence based on a keyword, and outputting a predetermined answer sentence related to the search result,
The determining step includes:
a step of inputting the question sentence received in the question receiving step as input data into the large-scale language model to acquire one or more keywords included in the question sentence;
acquiring a determination result that the question sentence is appropriate as input data when the one or more keywords are acquired;
acquiring a determination result that the question sentence is not suitable as input data when the one or more keywords cannot be acquired;
Including,
the first answering step is a step of presenting to the user an answer to the question, the answer being output by inputting the one or more keywords acquired in the determining step as input data to the question answering system;
The question receiving step includes a step of receiving a first question sentence,
an answering step of presenting a first answer sentence based on at least one of the first answering step and the second answering step based on the first question sentence;
The question receiving step includes a step of receiving a second question sentence,
the determining step includes a step of acquiring second keywords output by inputting the first question sentence, the second question sentence, and the first answer sentence as input data into the large-scale language model;
the first answering step includes a step of presenting to the user an answer sentence to the question sentence, the answer sentence being output by inputting the second keyword as input data to the question and answering system;
program.
前記プロセッサが、
ユーザから質問文を受け付ける質問受付ステップと、
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして大規模言語モデルに入力することにより、前記質問文が質問文の入力に応じて回答文を出力可能な質問回答システムに対する入力データとして適当か否かに関する判断結果を取得する判断ステップと、
前記判断ステップにおいて前記質問文が適当である判断結果を取得した場合に、前記質問文に基づく入力データを前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示する第1回答ステップと、
前記判断ステップにおいて前記質問文が適当である判断結果を取得しなかった場合に、前記質問文に基づく入力データを前記大規模言語モデルに入力することにより出力される、前記質問文に対する回答文ではなく前記質問文を掘り下げるための返答文を前記ユーザに提示する第2回答ステップと、
前記質問受付ステップにおいて受け付けた前記質問文を入力データとして前記大規模言語モデルに入力することにより出力される1または複数の質問候補を前記ユーザに対して提示する候補提示ステップと、
前記ユーザから、前記候補提示ステップにおいて提示した前記1または複数の質問候補の少なくともいずれか1つである所定の質問候補の選択を受け付ける候補選択ステップと、
前記候補選択ステップにおいて選択を受け付けた前記所定の質問候補を前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示する第3回答ステップと、
を実行し、
前記質問受付ステップは、第1質問文を受け付けるステップを含み、
前記第1質問文に基づき、前記第1回答ステップ、前記第2回答ステップおよび前記第3回答ステップの少なくともいずれかのステップに基づく第2回答文を提示する回答ステップと、
前記質問受付ステップは、第2質問文を受け付けるステップを含み、
前記候補提示ステップは、前記第1質問文、前記第2質問文および前記第2回答文を入力データとして前記大規模言語モデルに入力することにより出力される第2質問候補を前記ユーザに提示するステップを含み、
前記候補選択ステップは、前記第2質問候補の少なくともいずれか1つである所定の第2質問候補の選択を受け付けるステップを含み、
前記第3回答ステップは、前記所定の第2質問候補を、前記質問回答システムへ入力することにより出力される前記質問文に対する回答文を前記ユーザに提示するステップを含む、
プログラム。 A program to be executed by a computer having a processor and a storage unit,
The processor,
a question receiving step of receiving a question from a user;
a determination step of inputting the question sentence received in the question receiving step into a large-scale language model as input data, thereby obtaining a determination result as to whether or not the question sentence is suitable as input data for a question answering system capable of outputting an answer sentence in response to an input of a question sentence;
a first answering step of presenting to the user an answer to the question, which is output by inputting input data based on the question into the question answering system, when a judgment result that the question is appropriate is obtained in the judging step;
a second answering step of presenting to the user, when a judgment result that the question sentence is appropriate is not obtained in the judgment step, a response sentence for digging deeper into the question sentence, which is output by inputting input data based on the question sentence into the large-scale language model, instead of an answer sentence to the question sentence;
a candidate presenting step of presenting to the user one or more question candidates output by inputting the question sentence accepted in the question accepting step as input data into the large-scale language model;
a candidate selection step of accepting, from the user, a selection of a predetermined question candidate which is at least one of the one or more question candidates presented in the candidate presentation step;
a third answering step of presenting to the user an answer sentence to the question sentence that is output by inputting the predetermined question candidate selected in the candidate selecting step into the question and answering system;
Run
The question receiving step includes a step of receiving a first question sentence,
an answering step of presenting a second answer sentence based on at least one of the first answering step, the second answering step, and the third answering step based on the first question sentence;
The question receiving step includes a step of receiving a second question sentence,
the candidate presenting step includes a step of presenting to the user second question candidates output by inputting the first question sentence, the second question sentence, and the second answer sentence as input data into the large-scale language model;
the candidate selection step includes a step of accepting a selection of a predetermined second question candidate, which is at least one of the second question candidates;
the third answering step includes a step of presenting to the user an answer sentence to the question sentence, the answer sentence being output by inputting the predetermined second question candidate into the question and answering system;
program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023169034A JP7488617B1 (en) | 2023-09-29 | 2023-09-29 | Program, method, information processing device, and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023169034A JP7488617B1 (en) | 2023-09-29 | 2023-09-29 | Program, method, information processing device, and system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP7488617B1 true JP7488617B1 (en) | 2024-05-22 |
Family
ID=91082739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023169034A Active JP7488617B1 (en) | 2023-09-29 | 2023-09-29 | Program, method, information processing device, and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7488617B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004295837A (en) | 2003-03-28 | 2004-10-21 | Nippon Telegr & Teleph Corp <Ntt> | Voice control method, voice control device, and voice control program |
WO2019202788A1 (en) | 2018-04-16 | 2019-10-24 | 株式会社Nttドコモ | Dialogue system |
CN113918703A (en) | 2021-10-26 | 2022-01-11 | 未鲲(上海)科技服务有限公司 | Intelligent customer service question and answer method, device, server and storage medium |
JP2022187821A (en) | 2021-06-08 | 2022-12-20 | 株式会社電通 | Interactive intention information extraction program, apparatus, and method |
-
2023
- 2023-09-29 JP JP2023169034A patent/JP7488617B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004295837A (en) | 2003-03-28 | 2004-10-21 | Nippon Telegr & Teleph Corp <Ntt> | Voice control method, voice control device, and voice control program |
WO2019202788A1 (en) | 2018-04-16 | 2019-10-24 | 株式会社Nttドコモ | Dialogue system |
JP2022187821A (en) | 2021-06-08 | 2022-12-20 | 株式会社電通 | Interactive intention information extraction program, apparatus, and method |
CN113918703A (en) | 2021-10-26 | 2022-01-11 | 未鲲(上海)科技服务有限公司 | Intelligent customer service question and answer method, device, server and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6864107B2 (en) | Methods and devices for providing search results | |
US11775254B2 (en) | Analyzing graphical user interfaces to facilitate automatic interaction | |
US6829603B1 (en) | System, method and program product for interactive natural dialog | |
EP3567494A1 (en) | Methods and systems for identifying, selecting, and presenting media-content items related to a common story | |
KR101944353B1 (en) | Method and apparatus for providing chatbot builder user interface | |
US20140122083A1 (en) | Chatbot system and method with contextual input and output messages | |
JP6180470B2 (en) | Sentence candidate presentation terminal, sentence candidate presentation system, sentence candidate presentation method, and program | |
CN111279404B (en) | Language fluent system | |
JPWO2018221119A1 (en) | Searching information storage device | |
JP6442807B1 (en) | Dialog server, dialog method and dialog program | |
CN118277588A (en) | Query request processing method, electronic device and storage medium | |
CN115374146A (en) | Method and system for editing dialogue service module according to relation data | |
US20140101596A1 (en) | Language and communication system | |
CN112470216B (en) | Voice application platform | |
JP7488617B1 (en) | Program, method, information processing device, and system | |
KR101697290B1 (en) | Method and system for making homepage using web browser | |
JP7486863B1 (en) | Program, method, information processing device, and system | |
JP7539094B1 (en) | Program, method, information processing device, and system | |
JP7542812B1 (en) | Program, method, information processing device, and system | |
Hiremath et al. | Evaluation of Indian Institute of Management Bangalore Library Web OPAC: A Case Study | |
JP7566195B1 (en) | Question generation device, question generation method, and question generation program | |
WO2024219329A1 (en) | Information processing device, information processing method, and program | |
JP2019021337A (en) | Conference support device, conference support device control method, and program | |
Thaiprasert et al. | Development of a Class Materials Search System using LINE Chatbot | |
JP2022180186A (en) | Information processing method, information processor, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230929 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240123 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240418 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240501 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7488617 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |