system
The system addresses the limitations of conventional chatbots by generating and ranking multiple answers, allowing users to select the best option, thereby reducing load and improving information retrieval efficiency and accuracy.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-01
- Publication Date
- 2026-04-13
AI Technical Summary
Conventional chatbot systems provide only a single answer to user questions, leading to increased communication and system load, difficulty in obtaining required information quickly, and decreased user satisfaction due to lack of opportunity to select the most appropriate answer.
A system that receives questions, analyzes them using natural language processing, generates multiple answers based on the analysis, ranks them by reliability and relevance, and allows users to select and record their choice, thereby improving user satisfaction and system accuracy.
The system efficiently provides multiple answers, reducing communication and system load while ensuring users quickly obtain the most suitable information, and enhances accuracy by recording user selections for future improvements.
Smart Images

Figure 2026063786000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, the method including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In a conventional chatbot system, the user has to repeatedly ask questions for one question, which causes problems such as an increase in communication load and system load. Also, since only a single answer is provided, it may be difficult to quickly obtain the information required by the user. Further, since the user has no opportunity to select the most appropriate answer, user satisfaction may decrease.
Means for Solving the Problems
[0005] The present invention provides a system comprising means for receiving a question, means for analyzing the question, means for generating a plurality of answers based on the analysis results, means for presenting the plurality of answers to a user, and means for receiving and recording the answer selected by the user. By generating and presenting multiple answers for a single question, this system allows the user to quickly obtain the most suitable information and reduces the load on communication and the system. Furthermore, the present invention improves the accuracy of question analysis by using a natural language processing model and ranks the answers based on their reliability and relevance, thereby facilitating user selection and improving user satisfaction.
[0006] "Means for receiving questions" refers to a function for sending questions entered by users to the system.
[0007] "Means for analyzing questions" refers to a function that uses natural language processing technology to understand the content of received questions and extract the intent of those questions and related information.
[0008] "Means for generating multiple answers" refers to a function that automatically creates multiple answers from different perspectives and angles based on the analyzed question content.
[0009] "Means of presenting multiple answers to the user" refers to a function that displays the generated multiple answers on the user's device, allowing the user to easily review them.
[0010] "Means for receiving and recording user-selected answers" refers to a function that sends the answer selected by the user from multiple presented answers to the system, records the selection result, and uses it to improve the system in the future.
[0011] "Natural language processing models" refer to a set of algorithms and tools used to understand, analyze, and generate human language.
[0012] "Ranking responses based on reliability and relevance" means evaluating the quality and relevance of each response and prioritizing them in order to select the best answer to a question from among multiple responses that have been generated. [Brief explanation of the drawing]
[0013] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] This is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] This is a sequence diagram showing the processing flow of the data processing system in Example 2, which incorporates an emotion engine. [Figure 14]It is a sequence diagram showing the processing flow of a data processing system in Application Example 2 when a sentiment engine is combined.
Embodiments for Carrying Out the Invention
[0014] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0015] First, the terms used in the following description will be explained.
[0016] In the following embodiments, a labeled processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0017] In the following embodiments, a labeled RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0018] In the following embodiments, a labeled storage is one or more non-volatile storage devices that store various programs and various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes, etc.
[0019] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0021] [First Embodiment]
[0022] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0023] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0024] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0025] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0026] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0027] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0028] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0029] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0031] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0032] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0033] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0034] The embodiments for carrying out the present invention are described below. This system mainly operates with a server, terminals, and users.
[0035] System Configuration
[0036] This system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. The functions of this system are as follows:
[0037] Received a question
[0038] The user enters a question into the terminal. The terminal receives this input and sends it to the server. In this process, the user's question is incorporated into the system.
[0039] Question analysis
[0040] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people, etc.).
[0041] Generating multiple answers
[0042] The server generates multiple answers based on the analysis results. Specifically, it uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, when providing several recommendations for a restaurant, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0043] Providing an answer
[0044] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0045] Selecting and recording answers
[0046] The user selects the best answer from the presented options. The device receives this selection and sends it to the server. The server records the selected answer and associated feedback to help with future improvements.
[0047] Specific example
[0048] For example, consider a scenario where a user asks, "Can you tell me about nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives the analysis results based on the user's current location. It then generates several possible answers, such as the following:
[0049] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[0050] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0051] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0052] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection to the server, which records it.
[0053] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question, enabling the user to quickly obtain the most suitable information. Furthermore, recording the user's selection results can help improve the accuracy of the system.
[0054] The following describes the processing flow.
[0055] Step 1:
[0056] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[0057] Step 2:
[0058] The terminal receives user input, converts it to a data format, and sends it to the server. The terminal converts the entered text data to the appropriate format and transfers it to the server.
[0059] Step 3:
[0060] The server receives the question. The server receives the data sent from the terminal and enters a waiting state for the next processing.
[0061] Step 4:
[0062] The server analyzes the received question. A natural language processing model is used for the analysis to extract the intent of the question and relevant key entities. For example, it recognizes keywords such as "nearby restaurants."
[0063] Step 5:
[0064] The server searches the database based on the analysis results. Based on the analyzed key entities, it searches the database for relevant information and generates multiple possible answers.
[0065] Step 6:
[0066] The server evaluates multiple generated responses and ranks them based on their reliability and relevance. Each response is scored and sorted in order of most appropriateness.
[0067] Step 7:
[0068] The server sends a ranked list of responses to the device. It organizes the responses in a list format and sends the data to the device for presentation to the user.
[0069] Step 8:
[0070] The device displays a list of received responses to the user. The responses are presented on the screen in a list format to make it easy for the user to review each one.
[0071] Step 9:
[0072] The user selects the most appropriate answer from the presented list of answers. The user reviews the list and chooses the answer that best matches their needs.
[0073] Step 10:
[0074] The device sends the user's selection results to the server. When the user presses the select button, information about the selected answer is sent to the server.
[0075] Step 11:
[0076] The server receives and records the user's selection results. The received selection results are saved to a database and used as reference data for future use.
[0077] This step allows users to obtain answers efficiently and reduces system and communication load. Furthermore, recording the selection results contributes to improving system accuracy and can be used to enhance the quality of answers in the future.
[0078] (Example 1)
[0079] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0080] Conventional question-answering systems often provide only a single answer to a user's question, making it difficult to offer multiple options. Furthermore, they lack mechanisms to incorporate user feedback on selected answers to improve the system's accuracy in the future. Therefore, there is a need to provide users with the most relevant information quickly and accurately.
[0081] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0082] In this invention, the server includes means for receiving questions from users, means for analyzing the received questions using a natural language processing model, means for generating multiple answers using a generative AI model based on the analysis results, means for ranking and presenting the answers based on reliability and relevance, and means for receiving and recording the answers selected by the user. This allows for providing users with a variety of answer options and further improves the accuracy of the system by recording the user's selection results.
[0083] "User" refers to the end user who operates this system and enters questions.
[0084] A "question" refers to the content of an inquiry that a user enters into the system, and is the sentence that the system analyzes.
[0085] A "natural language processing model" refers to an algorithm or program that analyzes input natural language data and understands and processes its content.
[0086] A "generative AI model" refers to artificial intelligence that generates new text in natural language based on input data and prompts.
[0087] "Answer" refers to a series of pieces of information and advice that the system generates in response to a user's question.
[0088] "Confidence level" refers to a value that quantitatively evaluates the degree of accuracy and usefulness of the generated responses.
[0089] "Relevance" refers to the degree to which the generated answer is relevant to the user's question.
[0090] "Ranking" refers to the process of determining a ranking of multiple responses based on their importance and relevance.
[0091] "Recording" refers to the act of saving the user's selected answer and its result in a database or similar system.
[0092] A "server" refers to a computer system that receives and analyzes user questions, generates answers, and ultimately stores and manages that information.
[0093] A "terminal" refers to a device used by a user to input questions and receive answers from a server.
[0094] To implement this invention, the entire system includes a series of processes in which it receives, analyzes, generates, and presents a question from the user, and finally records the user's choice.
[0095] The user enters a question using a terminal. The terminal receives this input and sends it to the server. For example, the user might enter "Please tell me about nearby restaurants."
[0096] The server analyzes the received question using a natural language processing model. Python natural language processing libraries (e.g., spaCy or NLTK) can be used for this analysis. The analysis results include key entities related to the question (such as location, time, and people). The server then translates the received question into specific information such as "restaurants nearby."
[0097] Next, the server uses a generative AI model (e.g., OpenAI®'s GPT-4®) to generate prompt sentences based on the analysis results, and generates multiple answers. Examples of prompt sentences include the following:
[0098] "The user's question is, 'Please tell me about nearby restaurants.' Please generate several specific answers."
[0099] The multiple responses generated are specifically as follows:
[0100] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[0101] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0102] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0103] The server ranks the generated responses based on their reliability and relevance, and sends the list to the terminal. The terminal displays the responses to the user in list format. The user can review the list and select the most appropriate response.
[0104] For example, if a user selects the answer "Restaurant A, located nearby, serves Italian food and has a rating of 4.5," the device sends this selection to the server. The server records the selected answer and associated feedback in a database, which is used to improve the system's accuracy in the future.
[0105] In this way, the system of the present invention can improve user convenience through a series of processes, while also improving the accuracy of the system itself.
[0106] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0107] Step 1:
[0108] The user enters a question into the terminal. The entered question is in text format, for example, "Please tell me about nearby restaurants." The terminal receives this input and sends it to the server. Here, the input data is the user's question text, and the output is the transfer of the question to the server.
[0109] Step 2:
[0110] The server analyzes received questions using a natural language processing model. Specifically, it uses Python natural language processing libraries (e.g., spaCy or NLTK) to extract the content and intent of the questions. The input data is the question text submitted by the user, and the output data is the key entities contained in the question text (e.g., location, time, person, etc.). Text tokenization and entity recognition are performed during the analysis process.
[0111] Step 3:
[0112] The server generates multiple answers using a generative AI model (e.g., OpenAI GPT-4) based on the analysis results. Here, a prompt is generated based on the analysis results and sent to the generative AI model. The input data is the analyzed results (e.g., keywords such as "nearby restaurants"), and an example of a prompt is "The user's question is 'Please tell me about nearby restaurants.' Please generate multiple specific answers." The output data is the multiple answers that are generated. The specific operation includes sending a request to the generative AI model and analyzing the response.
[0113] Step 4:
[0114] The server ranks the generated responses based on their confidence and relevance. Here, it calculates confidence and relevance scores for the generated responses and sorts them accordingly. The input data consists of multiple generated responses, and the output data is a ranked list of responses. This step involves algorithmic scoring and sorting.
[0115] Step 5:
[0116] The server sends a ranked list of answers to the terminal. The terminal receives this list and presents it to the user in list format. The input data is a ranked list of answers, and the output data is a visual display for the user. Specific operations include generating a web interface using HTML and JavaScript (registered trademark).
[0117] Step 6:
[0118] The user selects the most appropriate answer from a presented list. The terminal receives the user's selected answer and sends it to the server. The input data is the user's selected answer, and the output data is the transfer of the selection result to the server.
[0119] Step 7:
[0120] The server records the selected answers and associated feedback. Here, the selection results are stored in a database to help improve the system's accuracy in the future. The input data is the answers selected by the user, and the output data is the selection results recorded in the database. Specific operations include writing to the database.
[0121] (Application Example 1)
[0122] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0123] In today's world, users need to quickly obtain information about diverse payment methods and settlement options to make the best choice. However, conventional systems only provide a single answer to a question, lacking the information from multiple perspectives that users need. This makes it difficult for users to select the most appropriate payment method. Furthermore, the system lacks sufficient functionality to record user selections and refer to them for future inquiries. A new system is needed to address these problems.
[0124] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0125] In this invention, the server includes means for receiving questions, means for analyzing questions, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user and receiving and recording the answer selected by the user, means for generating and presenting appropriate answers to questions about payment methods, and means for recording questions and answers about payment methods for reference in future inquiries. This enables the user to quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, by recording the answers selected by the user, the accuracy of the system can be improved and used as reference information for future inquiries.
[0126] "Means for receiving questions" refers to a function that retrieves questions entered by users and incorporates them into the system.
[0127] "Means for analyzing questions" refers to a function that uses natural language processing technology to analyze received questions and understand their content and intent.
[0128] "Means for generating multiple answers" refers to a function that generates multiple answers to the same question from different perspectives based on the analysis results.
[0129] "A means of presenting multiple answers to a user and receiving and recording the answer selected by the user" refers to a function that displays multiple generated answers to the user and records the answer selected by the user in the system.
[0130] "Means for generating and presenting appropriate answers to questions about payment methods" refers to a function that generates and presents appropriate answers to user questions regarding payment methods and settlement methods.
[0131] The "means of recording questions and answers regarding payment methods for reference in future inquiries" refers to a function that records questions and generated / selected answers regarding payment methods entered by the user, and uses them as reference information when making future inquiries.
[0132] The system for carrying out this invention primarily operates with a server, terminals, and users. Detailed embodiments are described below.
[0133] Overall system configuration
[0134] The system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user and recording the answer selected by the user.
[0135] System Components
[0136] 1. Server:
[0137] A method for analyzing questions (natural language processing model)
[0138] A means of generating multiple answers (generative AI model)
[0139] A method for ranking and presenting multiple responses.
[0140] A means of recording the user's selected answer.
[0141] 2. Terminal:
[0142] Means of sending a question to the receiving server
[0143] Means for displaying responses received from the server
[0144] A means of sending the user's selected answer to the server.
[0145] 3. User:
[0146] Enter your payment method question.
[0147] Select the best answer from the multiple responses provided.
[0148] Operation flow
[0149] Question received:
[0150] The user enters a question about the payment method into the device. The device receives this question and sends it to the server.
[0151] Question analysis:
[0152] The server analyzes the received question using a natural language processing model (for example, HuggingFace's Transformer model). This analysis helps understand the content and intent of the question and extract relevant information.
[0153] Generating multiple answers:
[0154] The server generates multiple answers using a generative AI model (e.g., GPT-3®) based on the analysis results. This provides answers from different perspectives regarding the information the user is seeking.
[0155] Providing an answer:
[0156] The server ranks the generated responses based on their reliability and relevance and sends them to the terminal. The terminal then displays a list of the generated responses to the user.
[0157] Selecting and recording answers:
[0158] The user selects the most appropriate answer from several options presented. The device sends the selected answer to the server, which records it. This recorded information will be used as reference material for future inquiries.
[0159] Specific example
[0160] For example, if a user enters the question "What are the advantages of cashless payment?", the system will operate as follows:
[0161] User input questions:
[0162] "What are the advantages of cashless payments?"
[0163] Examples of prompts for a generative AI model:
[0164] Analyze the following questions and list three benefits of cashless payments. Please include specific examples and statistical data in your suggestions.
[0165] Question: "What are the advantages of cashless payments?"
[0166] Server analysis and response generation:
[0167] 1. Cashless payment is fast and convenient.
[0168] 2. There is no need to carry cash, which improves security.
[0169] 3. Payment history is recorded, making financial management easier.
[0170] Presentation and choice to the user:
[0171] Users can review these responses and select the one that best suits them. The selected response is recorded on the server and used to improve the service in the future.
[0172] In this way, users can quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, the information recorded by the system will be used as useful data for improving accuracy and responding to future inquiries.
[0173] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0174] Step 1:
[0175] User enters question
[0176] The user enters a question about the payment method into the device. The entered question is processed as string data within the device.
[0177] Input: A question entered by the user (e.g., "What are the advantages of cashless payment?")
[0178] Output: String data of the question
[0179] Step 2:
[0180] Submit a question
[0181] The terminal sends the received question to the server. Communication is performed using communication protocols such as HTTP requests.
[0182] Input: String data of the question
[0183] Output: Question data sent to the server
[0184] Step 3:
[0185] Question analysis
[0186] The server analyzes the received question using a natural language processing model (e.g., HuggingFace's Transformer model). The analysis results include the intent of the question and related key entities.
[0187] Input: Question data (string) sent to the server
[0188] Data processing / computation: Analyzing questions using natural language processing models (e.g., sentence element analysis)
[0189] Output: Analysis results of the question (e.g., question intent, relevant key entities)
[0190] Step 4:
[0191] Generating an answer
[0192] The server generates multiple answers using an AI model (e.g., GPT-3) based on the analysis results. The AI model generates answers based on the prompt text.
[0193] Input: Analysis results of the question
[0194] Prompt generation: "Analyze the following question and list three benefits of cashless payments. Include specific examples and statistical data for the benefits. Question: 'What are the benefits of cashless payments?'"
[0195] Data processing / calculation: Answer generation using generative AI models
[0196] Output: Multiple responses (e.g., "Cashless payments are fast and convenient.", "There is no need to carry cash, and security is improved.", "Payment history is recorded, making financial management easier.")
[0197] Step 5:
[0198] Ranking and presentation of responses
[0199] The server ranks the generated responses based on their reliability and relevance, and then sends them to the terminal.
[0200] Input: Multiple response data
[0201] Data processing / calculation: Ranking of responses (confidence level, relevance)
[0202] Output: Ranked response data
[0203] Step 6:
[0204] Providing answers to users
[0205] The terminal displays ranked responses received from the server to the user. The user selects the most appropriate response from the displayed options.
[0206] Input: Ranked response data
[0207] Output: Best answer selected by the user
[0208] Step 7:
[0209] Submitting and recording your response selections.
[0210] The terminal sends the user's selected answer to the server, which then records it. This recorded data is used as reference material for future inquiries.
[0211] Input: User-selected response data
[0212] Output: Response data recorded on the server
[0213] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0214] The embodiments for carrying out the present invention are described below. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Moreover, by combining the present invention with an emotion engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[0215] System Configuration
[0216] This system operates by including a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[0217] Received a question
[0218] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[0219] Question analysis
[0220] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people). Furthermore, the server uses an emotion engine to analyze the user's emotions from their input and incorporates the results of that analysis into the question analysis.
[0221] Generating multiple answers
[0222] The server generates multiple answers based on the analysis results. It uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0223] Providing an answer
[0224] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0225] Recognition and reflection of emotions
[0226] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[0227] Selecting and recording answers
[0228] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0229] Specific example
[0230] For example, consider a scenario where a user asks, "Can you recommend some nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives an analysis result based on the user's current location and the results of the sentiment engine. It then generates several possible answers, such as the following:
[0231] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5 (because users are relaxed)."
[0232] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0233] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0234] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection result and sentiment data to the server, which then records it.
[0235] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system.
[0236] The following describes the processing flow.
[0237] Step 1:
[0238] The user enters a question into the device. Specifically, the user enters a natural language question such as "Please tell me about nearby restaurants," and when they press the send button, the input data is stored on the device.
[0239] Step 2:
[0240] The terminal receives user input, converts it into a data format, and sends it to the server. Here, the terminal converts the input text into a format such as JSON and communicates it to the server over the network.
[0241] Step 3:
[0242] The server receives the question. The server receives the data packet sent from the terminal and begins processing to analyze its contents.
[0243] Step 4:
[0244] The server analyzes the question. This analysis uses a natural language processing (NLP) model to perform grammatical analysis of the text, extract keywords, and understand intent. For example, it might extract the key phrase "nearby restaurants."
[0245] Step 5:
[0246] The server receives input and passes it to the emotion engine to analyze the user's emotions. It reads emotions from the user's input text and identifies them, for example, "excited" or "relaxed."
[0247] Step 6:
[0248] The server integrates the analysis results and sentiment data, and searches the database based on that. The server considers location information and sentiment, and retrieves multiple responses from the relevant restaurant information database.
[0249] Step 7:
[0250] The server generates multiple answers. Based on the analyzed data, generative AI is used to create a variety of responses. For example, these might include "Restaurant A has a high rating," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0251] Step 8:
[0252] The server evaluates the generated responses and ranks them based on their reliability and relevance. Each response is scored, and priority is determined by considering the user's sentiment.
[0253] Step 9:
[0254] The server sends a ranked list of answers to the terminal. The organized list of answers is sent to the terminal, and the data is prepared for display to the user.
[0255] Step 10:
[0256] The device displays a list of received responses to the user. The device displays the responses on the screen in a list format, allowing the user to review the content of each response.
[0257] Step 11:
[0258] The user selects the most appropriate answer from the presented list of answers. For example, the user selects "Details of Restaurant A".
[0259] Step 12:
[0260] The device sends the user's selection results to the server. When the user taps a selection button, the data of that selection result is sent to the server.
[0261] Step 13:
[0262] The server receives and records the user's selection results and sentiment data. The selected answers and user sentiment data are saved in a database and can be used for future question analysis and answer generation.
[0263] These detailed steps allow for efficient and accurate responses while taking user emotions into consideration. Furthermore, they contribute to the system's continuous learning and improvement.
[0264] (Example 2)
[0265] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0266] Current question-answering systems struggle to generate responses that take user emotions into account, limiting their ability to provide optimal information tailored to user needs. Furthermore, when generating and presenting multiple different answers, they often lack proper ranking based on reliability and relevance. Additionally, there's a lack of mechanisms to incorporate user feedback and emotional data into subsequent response generation, preventing significant improvements in overall system accuracy.
[0267] In Example 2, the identification processing by the identification processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user's question, means for analyzing the question using a natural language processing model, means for generating multiple answers using an AI model based on the analysis results, means for analyzing the user's emotions using emotion analysis means and reflecting this in the answer generation, means for ranking the multiple answers based on reliability and relevance and presenting them to the user, and means for receiving and recording the answer selected by the user. This makes it possible to generate responses that take the user's emotions into consideration and provide appropriate information through ranking based on reliability and relevance. Furthermore, by reflecting user feedback and emotion data in subsequent analyses and response generation, the overall accuracy of the system can be improved.
[0268] A "user" refers to a person who inputs a question into the system and selects the answer provided.
[0269] "Terminal" refers to a hardware device or software application used by a user to input questions and receive answers.
[0270] A "server" refers to a central processing unit or system that receives and analyzes user questions and provides generated answers.
[0271] A "question" refers to the content of an inquiry that a user enters into the system via their device.
[0272] A "natural language processing model" refers to an algorithm or software used to analyze a user's question and understand its meaning and intent.
[0273] A "generative AI model" refers to an artificial intelligence algorithm that generates multiple answers based on analysis results.
[0274] "Emotional analysis means" refers to technology that analyzes the emotions contained in a user's question and reflects the results in response generation.
[0275] "Multiple answers" refers to multiple responses generated in response to a user's question, each consisting of different perspectives and content.
[0276] "Reliability" refers to the criteria used to evaluate the accuracy and credibility of the generated responses.
[0277] "Relevance" refers to the criteria used to evaluate how appropriate the generated answer is to the user's question.
[0278] "Ranking" refers to the process of prioritizing multiple generated responses based on their reliability and relevance.
[0279] "Feedback" refers to information about the answers selected by users and their evaluations.
[0280] "Emotional data" refers to information about a user's emotions obtained through emotion analysis methods.
[0281] The embodiments for carrying out the present invention are described below.
[0282] This system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user and receiving and recording the answer selected by the user. Additionally, by combining an emotion analysis engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[0283] This system operates including a terminal for receiving the user's questions, a server for analyzing the questions and generating multiple answers, and an emotion analysis engine.
[0284] The user inputs a question into the input field on the terminal interface. When the user inputs a question and presses the send button, the question is sent to the terminal. For example, a question like "Please tell me a nearby restaurant" can be considered.
[0285] The terminal sends the input question to the server. The transmission is usually performed securely using the HTTPS protocol.
[0286] The server uses a natural language processing (NLP) model to analyze the received question. Specifically, it utilizes an NLP model based on BERT, etc. to analyze the content and structure of the question. For example, from the question "Please tell me a nearby restaurant", key entities such as "nearby" and "restaurant" are extracted.
[0287] When analyzing the received question, the server uses an emotion analysis engine to analyze the user's emotions. For example, if the user is asking a question in a very strong tone, the emotion analysis engine identifies the emotion as "anger" and adds this information to the analysis result.
[0288] Based on the analysis results, the server generates multiple answers using a generative AI model (e.g., GPT-4). It generates diverse answers to reflect different perspectives and approaches to the question. For example, it might generate answers such as, "Restaurant A nearby is Italian and has a rating of 4.5," "Restaurant B is a 5-minute walk away and has recently been renovated," or "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0289] The server ranks the generated responses based on their reliability and relevance. This displays more relevant responses higher up, supporting quicker user selection. The generated list of responses is sent to the terminal.
[0290] The terminal displays the received list of answers to the user in list format. The user reviews each answer and selects the one they deem best. For example, if the user selects the details for "Restaurant A," the selection is sent from the terminal to the server.
[0291] The server records the user's selected answers, associated feedback, and sentiment data from the sentiment analysis engine. This data is used as reference data for subsequent question analysis and answer generation, improving the overall accuracy of the system.
[0292] Examples of specific prompt messages include the following:
[0293] "Could you recommend some nearby restaurants?"
[0294] "I'm looking for a highly-rated restaurant."
[0295] "Are there any 24-hour restaurants I can go to right now?"
[0296] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, enabling the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system in the future.
[0297] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0298] Step 1: Enter your question
[0299] The user enters a question in text format into the system interface. The entered question is sent to the terminal in the format "Question: Please tell me about nearby restaurants." The terminal receives this input data and prepares to proceed to the next step. The input is text data, and the output is the text data of the question sent to the terminal.
[0300] Step 2: Submit your question
[0301] The terminal sends questions received from the user to the server over the internet. Typically, the HTTPS protocol is used to securely transmit the data. The input is the text data of the question sent from the user to the terminal, and the output is the text data of the question sent to the server.
[0302] Step 3: Analyzing the Question
[0303] The server analyzes the received question using a natural language processing model. Specifically, it uses the BERT model to analyze the meaning and structure of the text and extract the key entities "nearby" and "restaurant." The input is the text data of the question received by the server, and the output is the extracted key entities and the analysis results.
[0304] Step 4: Emotional Analysis
[0305] The server simultaneously uses a sentiment analysis engine to analyze the sentiment contained in the user's question. For example, if the user's text contains a strong interrogative tone or an emphatic expression, the sentiment is analyzed as "urgency" or "expectation". The input is the text data of the question received by the server, and the output is the analyzed sentiment data.
[0306] Step 5: Generation of Multiple Answers
[0307] Based on the question and the sentiment analysis results, the server uses a generative AI model (e.g., GPT-4) to generate multiple answers. For example, answers from different perspectives such as "Restaurant A has high ratings", "Restaurant B is nearby and reasonable", "Restaurant C is convenient as it is open 24 hours" are generated. The input is the analysis results and the sentiment data, and the output is the multiple generated answers.
[0308] Step 6: Ranking of Answers
[0309] The server ranks the multiple generated answers based on reliability and relevance. This includes a process of evaluating the content of the generated answers and determining the ranking in comparison with the user's question and the sentiment analysis results. The input is the multiple generated answers, and the output is the ranked list of answers.
[0310] Step 7: Presentation of Answers
[0311] The server sends the ranked list of answers to the terminal. The terminal displays the received list of answers to the user in list form. The input is the ranked list of answers sent from the server, and the output is the list-form answers displayed on the terminal.
[0312] Step 8: Selection of Answers
[0313] The user selects the most appropriate answer from the displayed list. For example, if the user selects details for "Restaurant A," that selection is recorded on the device. The input is the user's selection from the list, and the output is the selection recorded on the device.
[0314] Step 9: Save the selected answer
[0315] The terminal sends the user's selection results to the server. The server records the selected response, associated feedback, and sentiment data. This data is used for future analysis and response generation. The input is the selection results and sentiment data sent from the terminal to the server, and the output is the data recorded on the server.
[0316] (Application Example 2)
[0317] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0318] In recent years, food delivery services have faced the challenge of users having to choose from a vast number of options, potentially leading to decreased satisfaction. Furthermore, the one-sided provision of information without considering user feelings can result in a lack of personalization, further reducing satisfaction. There is a need to address these challenges and provide systems that allow users to make optimal choices more easily and quickly.
[0319] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a question, means for analyzing the question, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user, means for receiving and recording the answer selected by the user, an emotion engine for analyzing the user's emotions, means for reflecting the analysis results of the emotion engine in the analysis of the question and the generation of answers, and means for processing information related to food delivery. This makes it possible to generate appropriate answers that take the user's emotions into consideration and improve the user experience.
[0320] "Means for receiving questions" refers to a device or software for sending and receiving questions entered by a user into a system.
[0321] "Means for analyzing questions" refers to the devices or software necessary to analyze received questions and understand their content and intent.
[0322] "Means for generating multiple answers based on analysis results" refers to a device or software that creates multiple answers from different perspectives based on the analysis results of a question.
[0323] "Means of presenting to the user" refers to a device or software for displaying multiple generated answers to the user and providing them as choices.
[0324] "Means for receiving and recording user-selected answers" refers to a device or software for receiving user-selected answers and recording the content of those selections.
[0325] An "emotion engine" is a device or software that analyzes a user's emotions and provides the analysis results to the system.
[0326] "Means for processing information related to food delivery" refers to devices or software that analyze food delivery-related data and provide users with appropriate information.
[0327] A "natural language processing model" is a machine learning model that analyzes natural language text entered by a user to understand its content and intent.
[0328] "Means for ranking responses based on their reliability and relevance" refers to a device or software that ranks multiple generated responses according to their reliability and relevance and presents them to the user in the most optimal order.
[0329] This invention describes embodiments for carrying out this invention. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Furthermore, by combining it with an emotion engine, it is possible to recognize the user's emotions and provide more accurate answers.
[0330] System Configuration
[0331] This system includes a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[0332] Received a question
[0333] The user enters a question into the terminal. When the user enters the question in natural language and presses the send button, the question is sent to the terminal. At this time, the terminal functions as an interface for sending the user's input to the server.
[0334] Question analysis
[0335] The server analyzes the received questions. A natural language processing model (e.g., GPT-3) is used for the analysis to understand the content and intent of the questions. The server also uses an emotion engine (e.g., EmoNet) to analyze the user's emotions from their text input and incorporates the results of this analysis into the question analysis.
[0336] Generating multiple answers
[0337] Based on the analysis results, the server generates multiple answers using a generative AI model. By providing answers from different perspectives, a variety of answers are available for the user to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is currently running a promotion," and "Restaurant C is friendly."
[0338] Providing an answer
[0339] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0340] Recognition and reflection of emotions
[0341] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[0342] Selecting and recording answers
[0343] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0344] Specific example
[0345] As a concrete example, let's consider a case where a user enters the question "What should I eat today?" into their device. The user enters this question into the device, and the device sends the question to the server. The server analyzes the question and derives an analysis result based on current sentiment data. It then generates several possible answers, such as the following:
[0346] 1. "There's a highly-rated Italian restaurant nearby."
[0347] 2. "Restaurant B has a special menu available as part of a promotion."
[0348] 3. "Restaurant C is popular for its friendly atmosphere."
[0349] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they feel is most appropriate. For example, if the user selects "Italian restaurant," the terminal sends the selection result and sentiment data to the server, which records it.
[0350] Example of a prompt
[0351] A user asked the question, "What should I eat today?" Considering the emotion "relaxed," please provide the following answer:
[0352] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, the accuracy of the system is improved by recording emotional data.
[0353] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0354] Step 1:
[0355] The user enters a question into the device. For example, they might enter text such as "What should I eat today?" and press the send button. The entered natural language data is then sent from the device to the server.
[0356] Input: User question text
[0357] Output: Data transfer from terminal to server
[0358] Step 2:
[0359] The server analyzes the questions received from the user. A natural language processing model (e.g., GPT-3) is used for the analysis. The server tokenizes the question text and performs analysis to understand the context.
[0360] Input: Question text sent from the device
[0361] Output: Question analysis results (tokenized text, contextual data)
[0362] Step 3:
[0363] The server uses an emotion engine to analyze the user's emotions from the question text. The emotion engine (e.g., EmoNet) extracts emotion parameters from the text and generates data accordingly.
[0364] Input: Question text
[0365] Output: Sentiment analysis results (emotional parameters)
[0366] Step 4:
[0367] The server integrates the analysis results of the question and the sentiment analysis results, and generates multiple answers using a generative AI model. For example, the server generates an answer using the prompt "The user asked the question 'What should I eat today?'. Considering the sentiment 'relaxed', please provide the following answers."
[0368] Input: Integrated analysis results (questionnaire analysis results and sentiment analysis results)
[0369] Output: Multiple generated answers
[0370] Step 5:
[0371] The server-generated responses are ranked based on their reliability and relevance. A scoring algorithm is used for this evaluation, calculating a reliability score and a relevance score for each response.
[0372] Input: Multiple generated answers
[0373] Output: Ranked list of answers
[0374] Step 6:
[0375] The server sends a ranked list of answers to the device. The device presents this to the user in list format, and the user selects the answer they deem most appropriate.
[0376] Input: Ranked list of answers
[0377] Output: Display of answer list by terminal
[0378] Step 7:
[0379] The user selects the most appropriate answer from the presented list. The device receives this selection and sends it to the server.
[0380] Input: User's selected answer
[0381] Output: Data transfer of selection results from terminal to server
[0382] Step 8:
[0383] The server records the selected answer, associated feedback, and sentiment data generated by the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0384] Input: User selection results and sentiment data
[0385] Output: Updated recorded database
[0386] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0387] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0388] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0389] [Second Embodiment]
[0390] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0391] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0392] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0393] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0394] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0395] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0396] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0397] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0398] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0399] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0400] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0401] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0402] The embodiments for carrying out the present invention are described below. This system mainly operates with a server, terminals, and users.
[0403] System Configuration
[0404] This system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. The functions of this system are as follows:
[0405] Received a question
[0406] The user enters a question into the terminal. The terminal receives this input and sends it to the server. In this process, the user's question is incorporated into the system.
[0407] Question analysis
[0408] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people, etc.).
[0409] Generating multiple answers
[0410] The server generates multiple answers based on the analysis results. Specifically, it uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, when providing several recommendations for a restaurant, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0411] Providing an answer
[0412] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0413] Selecting and recording answers
[0414] The user selects the best answer from the presented options. The device receives this selection and sends it to the server. The server records the selected answer and associated feedback to help with future improvements.
[0415] Specific example
[0416] For example, consider a scenario where a user asks, "Can you tell me about nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives the analysis results based on the user's current location. It then generates several possible answers, such as the following:
[0417] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[0418] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0419] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0420] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection to the server, which records it.
[0421] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question, enabling the user to quickly obtain the most suitable information. Furthermore, recording the user's selection results can help improve the accuracy of the system.
[0422] The following describes the processing flow.
[0423] Step 1:
[0424] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[0425] Step 2:
[0426] The terminal receives user input, converts it to a data format, and sends it to the server. The terminal converts the entered text data to the appropriate format and transfers it to the server.
[0427] Step 3:
[0428] The server receives the question. The server receives the data sent from the terminal and enters a waiting state for the next processing.
[0429] Step 4:
[0430] The server analyzes the received question. A natural language processing model is used for the analysis to extract the intent of the question and relevant key entities. For example, it recognizes keywords such as "nearby restaurants."
[0431] Step 5:
[0432] The server searches the database based on the analysis results. Based on the analyzed key entities, it searches the database for relevant information and generates multiple possible answers.
[0433] Step 6:
[0434] The server evaluates multiple generated responses and ranks them based on their reliability and relevance. Each response is scored and sorted in order of most appropriateness.
[0435] Step 7:
[0436] The server sends a ranked list of responses to the device. It organizes the responses in a list format and sends the data to the device for presentation to the user.
[0437] Step 8:
[0438] The device displays a list of received responses to the user. The responses are presented on the screen in a list format to make it easy for the user to review each one.
[0439] Step 9:
[0440] The user selects the most appropriate answer from the presented list of answers. The user reviews the list and chooses the answer that best matches their needs.
[0441] Step 10:
[0442] The device sends the user's selection results to the server. When the user presses the select button, information about the selected answer is sent to the server.
[0443] Step 11:
[0444] The server receives and records the user's selection results. The received selection results are saved to a database and used as reference data for future use.
[0445] This step allows users to obtain answers efficiently and reduces system and communication load. Furthermore, recording the selection results contributes to improving system accuracy and can be used to enhance the quality of answers in the future.
[0446] (Example 1)
[0447] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0448] Conventional question-answering systems often provide only a single answer to a user's question, making it difficult to offer multiple options. Furthermore, they lack mechanisms to incorporate user feedback on selected answers to improve the system's accuracy in the future. Therefore, there is a need to provide users with the most relevant information quickly and accurately.
[0449] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0450] In this invention, the server includes means for receiving questions from users, means for analyzing the received questions using a natural language processing model, means for generating multiple answers using a generative AI model based on the analysis results, means for ranking and presenting the answers based on reliability and relevance, and means for receiving and recording the answers selected by the user. This allows for providing users with a variety of answer options and further improves the accuracy of the system by recording the user's selection results.
[0451] "User" refers to the end user who operates this system and enters questions.
[0452] A "question" refers to the content of an inquiry that a user enters into the system, and is the sentence that the system analyzes.
[0453] A "natural language processing model" refers to an algorithm or program that analyzes input natural language data and understands and processes its content.
[0454] A "generative AI model" refers to artificial intelligence that generates new text in natural language based on input data and prompts.
[0455] "Answer" refers to a series of pieces of information and advice that the system generates in response to a user's question.
[0456] "Confidence level" refers to a value that quantitatively evaluates the degree of accuracy and usefulness of the generated responses.
[0457] "Relevance" refers to the degree to which the generated answer is relevant to the user's question.
[0458] "Ranking" refers to the process of determining a ranking of multiple responses based on their importance and relevance.
[0459] "Recording" refers to the act of saving the user's selected answer and its result in a database or similar system.
[0460] A "server" refers to a computer system that receives and analyzes user questions, generates answers, and ultimately stores and manages that information.
[0461] A "terminal" refers to a device used by a user to input questions and receive answers from a server.
[0462] To implement this invention, the entire system includes a series of processes in which it receives, analyzes, generates, and presents a question from the user, and finally records the user's choice.
[0463] The user enters a question using a terminal. The terminal receives this input and sends it to the server. For example, the user might enter "Please tell me about nearby restaurants."
[0464] The server analyzes the received question using a natural language processing model. Python natural language processing libraries (e.g., spaCy or NLTK) can be used for this analysis. The analysis results include key entities related to the question (such as location, time, and people). The server then translates the received question into specific information such as "restaurants nearby."
[0465] Next, the server uses a generative AI model (e.g., OpenAI's GPT-4) to generate prompt sentences based on the analysis results, and generates multiple answers. Examples of prompt sentences include:
[0466] "The user's question is, 'Please tell me about nearby restaurants.' Please generate several specific answers."
[0467] The multiple responses generated are specifically as follows:
[0468] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[0469] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0470] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0471] The server ranks the generated responses based on their reliability and relevance, and sends the list to the terminal. The terminal displays the responses to the user in list format. The user can review the list and select the most appropriate response.
[0472] For example, if a user selects the answer "Restaurant A, located nearby, serves Italian food and has a rating of 4.5," the device sends this selection to the server. The server records the selected answer and associated feedback in a database, which is used to improve the system's accuracy in the future.
[0473] In this way, the system of the present invention can improve user convenience through a series of processes, while also improving the accuracy of the system itself.
[0474] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0475] Step 1:
[0476] The user enters a question into the terminal. The entered question is in text format, for example, "Please tell me about nearby restaurants." The terminal receives this input and sends it to the server. Here, the input data is the user's question text, and the output is the transfer of the question to the server.
[0477] Step 2:
[0478] The server analyzes received questions using a natural language processing model. Specifically, it uses Python natural language processing libraries (e.g., spaCy or NLTK) to extract the content and intent of the questions. The input data is the question text submitted by the user, and the output data is the key entities contained in the question text (e.g., location, time, person, etc.). Text tokenization and entity recognition are performed during the analysis process.
[0479] Step 3:
[0480] The server generates multiple answers using a generative AI model (e.g., OpenAI GPT-4) based on the analysis results. Here, a prompt is generated based on the analysis results and sent to the generative AI model. The input data is the analyzed results (e.g., keywords such as "nearby restaurants"), and an example of a prompt is "The user's question is 'Please tell me about nearby restaurants.' Please generate multiple specific answers." The output data is the multiple answers that are generated. The specific operation includes sending a request to the generative AI model and analyzing the response.
[0481] Step 4:
[0482] The server ranks the generated responses based on their confidence and relevance. Here, it calculates confidence and relevance scores for the generated responses and sorts them accordingly. The input data consists of multiple generated responses, and the output data is a ranked list of responses. This step involves algorithmic scoring and sorting.
[0483] Step 5:
[0484] The server sends a ranked list of answers to the terminal. The terminal receives this list and presents it to the user in list format. The input data is a ranked list of answers, and the output data is a visual display for the user. Specific operations include generating a web interface using HTML and JavaScript.
[0485] Step 6:
[0486] The user selects the most appropriate answer from a presented list. The terminal receives the user's selected answer and sends it to the server. The input data is the user's selected answer, and the output data is the transfer of the selection result to the server.
[0487] Step 7:
[0488] The server records the selected answers and associated feedback. Here, the selection results are stored in a database to help improve the system's accuracy in the future. The input data is the answers selected by the user, and the output data is the selection results recorded in the database. Specific operations include writing to the database.
[0489] (Application Example 1)
[0490] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0491] In today's world, users need to quickly obtain information about diverse payment methods and settlement options to make the best choice. However, conventional systems only provide a single answer to a question, lacking the information from multiple perspectives that users need. This makes it difficult for users to select the most appropriate payment method. Furthermore, the system lacks sufficient functionality to record user selections and refer to them for future inquiries. A new system is needed to address these problems.
[0492] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0493] In this invention, the server includes means for receiving questions, means for analyzing questions, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user and receiving and recording the answer selected by the user, means for generating and presenting appropriate answers to questions about payment methods, and means for recording questions and answers about payment methods for reference in future inquiries. This enables the user to quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, by recording the answers selected by the user, the accuracy of the system can be improved and used as reference information for future inquiries.
[0494] "Means for receiving questions" refers to a function that retrieves questions entered by users and incorporates them into the system.
[0495] "Means for analyzing questions" refers to a function that uses natural language processing technology to analyze received questions and understand their content and intent.
[0496] "Means for generating multiple answers" refers to a function that generates multiple answers to the same question from different perspectives based on the analysis results.
[0497] "A means of presenting multiple answers to a user and receiving and recording the answer selected by the user" refers to a function that displays multiple generated answers to the user and records the answer selected by the user in the system.
[0498] "Means for generating and presenting appropriate answers to questions about payment methods" refers to a function that generates and presents appropriate answers to user questions regarding payment methods and settlement methods.
[0499] The "means of recording questions and answers regarding payment methods for reference in future inquiries" refers to a function that records questions and generated / selected answers regarding payment methods entered by the user, and uses them as reference information when making future inquiries.
[0500] The system for carrying out this invention primarily operates with a server, terminals, and users. Detailed embodiments are described below.
[0501] Overall system configuration
[0502] The system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user and recording the answer selected by the user.
[0503] System Components
[0504] 1. Server:
[0505] A method for analyzing questions (natural language processing model)
[0506] A means of generating multiple answers (generative AI model)
[0507] A method for ranking and presenting multiple responses.
[0508] A means of recording the user's selected answer.
[0509] 2. Terminal:
[0510] Means of sending a question to the receiving server
[0511] Means for displaying responses received from the server
[0512] A means of sending the user's selected answer to the server.
[0513] 3. User:
[0514] Enter your payment method question.
[0515] Select the best answer from the multiple responses provided.
[0516] Operation flow
[0517] Question received:
[0518] The user enters a question about the payment method into the device. The device receives this question and sends it to the server.
[0519] Question analysis:
[0520] The server analyzes the received question using a natural language processing model (for example, HuggingFace's Transformer model). This analysis helps understand the content and intent of the question and extract relevant information.
[0521] Generating multiple answers:
[0522] The server generates multiple answers using a generative AI model (e.g., GPT-3) based on the analysis results. This provides answers from different perspectives on the information the user is seeking.
[0523] Providing an answer:
[0524] The server ranks the generated responses based on their reliability and relevance and sends them to the terminal. The terminal then displays a list of the generated responses to the user.
[0525] Selecting and recording answers:
[0526] The user selects the most appropriate answer from several options presented. The device sends the selected answer to the server, which records it. This recorded information will be used as reference material for future inquiries.
[0527] Specific example
[0528] For example, if a user enters the question "What are the advantages of cashless payment?", the system will operate as follows:
[0529] User input questions:
[0530] "What are the advantages of cashless payments?"
[0531] Examples of prompts for a generative AI model:
[0532] Analyze the following questions and list three benefits of cashless payments. Please include specific examples and statistical data in your suggestions.
[0533] Question: "What are the advantages of cashless payments?"
[0534] Server analysis and response generation:
[0535] 1. Cashless payment is fast and convenient.
[0536] 2. There is no need to carry cash, which improves security.
[0537] 3. Payment history is recorded, making financial management easier.
[0538] Presentation and choice to the user:
[0539] Users can review these responses and select the one that best suits them. The selected response is recorded on the server and used to improve the service in the future.
[0540] In this way, users can quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, the information recorded by the system will be used as useful data for improving accuracy and responding to future inquiries.
[0541] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0542] Step 1:
[0543] User enters question
[0544] The user enters a question about the payment method into the device. The entered question is processed as string data within the device.
[0545] Input: A question entered by the user (e.g., "What are the advantages of cashless payment?")
[0546] Output: String data of the question
[0547] Step 2:
[0548] Submit a question
[0549] The terminal sends the received question to the server. Communication is performed using communication protocols such as HTTP requests.
[0550] Input: String data of the question
[0551] Output: Question data sent to the server
[0552] Step 3:
[0553] Question analysis
[0554] The server analyzes the received question using a natural language processing model (e.g., HuggingFace's Transformer model). The analysis results include the intent of the question and related key entities.
[0555] Input: Question data (string) sent to the server
[0556] Data processing / computation: Analyzing questions using natural language processing models (e.g., sentence element analysis)
[0557] Output: Analysis results of the question (e.g., question intent, relevant key entities)
[0558] Step 4:
[0559] Generating an answer
[0560] The server generates multiple answers using an AI model (e.g., GPT-3) based on the analysis results. The AI model generates answers based on the prompt text.
[0561] Input: Analysis results of the question
[0562] Prompt generation: "Analyze the following question and list three benefits of cashless payments. Include specific examples and statistical data for the benefits. Question: 'What are the benefits of cashless payments?'"
[0563] Data processing / calculation: Answer generation using generative AI models
[0564] Output: Multiple responses (e.g., "Cashless payments are fast and convenient.", "There is no need to carry cash, and security is improved.", "Payment history is recorded, making financial management easier.")
[0565] Step 5:
[0566] Ranking and presentation of responses
[0567] The server ranks the generated responses based on their reliability and relevance, and then sends them to the terminal.
[0568] Input: Multiple response data
[0569] Data processing / calculation: Ranking of responses (confidence level, relevance)
[0570] Output: Ranked response data
[0571] Step 6:
[0572] Providing answers to users
[0573] The terminal displays ranked responses received from the server to the user. The user selects the most appropriate response from the displayed options.
[0574] Input: Ranked response data
[0575] Output: Best answer selected by the user
[0576] Step 7:
[0577] Submitting and recording your response selections.
[0578] The terminal sends the user's selected answer to the server, which then records it. This recorded data is used as reference material for future inquiries.
[0579] Input: User-selected response data
[0580] Output: Response data recorded on the server
[0581] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0582] The embodiments for carrying out the present invention are described below. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Moreover, by combining the present invention with an emotion engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[0583] System Configuration
[0584] This system operates by including a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[0585] Received a question
[0586] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[0587] Question analysis
[0588] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people). Furthermore, the server uses an emotion engine to analyze the user's emotions from their input and incorporates the results of that analysis into the question analysis.
[0589] Generating multiple answers
[0590] The server generates multiple answers based on the analysis results. It uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0591] Providing an answer
[0592] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0593] Recognition and reflection of emotions
[0594] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[0595] Selecting and recording answers
[0596] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0597] Specific example
[0598] For example, consider a scenario where a user asks, "Can you recommend some nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives an analysis result based on the user's current location and the results of the sentiment engine. It then generates several possible answers, such as the following:
[0599] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5 (because users are relaxed)."
[0600] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0601] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0602] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection result and sentiment data to the server, which then records it.
[0603] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system.
[0604] The following describes the processing flow.
[0605] Step 1:
[0606] The user enters a question into the device. Specifically, the user enters a natural language question such as "Please tell me about nearby restaurants," and when they press the send button, the input data is stored on the device.
[0607] Step 2:
[0608] The terminal receives user input, converts it into a data format, and sends it to the server. Here, the terminal converts the input text into a format such as JSON and communicates it to the server over the network.
[0609] Step 3:
[0610] The server receives the question. The server receives the data packet sent from the terminal and begins processing to analyze its contents.
[0611] Step 4:
[0612] The server analyzes the question. This analysis uses a natural language processing (NLP) model to perform grammatical analysis of the text, extract keywords, and understand intent. For example, it might extract the key phrase "nearby restaurants."
[0613] Step 5:
[0614] The server receives input and passes it to the emotion engine to analyze the user's emotions. It reads emotions from the user's input text and identifies them, for example, "excited" or "relaxed."
[0615] Step 6:
[0616] The server integrates the analysis results and sentiment data, and searches the database based on that. The server considers location information and sentiment, and retrieves multiple responses from the relevant restaurant information database.
[0617] Step 7:
[0618] The server generates multiple answers. Based on the analyzed data, generative AI is used to create a variety of responses. For example, these might include "Restaurant A has a high rating," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0619] Step 8:
[0620] The server evaluates the generated responses and ranks them based on their reliability and relevance. Each response is scored, and priority is determined by considering the user's sentiment.
[0621] Step 9:
[0622] The server sends a ranked list of answers to the terminal. The organized list of answers is sent to the terminal, and the data is prepared for display to the user.
[0623] Step 10:
[0624] The device displays a list of received responses to the user. The device displays the responses on the screen in a list format, allowing the user to review the content of each response.
[0625] Step 11:
[0626] The user selects the most appropriate answer from the presented list of answers. For example, the user selects "Details of Restaurant A".
[0627] Step 12:
[0628] The device sends the user's selection results to the server. When the user taps a selection button, the data of that selection result is sent to the server.
[0629] Step 13:
[0630] The server receives and records the user's selection results and sentiment data. The selected answers and user sentiment data are saved in a database and can be used for future question analysis and answer generation.
[0631] These detailed steps allow for efficient and accurate responses while taking user emotions into consideration. Furthermore, they contribute to the system's continuous learning and improvement.
[0632] (Example 2)
[0633] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0634] Current question-answering systems struggle to generate responses that take user emotions into account, limiting their ability to provide optimal information tailored to user needs. Furthermore, when generating and presenting multiple different answers, they often lack proper ranking based on reliability and relevance. Additionally, there's a lack of mechanisms to incorporate user feedback and emotional data into subsequent response generation, preventing significant improvements in overall system accuracy.
[0635] In Example 2, the identification processing by the identification processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user's question, means for analyzing the question using a natural language processing model, means for generating multiple answers using an AI model based on the analysis results, means for analyzing the user's emotions using emotion analysis means and reflecting this in the answer generation, means for ranking the multiple answers based on reliability and relevance and presenting them to the user, and means for receiving and recording the answer selected by the user. This makes it possible to generate responses that take the user's emotions into consideration and provide appropriate information through ranking based on reliability and relevance. Furthermore, by reflecting user feedback and emotion data in subsequent analyses and response generation, the overall accuracy of the system can be improved.
[0636] A "user" refers to a person who inputs a question into the system and selects the answer provided.
[0637] "Terminal" refers to a hardware device or software application used by a user to input questions and receive answers.
[0638] A "server" refers to a central processing unit or system that receives and analyzes user questions and provides generated answers.
[0639] A "question" refers to the content of an inquiry that a user enters into the system via their device.
[0640] A "natural language processing model" refers to an algorithm or software used to analyze a user's question and understand its meaning and intent.
[0641] A "generative AI model" refers to an artificial intelligence algorithm that generates multiple answers based on analysis results.
[0642] "Emotional analysis means" refers to technology that analyzes the emotions contained in a user's question and reflects the results in response generation.
[0643] "Multiple answers" refers to multiple responses generated in response to a user's question, each consisting of different perspectives and content.
[0644] "Reliability" refers to the criteria used to evaluate the accuracy and credibility of the generated responses.
[0645] "Relevance" refers to the criteria used to evaluate how appropriate the generated answer is to the user's question.
[0646] "Ranking" refers to the process of prioritizing multiple generated responses based on their reliability and relevance.
[0647] "Feedback" refers to information about the answers selected by users and their evaluations.
[0648] "Emotional data" refers to information about a user's emotions obtained through emotion analysis methods.
[0649] The embodiments for carrying out the present invention are described below.
[0650] This system has the functionality to receive questions from users, analyze those questions, and generate multiple answers. Furthermore, it has the functionality to present the generated multiple answers to the user, receive the user's selected answer, and record it. In addition, by combining it with an emotion analysis engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[0651] This system operates by including a terminal for receiving user questions, a server that analyzes the questions and generates multiple answers, and a sentiment analysis engine.
[0652] The user enters a question into an input field on the device's interface. Once the user enters the question and presses the send button, the question is sent to the device. For example, a possible question might be, "Can you recommend some nearby restaurants?"
[0653] The terminal sends the entered question to the server. This transmission is typically done securely using the HTTPS protocol.
[0654] The server uses a natural language processing (NLP) model to analyze the received question. Specifically, it uses a BERT-based NLP model, for example, to analyze the content and structure of the question. For example, from the question "Can you tell me about nearby restaurants?", it extracts the key entities "nearby" and "restaurants".
[0655] The server uses an emotion analysis engine to analyze the user's emotions when analyzing received questions. For example, if a user asks a question in a very strong tone, the emotion analysis engine will identify that emotion as "anger" and add this information to the analysis results.
[0656] Based on the analysis results, the server generates multiple answers using a generative AI model (e.g., GPT-4). It generates diverse answers to reflect different perspectives and approaches to the question. For example, it might generate answers such as, "Restaurant A nearby is Italian and has a rating of 4.5," "Restaurant B is a 5-minute walk away and has recently been renovated," or "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0657] The server ranks the generated responses based on their reliability and relevance. This displays more relevant responses higher up, supporting quicker user selection. The generated list of responses is sent to the terminal.
[0658] The terminal displays the received list of answers to the user in list format. The user reviews each answer and selects the one they deem best. For example, if the user selects the details for "Restaurant A," the selection is sent from the terminal to the server.
[0659] The server records the user's selected answers, associated feedback, and sentiment data from the sentiment analysis engine. This data is used as reference data for subsequent question analysis and answer generation, improving the overall accuracy of the system.
[0660] Examples of specific prompt messages include the following:
[0661] "Could you recommend some nearby restaurants?"
[0662] "I'm looking for a highly-rated restaurant."
[0663] "Are there any 24-hour restaurants I can go to right now?"
[0664] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, enabling the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system in the future.
[0665] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0666] Step 1: Enter your question
[0667] The user enters a question in text format into the system interface. The entered question is sent to the terminal in the format "Question: Please tell me about nearby restaurants." The terminal receives this input data and prepares to proceed to the next step. The input is text data, and the output is the text data of the question sent to the terminal.
[0668] Step 2: Submit your question
[0669] The terminal sends questions received from the user to the server over the internet. Typically, the HTTPS protocol is used to securely transmit the data. The input is the text data of the question sent from the user to the terminal, and the output is the text data of the question sent to the server.
[0670] Step 3: Analyzing the Question
[0671] The server analyzes the received question using a natural language processing model. Specifically, it uses the BERT model to analyze the meaning and structure of the text and extract the key entities "nearby" and "restaurant." The input is the text data of the question received by the server, and the output is the extracted key entities and the analysis results.
[0672] Step 4: Emotional Analysis
[0673] The server simultaneously uses a sentiment analysis engine to analyze the emotions contained in the user's question. For example, if the user's text contains a strong question tone or emphasis, the emotion will be analyzed as "urgency" or "expectation." The input is the text data of the question received by the server, and the output is the analyzed sentiment data.
[0674] Step 5: Generating multiple answers
[0675] The server generates multiple answers using a generative AI model (e.g., GPT-4) based on the question and sentiment analysis results. For example, it might generate answers from different perspectives such as "Restaurant A is highly rated," "Restaurant B is nearby and reasonably priced," and "Restaurant C is open 24 hours and convenient." The input is the analysis results and sentiment data, and the output is the multiple generated answers.
[0676] Step 6: Ranking the Responses
[0677] The server ranks the generated responses based on their reliability and relevance. This involves evaluating the content of the generated responses and determining their ranking in relation to the user's question and sentiment analysis results. The input is the generated responses, and the output is a ranked list of responses.
[0678] Step 7: Present your answer
[0679] The server sends a ranked list of answers to the terminal. The terminal displays the received list of answers to the user in list format. The input is the ranked list of answers sent from the server, and the output is the list of answers displayed on the terminal.
[0680] Step 8: Select an answer
[0681] The user selects the most appropriate answer from the displayed list. For example, if the user selects details for "Restaurant A," that selection is recorded on the device. The input is the user's selection from the list, and the output is the selection recorded on the device.
[0682] Step 9: Save the selected answer
[0683] The terminal sends the user's selection results to the server. The server records the selected response, associated feedback, and sentiment data. This data is used for future analysis and response generation. The input is the selection results and sentiment data sent from the terminal to the server, and the output is the data recorded on the server.
[0684] (Application Example 2)
[0685] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0686] In recent years, food delivery services have faced the challenge of users having to choose from a vast number of options, potentially leading to decreased satisfaction. Furthermore, the one-sided provision of information without considering user feelings can result in a lack of personalization, further reducing satisfaction. There is a need to address these challenges and provide systems that allow users to make optimal choices more easily and quickly.
[0687] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a question, means for analyzing the question, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user, means for receiving and recording the answer selected by the user, an emotion engine for analyzing the user's emotions, means for reflecting the analysis results of the emotion engine in the analysis of the question and the generation of answers, and means for processing information related to food delivery. This makes it possible to generate appropriate answers that take the user's emotions into consideration and improve the user experience.
[0688] "Means for receiving questions" refers to a device or software for sending and receiving questions entered by a user into a system.
[0689] "Means for analyzing questions" refers to the devices or software necessary to analyze received questions and understand their content and intent.
[0690] "Means for generating multiple answers based on analysis results" refers to a device or software that creates multiple answers from different perspectives based on the analysis results of a question.
[0691] "Means of presenting to the user" refers to a device or software for displaying multiple generated answers to the user and providing them as choices.
[0692] "Means for receiving and recording user-selected answers" refers to a device or software for receiving user-selected answers and recording the content of those selections.
[0693] An "emotion engine" is a device or software that analyzes a user's emotions and provides the analysis results to the system.
[0694] "Means for processing information related to food delivery" refers to devices or software that analyze food delivery-related data and provide users with appropriate information.
[0695] A "natural language processing model" is a machine learning model that analyzes natural language text entered by a user to understand its content and intent.
[0696] "Means for ranking responses based on their reliability and relevance" refers to a device or software that ranks multiple generated responses according to their reliability and relevance and presents them to the user in the most optimal order.
[0697] This invention describes embodiments for carrying out this invention. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Furthermore, by combining it with an emotion engine, it is possible to recognize the user's emotions and provide more accurate answers.
[0698] System Configuration
[0699] This system includes a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[0700] Received a question
[0701] The user enters a question into the terminal. When the user enters the question in natural language and presses the send button, the question is sent to the terminal. At this time, the terminal functions as an interface for sending the user's input to the server.
[0702] Question analysis
[0703] The server analyzes the received questions. A natural language processing model (e.g., GPT-3) is used for the analysis to understand the content and intent of the questions. The server also uses an emotion engine (e.g., EmoNet) to analyze the user's emotions from their text input and incorporates the results of this analysis into the question analysis.
[0704] Generating multiple answers
[0705] Based on the analysis results, the server generates multiple answers using a generative AI model. By providing answers from different perspectives, a variety of answers are available for the user to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is currently running a promotion," and "Restaurant C is friendly."
[0706] Providing an answer
[0707] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0708] Recognition and reflection of emotions
[0709] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[0710] Selecting and recording answers
[0711] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0712] Specific example
[0713] As a concrete example, let's consider a case where a user enters the question "What should I eat today?" into their device. The user enters this question into the device, and the device sends the question to the server. The server analyzes the question and derives an analysis result based on current sentiment data. It then generates several possible answers, such as the following:
[0714] 1. "There's a highly-rated Italian restaurant nearby."
[0715] 2. "Restaurant B has a special menu available as part of a promotion."
[0716] 3. "Restaurant C is popular for its friendly atmosphere."
[0717] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they feel is most appropriate. For example, if the user selects "Italian restaurant," the terminal sends the selection result and sentiment data to the server, which records it.
[0718] Example of a prompt
[0719] A user asked the question, "What should I eat today?" Considering the emotion "relaxed," please provide the following answer:
[0720] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, the accuracy of the system is improved by recording emotional data.
[0721] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0722] Step 1:
[0723] The user enters a question into the device. For example, they might enter text such as "What should I eat today?" and press the send button. The entered natural language data is then sent from the device to the server.
[0724] Input: User question text
[0725] Output: Data transfer from terminal to server
[0726] Step 2:
[0727] The server analyzes the questions received from the user. A natural language processing model (e.g., GPT-3) is used for the analysis. The server tokenizes the question text and performs analysis to understand the context.
[0728] Input: Question text sent from the device
[0729] Output: Question analysis results (tokenized text, contextual data)
[0730] Step 3:
[0731] The server uses an emotion engine to analyze the user's emotions from the question text. The emotion engine (e.g., EmoNet) extracts emotion parameters from the text and generates data accordingly.
[0732] Input: Question text
[0733] Output: Sentiment analysis results (emotional parameters)
[0734] Step 4:
[0735] The server integrates the analysis results of the question and the sentiment analysis results, and generates multiple answers using a generative AI model. For example, the server generates an answer using the prompt "The user asked the question 'What should I eat today?'. Considering the sentiment 'relaxed', please provide the following answers."
[0736] Input: Integrated analysis results (questionnaire analysis results and sentiment analysis results)
[0737] Output: Multiple generated answers
[0738] Step 5:
[0739] The server-generated responses are ranked based on their reliability and relevance. A scoring algorithm is used for this evaluation, calculating a reliability score and a relevance score for each response.
[0740] Input: Multiple generated answers
[0741] Output: Ranked list of answers
[0742] Step 6:
[0743] The server sends a ranked list of answers to the device. The device presents this to the user in list format, and the user selects the answer they deem most appropriate.
[0744] Input: Ranked list of answers
[0745] Output: Display of answer list by terminal
[0746] Step 7:
[0747] The user selects the most appropriate answer from the presented list. The device receives this selection and sends it to the server.
[0748] Input: User's selected answer
[0749] Output: Data transfer of selection results from terminal to server
[0750] Step 8:
[0751] The server records the selected answer, associated feedback, and sentiment data generated by the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0752] Input: User selection results and sentiment data
[0753] Output: Updated recorded database
[0754] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0755] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0756] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0757] [Third Embodiment]
[0758] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0759] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0760] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0761] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0762] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0763] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0764] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0765] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0766] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0767] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0768] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0769] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0770] The embodiments for carrying out the present invention are described below. This system mainly operates with a server, terminals, and users.
[0771] System Configuration
[0772] This system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. The functions of this system are as follows:
[0773] Received a question
[0774] The user enters a question into the terminal. The terminal receives this input and sends it to the server. In this process, the user's question is incorporated into the system.
[0775] Question analysis
[0776] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people, etc.).
[0777] Generating multiple answers
[0778] The server generates multiple answers based on the analysis results. Specifically, it uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, when providing several recommendations for a restaurant, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0779] Providing an answer
[0780] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0781] Selecting and recording answers
[0782] The user selects the best answer from the presented options. The device receives this selection and sends it to the server. The server records the selected answer and associated feedback to help with future improvements.
[0783] Specific example
[0784] For example, consider a scenario where a user asks, "Can you tell me about nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives the analysis results based on the user's current location. It then generates several possible answers, such as the following:
[0785] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[0786] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0787] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0788] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection to the server, which records it.
[0789] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question, enabling the user to quickly obtain the most suitable information. Furthermore, recording the user's selection results can help improve the accuracy of the system.
[0790] The following describes the processing flow.
[0791] Step 1:
[0792] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[0793] Step 2:
[0794] The terminal receives user input, converts it to a data format, and sends it to the server. The terminal converts the entered text data to the appropriate format and transfers it to the server.
[0795] Step 3:
[0796] The server receives the question. The server receives the data sent from the terminal and enters a waiting state for the next processing.
[0797] Step 4:
[0798] The server analyzes the received question. A natural language processing model is used for the analysis to extract the intent of the question and relevant key entities. For example, it recognizes keywords such as "nearby restaurants."
[0799] Step 5:
[0800] The server searches the database based on the analysis results. Based on the analyzed key entities, it searches the database for relevant information and generates multiple possible answers.
[0801] Step 6:
[0802] The server evaluates multiple generated responses and ranks them based on their reliability and relevance. Each response is scored and sorted in order of most appropriateness.
[0803] Step 7:
[0804] The server sends a ranked list of responses to the device. It organizes the responses in a list format and sends the data to the device for presentation to the user.
[0805] Step 8:
[0806] The device displays a list of received responses to the user. The responses are presented on the screen in a list format to make it easy for the user to review each one.
[0807] Step 9:
[0808] The user selects the most appropriate answer from the presented list of answers. The user reviews the list and chooses the answer that best matches their needs.
[0809] Step 10:
[0810] The device sends the user's selection results to the server. When the user presses the select button, information about the selected answer is sent to the server.
[0811] Step 11:
[0812] The server receives and records the user's selection results. The received selection results are saved to a database and used as reference data for future use.
[0813] This step allows users to obtain answers efficiently and reduces system and communication load. Furthermore, recording the selection results contributes to improving system accuracy and can be used to enhance the quality of answers in the future.
[0814] (Example 1)
[0815] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0816] Conventional question-answering systems often provide only a single answer to a user's question, making it difficult to offer multiple options. Furthermore, they lack mechanisms to incorporate user feedback on selected answers to improve the system's accuracy in the future. Therefore, there is a need to provide users with the most relevant information quickly and accurately.
[0817] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0818] In this invention, the server includes means for receiving questions from users, means for analyzing the received questions using a natural language processing model, means for generating multiple answers using a generative AI model based on the analysis results, means for ranking and presenting the answers based on reliability and relevance, and means for receiving and recording the answers selected by the user. This allows for providing users with a variety of answer options and further improves the accuracy of the system by recording the user's selection results.
[0819] "User" refers to the end user who operates this system and enters questions.
[0820] A "question" refers to the content of an inquiry that a user enters into the system, and is the sentence that the system analyzes.
[0821] A "natural language processing model" refers to an algorithm or program that analyzes input natural language data and understands and processes its content.
[0822] A "generative AI model" refers to artificial intelligence that generates new text in natural language based on input data and prompts.
[0823] "Answer" refers to a series of pieces of information and advice that the system generates in response to a user's question.
[0824] "Confidence level" refers to a value that quantitatively evaluates the degree of accuracy and usefulness of the generated responses.
[0825] "Relevance" refers to the degree to which the generated answer is relevant to the user's question.
[0826] "Ranking" refers to the process of determining a ranking of multiple responses based on their importance and relevance.
[0827] "Recording" refers to the act of saving the user's selected answer and its result in a database or similar system.
[0828] A "server" refers to a computer system that receives and analyzes user questions, generates answers, and ultimately stores and manages that information.
[0829] A "terminal" refers to a device used by a user to input questions and receive answers from a server.
[0830] To implement this invention, the entire system includes a series of processes in which it receives, analyzes, generates, and presents a question from the user, and finally records the user's choice.
[0831] The user enters a question using a terminal. The terminal receives this input and sends it to the server. For example, the user might enter "Please tell me about nearby restaurants."
[0832] The server analyzes the received question using a natural language processing model. Python natural language processing libraries (e.g., spaCy or NLTK) can be used for this analysis. The analysis results include key entities related to the question (such as location, time, and people). The server then translates the received question into specific information such as "restaurants nearby."
[0833] Next, the server uses a generative AI model (e.g., OpenAI's GPT-4) to generate prompt sentences based on the analysis results, and generates multiple answers. Examples of prompt sentences include:
[0834] "The user's question is, 'Please tell me about nearby restaurants.' Please generate several specific answers."
[0835] The multiple responses generated are specifically as follows:
[0836] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[0837] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0838] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0839] The server ranks the generated responses based on their reliability and relevance, and sends the list to the terminal. The terminal displays the responses to the user in list format. The user can review the list and select the most appropriate response.
[0840] For example, if a user selects the answer "Restaurant A, located nearby, serves Italian food and has a rating of 4.5," the device sends this selection to the server. The server records the selected answer and associated feedback in a database, which is used to improve the system's accuracy in the future.
[0841] In this way, the system of the present invention can improve user convenience through a series of processes, while also improving the accuracy of the system itself.
[0842] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0843] Step 1:
[0844] The user enters a question into the terminal. The entered question is in text format, for example, "Please tell me about nearby restaurants." The terminal receives this input and sends it to the server. Here, the input data is the user's question text, and the output is the transfer of the question to the server.
[0845] Step 2:
[0846] The server analyzes received questions using a natural language processing model. Specifically, it uses Python natural language processing libraries (e.g., spaCy or NLTK) to extract the content and intent of the questions. The input data is the question text submitted by the user, and the output data is the key entities contained in the question text (e.g., location, time, person, etc.). Text tokenization and entity recognition are performed during the analysis process.
[0847] Step 3:
[0848] The server generates multiple answers using a generative AI model (e.g., OpenAI GPT-4) based on the analysis results. Here, a prompt is generated based on the analysis results and sent to the generative AI model. The input data is the analyzed results (e.g., keywords such as "nearby restaurants"), and an example of a prompt is "The user's question is 'Please tell me about nearby restaurants.' Please generate multiple specific answers." The output data is the multiple answers that are generated. The specific operation includes sending a request to the generative AI model and analyzing the response.
[0849] Step 4:
[0850] The server ranks the generated responses based on their confidence and relevance. Here, it calculates confidence and relevance scores for the generated responses and sorts them accordingly. The input data consists of multiple generated responses, and the output data is a ranked list of responses. This step involves algorithmic scoring and sorting.
[0851] Step 5:
[0852] The server sends a ranked list of answers to the terminal. The terminal receives this list and presents it to the user in list format. The input data is a ranked list of answers, and the output data is a visual display for the user. Specific operations include generating a web interface using HTML and JavaScript.
[0853] Step 6:
[0854] The user selects the most appropriate answer from a presented list. The terminal receives the user's selected answer and sends it to the server. The input data is the user's selected answer, and the output data is the transfer of the selection result to the server.
[0855] Step 7:
[0856] The server records the selected answers and associated feedback. Here, the selection results are stored in a database to help improve the system's accuracy in the future. The input data is the answers selected by the user, and the output data is the selection results recorded in the database. Specific operations include writing to the database.
[0857] (Application Example 1)
[0858] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0859] In today's world, users need to quickly obtain information about diverse payment methods and settlement options to make the best choice. However, conventional systems only provide a single answer to a question, lacking the information from multiple perspectives that users need. This makes it difficult for users to select the most appropriate payment method. Furthermore, the system lacks sufficient functionality to record user selections and refer to them for future inquiries. A new system is needed to address these problems.
[0860] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0861] In this invention, the server includes means for receiving questions, means for analyzing questions, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user and receiving and recording the answer selected by the user, means for generating and presenting appropriate answers to questions about payment methods, and means for recording questions and answers about payment methods for reference in future inquiries. This enables the user to quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, by recording the answers selected by the user, the accuracy of the system can be improved and used as reference information for future inquiries.
[0862] "Means for receiving questions" refers to a function that retrieves questions entered by users and incorporates them into the system.
[0863] "Means for analyzing questions" refers to a function that uses natural language processing technology to analyze received questions and understand their content and intent.
[0864] "Means for generating multiple answers" refers to a function that generates multiple answers to the same question from different perspectives based on the analysis results.
[0865] "A means of presenting multiple answers to a user and receiving and recording the answer selected by the user" refers to a function that displays multiple generated answers to the user and records the answer selected by the user in the system.
[0866] "Means for generating and presenting appropriate answers to questions about payment methods" refers to a function that generates and presents appropriate answers to user questions regarding payment methods and settlement methods.
[0867] The "means of recording questions and answers regarding payment methods for reference in future inquiries" refers to a function that records questions and generated / selected answers regarding payment methods entered by the user, and uses them as reference information when making future inquiries.
[0868] The system for carrying out this invention primarily operates with a server, terminals, and users. Detailed embodiments are described below.
[0869] Overall system configuration
[0870] The system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user and recording the answer selected by the user.
[0871] System Components
[0872] 1. Server:
[0873] A method for analyzing questions (natural language processing model)
[0874] A means of generating multiple answers (generative AI model)
[0875] A method for ranking and presenting multiple responses.
[0876] A means of recording the user's selected answer.
[0877] 2. Terminal:
[0878] Means of sending a question to the receiving server
[0879] Means for displaying responses received from the server
[0880] A means of sending the user's selected answer to the server.
[0881] 3. User:
[0882] Enter your payment method question.
[0883] Select the best answer from the multiple responses provided.
[0884] Operation flow
[0885] Question received:
[0886] The user enters a question about the payment method into the device. The device receives this question and sends it to the server.
[0887] Question analysis:
[0888] The server analyzes the received question using a natural language processing model (for example, HuggingFace's Transformer model). This analysis helps understand the content and intent of the question and extract relevant information.
[0889] Generating multiple answers:
[0890] The server generates multiple answers using a generative AI model (e.g., GPT-3) based on the analysis results. This provides answers from different perspectives on the information the user is seeking.
[0891] Providing an answer:
[0892] The server ranks the generated responses based on their reliability and relevance and sends them to the terminal. The terminal then displays a list of the generated responses to the user.
[0893] Selecting and recording answers:
[0894] The user selects the most appropriate answer from several options presented. The device sends the selected answer to the server, which records it. This recorded information will be used as reference material for future inquiries.
[0895] Specific example
[0896] For example, if a user enters the question "What are the advantages of cashless payment?", the system will operate as follows:
[0897] User input questions:
[0898] "What are the advantages of cashless payments?"
[0899] Examples of prompts for a generative AI model:
[0900] Analyze the following questions and list three benefits of cashless payments. Please include specific examples and statistical data in your suggestions.
[0901] Question: "What are the advantages of cashless payments?"
[0902] Server analysis and response generation:
[0903] 1. Cashless payment is fast and convenient.
[0904] 2. There is no need to carry cash, which improves security.
[0905] 3. Payment history is recorded, making financial management easier.
[0906] Presentation and choice to the user:
[0907] Users can review these responses and select the one that best suits them. The selected response is recorded on the server and used to improve the service in the future.
[0908] In this way, users can quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, the information recorded by the system will be used as useful data for improving accuracy and responding to future inquiries.
[0909] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0910] Step 1:
[0911] User enters question
[0912] The user enters a question about the payment method into the device. The entered question is processed as string data within the device.
[0913] Input: A question entered by the user (e.g., "What are the advantages of cashless payment?")
[0914] Output: String data of the question
[0915] Step 2:
[0916] Submit a question
[0917] The terminal sends the received question to the server. Communication is performed using communication protocols such as HTTP requests.
[0918] Input: String data of the question
[0919] Output: Question data sent to the server
[0920] Step 3:
[0921] Question analysis
[0922] The server analyzes the received question using a natural language processing model (e.g., HuggingFace's Transformer model). The analysis results include the intent of the question and related key entities.
[0923] Input: Question data (string) sent to the server
[0924] Data processing / computation: Analyzing questions using natural language processing models (e.g., sentence element analysis)
[0925] Output: Analysis results of the question (e.g., question intent, relevant key entities)
[0926] Step 4:
[0927] Generating an answer
[0928] The server generates multiple answers using an AI model (e.g., GPT-3) based on the analysis results. The AI model generates answers based on the prompt text.
[0929] Input: Analysis results of the question
[0930] Prompt generation: "Analyze the following question and list three benefits of cashless payments. Include specific examples and statistical data for the benefits. Question: 'What are the benefits of cashless payments?'"
[0931] Data processing / calculation: Answer generation using generative AI models
[0932] Output: Multiple responses (e.g., "Cashless payments are fast and convenient.", "There is no need to carry cash, and security is improved.", "Payment history is recorded, making financial management easier.")
[0933] Step 5:
[0934] Ranking and presentation of responses
[0935] The server ranks the generated responses based on their reliability and relevance, and then sends them to the terminal.
[0936] Input: Multiple response data
[0937] Data processing / calculation: Ranking of responses (confidence level, relevance)
[0938] Output: Ranked response data
[0939] Step 6:
[0940] Providing answers to users
[0941] The terminal displays ranked responses received from the server to the user. The user selects the most appropriate response from the displayed options.
[0942] Input: Ranked response data
[0943] Output: Best answer selected by the user
[0944] Step 7:
[0945] Submitting and recording your response selections.
[0946] The terminal sends the user's selected answer to the server, which then records it. This recorded data is used as reference material for future inquiries.
[0947] Input: User-selected response data
[0948] Output: Response data recorded on the server
[0949] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0950] The embodiments for carrying out the present invention are described below. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Moreover, by combining the present invention with an emotion engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[0951] System Configuration
[0952] This system operates by including a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[0953] Received a question
[0954] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[0955] Question analysis
[0956] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people). Furthermore, the server uses an emotion engine to analyze the user's emotions from their input and incorporates the results of that analysis into the question analysis.
[0957] Generating multiple answers
[0958] The server generates multiple answers based on the analysis results. It uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0959] Providing an answer
[0960] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[0961] Recognition and reflection of emotions
[0962] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[0963] Selecting and recording answers
[0964] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[0965] Specific example
[0966] For example, consider a scenario where a user asks, "Can you recommend some nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives an analysis result based on the user's current location and the results of the sentiment engine. It then generates several possible answers, such as the following:
[0967] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5 (because users are relaxed)."
[0968] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[0969] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[0970] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection result and sentiment data to the server, which then records it.
[0971] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system.
[0972] The following describes the processing flow.
[0973] Step 1:
[0974] The user enters a question into the device. Specifically, the user enters a natural language question such as "Please tell me about nearby restaurants," and when they press the send button, the input data is stored on the device.
[0975] Step 2:
[0976] The terminal receives user input, converts it into a data format, and sends it to the server. Here, the terminal converts the input text into a format such as JSON and communicates it to the server over the network.
[0977] Step 3:
[0978] The server receives the question. The server receives the data packet sent from the terminal and begins processing to analyze its contents.
[0979] Step 4:
[0980] The server analyzes the question. This analysis uses a natural language processing (NLP) model to perform grammatical analysis of the text, extract keywords, and understand intent. For example, it might extract the key phrase "nearby restaurants."
[0981] Step 5:
[0982] The server receives input and passes it to the emotion engine to analyze the user's emotions. It reads emotions from the user's input text and identifies them, for example, "excited" or "relaxed."
[0983] Step 6:
[0984] The server integrates the analysis results and sentiment data, and searches the database based on that. The server considers location information and sentiment, and retrieves multiple responses from the relevant restaurant information database.
[0985] Step 7:
[0986] The server generates multiple answers. Based on the analyzed data, generative AI is used to create a variety of responses. For example, these might include "Restaurant A has a high rating," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[0987] Step 8:
[0988] The server evaluates the generated responses and ranks them based on their reliability and relevance. Each response is scored, and priority is determined by considering the user's sentiment.
[0989] Step 9:
[0990] The server sends a ranked list of answers to the terminal. The organized list of answers is sent to the terminal, and the data is prepared for display to the user.
[0991] Step 10:
[0992] The device displays a list of received responses to the user. The device displays the responses on the screen in a list format, allowing the user to review the content of each response.
[0993] Step 11:
[0994] The user selects the most appropriate answer from the presented list of answers. For example, the user selects "Details of Restaurant A".
[0995] Step 12:
[0996] The device sends the user's selection results to the server. When the user taps a selection button, the data of that selection result is sent to the server.
[0997] Step 13:
[0998] The server receives and records the user's selection results and sentiment data. The selected answers and user sentiment data are saved in a database and can be used for future question analysis and answer generation.
[0999] These detailed steps allow for efficient and accurate responses while taking user emotions into consideration. Furthermore, they contribute to the system's continuous learning and improvement.
[1000] (Example 2)
[1001] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1002] Current question-answering systems struggle to generate responses that take user emotions into account, limiting their ability to provide optimal information tailored to user needs. Furthermore, when generating and presenting multiple different answers, they often lack proper ranking based on reliability and relevance. Additionally, there's a lack of mechanisms to incorporate user feedback and emotional data into subsequent response generation, preventing significant improvements in overall system accuracy.
[1003] In Example 2, the identification processing by the identification processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user's question, means for analyzing the question using a natural language processing model, means for generating multiple answers using an AI model based on the analysis results, means for analyzing the user's emotions using emotion analysis means and reflecting this in the answer generation, means for ranking the multiple answers based on reliability and relevance and presenting them to the user, and means for receiving and recording the answer selected by the user. This makes it possible to generate responses that take the user's emotions into consideration and provide appropriate information through ranking based on reliability and relevance. Furthermore, by reflecting user feedback and emotion data in subsequent analyses and response generation, the overall accuracy of the system can be improved.
[1004] A "user" refers to a person who inputs a question into the system and selects the answer provided.
[1005] "Terminal" refers to a hardware device or software application used by a user to input questions and receive answers.
[1006] A "server" refers to a central processing unit or system that receives and analyzes user questions and provides generated answers.
[1007] A "question" refers to the content of an inquiry that a user enters into the system via their device.
[1008] A "natural language processing model" refers to an algorithm or software used to analyze a user's question and understand its meaning and intent.
[1009] A "generative AI model" refers to an artificial intelligence algorithm that generates multiple answers based on analysis results.
[1010] "Emotional analysis means" refers to technology that analyzes the emotions contained in a user's question and reflects the results in response generation.
[1011] "Multiple answers" refers to multiple responses generated in response to a user's question, each consisting of different perspectives and content.
[1012] "Reliability" refers to the criteria used to evaluate the accuracy and credibility of the generated responses.
[1013] "Relevance" refers to the criteria used to evaluate how appropriate the generated answer is to the user's question.
[1014] "Ranking" refers to the process of prioritizing multiple generated responses based on their reliability and relevance.
[1015] "Feedback" refers to information about the answers selected by users and their evaluations.
[1016] "Emotional data" refers to information about a user's emotions obtained through emotion analysis methods.
[1017] The embodiments for carrying out the present invention are described below.
[1018] This system has the functionality to receive questions from users, analyze those questions, and generate multiple answers. Furthermore, it has the functionality to present the generated multiple answers to the user, receive the user's selected answer, and record it. In addition, by combining it with an emotion analysis engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[1019] This system operates by including a terminal for receiving user questions, a server that analyzes the questions and generates multiple answers, and a sentiment analysis engine.
[1020] The user enters a question into an input field on the device's interface. Once the user enters the question and presses the send button, the question is sent to the device. For example, a possible question might be, "Can you recommend some nearby restaurants?"
[1021] The terminal sends the entered question to the server. This transmission is typically done securely using the HTTPS protocol.
[1022] The server uses a natural language processing (NLP) model to analyze the received question. Specifically, it uses a BERT-based NLP model, for example, to analyze the content and structure of the question. For example, from the question "Can you tell me about nearby restaurants?", it extracts the key entities "nearby" and "restaurants".
[1023] The server uses an emotion analysis engine to analyze the user's emotions when analyzing received questions. For example, if a user asks a question in a very strong tone, the emotion analysis engine will identify that emotion as "anger" and add this information to the analysis results.
[1024] Based on the analysis results, the server generates multiple answers using a generative AI model (e.g., GPT-4). It generates diverse answers to reflect different perspectives and approaches to the question. For example, it might generate answers such as, "Restaurant A nearby is Italian and has a rating of 4.5," "Restaurant B is a 5-minute walk away and has recently been renovated," or "Restaurant C is open 24 hours and is popular for its reasonable prices."
[1025] The server ranks the generated responses based on their reliability and relevance. This displays more relevant responses higher up, supporting quicker user selection. The generated list of responses is sent to the terminal.
[1026] The terminal displays the received list of answers to the user in list format. The user reviews each answer and selects the one they deem best. For example, if the user selects the details for "Restaurant A," the selection is sent from the terminal to the server.
[1027] The server records the user's selected answers, associated feedback, and sentiment data from the sentiment analysis engine. This data is used as reference data for subsequent question analysis and answer generation, improving the overall accuracy of the system.
[1028] Examples of specific prompt messages include the following:
[1029] "Could you recommend some nearby restaurants?"
[1030] "I'm looking for a highly-rated restaurant."
[1031] "Are there any 24-hour restaurants I can go to right now?"
[1032] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, enabling the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system in the future.
[1033] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1034] Step 1: Enter your question
[1035] The user enters a question in text format into the system interface. The entered question is sent to the terminal in the format "Question: Please tell me about nearby restaurants." The terminal receives this input data and prepares to proceed to the next step. The input is text data, and the output is the text data of the question sent to the terminal.
[1036] Step 2: Submit your question
[1037] The terminal sends questions received from the user to the server over the internet. Typically, the HTTPS protocol is used to securely transmit the data. The input is the text data of the question sent from the user to the terminal, and the output is the text data of the question sent to the server.
[1038] Step 3: Analyzing the Question
[1039] The server analyzes the received question using a natural language processing model. Specifically, it uses the BERT model to analyze the meaning and structure of the text and extract the key entities "nearby" and "restaurant." The input is the text data of the question received by the server, and the output is the extracted key entities and the analysis results.
[1040] Step 4: Emotional Analysis
[1041] The server simultaneously uses a sentiment analysis engine to analyze the emotions contained in the user's question. For example, if the user's text contains a strong question tone or emphasis, the emotion will be analyzed as "urgency" or "expectation." The input is the text data of the question received by the server, and the output is the analyzed sentiment data.
[1042] Step 5: Generating multiple answers
[1043] The server generates multiple answers using a generative AI model (e.g., GPT-4) based on the question and sentiment analysis results. For example, it might generate answers from different perspectives such as "Restaurant A is highly rated," "Restaurant B is nearby and reasonably priced," and "Restaurant C is open 24 hours and convenient." The input is the analysis results and sentiment data, and the output is the multiple generated answers.
[1044] Step 6: Ranking the Responses
[1045] The server ranks the generated responses based on their reliability and relevance. This involves evaluating the content of the generated responses and determining their ranking in relation to the user's question and sentiment analysis results. The input is the generated responses, and the output is a ranked list of responses.
[1046] Step 7: Present your answer
[1047] The server sends a ranked list of answers to the terminal. The terminal displays the received list of answers to the user in list format. The input is the ranked list of answers sent from the server, and the output is the list of answers displayed on the terminal.
[1048] Step 8: Select an answer
[1049] The user selects the most appropriate answer from the displayed list. For example, if the user selects details for "Restaurant A," that selection is recorded on the device. The input is the user's selection from the list, and the output is the selection recorded on the device.
[1050] Step 9: Save the selected answer
[1051] The terminal sends the user's selection results to the server. The server records the selected response, associated feedback, and sentiment data. This data is used for future analysis and response generation. The input is the selection results and sentiment data sent from the terminal to the server, and the output is the data recorded on the server.
[1052] (Application Example 2)
[1053] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[1054] In recent years, food delivery services have faced the challenge of users having to choose from a vast number of options, potentially leading to decreased satisfaction. Furthermore, the one-sided provision of information without considering user feelings can result in a lack of personalization, further reducing satisfaction. There is a need to address these challenges and provide systems that allow users to make optimal choices more easily and quickly.
[1055] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a question, means for analyzing the question, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user, means for receiving and recording the answer selected by the user, an emotion engine for analyzing the user's emotions, means for reflecting the analysis results of the emotion engine in the analysis of the question and the generation of answers, and means for processing information related to food delivery. This makes it possible to generate appropriate answers that take the user's emotions into consideration and improve the user experience.
[1056] "Means for receiving questions" refers to a device or software for sending and receiving questions entered by a user into a system.
[1057] "Means for analyzing questions" refers to the devices or software necessary to analyze received questions and understand their content and intent.
[1058] "Means for generating multiple answers based on analysis results" refers to a device or software that creates multiple answers from different perspectives based on the analysis results of a question.
[1059] "Means of presenting to the user" refers to a device or software for displaying multiple generated answers to the user and providing them as choices.
[1060] "Means for receiving and recording user-selected answers" refers to a device or software for receiving user-selected answers and recording the content of those selections.
[1061] An "emotion engine" is a device or software that analyzes a user's emotions and provides the analysis results to the system.
[1062] "Means for processing information related to food delivery" refers to devices or software that analyze food delivery-related data and provide users with appropriate information.
[1063] A "natural language processing model" is a machine learning model that analyzes natural language text entered by a user to understand its content and intent.
[1064] "Means for ranking responses based on their reliability and relevance" refers to a device or software that ranks multiple generated responses according to their reliability and relevance and presents them to the user in the most optimal order.
[1065] This invention describes embodiments for carrying out this invention. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Furthermore, by combining it with an emotion engine, it is possible to recognize the user's emotions and provide more accurate answers.
[1066] System Configuration
[1067] This system includes a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[1068] Received a question
[1069] The user enters a question into the terminal. When the user enters the question in natural language and presses the send button, the question is sent to the terminal. At this time, the terminal functions as an interface for sending the user's input to the server.
[1070] Question analysis
[1071] The server analyzes the received questions. A natural language processing model (e.g., GPT-3) is used for the analysis to understand the content and intent of the questions. The server also uses an emotion engine (e.g., EmoNet) to analyze the user's emotions from their text input and incorporates the results of this analysis into the question analysis.
[1072] Generating multiple answers
[1073] Based on the analysis results, the server generates multiple answers using a generative AI model. By providing answers from different perspectives, a variety of answers are available for the user to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is currently running a promotion," and "Restaurant C is friendly."
[1074] Providing an answer
[1075] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[1076] Recognition and reflection of emotions
[1077] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[1078] Selecting and recording answers
[1079] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[1080] Specific example
[1081] As a concrete example, let's consider a case where a user enters the question "What should I eat today?" into their device. The user enters this question into the device, and the device sends the question to the server. The server analyzes the question and derives an analysis result based on current sentiment data. It then generates several possible answers, such as the following:
[1082] 1. "There's a highly-rated Italian restaurant nearby."
[1083] 2. "Restaurant B has a special menu available as part of a promotion."
[1084] 3. "Restaurant C is popular for its friendly atmosphere."
[1085] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they feel is most appropriate. For example, if the user selects "Italian restaurant," the terminal sends the selection result and sentiment data to the server, which records it.
[1086] Example of a prompt
[1087] A user asked the question, "What should I eat today?" Considering the emotion "relaxed," please provide the following answer:
[1088] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, the accuracy of the system is improved by recording emotional data.
[1089] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1090] Step 1:
[1091] The user enters a question into the device. For example, they might enter text such as "What should I eat today?" and press the send button. The entered natural language data is then sent from the device to the server.
[1092] Input: User question text
[1093] Output: Data transfer from terminal to server
[1094] Step 2:
[1095] The server analyzes the questions received from the user. A natural language processing model (e.g., GPT-3) is used for the analysis. The server tokenizes the question text and performs analysis to understand the context.
[1096] Input: Question text sent from the device
[1097] Output: Question analysis results (tokenized text, contextual data)
[1098] Step 3:
[1099] The server uses an emotion engine to analyze the user's emotions from the question text. The emotion engine (e.g., EmoNet) extracts emotion parameters from the text and generates data accordingly.
[1100] Input: Question text
[1101] Output: Sentiment analysis results (emotional parameters)
[1102] Step 4:
[1103] The server integrates the analysis results of the question and the sentiment analysis results, and generates multiple answers using a generative AI model. For example, the server generates an answer using the prompt "The user asked the question 'What should I eat today?'. Considering the sentiment 'relaxed', please provide the following answers."
[1104] Input: Integrated analysis results (questionnaire analysis results and sentiment analysis results)
[1105] Output: Multiple generated answers
[1106] Step 5:
[1107] The server-generated responses are ranked based on their reliability and relevance. A scoring algorithm is used for this evaluation, calculating a reliability score and a relevance score for each response.
[1108] Input: Multiple generated answers
[1109] Output: Ranked list of answers
[1110] Step 6:
[1111] The server sends a ranked list of answers to the device. The device presents this to the user in list format, and the user selects the answer they deem most appropriate.
[1112] Input: Ranked list of answers
[1113] Output: Display of answer list by terminal
[1114] Step 7:
[1115] The user selects the most appropriate answer from the presented list. The device receives this selection and sends it to the server.
[1116] Input: User's selected answer
[1117] Output: Data transfer of selection results from terminal to server
[1118] Step 8:
[1119] The server records the selected answer, associated feedback, and sentiment data generated by the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[1120] Input: User selection results and sentiment data
[1121] Output: Updated recorded database
[1122] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1123] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1124] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1125] [Fourth Embodiment]
[1126] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1127] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1128] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1129] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1130] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1131] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1132] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1133] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1134] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1135] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1136] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1137] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1138] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1139] The embodiments for carrying out the present invention are described below. This system mainly operates with a server, terminals, and users.
[1140] System Configuration
[1141] This system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. The functions of this system are as follows:
[1142] Received a question
[1143] The user enters a question into the terminal. The terminal receives this input and sends it to the server. In this process, the user's question is incorporated into the system.
[1144] Question analysis
[1145] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people, etc.).
[1146] Generating multiple answers
[1147] The server generates multiple answers based on the analysis results. Specifically, it uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, when providing several recommendations for a restaurant, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[1148] Providing an answer
[1149] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[1150] Selecting and recording answers
[1151] The user selects the best answer from the presented options. The device receives this selection and sends it to the server. The server records the selected answer and associated feedback to help with future improvements.
[1152] Specific example
[1153] For example, consider a scenario where a user asks, "Can you tell me about nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives the analysis results based on the user's current location. It then generates several possible answers, such as the following:
[1154] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[1155] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[1156] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[1157] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection to the server, which records it.
[1158] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question, enabling the user to quickly obtain the most suitable information. Furthermore, recording the user's selection results can help improve the accuracy of the system.
[1159] The following describes the processing flow.
[1160] Step 1:
[1161] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[1162] Step 2:
[1163] The terminal receives user input, converts it to a data format, and sends it to the server. The terminal converts the entered text data to the appropriate format and transfers it to the server.
[1164] Step 3:
[1165] The server receives the question. The server receives the data sent from the terminal and enters a waiting state for the next processing.
[1166] Step 4:
[1167] The server analyzes the received question. A natural language processing model is used for the analysis to extract the intent of the question and relevant key entities. For example, it recognizes keywords such as "nearby restaurants."
[1168] Step 5:
[1169] The server searches the database based on the analysis results. Based on the analyzed key entities, it searches the database for relevant information and generates multiple possible answers.
[1170] Step 6:
[1171] The server evaluates multiple generated responses and ranks them based on their reliability and relevance. Each response is scored and sorted in order of most appropriateness.
[1172] Step 7:
[1173] The server sends a ranked list of responses to the device. It organizes the responses in a list format and sends the data to the device for presentation to the user.
[1174] Step 8:
[1175] The device displays a list of received responses to the user. The responses are presented on the screen in a list format to make it easy for the user to review each one.
[1176] Step 9:
[1177] The user selects the most appropriate answer from the presented list of answers. The user reviews the list and chooses the answer that best matches their needs.
[1178] Step 10:
[1179] The device sends the user's selection results to the server. When the user presses the select button, information about the selected answer is sent to the server.
[1180] Step 11:
[1181] The server receives and records the user's selection results. The received selection results are saved to a database and used as reference data for future use.
[1182] This step allows users to obtain answers efficiently and reduces system and communication load. Furthermore, recording the selection results contributes to improving system accuracy and can be used to enhance the quality of answers in the future.
[1183] (Example 1)
[1184] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1185] Conventional question-answering systems often provide only a single answer to a user's question, making it difficult to offer multiple options. Furthermore, they lack mechanisms to incorporate user feedback on selected answers to improve the system's accuracy in the future. Therefore, there is a need to provide users with the most relevant information quickly and accurately.
[1186] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1187] In this invention, the server includes means for receiving questions from users, means for analyzing the received questions using a natural language processing model, means for generating multiple answers using a generative AI model based on the analysis results, means for ranking and presenting the answers based on reliability and relevance, and means for receiving and recording the answers selected by the user. This allows for providing users with a variety of answer options and further improves the accuracy of the system by recording the user's selection results.
[1188] "User" refers to the end user who operates this system and enters questions.
[1189] A "question" refers to the content of an inquiry that a user enters into the system, and is the sentence that the system analyzes.
[1190] A "natural language processing model" refers to an algorithm or program that analyzes input natural language data and understands and processes its content.
[1191] A "generative AI model" refers to artificial intelligence that generates new text in natural language based on input data and prompts.
[1192] "Answer" refers to a series of pieces of information and advice that the system generates in response to a user's question.
[1193] "Confidence level" refers to a value that quantitatively evaluates the degree of accuracy and usefulness of the generated responses.
[1194] "Relevance" refers to the degree to which the generated answer is relevant to the user's question.
[1195] "Ranking" refers to the process of determining a ranking of multiple responses based on their importance and relevance.
[1196] "Recording" refers to the act of saving the user's selected answer and its result in a database or similar system.
[1197] A "server" refers to a computer system that receives and analyzes user questions, generates answers, and ultimately stores and manages that information.
[1198] A "terminal" refers to a device used by a user to input questions and receive answers from a server.
[1199] To implement this invention, the entire system includes a series of processes in which it receives, analyzes, generates, and presents a question from the user, and finally records the user's choice.
[1200] The user enters a question using a terminal. The terminal receives this input and sends it to the server. For example, the user might enter "Please tell me about nearby restaurants."
[1201] The server analyzes the received question using a natural language processing model. Python natural language processing libraries (e.g., spaCy or NLTK) can be used for this analysis. The analysis results include key entities related to the question (such as location, time, and people). The server then translates the received question into specific information such as "restaurants nearby."
[1202] Next, the server uses a generative AI model (e.g., OpenAI's GPT-4) to generate prompt sentences based on the analysis results, and generates multiple answers. Examples of prompt sentences include:
[1203] "The user's question is, 'Please tell me about nearby restaurants.' Please generate several specific answers."
[1204] The multiple responses generated are specifically as follows:
[1205] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5."
[1206] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[1207] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[1208] The server ranks the generated responses based on their reliability and relevance, and sends the list to the terminal. The terminal displays the responses to the user in list format. The user can review the list and select the most appropriate response.
[1209] For example, if a user selects the answer "Restaurant A, located nearby, serves Italian food and has a rating of 4.5," the device sends this selection to the server. The server records the selected answer and associated feedback in a database, which is used to improve the system's accuracy in the future.
[1210] In this way, the system of the present invention can improve user convenience through a series of processes, while also improving the accuracy of the system itself.
[1211] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1212] Step 1:
[1213] The user enters a question into the terminal. The entered question is in text format, for example, "Please tell me about nearby restaurants." The terminal receives this input and sends it to the server. Here, the input data is the user's question text, and the output is the transfer of the question to the server.
[1214] Step 2:
[1215] The server analyzes received questions using a natural language processing model. Specifically, it uses Python natural language processing libraries (e.g., spaCy or NLTK) to extract the content and intent of the questions. The input data is the question text submitted by the user, and the output data is the key entities contained in the question text (e.g., location, time, person, etc.). Text tokenization and entity recognition are performed during the analysis process.
[1216] Step 3:
[1217] The server generates multiple answers using a generative AI model (e.g., OpenAI GPT-4) based on the analysis results. Here, a prompt is generated based on the analysis results and sent to the generative AI model. The input data is the analyzed results (e.g., keywords such as "nearby restaurants"), and an example of a prompt is "The user's question is 'Please tell me about nearby restaurants.' Please generate multiple specific answers." The output data is the multiple answers that are generated. The specific operation includes sending a request to the generative AI model and analyzing the response.
[1218] Step 4:
[1219] The server ranks the generated responses based on their confidence and relevance. Here, it calculates confidence and relevance scores for the generated responses and sorts them accordingly. The input data consists of multiple generated responses, and the output data is a ranked list of responses. This step involves algorithmic scoring and sorting.
[1220] Step 5:
[1221] The server sends a ranked list of answers to the terminal. The terminal receives this list and presents it to the user in list format. The input data is a ranked list of answers, and the output data is a visual display for the user. Specific operations include generating a web interface using HTML and JavaScript.
[1222] Step 6:
[1223] The user selects the most appropriate answer from a presented list. The terminal receives the user's selected answer and sends it to the server. The input data is the user's selected answer, and the output data is the transfer of the selection result to the server.
[1224] Step 7:
[1225] The server records the selected answers and associated feedback. Here, the selection results are stored in a database to help improve the system's accuracy in the future. The input data is the answers selected by the user, and the output data is the selection results recorded in the database. Specific operations include writing to the database.
[1226] (Application Example 1)
[1227] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1228] In today's world, users need to quickly obtain information about diverse payment methods and settlement options to make the best choice. However, conventional systems only provide a single answer to a question, lacking the information from multiple perspectives that users need. This makes it difficult for users to select the most appropriate payment method. Furthermore, the system lacks sufficient functionality to record user selections and refer to them for future inquiries. A new system is needed to address these problems.
[1229] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1230] In this invention, the server includes means for receiving questions, means for analyzing questions, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user and receiving and recording the answer selected by the user, means for generating and presenting appropriate answers to questions about payment methods, and means for recording questions and answers about payment methods for reference in future inquiries. This enables the user to quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, by recording the answers selected by the user, the accuracy of the system can be improved and used as reference information for future inquiries.
[1231] "Means for receiving questions" refers to a function that retrieves questions entered by users and incorporates them into the system.
[1232] "Means for analyzing questions" refers to a function that uses natural language processing technology to analyze received questions and understand their content and intent.
[1233] "Means for generating multiple answers" refers to a function that generates multiple answers to the same question from different perspectives based on the analysis results.
[1234] "A means of presenting multiple answers to a user and receiving and recording the answer selected by the user" refers to a function that displays multiple generated answers to the user and records the answer selected by the user in the system.
[1235] "Means for generating and presenting appropriate answers to questions about payment methods" refers to a function that generates and presents appropriate answers to user questions regarding payment methods and settlement methods.
[1236] The "means of recording questions and answers regarding payment methods for reference in future inquiries" refers to a function that records questions and generated / selected answers regarding payment methods entered by the user, and uses them as reference information when making future inquiries.
[1237] The system for carrying out this invention primarily operates with a server, terminals, and users. Detailed embodiments are described below.
[1238] Overall system configuration
[1239] The system has the function of receiving questions from users, analyzing those questions, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user and recording the answer selected by the user.
[1240] System Components
[1241] 1. Server:
[1242] A method for analyzing questions (natural language processing model)
[1243] A means of generating multiple answers (generative AI model)
[1244] A method for ranking and presenting multiple responses.
[1245] A means of recording the user's selected answer.
[1246] 2. Terminal:
[1247] Means of sending a question to the receiving server
[1248] Means for displaying responses received from the server
[1249] A means of sending the user's selected answer to the server.
[1250] 3. User:
[1251] Enter your payment method question.
[1252] Select the best answer from the multiple responses provided.
[1253] Operation flow
[1254] Question received:
[1255] The user enters a question about the payment method into the device. The device receives this question and sends it to the server.
[1256] Question analysis:
[1257] The server analyzes the received question using a natural language processing model (for example, HuggingFace's Transformer model). This analysis helps understand the content and intent of the question and extract relevant information.
[1258] Generating multiple answers:
[1259] The server generates multiple answers using a generative AI model (e.g., GPT-3) based on the analysis results. This provides answers from different perspectives on the information the user is seeking.
[1260] Providing an answer:
[1261] The server ranks the generated responses based on their reliability and relevance and sends them to the terminal. The terminal then displays a list of the generated responses to the user.
[1262] Selecting and recording answers:
[1263] The user selects the most appropriate answer from several options presented. The device sends the selected answer to the server, which records it. This recorded information will be used as reference material for future inquiries.
[1264] Specific example
[1265] For example, if a user enters the question "What are the advantages of cashless payment?", the system will operate as follows:
[1266] User input questions:
[1267] "What are the advantages of cashless payments?"
[1268] Examples of prompts for a generative AI model:
[1269] Analyze the following questions and list three benefits of cashless payments. Please include specific examples and statistical data in your suggestions.
[1270] Question: "What are the advantages of cashless payments?"
[1271] Server analysis and response generation:
[1272] 1. Cashless payment is fast and convenient.
[1273] 2. There is no need to carry cash, which improves security.
[1274] 3. Payment history is recorded, making financial management easier.
[1275] Presentation and choice to the user:
[1276] Users can review these responses and select the one that best suits them. The selected response is recorded on the server and used to improve the service in the future.
[1277] In this way, users can quickly and appropriately obtain diverse information about payment methods and make the most appropriate choice. Furthermore, the information recorded by the system will be used as useful data for improving accuracy and responding to future inquiries.
[1278] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1279] Step 1:
[1280] User enters question
[1281] The user enters a question about the payment method into the device. The entered question is processed as string data within the device.
[1282] Input: A question entered by the user (e.g., "What are the advantages of cashless payment?")
[1283] Output: String data of the question
[1284] Step 2:
[1285] Submit a question
[1286] The terminal sends the received question to the server. Communication is performed using communication protocols such as HTTP requests.
[1287] Input: String data of the question
[1288] Output: Question data sent to the server
[1289] Step 3:
[1290] Question analysis
[1291] The server analyzes the received question using a natural language processing model (e.g., HuggingFace's Transformer model). The analysis results include the intent of the question and related key entities.
[1292] Input: Question data (string) sent to the server
[1293] Data processing / computation: Analyzing questions using natural language processing models (e.g., sentence element analysis)
[1294] Output: Analysis results of the question (e.g., question intent, relevant key entities)
[1295] Step 4:
[1296] Generating an answer
[1297] The server generates multiple answers using an AI model (e.g., GPT-3) based on the analysis results. The AI model generates answers based on the prompt text.
[1298] Input: Analysis results of the question
[1299] Prompt generation: "Analyze the following question and list three benefits of cashless payments. Include specific examples and statistical data for the benefits. Question: 'What are the benefits of cashless payments?'"
[1300] Data processing / calculation: Answer generation using generative AI models
[1301] Output: Multiple responses (e.g., "Cashless payments are fast and convenient.", "There is no need to carry cash, and security is improved.", "Payment history is recorded, making financial management easier.")
[1302] Step 5:
[1303] Ranking and presentation of responses
[1304] The server ranks the generated responses based on their reliability and relevance, and then sends them to the terminal.
[1305] Input: Multiple response data
[1306] Data processing / calculation: Ranking of responses (confidence level, relevance)
[1307] Output: Ranked response data
[1308] Step 6:
[1309] Providing answers to users
[1310] The terminal displays ranked responses received from the server to the user. The user selects the most appropriate response from the displayed options.
[1311] Input: Ranked response data
[1312] Output: Best answer selected by the user
[1313] Step 7:
[1314] Submitting and recording your response selections.
[1315] The terminal sends the user's selected answer to the server, which then records it. This recorded data is used as reference material for future inquiries.
[1316] Input: User-selected response data
[1317] Output: Response data recorded on the server
[1318] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1319] The embodiments for carrying out the present invention are described below. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. Furthermore, it has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Moreover, by combining the present invention with an emotion engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[1320] System Configuration
[1321] This system operates by including a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[1322] Received a question
[1323] The user enters a question into the device. When the user enters a question in natural language and presses the send button, the question is sent to the device.
[1324] Question analysis
[1325] The server analyzes the received question. A natural language processing model is used for the analysis to understand the content and intent of the question. The analysis results include key entities related to the question (e.g., location, time, people). Furthermore, the server uses an emotion engine to analyze the user's emotions from their input and incorporates the results of that analysis into the question analysis.
[1326] Generating multiple answers
[1327] The server generates multiple answers based on the analysis results. It uses generative AI to create answers to questions from different perspectives. This provides users with a variety of answers to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[1328] Providing an answer
[1329] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[1330] Recognition and reflection of emotions
[1331] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[1332] Selecting and recording answers
[1333] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[1334] Specific example
[1335] For example, consider a scenario where a user asks, "Can you recommend some nearby restaurants?" The user enters this question into their device, which then sends it to the server. The server analyzes the question and derives an analysis result based on the user's current location and the results of the sentiment engine. It then generates several possible answers, such as the following:
[1336] Answer 1: "Restaurant A, located nearby, serves Italian food and has a rating of 4.5 (because users are relaxed)."
[1337] Answer 2: "Restaurant B is a 5-minute walk away and has recently been renovated."
[1338] Answer 3: "Restaurant C is open 24 hours and is popular for its reasonable prices."
[1339] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they deem most appropriate. For example, if the user selects details for "Restaurant A," the terminal sends the selection result and sentiment data to the server, which then records it.
[1340] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system.
[1341] The following describes the processing flow.
[1342] Step 1:
[1343] The user enters a question into the device. Specifically, the user enters a natural language question such as "Please tell me about nearby restaurants," and when they press the send button, the input data is stored on the device.
[1344] Step 2:
[1345] The terminal receives user input, converts it into a data format, and sends it to the server. Here, the terminal converts the input text into a format such as JSON and communicates it to the server over the network.
[1346] Step 3:
[1347] The server receives the question. The server receives the data packet sent from the terminal and begins processing to analyze its contents.
[1348] Step 4:
[1349] The server analyzes the question. This analysis uses a natural language processing (NLP) model to perform grammatical analysis of the text, extract keywords, and understand intent. For example, it might extract the key phrase "nearby restaurants."
[1350] Step 5:
[1351] The server receives input and passes it to the emotion engine to analyze the user's emotions. It reads emotions from the user's input text and identifies them, for example, "excited" or "relaxed."
[1352] Step 6:
[1353] The server integrates the analysis results and sentiment data, and searches the database based on that. The server considers location information and sentiment, and retrieves multiple responses from the relevant restaurant information database.
[1354] Step 7:
[1355] The server generates multiple answers. Based on the analyzed data, generative AI is used to create a variety of responses. For example, these might include "Restaurant A has a high rating," "Restaurant B is reasonably priced," and "Restaurant C is open 24 hours."
[1356] Step 8:
[1357] The server evaluates the generated responses and ranks them based on their reliability and relevance. Each response is scored, and priority is determined by considering the user's sentiment.
[1358] Step 9:
[1359] The server sends a ranked list of answers to the terminal. The organized list of answers is sent to the terminal, and the data is prepared for display to the user.
[1360] Step 10:
[1361] The device displays a list of received responses to the user. The device displays the responses on the screen in a list format, allowing the user to review the content of each response.
[1362] Step 11:
[1363] The user selects the most appropriate answer from the presented list of answers. For example, the user selects "Details of Restaurant A".
[1364] Step 12:
[1365] The device sends the user's selection results to the server. When the user taps a selection button, the data of that selection result is sent to the server.
[1366] Step 13:
[1367] The server receives and records the user's selection results and sentiment data. The selected answers and user sentiment data are saved in a database and can be used for future question analysis and answer generation.
[1368] These detailed steps allow for efficient and accurate responses while taking user emotions into consideration. Furthermore, they contribute to the system's continuous learning and improvement.
[1369] (Example 2)
[1370] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1371] Current question-answering systems struggle to generate responses that take user emotions into account, limiting their ability to provide optimal information tailored to user needs. Furthermore, when generating and presenting multiple different answers, they often lack proper ranking based on reliability and relevance. Additionally, there's a lack of mechanisms to incorporate user feedback and emotional data into subsequent response generation, preventing significant improvements in overall system accuracy.
[1372] In Example 2, the identification processing by the identification processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a user's question, means for analyzing the question using a natural language processing model, means for generating multiple answers using an AI model based on the analysis results, means for analyzing the user's emotions using emotion analysis means and reflecting this in the answer generation, means for ranking the multiple answers based on reliability and relevance and presenting them to the user, and means for receiving and recording the answer selected by the user. This makes it possible to generate responses that take the user's emotions into consideration and provide appropriate information through ranking based on reliability and relevance. Furthermore, by reflecting user feedback and emotion data in subsequent analyses and response generation, the overall accuracy of the system can be improved.
[1373] A "user" refers to a person who inputs a question into the system and selects the answer provided.
[1374] "Terminal" refers to a hardware device or software application used by a user to input questions and receive answers.
[1375] A "server" refers to a central processing unit or system that receives and analyzes user questions and provides generated answers.
[1376] A "question" refers to the content of an inquiry that a user enters into the system via their device.
[1377] A "natural language processing model" refers to an algorithm or software used to analyze a user's question and understand its meaning and intent.
[1378] A "generative AI model" refers to an artificial intelligence algorithm that generates multiple answers based on analysis results.
[1379] "Emotional analysis means" refers to technology that analyzes the emotions contained in a user's question and reflects the results in response generation.
[1380] "Multiple answers" refers to multiple responses generated in response to a user's question, each consisting of different perspectives and content.
[1381] "Reliability" refers to the criteria used to evaluate the accuracy and credibility of the generated responses.
[1382] "Relevance" refers to the criteria used to evaluate how appropriate the generated answer is to the user's question.
[1383] "Ranking" refers to the process of prioritizing multiple generated responses based on their reliability and relevance.
[1384] "Feedback" refers to information about the answers selected by users and their evaluations.
[1385] "Emotional data" refers to information about a user's emotions obtained through emotion analysis methods.
[1386] The embodiments for carrying out the present invention are described below.
[1387] This system has the functionality to receive questions from users, analyze those questions, and generate multiple answers. Furthermore, it has the functionality to present the generated multiple answers to the user, receive the user's selected answer, and record it. In addition, by combining it with an emotion analysis engine that recognizes the user's emotions, it is possible to provide more accurate answers.
[1388] This system operates by including a terminal for receiving user questions, a server that analyzes the questions and generates multiple answers, and a sentiment analysis engine.
[1389] The user enters a question into an input field on the device's interface. Once the user enters the question and presses the send button, the question is sent to the device. For example, a possible question might be, "Can you recommend some nearby restaurants?"
[1390] The terminal sends the entered question to the server. This transmission is typically done securely using the HTTPS protocol.
[1391] The server uses a natural language processing (NLP) model to analyze the received question. Specifically, it uses a BERT-based NLP model, for example, to analyze the content and structure of the question. For example, from the question "Can you tell me about nearby restaurants?", it extracts the key entities "nearby" and "restaurants".
[1392] The server uses an emotion analysis engine to analyze the user's emotions when analyzing received questions. For example, if a user asks a question in a very strong tone, the emotion analysis engine will identify that emotion as "anger" and add this information to the analysis results.
[1393] Based on the analysis results, the server generates multiple answers using a generative AI model (e.g., GPT-4). It generates diverse answers to reflect different perspectives and approaches to the question. For example, it might generate answers such as, "Restaurant A nearby is Italian and has a rating of 4.5," "Restaurant B is a 5-minute walk away and has recently been renovated," or "Restaurant C is open 24 hours and is popular for its reasonable prices."
[1394] The server ranks the generated responses based on their reliability and relevance. This displays more relevant responses higher up, supporting quicker user selection. The generated list of responses is sent to the terminal.
[1395] The terminal displays the received list of answers to the user in list format. The user reviews each answer and selects the one they deem best. For example, if the user selects the details for "Restaurant A," the selection is sent from the terminal to the server.
[1396] The server records the user's selected answers, associated feedback, and sentiment data from the sentiment analysis engine. This data is used as reference data for subsequent question analysis and answer generation, improving the overall accuracy of the system.
[1397] Examples of specific prompt messages include the following:
[1398] "Could you recommend some nearby restaurants?"
[1399] "I'm looking for a highly-rated restaurant."
[1400] "Are there any 24-hour restaurants I can go to right now?"
[1401] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, enabling the user to quickly obtain the most suitable information. Furthermore, recording emotional data contributes to improving the accuracy of the system in the future.
[1402] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1403] Step 1: Enter your question
[1404] The user enters a question in text format into the system interface. The entered question is sent to the terminal in the format "Question: Please tell me about nearby restaurants." The terminal receives this input data and prepares to proceed to the next step. The input is text data, and the output is the text data of the question sent to the terminal.
[1405] Step 2: Submit your question
[1406] The terminal sends questions received from the user to the server over the internet. Typically, the HTTPS protocol is used to securely transmit the data. The input is the text data of the question sent from the user to the terminal, and the output is the text data of the question sent to the server.
[1407] Step 3: Analyzing the Question
[1408] The server analyzes the received question using a natural language processing model. Specifically, it uses the BERT model to analyze the meaning and structure of the text and extract the key entities "nearby" and "restaurant." The input is the text data of the question received by the server, and the output is the extracted key entities and the analysis results.
[1409] Step 4: Emotional Analysis
[1410] The server simultaneously uses a sentiment analysis engine to analyze the emotions contained in the user's question. For example, if the user's text contains a strong question tone or emphasis, the emotion will be analyzed as "urgency" or "expectation." The input is the text data of the question received by the server, and the output is the analyzed sentiment data.
[1411] Step 5: Generating multiple answers
[1412] The server generates multiple answers using a generative AI model (e.g., GPT-4) based on the question and sentiment analysis results. For example, it might generate answers from different perspectives such as "Restaurant A is highly rated," "Restaurant B is nearby and reasonably priced," and "Restaurant C is open 24 hours and convenient." The input is the analysis results and sentiment data, and the output is the multiple generated answers.
[1413] Step 6: Ranking the Responses
[1414] The server ranks the generated responses based on their reliability and relevance. This involves evaluating the content of the generated responses and determining their ranking in relation to the user's question and sentiment analysis results. The input is the generated responses, and the output is a ranked list of responses.
[1415] Step 7: Present your answer
[1416] The server sends a ranked list of answers to the terminal. The terminal displays the received list of answers to the user in list format. The input is the ranked list of answers sent from the server, and the output is the list of answers displayed on the terminal.
[1417] Step 8: Select an answer
[1418] The user selects the most appropriate answer from the displayed list. For example, if the user selects details for "Restaurant A," that selection is recorded on the device. The input is the user's selection from the list, and the output is the selection recorded on the device.
[1419] Step 9: Save the selected answer
[1420] The terminal sends the user's selection results to the server. The server records the selected response, associated feedback, and sentiment data. This data is used for future analysis and response generation. The input is the selection results and sentiment data sent from the terminal to the server, and the output is the data recorded on the server.
[1421] (Application Example 2)
[1422] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1423] In recent years, food delivery services have faced the challenge of users having to choose from a vast number of options, potentially leading to decreased satisfaction. Furthermore, the one-sided provision of information without considering user feelings can result in a lack of personalization, further reducing satisfaction. There is a need to address these challenges and provide systems that allow users to make optimal choices more easily and quickly.
[1424] In Application Example 2, the specific processing performed by the specific processing unit 290 of the data processing device 12 is realized by the following means. In this invention, the server includes means for receiving a question, means for analyzing the question, means for generating multiple answers based on the analysis results, means for presenting the multiple answers to the user, means for receiving and recording the answer selected by the user, an emotion engine for analyzing the user's emotions, means for reflecting the analysis results of the emotion engine in the analysis of the question and the generation of answers, and means for processing information related to food delivery. This makes it possible to generate appropriate answers that take the user's emotions into consideration and improve the user experience.
[1425] "Means for receiving questions" refers to a device or software for sending and receiving questions entered by a user into a system.
[1426] "Means for analyzing questions" refers to the devices or software necessary to analyze received questions and understand their content and intent.
[1427] "Means for generating multiple answers based on analysis results" refers to a device or software that creates multiple answers from different perspectives based on the analysis results of a question.
[1428] "Means of presenting to the user" refers to a device or software for displaying multiple generated answers to the user and providing them as choices.
[1429] "Means for receiving and recording user-selected answers" refers to a device or software for receiving user-selected answers and recording the content of those selections.
[1430] An "emotion engine" is a device or software that analyzes a user's emotions and provides the analysis results to the system.
[1431] "Means for processing information related to food delivery" refers to devices or software that analyze food delivery-related data and provide users with appropriate information.
[1432] A "natural language processing model" is a machine learning model that analyzes natural language text entered by a user to understand its content and intent.
[1433] "Means for ranking responses based on their reliability and relevance" refers to a device or software that ranks multiple generated responses according to their reliability and relevance and presents them to the user in the most optimal order.
[1434] This invention describes embodiments for carrying out this invention. This system has the function of receiving a question from a user, analyzing the question, and generating multiple answers. It also has the function of presenting the generated multiple answers to the user, receiving the answer selected by the user, and recording it. Furthermore, by combining it with an emotion engine, it is possible to recognize the user's emotions and provide more accurate answers.
[1435] System Configuration
[1436] This system includes a terminal that receives user questions, a server that analyzes the questions and generates multiple answers, and an emotion engine.
[1437] Received a question
[1438] The user enters a question into the terminal. When the user enters the question in natural language and presses the send button, the question is sent to the terminal. At this time, the terminal functions as an interface for sending the user's input to the server.
[1439] Question analysis
[1440] The server analyzes the received questions. A natural language processing model (e.g., GPT-3) is used for the analysis to understand the content and intent of the questions. The server also uses an emotion engine (e.g., EmoNet) to analyze the user's emotions from their text input and incorporates the results of this analysis into the question analysis.
[1441] Generating multiple answers
[1442] Based on the analysis results, the server generates multiple answers using a generative AI model. By providing answers from different perspectives, a variety of answers are available for the user to choose from. For example, in response to a question about restaurants, the server might generate answers such as "Restaurant A has high ratings," "Restaurant B is currently running a promotion," and "Restaurant C is friendly."
[1443] Providing an answer
[1444] The server organizes the generated responses and ranks them based on their reliability and relevance. This list of responses is sent to the device, which then presents the responses to the user in list format. The user can review the list and select the most appropriate response.
[1445] Recognition and reflection of emotions
[1446] The emotion engine analyzes the user's emotions from their text input and incorporates the analysis results into question analysis and answer generation. For example, if a user is highly agitated by a question, the emotion engine adds that information to the analysis results, influencing the answer presentation. This ensures that the answer selection is tailored to the user's emotions.
[1447] Selecting and recording answers
[1448] The user selects the most appropriate answer from a list of presented answers. The device receives this selection and sends it to the server. The server records the selected answer, associated feedback, and sentiment data from the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[1449] Specific example
[1450] As a concrete example, let's consider a case where a user enters the question "What should I eat today?" into their device. The user enters this question into the device, and the device sends the question to the server. The server analyzes the question and derives an analysis result based on current sentiment data. It then generates several possible answers, such as the following:
[1451] 1. "There's a highly-rated Italian restaurant nearby."
[1452] 2. "Restaurant B has a special menu available as part of a promotion."
[1453] 3. "Restaurant C is popular for its friendly atmosphere."
[1454] The server ranks these responses based on their reliability and relevance and sends them to the terminal. The terminal displays the responses to the user in a list format, and the user selects the response they feel is most appropriate. For example, if the user selects "Italian restaurant," the terminal sends the selection result and sentiment data to the server, which records it.
[1455] Example of a prompt
[1456] A user asked the question, "What should I eat today?" Considering the emotion "relaxed," please provide the following answer:
[1457] Thus, the system of the present invention efficiently generates and presents multiple answers to a single question while taking into account the user's emotions, allowing the user to quickly obtain the most suitable information. Furthermore, the accuracy of the system is improved by recording emotional data.
[1458] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1459] Step 1:
[1460] The user enters a question into the device. For example, they might enter text such as "What should I eat today?" and press the send button. The entered natural language data is then sent from the device to the server.
[1461] Input: User question text
[1462] Output: Data transfer from terminal to server
[1463] Step 2:
[1464] The server analyzes the questions received from the user. A natural language processing model (e.g., GPT-3) is used for the analysis. The server tokenizes the question text and performs analysis to understand the context.
[1465] Input: Question text sent from the device
[1466] Output: Question analysis results (tokenized text, contextual data)
[1467] Step 3:
[1468] The server uses an emotion engine to analyze the user's emotions from the question text. The emotion engine (e.g., EmoNet) extracts emotion parameters from the text and generates data accordingly.
[1469] Input: Question text
[1470] Output: Sentiment analysis results (emotional parameters)
[1471] Step 4:
[1472] The server integrates the analysis results of the question and the sentiment analysis results, and generates multiple answers using a generative AI model. For example, the server generates an answer using the prompt "The user asked the question 'What should I eat today?'. Considering the sentiment 'relaxed', please provide the following answers."
[1473] Input: Integrated analysis results (questionnaire analysis results and sentiment analysis results)
[1474] Output: Multiple generated answers
[1475] Step 5:
[1476] The server-generated responses are ranked based on their reliability and relevance. A scoring algorithm is used for this evaluation, calculating a reliability score and a relevance score for each response.
[1477] Input: Multiple generated answers
[1478] Output: Ranked list of answers
[1479] Step 6:
[1480] The server sends a ranked list of answers to the device. The device presents this to the user in list format, and the user selects the answer they deem most appropriate.
[1481] Input: Ranked list of answers
[1482] Output: Display of answer list by terminal
[1483] Step 7:
[1484] The user selects the most appropriate answer from the presented list. The device receives this selection and sends it to the server.
[1485] Input: User's selected answer
[1486] Output: Data transfer of selection results from terminal to server
[1487] Step 8:
[1488] The server records the selected answer, associated feedback, and sentiment data generated by the sentiment engine. This data is used as reference data for future question analysis and answer generation.
[1489] Input: User selection results and sentiment data
[1490] Output: Updated recorded database
[1491] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1492] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1493] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1494] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1495] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. In the upper and lower directions of the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. Also, the upper side of the concentric circles is where "pleasant" emotions are located, and the lower side is where "unpleasant" emotions are located. In this way, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1496] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1497] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1498] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1499] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1500] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1501] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1502] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[1503] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[1504] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1505] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[1506] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[1507] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[1508] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[1509] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[1510] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[1511] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted as being incorporated by reference.
[1512] The following is further disclosed regarding the embodiments described above.
[1513] (Claim 1)
[1514] Means of receiving questions,
[1515] A means for analyzing the aforementioned questions,
[1516] Means for generating multiple answers based on the aforementioned analysis results,
[1517] A means for presenting the aforementioned multiple answers to the user,
[1518] A system including means for receiving and recording the response selected by the user.
[1519] (Claim 2)
[1520] The system according to claim 1, wherein the means for analysis uses a natural language processing model.
[1521] (Claim 3)
[1522] The system according to claim 1, wherein the means for presenting the multiple answers ranks the answers based on their reliability and relevance.
[1523] "Example 1"
[1524] (Claim 1)
[1525] A means of receiving questions from users,
[1526] A means for analyzing the aforementioned question using a natural language processing model,
[1527] A means for generating multiple answers using a generation AI model based on the aforementioned analysis results,
[1528] A means of ranking the aforementioned multiple responses based on their reliability and relevance and presenting them to the user,
[1529] Means for receiving and recording the response selected by the user.
[1530] A system that includes this.
[1531] (Claim 2)
[1532] The system according to claim 1, wherein the means for analysis uses a natural language processing model.
[1533] (Claim 3)
[1534] The system according to claim 1, wherein the means for presenting the multiple answers ranks the answers based on their reliability and relevance.
[1535] "Application Example 1"
[1536] (Claim 1)
[1537] Means of receiving questions,
[1538] A means for analyzing the aforementioned questions,
[1539] Means for generating multiple answers based on the aforementioned analysis results,
[1540] A means for presenting the user with multiple answers and receiving and recording the answer selected by the user,
[1541] A means of generating and presenting appropriate answers to questions regarding payment methods,
[1542] A system including means of recording questions and answers regarding the aforementioned payment method for reference in future inquiries.
[1543] (Claim 2)
[1544] The system according to claim 1, wherein the means for analysis uses a natural language processing model.
[1545] (Claim 3)
[1546] The system according to claim 1, wherein the means for presenting the multiple answers ranks the answers based on their reliability and relevance.
[1547] "Example 2 of combining an emotion engine"
[1548] (Claim 1)
[1549] A means of receiving user questions,
[1550] A means for analyzing the aforementioned question using a natural language processing model,
[1551] A means for generating multiple answers using an AI model based on the aforementioned analysis results,
[1552] A means for analyzing the user's emotions using emotion analysis means and reflecting this in the response generation,
[1553] A means of ranking the aforementioned multiple responses based on their reliability and relevance and presenting them to the user,
[1554] A system including means for receiving and recording the response selected by the user.
[1555] (Claim 2)
[1556] The system according to claim 1, wherein the emotion analysis means analyzes the user's emotions from the text input and reflects them in the analysis results of the question.
[1557] (Claim 3)
[1558] The system according to claim 1, wherein the response generation means is generated taking into account each incorporated entity (e.g., place, time, person, etc.).
[1559] (Claim 4)
[1560] The system according to claim 1, wherein the recording means records user feedback and sentiment data and uses it as reference data when analyzing questions or generating answers in the future.
[1561] "Application example 2 of combining emotional engines"
[1562] (Claim 1)
[1563] Means of receiving questions,
[1564] A means for analyzing the aforementioned questions,
[1565] Means for generating multiple answers based on the aforementioned analysis results,
[1566] A means for presenting the aforementioned multiple answers to the user,
[1567] A means for receiving and recording the response selected by the user,
[1568] Includes an emotion engine that analyzes user emotions,
[1569] A means for reflecting the analysis results of the aforementioned emotion engine in the analysis of questions and the generation of answers,
[1570] Means for processing information related to food delivery,
[1571] A system that includes this.
[1572] (Claim 2)
[1573] The system according to claim 1, wherein the means for analysis uses a natural language processing model.
[1574] (Claim 3)
[1575] The system according to claim 1, wherein the means for presenting the multiple answers ranks the answers based on their reliability and relevance. [Explanation of Symbols]
[1576] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. Means of receiving questions, A means for analyzing the aforementioned questions, Means for generating multiple answers based on the aforementioned analysis results, A means for presenting the aforementioned multiple answers to the user, A system including means for receiving and recording the response selected by the user.
2. The system according to claim 1, wherein the means for analysis uses a natural language processing model.
3. The system according to claim 1, wherein the means for presenting the multiple answers ranks the answers based on their reliability and relevance.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A