system
A system using natural language processing and database retrieval addresses the inefficiencies in internal procedure information by generating user-friendly responses, enhancing employee understanding and procedure execution.
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
Existing systems face challenges in efficiently and accurately providing information on internal personnel and general affairs procedures, particularly for new employees, due to the complexity and time-consuming nature of information retrieval, and the risk of using outdated or incorrect procedures.
A system that utilizes natural language processing to analyze user inquiries, extracts key keywords and intents, searches relevant information from a database, summarizes the results, and generates user-friendly responses to support employees in understanding and executing procedures efficiently and accurately.
Enables users to quickly obtain necessary information and execute procedures accurately, improving work efficiency and reducing errors by providing concise and up-to-date information.
Smart Images

Figure 2026063747000001_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, 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 as a 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] Information related to personnel and general affairs procedures within a company is diverse, and it often requires a lot of time and effort to obtain and understand. In particular, it is difficult for new employees or employees who are not familiar with the procedures to obtain the necessary information quickly and accurately. Also, with conventional methods, it is difficult to keep up with the latest regulations and changes in procedures, and there is a risk of proceeding with procedures based on incorrect information. Therefore, there is an increasing need for a system that supports employees in efficiently and accurately understanding and executing in-house procedures.
Means for Solving the Problems
[0005] This invention provides a means for receiving inquiries from users, analyzing those inquiries using natural language processing, and extracting key keywords and intents. Next, it provides a means for searching a database for relevant information based on the extracted keywords and intents, and for summarizing the retrieved information. Furthermore, it provides a means for integrating the summarized information and generating an appropriate response for the user. Finally, it provides a means for sending the generated response to the user, thereby supporting employees in efficiently and accurately understanding and executing internal procedures.
[0006] A "user" refers to a person who makes inquiries to the system, or a person who actually operates the system.
[0007] An "inquiry" refers to a question or request that a user makes to a system in order to obtain specific information or procedures.
[0008] "Means of receiving" refers to the function that allows the system to take in inquiries sent by users.
[0009] "Natural language processing" refers to the technology used by systems to analyze text data entered by users and understand its meaning and intent.
[0010] "Means of analysis" refers to functions that use natural language processing to analyze user inquiries and extract key keywords and their intent.
[0011] "Keywords" refer to particularly important words or phrases within an inquiry, and serve as criteria for the system to search for related information.
[0012] "Intention" refers to the purpose or expected outcome that a user has when making an inquiry.
[0013] A "database" refers to an electronic record system used by a system to store and manage information.
[0014] "The means for searching" refers to a function for searching for relevant information in a database based on the extracted keywords and intentions.
[0015] "The means for summarizing" refers to a function for organizing the retrieved information, extracting important parts, and summarizing them briefly.
[0016] "The means for integrating information" refers to a function for combining multiple summarized information as one answer and providing it to the user.
[0017] "The means for generating an answer" refers to a function for creating an answer in a form that is easy for the user to understand.
[0018] "The means for transmitting" refers to a function for transmitting the generated answer to the user's terminal.
[0019] "The system" refers to a series of components including all functions and means according to the present invention.
Brief Description of the Drawings
[0020] [Figure 1] It is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It 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] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It 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] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It 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] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Embodiments for Carrying Out the Invention
[0021] 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.
[0022] First, the terms used in the following description will be explained.
[0023] In the following embodiments, a processor with a reference number (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of a plurality of arithmetic units. Further, the processor may be a single type of arithmetic unit or a combination of a plurality of 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.
[0024] In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.
[0025] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0026] 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).
[0027] 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."
[0028] [First Embodiment]
[0029] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0030] 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.
[0031] 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).
[0032] 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.
[0033] 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.
[0034] 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.
[0035] 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.
[0036] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0037] 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.
[0038] 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.
[0039] 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.
[0040] 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".
[0041] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily executing the necessary procedures. The following describes specific embodiments for carrying out this invention.
[0042] System Overview
[0043] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries, retrieve appropriate information, summarize it, and provide it to the user. This system mainly performs information reception, analysis, retrieval, summarization, response generation, and transmission between the server and the user terminal.
[0044] Server-side processing
[0045] 1. Request received
[0046] The server receives user inquiries sent from the terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[0047] 2. Query Analysis
[0048] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0049] 3. Searching for related information
[0050] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[0051] 4. Information Summary
[0052] The server uses an algorithm to summarize the acquired information, extracting the main points the user needs and presenting them concisely.
[0053] 5. Generating and sending responses
[0054] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the terminal and displayed on the user's screen.
[0055] User-side processing
[0056] 1. Enter your inquiry
[0057] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[0058] 2. Receiving and displaying responses
[0059] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with the correct internal procedures.
[0060] Specific example
[0061] For example, consider a scenario where a user inquires, "Could you please tell me about the latest travel regulations and procedures?"
[0062] 1. User inquiry input
[0063] The user enters this inquiry into their device and sends it to the system.
[0064] 2. Server processing starts
[0065] The server receives the query and begins analysis.
[0066] The keywords "travel regulations" and "procedures" are extracted using natural language processing.
[0067] 3. Database Search
[0068] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0069] 4. Information Summary
[0070] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0071] 5. Generate and submit your response.
[0072] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day."
[0073] The generated response is sent to the user's terminal and displayed on the user's screen.
[0074] In this way, users can quickly obtain the necessary information and execute internal procedures accurately. This system is particularly beneficial for new employees and those unfamiliar with procedures, and can significantly improve work efficiency.
[0075] The following describes the processing flow.
[0076] Step 1:
[0077] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0078] Step 2:
[0079] The terminal sends user input to the server as an HTTP request. The data format used is typically JSON.
[0080] Step 3:
[0081] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[0082] Step 4:
[0083] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[0084] Step 5:
[0085] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[0086] Step 6:
[0087] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[0088] Step 7:
[0089] The server integrates multiple summarized pieces of information and generates a response in a user-friendly format. For example, it might apply the retrieved summary to a template to construct the response.
[0090] Step 8:
[0091] The server sends the generated response to the terminal as an HTTP response.
[0092] Step 9:
[0093] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly obtain the necessary information.
[0094] (Example 1)
[0095] 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."
[0096] Conventional information retrieval systems for personnel and general affairs procedures have problems such as the search results being enormous, making it difficult for users to quickly find the information they need, and the procedures being complex, which is time-consuming and troublesome, especially for new employees and employees unfamiliar with the procedures. Furthermore, the lack of accuracy and consistency of the information has also been a problem. Therefore, the present invention aims to improve the efficiency of procedures by quickly providing appropriate and summarized information in response to user inquiries.
[0097] 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.
[0098] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from an information storage device based on the extracted keywords and intents, means for summarizing the retrieved information using a summary generation model, means for integrating the summarized information and generating an answer for the user, and means for sending the generated answer to the user and displaying it on the user terminal. This enables users to quickly obtain the necessary information and efficiently execute accurate internal procedures.
[0099] "User" refers to an end-user who uses this system to obtain information and perform procedures.
[0100] An "inquiry" refers to a question or request that a user enters into a system to obtain information.
[0101] A "server" refers to a computer system that receives inquiries from users, analyzes them, processes them, searches for information, summarizes it, generates responses, and sends them.
[0102] "Natural language processing" refers to the technology that enables computers to understand and analyze human language.
[0103] "Keywords" refer to important words or phrases extracted through the analysis of user inquiries.
[0104] "Intention" refers to the user's purpose or the type of information they are seeking, as included in the inquiry.
[0105] "Information storage device" refers to databases and storage devices that systems use to store and retrieve information.
[0106] "Related information" refers to information retrieved from the information storage device based on the extracted keywords and intent.
[0107] A "summary generation model" refers to an algorithm or artificial intelligence model designed to concisely summarize retrieved information.
[0108] "Answer" refers to a response message generated by the system in response to a user's inquiry, which contains summarized information.
[0109] A "user terminal" refers to a device used by a user to access the system, enter inquiries, and receive and display responses.
[0110] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily performing the necessary procedures. This system primarily involves receiving, analyzing, searching, summarizing, generating responses, and transmitting information between a server and a user terminal.
[0111] System Overview
[0112] Server-side processing
[0113] 1. Request received
[0114] The server receives inquiries sent from the user's terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[0115] 2. Query Analysis
[0116] The server analyzes incoming queries using natural language processing technology. Specifically, it utilizes Google® Cloud Natural Language API and OpenAI® GPT-4®. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0117] 3. Searching for related information
[0118] Based on the extracted keywords and intent, the server searches for relevant information from its information storage device (database). The databases used are MySQL® and PostgreSQL. For example, searching for documents related to "latest travel regulations" is achieved by generating and executing an SQL query.
[0119] 4. Information Summary
[0120] The server summarizes the retrieved information using a summarization model (e.g., OpenAI's GPT-4). This model extracts the key information the user needs and presents it concisely.
[0121] 5. Generating and sending responses
[0122] The server generates a response for the user based on the summarized information. This generated response is structured in an easy-to-understand format. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day." This response is sent to the user's terminal and displayed on the user's screen.
[0123] User-side processing
[0124] 1. Enter your inquiry
[0125] Users access the system and enter inquiries about the information or procedures they want to know. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0126] 2. Receiving and displaying responses
[0127] The user terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with accurate internal procedures.
[0128] Specific example
[0129] For example, if a user asks, "Could you please tell me about the latest travel regulations and procedures?":
[0130] 1. User inquiry input
[0131] The user enters this inquiry into their device and sends it to the system.
[0132] 2. Server processing starts
[0133] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[0134] 3. Database Search
[0135] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0136] 4. Information Summary
[0137] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0138] 5. Generate and submit your response.
[0139] The server combines the summary results and generates an easy-to-understand answer for the user. The generated answer is sent to the user's terminal and displayed on the user's screen.
[0140] Example of a prompt
[0141] Examples of prompts include, "Please tell me about the latest company regulations and procedures," or "I would like to know the current travel expense limit." This allows for the effective extraction of specific information requested by the user.
[0142] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0143] Step 1:
[0144] User inquiry input
[0145] The user accesses the system and enters their inquiry. This input is done through a web browser on their terminal or a dedicated application. For example, the user might type "Please tell me the latest travel regulations and procedures" and click the submit button.
[0146] Input: User inquiry (e.g., "Please tell me about the latest travel regulations and procedures.")
[0147] Output: HTTP request sent to the server containing the user's query.
[0148] Specific action: The user enters a question in the text box and clicks the submit button.
[0149] Step 2:
[0150] Server receives request
[0151] The server receives an HTTP request sent from the user's terminal. The request contains the user's inquiry.
[0152] Input: HTTP request sent by the user
[0153] Output: Data extracted from the query content for analysis and passed to internal processing.
[0154] Specific operation: The server receives an HTTP POST request through a web server (e.g., Nginx or Apache®) and passes the data to the application server.
[0155] Step 3:
[0156] Analysis of Inquiries by Server
[0157] The server analyzes the received inquiry content using natural language processing technology. Specifically, it uses a natural language processing API (e.g., Google Cloud Natural Language API) or a generative AI model (e.g., OpenAI GPT-4).
[0158] Input: Extracted inquiry content (text format)
[0159] Output: Analysis result including keywords and user intent
[0160] Specific operation: The server tokenizes the inquiry text and extracts the main keywords and user intent. For example, extract keywords such as "latest", "business trip regulations", and "procedure method".
[0161] Step 4:
[0162] Search for Relevant Information by Server
[0163] The server searches for relevant information from an information storage device (database) based on the analyzed keywords and intent. The databases used are MySQL and PostgreSQL.
[0164] Input: Keywords and user intent
[0165] Output: Relevant information as search results
[0166] Specific operation: The server generates an SQL query and executes the query against the database. For example, "SELECT FROM regulations WHERE category='business trip' AND type='latest'".
[0167] Step 5:
[0168] Information summary by the server
[0169] The server summarizes the retrieved information using a summarization model (e.g., OpenAI GPT-4). It extracts the main points the user needs and summarizes them concisely.
[0170] Input: Relevant information as search results
[0171] Output: Summarized information
[0172] Specific operation: The server inputs search results into GPT-4, extracts key points, and generates concise text. Example: The information "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen" is generated using a summary generation model.
[0173] Step 6:
[0174] Server generates and sends responses.
[0175] The server generates a response for the user based on the summarized information and sends it to the user's terminal. The generated response is in an easy-to-understand format.
[0176] Input: Summarized information
[0177] Output: Response text sent to the user
[0178] Specific operation: The server generates the response message "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." and sends it to the user's terminal as an HTTP response.
[0179] Step 7:
[0180] User response received and displayed
[0181] The user terminal receives the response sent from the server and displays it on the screen. Based on the information provided, the user can proceed with accurate internal procedures.
[0182] Input: Response text sent from the server
[0183] Output: The response displayed on the user's terminal.
[0184] Specific operation: The user's terminal receives an HTTP response, parses the response text, and displays it. Example: Using HTML and CSS, the text "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." is displayed on the screen.
[0185] (Application Example 1)
[0186] 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."
[0187] In the operational processes of physical stores, it is crucial for staff to quickly and accurately obtain necessary information and perform their duties efficiently. However, researching the required information and procedures often takes a lot of time and effort, leading to decreased efficiency and errors. This invention aims to solve these problems and provide a system for streamlining operational processes within physical stores.
[0188] 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.
[0189] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for integrating the summarized information and generating an answer for the user, means for sending the generated answer to the user, and means for supporting procedures and information retrieval in business processes within a physical store using a smart device or robot. This enables staff in physical stores to quickly and accurately obtain the information they need and perform their duties efficiently.
[0190] "Means of receiving inquiries from users" refers to the means by which users input questions or requests for information from the system.
[0191] "Natural language processing" is a technology that enables computers to understand and process human language, and it involves analyzing queries to extract key keywords and intents.
[0192] "Means for extracting key keywords and intent" refers to methods for identifying important words and objectives from user inquiries using natural language processing technology.
[0193] "Methods for searching for relevant information from a database" refer to methods for finding appropriate information from stored data based on extracted keywords or intents.
[0194] "Methods for summarizing retrieved information" refer to methods for extracting key points from found information and summarizing them concisely.
[0195] "Means for generating answers for users" refers to methods for creating answers in a format that is easy for users to understand, based on summarized information.
[0196] "Means of sending to the user" refers to the means of sending the generated response to the user's device and displaying it.
[0197] "Means of supporting procedures and information retrieval in in-store business processes using smart devices or robots" refers to means of using smartphones, tablets, or robots to guide customers through procedures related to in-store business processes or to search for and provide necessary information.
[0198] This invention is a system that efficiently and accurately supports procedures and information retrieval in business processes within physical stores. This system primarily performs information reception, analysis, retrieval, summarization, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out this invention.
[0199] System Overview
[0200] Users use smart devices or robots to inquire about business processes within physical stores. These inquiries are received by the system and analyzed using natural language processing technology. Based on the analyzed inquiry, the server searches the database for relevant information, summarizes it, and generates a response. The generated response is sent to the user's terminal and displayed on the screen.
[0201] Server-side processing
[0202] 1. Request received
[0203] The server receives user inquiries sent from smart devices and robots. These inquiries are in the form of specific questions, such as "Please tell me the latest inventory management regulations."
[0204] 2. Query Analysis
[0205] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0206] 3. Searching for related information
[0207] Based on the extracted keywords and intent, the server searches the database for relevant information. For example, it might retrieve documents related to the latest inventory management regulations. This process uses a database management system (e.g., MySQL, PostgreSQL).
[0208] 4. Information Summary
[0209] The server uses an algorithm to summarize the acquired information, extracting the key parts the user needs and presenting them concisely. Generative AI models (e.g., Transformers, GPT-3®) can be used for summarization.
[0210] 5. Generating and sending responses
[0211] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the user's terminal and displayed on the user's screen.
[0212] User-side processing
[0213] 1. Enter your inquiry
[0214] Users access the system using smart devices or robots and input inquiries about the information or procedures they want to know. For example, if they want to know about inventory management procedures, they might input, "Please tell me the latest inventory management regulations."
[0215] 2. Receiving and displaying responses
[0216] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with in-store operations accurately.
[0217] Specific example
[0218] For example, consider a scenario where a user asks, "Could you please provide me with the latest inventory management regulations?"
[0219] 1. User inquiry input
[0220] The user enters this inquiry into their device and sends it to the system.
[0221] 2. Server processing starts
[0222] The server receives the query and begins analysis. Natural language processing is used to extract the keyword "inventory management regulations".
[0223] 3. Database Search
[0224] The server searches the database for information on the latest inventory management regulations based on these keywords.
[0225] 4. Information Summary
[0226] The server search results are summarized to highlight key points. For example, information such as "Inventory management regulations effective from March 1, 2023: Product inventory must be checked once a week" is extracted.
[0227] 5. Generate and submit your response.
[0228] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might say, "Regarding the latest inventory management regulations: Effective March 1, 2023, product inventory must be checked once a week." The generated response is sent to the user's terminal and displayed on the user's screen.
[0229] Example of a prompt
[0230] "Could you please provide me with the latest inventory management regulations?"
[0231] "What are the store's promotional offers for today?"
[0232] "I'd like to confirm the inventory management procedures for our products."
[0233] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0234] Step 1:
[0235] The user enters an inquiry into a terminal and sends it to the system. The input is a question in natural language format, for example, "Please tell me the latest inventory management regulations." The terminal sends this input to the server.
[0236] Step 2:
[0237] The server receives queries sent by users. The received data is in text format, such as a specific question like, "Please tell me the latest inventory management regulations." The server passes the received text to a natural language processing (NLP) engine.
[0238] Step 3:
[0239] The server uses an NLP engine to analyze queries. First, it tokenizes the text and performs grammatical analysis. Then, it extracts the main keyword "inventory management regulations" and the user's intent. The input is a text-based query, and the output is a set of main keywords and intent.
[0240] Step 4:
[0241] The server searches the database based on the extracted keywords and intent. In this step, it searches for relevant information from multiple databases (e.g., MySQL, PostgreSQL). The input is the keyword "Inventory Management Regulations," and the output is the relevant documents or data.
[0242] Step 5:
[0243] The server summarizes the retrieved information using a generative AI model (e.g., Transformers, GPT-3). The summarization algorithm extracts key points from long documents and condenses them into a concise format. The input is the relevant documents, and the output is a concise, to-the-point summary.
[0244] Step 6:
[0245] The server generates an answer in a user-friendly format based on the summarized information. The generated answer includes the necessary information and procedures. The input is summarized information, and the output is the completed answer text.
[0246] Step 7:
[0247] The server sends the generated response to the user's terminal. The input is the response text, and the output is the transmission of data to the terminal. The terminal displays the received response on the user's screen, and the user can proceed with the task based on the provided information.
[0248] Through the above processing steps, users will be able to quickly and accurately obtain information about business processes within physical stores.
[0249] 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.
[0250] This invention is a system that receives inquiries from users and provides information on internal company procedures more quickly and accurately by combining natural language processing and an emotion engine. The following describes specific embodiments for carrying out this invention.
[0251] System Overview
[0252] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries using natural language processing, determine the user's emotions using an emotion engine that recognizes emotions, and then retrieve, summarize, and adjust appropriate information to provide to the user. This system mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between the server and the user terminal.
[0253] Server-side processing
[0254] 1. Request received
[0255] The server receives user inquiries sent from the terminal. For example, a user might type, "Please tell me the latest travel regulations and procedures."
[0256] 2. Query Analysis
[0257] The server uses natural language processing techniques to analyze user inquiries. In this step, the text is tokenized, and key keywords and the user's intent are extracted.
[0258] 3. Recognition of emotions
[0259] The extracted inquiry text is sent to the emotion engine to recognize the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety, and records the results.
[0260] 4. Searching for related information
[0261] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[0262] 5. Information Summary
[0263] The server uses a summarization algorithm to extract the main parts of the acquired information that the user needs and summarizes them concisely.
[0264] 6. Adjusting the answer
[0265] The server adjusts the generated response based on the perceived emotions of the user. For example, if the user is feeling anxious, it will use more polite and reassuring language.
[0266] 7. Generating and sending the response
[0267] The server generates an appropriate response for the user based on the summarized information, and constructs a response sentence that is adjusted considering the emotional information obtained from the emotion engine.
[0268] The generated response is sent to the user's terminal and displayed on the user's screen.
[0269] User-side processing
[0270] 1. Enter your inquiry
[0271] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[0272] 2. Receiving and displaying responses
[0273] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the provided information and the adjusted response, the user can proceed with accurate internal procedures.
[0274] Specific example
[0275] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[0276] 1. User inquiry input
[0277] The user inputs the inquiry content into the terminal and sends it to the system.
[0278] 2. Server Processing Start
[0279] The server receives the inquiry and starts analysis. It extracts keywords such as "business trip regulations" and "procedures" through natural language processing.
[0280] 3. Emotion Recognition
[0281] The server sends the inquiry text to the emotion engine to recognize the user's emotion. For example, it is found that the user is feeling anxious.
[0282] 4. Database Search
[0283] Based on these keywords, the server searches the database for information on the latest business trip regulations and procedures.
[0284] 5. Information Summarization
[0285] The server summarizes the search results and extracts the main information. For example, it provides information such as "The upper limit of business trip travel expenses revised since January 1, 2023 is 5,000 yen per day."
[0286] 6. Answer Adjustment
[0287] To relieve the user's anxiety, the server adds polite and reassuring expressions.
[0288] 7. Answer Generation and Sending
[0289] Based on the summarized information and emotion information, the server generates an answer and sends it to the terminal.
[0290] 8. Display to the User
[0291] The device receives the response and displays it on the user's screen. For example, it might be presented in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[0292] Thus, the system of the present invention, which incorporates an emotion engine, can provide necessary information quickly and accurately while taking into account the user's emotions. By recognizing emotions and responding appropriately, the user experience can be improved.
[0293] The following describes the processing flow.
[0294] Step 1:
[0295] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0296] Step 2:
[0297] The terminal sends user input to the server as an HTTP request. Data formats such as JSON are commonly used.
[0298] Step 3:
[0299] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[0300] Step 4:
[0301] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[0302] Step 5:
[0303] The server sends the extracted inquiry text to the emotion engine to recognize the user's emotion. The emotion engine discriminates emotions such as joy, anger, and anxiety through text analysis.
[0304] Step 6:
[0305] Based on the extracted keywords and intentions by the server, the server searches for relevant information from the database. For example, documents related to "business trip regulations" and "procedural methods" are targeted.
[0306] Step 7:
[0307] The server sends the search results to a summarization algorithm to extract the main parts. For example, algorithms such as TextRank or BERT are used to generate the summary.
[0308] Step 8:
[0309] Based on the recognized user emotion by the server, the generated answer is adjusted. For example, for a user with anxiety, expressions to give a sense of reassurance are added.
[0310] Step 9:
[0311] The server sends the adjusted answer to the terminal as an HTTP response.
[0312] Step 10:
[0313] The terminal analyzes the response received from the server and displays the result on the user's screen. Thus, the user can quickly and safely obtain the necessary information.
[0314] (Example 2)
[0315] Next, Example 2 will be described. In the following description, the data processing device 12 is referred to as the "server", and the smart device 14 is referred to as the "terminal".
[0316] Traditional information systems have struggled to provide quick and accurate answers to user inquiries. Furthermore, they often provide answers that disregard user feelings, resulting in a poor user experience. Additionally, they are limited to information retrieval based on specific keywords, making it difficult to aggregate appropriate information from diverse sources. To address these issues, a more efficient and user-friendly information system is needed.
[0317] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0318] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for recognizing the user's emotions and adjusting the information based on the results, means for integrating the summarized information and generating an emotionally adjusted response, and means for sending the generated response to the user. This enables the provision of fast and accurate information that takes the user's emotions into consideration.
[0319] A "user" is a person or entity that requests information from a system and receives a response in return.
[0320] An "inquiry" refers to text or audio data that a user inputs to request information from a system.
[0321] "Natural language processing" is a technology that enables computers to understand, analyze, and generate human language.
[0322] "Keywords" are important words or phrases within an inquiry, and they serve as the starting point for information retrieval and analysis.
[0323] "Intention" refers to the purpose or information that the user is trying to achieve through their inquiry.
[0324] A "database" is a system designed to systematically store information and facilitate searching and updating.
[0325] "Related information" refers to the information in the database necessary to generate appropriate answers to user inquiries.
[0326] A "summary" is a concise document that extracts the most important parts from searched information and puts them together.
[0327] "Emotion recognition" is a technology that analyzes a user's emotions (joy, anger, anxiety, etc.) from the content of their inquiry.
[0328] "Adjustment" refers to modifying the content of responses and other materials to suit the user's preferences based on the results of emotional recognition.
[0329] A "response" is a text or response containing information generated based on a user's inquiry.
[0330] "Sending" refers to the act of sending the generated response to the user's device.
[0331] This invention is a system for receiving user inquiries and providing information more quickly and accurately by combining natural language processing and an emotion engine. The system of this invention mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out the invention.
[0332] Server-side processing
[0333] The server receives user inquiries via the terminal. For example, a user might type and submit "Please tell me the latest travel regulations and procedures." This request is passed to the server as an HTTP request.
[0334] The server uses natural language processing (NLP) techniques to analyze incoming queries. Python's NLTK and SpaCy are used for this process. The input text is tokenized, keywords such as "travel regulations" and "procedures" are extracted, and an intent classifier is also used to understand the user's intent.
[0335] Furthermore, the server sends the extracted query text to a sentiment engine (for example, IBM Watson® Tone Analyzer or Microsoft® Azure® Text Analytics). The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server. These results are used to generate future responses.
[0336] Next, the server searches for relevant information from internal databases (such as PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might retrieve documents from the database regarding the latest travel regulations and application procedures.
[0337] The server summarizes the retrieved information using a summarization algorithm (for example, Python's Gensim or Transformers library). The goal is to extract the main points the user is looking for and summarize them concisely.
[0338] The server adjusts the generated response based on the recognized user's emotions. For example, if the user is feeling anxious, it adds more polite and reassuring language. This adjustment utilizes the output of the emotion engine.
[0339] Finally, the server generates a final response and sends it to the user's terminal. The response includes summarized information and sentiment-based adjustments. It is sent to the user's terminal as an HTTP response.
[0340] User-side processing
[0341] Users access the system and enter the information or procedures they want to know as inquiries. For example, a user who wants to know about the travel application process would enter "Please tell me the latest travel regulations and procedures" and press the submit button.
[0342] The user terminal receives a response from the server and displays it on the screen. For example, information might be displayed in the format of, "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence."
[0343] Specific example
[0344] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[0345] The user enters "Please tell me the latest travel regulations and procedures" into their terminal and sends it to the system. The server receives the inquiry and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[0346] Next, the server sends the query text to the sentiment engine to recognize the user's emotions. For example, it might determine that the user is feeling anxious. Based on these keywords, the server searches the database for information on the latest travel policies and procedures.
[0347] The acquired information is summarized, and key information is extracted. For example, information such as "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day" is provided. The server adds polite and reassuring language to alleviate user concerns.
[0348] The final response is generated and sent to the device. For example, it might appear on the user's screen in the format of: "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[0349] By combining this system with an emotion engine, it can provide necessary information quickly and accurately while taking the user's emotions into consideration. This can improve the user experience.
[0350] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0351] Step 1:
[0352] The server receives an HTTP request from the user's terminal. The user uses their terminal's web browser or mobile app to enter and send an inquiry, for example, "Please tell me the latest travel regulations and procedures." This request reaches the server, and the server logs its contents.
[0353] Input: User's inquiry text
[0354] Output: Received and logged query text.
[0355] Step 2:
[0356] The server analyzes the received query text using natural language processing (NLP) techniques. Specifically, it tokenizes the text using Python's NLTK or SpaCy and extracts key keywords such as "travel regulations" and "procedures." It also uses an intent classifier to understand the user's intent.
[0357] Input: Inquiry text
[0358] Output: Extracted keywords and user intent
[0359] Step 3:
[0360] The server sends the extracted query text to a sentiment engine. For example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics may be used. The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server.
[0361] Input: Inquiry text
[0362] Output: User's emotional information (e.g., Joy 0.2, Anger 0.1, Anxiety 0.7)
[0363] Step 4:
[0364] The server searches for relevant information from internal databases (e.g., PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might execute a query to retrieve the latest information on travel regulations and application procedures from the database.
[0365] Input: Extracted keywords, user intent
[0366] Output: Search results for related information
[0367] Step 5:
[0368] The server uses a summarization algorithm to concisely organize the acquired information. It uses Python's Gensim or Transformers libraries to summarize the main information (for example, "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day").
[0369] Input: Search result information
[0370] Output: Summarized information
[0371] Step 6:
[0372] The server adjusts the summarized information based on the perceived emotions of the user. For example, if the user is feeling anxious, it adds reassuring phrases to the response, such as "Please proceed with your travel arrangements with peace of mind."
[0373] Input: User sentiment information, summarized information
[0374] Output: Adjusted response
[0375] Step 7:
[0376] The server generates the final response and sends it to the user's terminal as an HTTP response. The generated response includes summarized information and sentiment-based adjustments.
[0377] Input: Adjusted response
[0378] Output: Sent to and displayed to the user (in the format of "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence.")
[0379] (Application Example 2)
[0380] 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".
[0381] In physical stores, responding quickly and appropriately to customer inquiries is a crucial issue directly linked to improving service quality and customer satisfaction. However, traditional methods often involve uniform responses without considering customer emotions, which can sometimes lead to customer dissatisfaction. Furthermore, there is a lack of established means for providing appropriate information in real time. To address these challenges, a system is needed that recognizes customer emotions and adjusts responses accordingly.
[0382] 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 inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for recognizing the user's emotions, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for adjusting the summarized information based on the recognized emotions, means for integrating the adjusted information and generating an answer for the user, and means for sending the generated answer to the user. This enables appropriate and immediate responses to customer inquiries at physical stores, taking emotions into consideration.
[0383] (definition statement)
[0384] "Means of receiving inquiries from users" refers to an interface for importing user-entered inquiry content into the system.
[0385] "Methods for analyzing received inquiries using natural language processing to extract key keywords and intent" refers to technologies that analyze input text data to identify important words, phrases, user requests, and objectives.
[0386] "Means of searching for relevant information from a database based on extracted keywords and intent" refers to the technology of finding relevant information from an appropriate database based on the analysis results.
[0387] "Means of recognizing user emotions" refers to technologies that analyze and identify a user's psychological state and emotions from the text they input and other interactions.
[0388] "Methods for summarizing retrieved information" refer to techniques for extracting important parts from a large amount of information and presenting them in a concise and easy-to-understand format.
[0389] "Means of adjusting summarized information based on perceived emotions" refers to technologies that modify or correct the content and expression of summarized information according to the perceived emotions of the user.
[0390] "Means of integrating adjusted information and generating responses for users" refers to techniques that combine adjusted information to create response sentences for providing to users as final answers.
[0391] "Means of sending generated answers to users" refers to the technology that sends the final constructed answers to the user's device for display.
[0392] This invention is a system that uses natural language processing and sentiment recognition to respond quickly and appropriately to customer inquiries in physical stores. This system receives, analyzes, searches, summarizes, recognizes sentiment, adjusts, generates responses, and transmits information between a server and a smartphone terminal.
[0393] The server uses the following hardware and software:
[0394] Hardware: High-performance servers, network interfaces
[0395] Software: Natural language processing model (distilbert-base-uncased), emotion recognition model (distilbert-base-uncased-emotion), database management system
[0396] The specific procedures are as follows:
[0397] First, the user uses their smartphone to input their inquiry into the application. For example, the user might input the question, "Do you have this item in stock?" The device then sends the input to the server.
[0398] The server receives the input and analyzes it using a natural language processing model (distilbert-base-uncased) to extract key keywords and intent. In this case, the keyword "inventory" and the intent "I want to check the availability of the product" are extracted.
[0399] Next, based on the extracted keywords and intent, relevant information is searched from the database management system. This search retrieves the relevant information, "We have sufficient stock."
[0400] The server then uses a summarization algorithm to concisely organize the acquired information. Next, it uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from the user's input. In this example, it is determined that the user is feeling "anxious".
[0401] Based on perceived emotions, the summarized information is adjusted. If the user is feeling "anxious," the response is changed to a friendly and reassuring expression. For example, it might be adjusted to something like, "Don't worry, we have plenty in stock."
[0402] Finally, a response is generated based on the adjusted information and sent to the user's smartphone. The device displays this response to the user. The user receives a message saying, "Don't worry, we have plenty of stock," and can continue shopping with peace of mind.
[0403] Examples of prompt statements are as follows:
[0404] text
[0405] User question: Is this item in stock?
[0406] Extracted keywords: inventory
[0407] User's emotion: Anxiety
[0408] Corresponding database information: We have ample stock.
[0409] Response after adjustment: Don't worry, we have plenty in stock.
[0410] Thus, the embodiment of the invention includes a process of analyzing information and generating responses using a server and a smartphone terminal, enabling responses that take customer emotions into consideration.
[0411] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0412] Program processing steps
[0413] Step 1:
[0414] Users use their smartphones to input inquiries about the store into the application. For example, they might enter an inquiry such as, "Do you have this product in stock?" The input data is the text information of the inquiry, which is then sent to the server.
[0415] Input: User's inquiry (e.g., "Do you have this item in stock?")
[0416] Output: Sending query text to the server
[0417] Step 2:
[0418] The server receives a query from the user and analyzes the input text using a natural language processing model (distilbert-base-uncased). This analysis extracts key keywords and intent.
[0419] Input: Inquiry text (e.g., "Do you have this item in stock?")
[0420] Output: Extracted keywords and intent (e.g., "inventory")
[0421] Specific operation: A natural language processing model tokenizes the text and extracts the keyword "inventory" and the intent "I want to check the availability of the product."
[0422] Step 3:
[0423] The server searches the database for relevant information based on the extracted keywords and intent. This search retrieves product inventory information.
[0424] Input: Extracted keywords (e.g., "inventory")
[0425] Output: Related information (e.g., "We have ample stock")
[0426] Specific operation: The server uses SQL queries or similar methods to retrieve information from the database stating "We have sufficient stock."
[0427] Step 4:
[0428] The server uses a summarization algorithm to concisely organize the acquired information. This summary extracts the key information that should be provided to the user.
[0429] Input: Search results (Example: "We have plenty of stock")
[0430] Output: Summarized information (e.g., "In stock")
[0431] Specific operation: The summarization algorithm removes redundant information and extracts the important parts.
[0432] Step 5:
[0433] The server uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from user input. In this example, it determines that the user is feeling "anxious".
[0434] Input: Inquiry text (e.g., "Do you have this item in stock?")
[0435] Output: Recognized emotion (e.g., "anxiety")
[0436] Specific operation: The emotion recognition model analyzes the text and determines the user's emotion to be "anxiety."
[0437] Step 6:
[0438] The server adjusts the retrieved and summarized information based on the perceived emotions. For example, if the user is feeling "anxious," the response will be changed to a friendly and reassuring tone.
[0439] Input: Summarized information and perceived emotions (e.g., "We have it in stock," "Anxious")
[0440] Output: A response tailored to the emotion (e.g., "Don't worry, we have plenty in stock.")
[0441] Specific operation: The adjustment algorithm detects the emotion "anxiety" and changes the tone of the response.
[0442] Step 7:
[0443] The server generates a final response based on the adjusted information and sends it to the user's smartphone.
[0444] Input: A prepared response (e.g., "Don't worry, we have plenty in stock.")
[0445] Output: Sending a response message to the user terminal.
[0446] Specific operation: To send the final response, the response is sent to the user's smartphone terminal via the network interface.
[0447] Step 8:
[0448] The terminal receives the response sent from the server and displays it on the user's screen.
[0449] Input: Response message from the server (Example: "Don't worry, we have plenty in stock.")
[0450] Output: Display to the user
[0451] Specific operation: The terminal application receives the response message and displays it on the user interface.
[0452] In this way, through a series of processing steps, an immediate, emotion-sensitive, and appropriate response to user inquiries is achieved.
[0453] 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.
[0454] 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.
[0455] 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.
[0456] [Second Embodiment]
[0457] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0458] 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.
[0459] 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).
[0460] 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.
[0461] 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.
[0462] 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).
[0463] 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.
[0464] 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.
[0465] 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.
[0466] 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.
[0467] 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.
[0468] 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".
[0469] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily executing the necessary procedures. The following describes specific embodiments for carrying out this invention.
[0470] System Overview
[0471] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries, retrieve appropriate information, summarize it, and provide it to the user. This system mainly performs information reception, analysis, retrieval, summarization, response generation, and transmission between the server and the user terminal.
[0472] Server-side processing
[0473] 1. Request received
[0474] The server receives user inquiries sent from the terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[0475] 2. Query Analysis
[0476] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0477] 3. Searching for related information
[0478] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[0479] 4. Information Summary
[0480] The server uses an algorithm to summarize the acquired information, extracting the main points the user needs and presenting them concisely.
[0481] 5. Generating and sending responses
[0482] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the terminal and displayed on the user's screen.
[0483] User-side processing
[0484] 1. Enter your inquiry
[0485] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[0486] 2. Receiving and displaying responses
[0487] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with the correct internal procedures.
[0488] Specific example
[0489] For example, consider a scenario where a user inquires, "Could you please tell me about the latest travel regulations and procedures?"
[0490] 1. User inquiry input
[0491] The user enters this inquiry into their device and sends it to the system.
[0492] 2. Server processing starts
[0493] The server receives the query and begins analysis.
[0494] The keywords "travel regulations" and "procedures" are extracted using natural language processing.
[0495] 3. Database Search
[0496] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0497] 4. Information Summary
[0498] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0499] 5. Generate and submit your response.
[0500] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day."
[0501] The generated response is sent to the user's terminal and displayed on the user's screen.
[0502] In this way, users can quickly obtain the necessary information and execute internal procedures accurately. This system is particularly beneficial for new employees and those unfamiliar with procedures, and can significantly improve work efficiency.
[0503] The following describes the processing flow.
[0504] Step 1:
[0505] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0506] Step 2:
[0507] The terminal sends user input to the server as an HTTP request. The data format used is typically JSON.
[0508] Step 3:
[0509] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[0510] Step 4:
[0511] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[0512] Step 5:
[0513] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[0514] Step 6:
[0515] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[0516] Step 7:
[0517] The server integrates multiple summarized pieces of information and generates a response in a user-friendly format. For example, it might apply the retrieved summary to a template to construct the response.
[0518] Step 8:
[0519] The server sends the generated response to the terminal as an HTTP response.
[0520] Step 9:
[0521] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly obtain the necessary information.
[0522] (Example 1)
[0523] 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."
[0524] Conventional information retrieval systems for personnel and general affairs procedures have problems such as the search results being enormous, making it difficult for users to quickly find the information they need, and the procedures being complex, which is time-consuming and troublesome, especially for new employees and employees unfamiliar with the procedures. Furthermore, the lack of accuracy and consistency of the information has also been a problem. Therefore, the present invention aims to improve the efficiency of procedures by quickly providing appropriate and summarized information in response to user inquiries.
[0525] 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.
[0526] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from an information storage device based on the extracted keywords and intents, means for summarizing the retrieved information using a summary generation model, means for integrating the summarized information and generating an answer for the user, and means for sending the generated answer to the user and displaying it on the user terminal. This enables users to quickly obtain the necessary information and efficiently execute accurate internal procedures.
[0527] "User" refers to an end-user who uses this system to obtain information and perform procedures.
[0528] An "inquiry" refers to a question or request that a user enters into a system to obtain information.
[0529] A "server" refers to a computer system that receives inquiries from users, analyzes them, processes them, searches for information, summarizes it, generates responses, and sends them.
[0530] "Natural language processing" refers to the technology that enables computers to understand and analyze human language.
[0531] "Keywords" refer to important words or phrases extracted through the analysis of user inquiries.
[0532] "Intention" refers to the user's purpose or the type of information they are seeking, as included in the inquiry.
[0533] "Information storage device" refers to databases and storage devices that systems use to store and retrieve information.
[0534] "Related information" refers to information retrieved from the information storage device based on the extracted keywords and intent.
[0535] A "summary generation model" refers to an algorithm or artificial intelligence model designed to concisely summarize retrieved information.
[0536] "Answer" refers to a response message generated by the system in response to a user's inquiry, which contains summarized information.
[0537] A "user terminal" refers to a device used by a user to access the system, enter inquiries, and receive and display responses.
[0538] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily performing the necessary procedures. This system primarily involves receiving, analyzing, searching, summarizing, generating responses, and transmitting information between a server and a user terminal.
[0539] System Overview
[0540] Server-side processing
[0541] 1. Request received
[0542] The server receives inquiries sent from the user's terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[0543] 2. Query Analysis
[0544] The server analyzes incoming queries using natural language processing techniques. Specifically, it utilizes the Google Cloud Natural Language API and OpenAI's GPT-4. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0545] 3. Searching for related information
[0546] Based on the extracted keywords and intent, the server searches for relevant information from its information storage device (database). The databases used are MySQL and PostgreSQL. For example, searching for documents related to "latest travel regulations" is achieved by generating and executing an SQL query.
[0547] 4. Information Summary
[0548] The server summarizes the retrieved information using a summarization model (e.g., OpenAI's GPT-4). This model extracts the key information the user needs and presents it concisely.
[0549] 5. Generating and sending responses
[0550] The server generates a response for the user based on the summarized information. This generated response is structured in an easy-to-understand format. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day." This response is sent to the user's terminal and displayed on the user's screen.
[0551] User-side processing
[0552] 1. Enter your inquiry
[0553] Users access the system and enter inquiries about the information or procedures they want to know. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0554] 2. Receiving and displaying responses
[0555] The user terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with accurate internal procedures.
[0556] Specific example
[0557] For example, if a user asks, "Could you please tell me about the latest travel regulations and procedures?":
[0558] 1. User inquiry input
[0559] The user enters this inquiry into their device and sends it to the system.
[0560] 2. Server processing starts
[0561] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[0562] 3. Database Search
[0563] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0564] 4. Information Summary
[0565] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0566] 5. Generate and submit your response.
[0567] The server combines the summary results and generates an easy-to-understand answer for the user. The generated answer is sent to the user's terminal and displayed on the user's screen.
[0568] Example of a prompt
[0569] Examples of prompts include, "Please tell me about the latest company regulations and procedures," or "I would like to know the current travel expense limit." This allows for the effective extraction of specific information requested by the user.
[0570] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0571] Step 1:
[0572] User inquiry input
[0573] The user accesses the system and enters their inquiry. This input is done through a web browser on their terminal or a dedicated application. For example, the user might type "Please tell me the latest travel regulations and procedures" and click the submit button.
[0574] Input: User inquiry (e.g., "Please tell me about the latest travel regulations and procedures.")
[0575] Output: HTTP request sent to the server containing the user's query.
[0576] Specific action: The user enters a question in the text box and clicks the submit button.
[0577] Step 2:
[0578] Server receives request
[0579] The server receives an HTTP request sent from the user's terminal. The request contains the user's inquiry.
[0580] Input: HTTP request sent by the user
[0581] Output: Data extracted from the query content for analysis and passed to internal processing.
[0582] Specific operation: The server receives an HTTP POST request through a web server (e.g., Nginx or Apache) and passes the data to the application server.
[0583] Step 3:
[0584] Server-side query analysis
[0585] The server analyzes the received query content using natural language processing techniques. Specifically, it uses a natural language processing API (e.g., Google Cloud Natural Language API) or a generative AI model (e.g., OpenAI GPT-4).
[0586] Input: Extracted query content (text format)
[0587] Output: Analysis results including keywords and user intent.
[0588] Specific operation: The server tokenizes the query text and extracts key keywords and user intent. Example: Extracts keywords such as "latest," "travel regulations," and "procedures."
[0589] Step 4:
[0590] Searching for related information by server
[0591] The server searches for relevant information from its information storage device (database) based on the analyzed keywords and intent. The databases used are MySQL and PostgreSQL.
[0592] Input: Keyword and user intention
[0593] Output: Relevant information as search results
[0594] Specific operation: The server generates an SQL query and executes the query against the database. Example: "SELECT FROM regulations WHERE category='business trip' AND type='latest'".
[0595] Step 5:
[0596] Summary of information by the server
[0597] The server summarizes the retrieved information using a summary generation model (e.g., OpenAI GPT-4). It extracts the main parts required by the user and summarizes them concisely.
[0598] Input: Relevant information as search results
[0599] Output: Summarized information
[0600] Specific operation: The server inputs the search results into GPT-4, extracts the key points, and generates a concise text. Example: Generate the information "The upper limit of business trip expenses revised since January 1, 2023 is 5,000 yen per day" using the summary generation model.
[0601] Step 6:
[0602] Generation and transmission of the server's response
[0603] The server generates an answer for the user based on the summarized information and sends it to the user terminal. The generated answer is in an easy-to-understand format.
[0604] Input: Summarized information <00 Specific operation: The server generates the response message "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." and sends it to the user's terminal as an HTTP response.
[0607] Step 7:
[0608] User response received and displayed
[0609] The user terminal receives the response sent from the server and displays it on the screen. Based on the information provided, the user can proceed with accurate internal procedures.
[0610] Input: Response text sent from the server
[0611] Output: The response displayed on the user's terminal.
[0612] Specific operation: The user's terminal receives an HTTP response, parses the response text, and displays it. Example: Using HTML and CSS, the text "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." is displayed on the screen.
[0613] (Application Example 1)
[0614] 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."
[0615] In the operational processes of physical stores, it is crucial for staff to quickly and accurately obtain necessary information and perform their duties efficiently. However, researching the required information and procedures often takes a lot of time and effort, leading to decreased efficiency and errors. This invention aims to solve these problems and provide a system for streamlining operational processes within physical stores.
[0616] 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.
[0617] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for integrating the summarized information and generating an answer for the user, means for sending the generated answer to the user, and means for supporting procedures and information retrieval in business processes within a physical store using a smart device or robot. This enables staff in physical stores to quickly and accurately obtain the information they need and perform their duties efficiently.
[0618] "Means of receiving inquiries from users" refers to the means by which users input questions or requests for information from the system.
[0619] "Natural language processing" is a technology that enables computers to understand and process human language, and it involves analyzing queries to extract key keywords and intents.
[0620] "Means for extracting key keywords and intent" refers to methods for identifying important words and objectives from user inquiries using natural language processing technology.
[0621] "Methods for searching for relevant information from a database" refer to methods for finding appropriate information from stored data based on extracted keywords or intents.
[0622] "Methods for summarizing retrieved information" refer to methods for extracting key points from found information and summarizing them concisely.
[0623] "Means for generating answers for users" refers to methods for creating answers in a format that is easy for users to understand, based on summarized information.
[0624] "Means of sending to the user" refers to the means of sending the generated response to the user's device and displaying it.
[0625] "Means of supporting procedures and information retrieval in in-store business processes using smart devices or robots" refers to means of using smartphones, tablets, or robots to guide customers through procedures related to in-store business processes or to search for and provide necessary information.
[0626] This invention is a system that efficiently and accurately supports procedures and information retrieval in business processes within physical stores. This system primarily performs information reception, analysis, retrieval, summarization, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out this invention.
[0627] System Overview
[0628] Users use smart devices or robots to inquire about business processes within physical stores. These inquiries are received by the system and analyzed using natural language processing technology. Based on the analyzed inquiry, the server searches the database for relevant information, summarizes it, and generates a response. The generated response is sent to the user's terminal and displayed on the screen.
[0629] Server-side processing
[0630] 1. Request received
[0631] The server receives user inquiries sent from smart devices and robots. These inquiries are in the form of specific questions, such as "Please tell me the latest inventory management regulations."
[0632] 2. Query Analysis
[0633] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0634] 3. Searching for related information
[0635] Based on the extracted keywords and intent, the server searches the database for relevant information. For example, it might retrieve documents related to the latest inventory management regulations. This process uses a database management system (e.g., MySQL, PostgreSQL).
[0636] 4. Information Summary
[0637] The server uses an algorithm to summarize the acquired information, extracting the key parts the user needs and presenting them concisely. Generative AI models (e.g., Transformers, GPT-3) can be used for summarization.
[0638] 5. Generating and sending responses
[0639] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the user's terminal and displayed on the user's screen.
[0640] User-side processing
[0641] 1. Enter your inquiry
[0642] Users access the system using smart devices or robots and input inquiries about the information or procedures they want to know. For example, if they want to know about inventory management procedures, they might input, "Please tell me the latest inventory management regulations."
[0643] 2. Receiving and displaying responses
[0644] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with in-store operations accurately.
[0645] Specific example
[0646] For example, consider a scenario where a user asks, "Could you please provide me with the latest inventory management regulations?"
[0647] 1. User inquiry input
[0648] The user enters this inquiry into their device and sends it to the system.
[0649] 2. Server processing starts
[0650] The server receives the query and begins analysis. Natural language processing is used to extract the keyword "inventory management regulations".
[0651] 3. Database Search
[0652] The server searches the database for information on the latest inventory management regulations based on these keywords.
[0653] 4. Information Summary
[0654] The server search results are summarized to highlight key points. For example, information such as "Inventory management regulations effective from March 1, 2023: Product inventory must be checked once a week" is extracted.
[0655] 5. Generate and submit your response.
[0656] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might say, "Regarding the latest inventory management regulations: Effective March 1, 2023, product inventory must be checked once a week." The generated response is sent to the user's terminal and displayed on the user's screen.
[0657] Example of a prompt
[0658] "Could you please provide me with the latest inventory management regulations?"
[0659] "What are the store's promotional offers for today?"
[0660] "I'd like to confirm the inventory management procedures for our products."
[0661] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0662] Step 1:
[0663] The user enters an inquiry into a terminal and sends it to the system. The input is a question in natural language format, for example, "Please tell me the latest inventory management regulations." The terminal sends this input to the server.
[0664] Step 2:
[0665] The server receives queries sent by users. The received data is in text format, such as a specific question like, "Please tell me the latest inventory management regulations." The server passes the received text to a natural language processing (NLP) engine.
[0666] Step 3:
[0667] The server uses an NLP engine to analyze queries. First, it tokenizes the text and performs grammatical analysis. Then, it extracts the main keyword "inventory management regulations" and the user's intent. The input is a text-based query, and the output is a set of main keywords and intent.
[0668] Step 4:
[0669] The server searches the database based on the extracted keywords and intent. In this step, it searches for relevant information from multiple databases (e.g., MySQL, PostgreSQL). The input is the keyword "Inventory Management Regulations," and the output is the relevant documents or data.
[0670] Step 5:
[0671] The server summarizes the retrieved information using a generative AI model (e.g., Transformers, GPT-3). The summarization algorithm extracts key points from long documents and condenses them into a concise format. The input is the relevant documents, and the output is a concise, to-the-point summary.
[0672] Step 6:
[0673] The server generates an answer in a user-friendly format based on the summarized information. The generated answer includes the necessary information and procedures. The input is summarized information, and the output is the completed answer text.
[0674] Step 7:
[0675] The server sends the generated response to the user's terminal. The input is the response text, and the output is the transmission of data to the terminal. The terminal displays the received response on the user's screen, and the user can proceed with the task based on the provided information.
[0676] Through the above processing steps, users will be able to quickly and accurately obtain information about business processes within physical stores.
[0677] 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.
[0678] This invention is a system that receives inquiries from users and provides information on internal company procedures more quickly and accurately by combining natural language processing and an emotion engine. The following describes specific embodiments for carrying out this invention.
[0679] System Overview
[0680] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries using natural language processing, determine the user's emotions using an emotion engine that recognizes emotions, and then retrieve, summarize, and adjust appropriate information to provide to the user. This system mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between the server and the user terminal.
[0681] Server-side processing
[0682] 1. Request received
[0683] The server receives user inquiries sent from the terminal. For example, a user might type, "Please tell me the latest travel regulations and procedures."
[0684] 2. Query Analysis
[0685] The server uses natural language processing techniques to analyze user inquiries. In this step, the text is tokenized, and key keywords and the user's intent are extracted.
[0686] 3. Recognition of emotions
[0687] The extracted inquiry text is sent to the emotion engine to recognize the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety, and records the results.
[0688] 4. Searching for related information
[0689] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[0690] 5. Information Summary
[0691] The server uses a summarization algorithm to extract the main parts of the acquired information that the user needs and summarizes them concisely.
[0692] 6. Adjusting the answer
[0693] The server adjusts the generated response based on the perceived emotions of the user. For example, if the user is feeling anxious, it will use more polite and reassuring language.
[0694] 7. Generating and sending the response
[0695] The server generates an appropriate response for the user based on the summarized information, and constructs a response sentence that is adjusted considering the emotional information obtained from the emotion engine.
[0696] The generated response is sent to the user's terminal and displayed on the user's screen.
[0697] User-side processing
[0698] 1. Enter your inquiry
[0699] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[0700] 2. Receiving and displaying responses
[0701] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the provided information and the adjusted response, the user can proceed with accurate internal procedures.
[0702] Specific example
[0703] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[0704] 1. User inquiry input
[0705] The user enters their inquiry into their terminal and sends it to the system.
[0706] 2. Server processing starts
[0707] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[0708] 3. Recognition of emotions
[0709] The server sends the query text to the sentiment engine, which recognizes the user's emotions. For example, it might determine that the user is feeling anxious.
[0710] 4. Database Search
[0711] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0712] 5. Information Summary
[0713] The server summarizes the search results and extracts key information. For example, it might provide information such as, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0714] 6. Adjusting the answer
[0715] The server will add polite and reassuring language to alleviate user anxiety.
[0716] 7. Generate and submit your response.
[0717] The server generates a response based on summarized information and sentiment information, and sends it to the terminal.
[0718] 8. Display to the user
[0719] The device receives the response and displays it on the user's screen. For example, it might be presented in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[0720] Thus, the system of the present invention, which incorporates an emotion engine, can provide necessary information quickly and accurately while taking into account the user's emotions. By recognizing emotions and responding appropriately, the user experience can be improved.
[0721] The following describes the processing flow.
[0722] Step 1:
[0723] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0724] Step 2:
[0725] The terminal sends user input to the server as an HTTP request. Data formats such as JSON are commonly used.
[0726] Step 3:
[0727] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[0728] Step 4:
[0729] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[0730] Step 5:
[0731] The server sends the extracted query text to the emotion engine, which recognizes the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety through text analysis.
[0732] Step 6:
[0733] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[0734] Step 7:
[0735] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[0736] Step 8:
[0737] The server adjusts the generated responses based on the recognized user's emotions. For example, for an anxious user, it adds reassuring language.
[0738] Step 9:
[0739] The server sends the adjusted response to the terminal as an HTTP response.
[0740] Step 10:
[0741] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly and securely obtain the necessary information.
[0742] (Example 2)
[0743] 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".
[0744] Traditional information systems have struggled to provide quick and accurate answers to user inquiries. Furthermore, they often provide answers that disregard user feelings, resulting in a poor user experience. Additionally, they are limited to information retrieval based on specific keywords, making it difficult to aggregate appropriate information from diverse sources. To address these issues, a more efficient and user-friendly information system is needed.
[0745] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0746] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for recognizing the user's emotions and adjusting the information based on the results, means for integrating the summarized information and generating an emotionally adjusted response, and means for sending the generated response to the user. This enables the provision of fast and accurate information that takes the user's emotions into consideration.
[0747] A "user" is a person or entity that requests information from a system and receives a response in return.
[0748] An "inquiry" refers to text or audio data that a user inputs to request information from a system.
[0749] "Natural language processing" is a technology that enables computers to understand, analyze, and generate human language.
[0750] "Keywords" are important words or phrases within an inquiry, and they serve as the starting point for information retrieval and analysis.
[0751] "Intention" refers to the purpose or information that the user is trying to achieve through their inquiry.
[0752] A "database" is a system designed to systematically store information and facilitate searching and updating.
[0753] "Related information" refers to the information in the database necessary to generate appropriate answers to user inquiries.
[0754] A "summary" is a concise document that extracts the most important parts from searched information and puts them together.
[0755] "Emotion recognition" is a technology that analyzes a user's emotions (joy, anger, anxiety, etc.) from the content of their inquiry.
[0756] "Adjustment" refers to modifying the content of responses and other materials to suit the user's preferences based on the results of emotional recognition.
[0757] A "response" is a text or response containing information generated based on a user's inquiry.
[0758] "Sending" refers to the act of sending the generated response to the user's device.
[0759] This invention is a system for receiving user inquiries and providing information more quickly and accurately by combining natural language processing and an emotion engine. The system of this invention mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out the invention.
[0760] Server-side processing
[0761] The server receives user inquiries via the terminal. For example, a user might type and submit "Please tell me the latest travel regulations and procedures." This request is passed to the server as an HTTP request.
[0762] The server uses natural language processing (NLP) techniques to analyze incoming queries. Python's NLTK and SpaCy are used for this process. The input text is tokenized, keywords such as "travel regulations" and "procedures" are extracted, and an intent classifier is also used to understand the user's intent.
[0763] Furthermore, the server sends the extracted query text to a sentiment engine (for example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics). The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server. This result is used to generate future responses.
[0764] Next, the server searches for relevant information from internal databases (such as PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might retrieve documents from the database regarding the latest travel regulations and application procedures.
[0765] The server summarizes the retrieved information using a summarization algorithm (for example, Python's Gensim or Transformers library). The goal is to extract the main points the user is looking for and summarize them concisely.
[0766] The server adjusts the generated response based on the recognized user's emotions. For example, if the user is feeling anxious, it adds more polite and reassuring language. This adjustment utilizes the output of the emotion engine.
[0767] Finally, the server generates a final response and sends it to the user's terminal. The response includes summarized information and sentiment-based adjustments. It is sent to the user's terminal as an HTTP response.
[0768] User-side processing
[0769] Users access the system and enter the information or procedures they want to know as inquiries. For example, a user who wants to know about the travel application process would enter "Please tell me the latest travel regulations and procedures" and press the submit button.
[0770] The user terminal receives a response from the server and displays it on the screen. For example, information might be displayed in the format of, "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence."
[0771] Specific example
[0772] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[0773] The user enters "Please tell me the latest travel regulations and procedures" into their terminal and sends it to the system. The server receives the inquiry and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[0774] Next, the server sends the query text to the sentiment engine to recognize the user's emotions. For example, it might determine that the user is feeling anxious. Based on these keywords, the server searches the database for information on the latest travel policies and procedures.
[0775] The acquired information is summarized, and key information is extracted. For example, information such as "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day" is provided. The server adds polite and reassuring language to alleviate user concerns.
[0776] The final response is generated and sent to the device. For example, it might appear on the user's screen in the format of: "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[0777] By combining this system with an emotion engine, it can provide necessary information quickly and accurately while taking the user's emotions into consideration. This can improve the user experience.
[0778] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0779] Step 1:
[0780] The server receives an HTTP request from the user's terminal. The user uses their terminal's web browser or mobile app to enter and send an inquiry, for example, "Please tell me the latest travel regulations and procedures." This request reaches the server, and the server logs its contents.
[0781] Input: User's inquiry text
[0782] Output: Received and logged query text.
[0783] Step 2:
[0784] The server analyzes the received query text using natural language processing (NLP) techniques. Specifically, it tokenizes the text using Python's NLTK or SpaCy and extracts key keywords such as "travel regulations" and "procedures." It also uses an intent classifier to understand the user's intent.
[0785] Input: Inquiry text
[0786] Output: Extracted keywords and user intent
[0787] Step 3:
[0788] The server sends the extracted query text to a sentiment engine. For example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics may be used. The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server.
[0789] Input: Inquiry text
[0790] Output: User's emotional information (e.g., Joy 0.2, Anger 0.1, Anxiety 0.7)
[0791] Step 4:
[0792] The server searches for relevant information from internal databases (e.g., PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might execute a query to retrieve the latest information on travel regulations and application procedures from the database.
[0793] Input: Extracted keywords, user intent
[0794] Output: Search results for related information
[0795] Step 5:
[0796] The server uses a summarization algorithm to concisely organize the acquired information. It uses Python's Gensim or Transformers libraries to summarize the main information (for example, "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day").
[0797] Input: Search result information
[0798] Output: Summarized information
[0799] Step 6:
[0800] The server adjusts the summarized information based on the perceived emotions of the user. For example, if the user is feeling anxious, it adds reassuring phrases to the response, such as "Please proceed with your travel arrangements with peace of mind."
[0801] Input: User sentiment information, summarized information
[0802] Output: Adjusted response
[0803] Step 7:
[0804] The server generates the final response and sends it to the user's terminal as an HTTP response. The generated response includes summarized information and sentiment-based adjustments.
[0805] Input: Adjusted response
[0806] Output: Sent to and displayed to the user (in the format of "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence.")
[0807] (Application Example 2)
[0808] 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."
[0809] In physical stores, responding quickly and appropriately to customer inquiries is a crucial issue directly linked to improving service quality and customer satisfaction. However, traditional methods often involve uniform responses without considering customer emotions, which can sometimes lead to customer dissatisfaction. Furthermore, there is a lack of established means for providing appropriate information in real time. To address these challenges, a system is needed that recognizes customer emotions and adjusts responses accordingly.
[0810] 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 inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for recognizing the user's emotions, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for adjusting the summarized information based on the recognized emotions, means for integrating the adjusted information and generating an answer for the user, and means for sending the generated answer to the user. This enables appropriate and immediate responses to customer inquiries at physical stores, taking emotions into consideration.
[0811] (definition statement)
[0812] "Means of receiving inquiries from users" refers to an interface for importing user-entered inquiry content into the system.
[0813] "Methods for analyzing received inquiries using natural language processing to extract key keywords and intent" refers to technologies that analyze input text data to identify important words, phrases, user requests, and objectives.
[0814] "Means of searching for relevant information from a database based on extracted keywords and intent" refers to the technology of finding relevant information from an appropriate database based on the analysis results.
[0815] "Means of recognizing user emotions" refers to technologies that analyze and identify a user's psychological state and emotions from the text they input and other interactions.
[0816] "Methods for summarizing retrieved information" refer to techniques for extracting important parts from a large amount of information and presenting them in a concise and easy-to-understand format.
[0817] "Means of adjusting summarized information based on perceived emotions" refers to technologies that modify or correct the content and expression of summarized information according to the perceived emotions of the user.
[0818] "Means of integrating adjusted information and generating responses for users" refers to techniques that combine adjusted information to create response sentences for providing to users as final answers.
[0819] "Means of sending generated answers to users" refers to the technology that sends the final constructed answers to the user's device for display.
[0820] This invention is a system that uses natural language processing and sentiment recognition to respond quickly and appropriately to customer inquiries in physical stores. This system receives, analyzes, searches, summarizes, recognizes sentiment, adjusts, generates responses, and transmits information between a server and a smartphone terminal.
[0821] The server uses the following hardware and software:
[0822] Hardware: High-performance servers, network interfaces
[0823] Software: Natural language processing model (distilbert-base-uncased), emotion recognition model (distilbert-base-uncased-emotion), database management system
[0824] The specific procedures are as follows:
[0825] First, the user uses their smartphone to input their inquiry into the application. For example, the user might input the question, "Do you have this item in stock?" The device then sends the input to the server.
[0826] The server receives the input and analyzes it using a natural language processing model (distilbert-base-uncased) to extract key keywords and intent. In this case, the keyword "inventory" and the intent "I want to check the availability of the product" are extracted.
[0827] Next, based on the extracted keywords and intent, relevant information is searched from the database management system. This search retrieves the relevant information, "We have sufficient stock."
[0828] The server then uses a summarization algorithm to concisely organize the acquired information. Next, it uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from the user's input. In this example, it is determined that the user is feeling "anxious".
[0829] Based on perceived emotions, the summarized information is adjusted. If the user is feeling "anxious," the response is changed to a friendly and reassuring expression. For example, it might be adjusted to something like, "Don't worry, we have plenty in stock."
[0830] Finally, a response is generated based on the adjusted information and sent to the user's smartphone. The device displays this response to the user. The user receives a message saying, "Don't worry, we have plenty of stock," and can continue shopping with peace of mind.
[0831] Examples of prompt statements are as follows:
[0832] text
[0833] User question: Is this item in stock?
[0834] Extracted keywords: inventory
[0835] User's emotion: Anxiety
[0836] Corresponding database information: We have ample stock.
[0837] Response after adjustment: Don't worry, we have plenty in stock.
[0838] Thus, the embodiment of the invention includes a process of analyzing information and generating responses using a server and a smartphone terminal, enabling responses that take customer emotions into consideration.
[0839] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0840] Program processing steps
[0841] Step 1:
[0842] Users use their smartphones to input inquiries about the store into the application. For example, they might enter an inquiry such as, "Do you have this product in stock?" The input data is the text information of the inquiry, which is then sent to the server.
[0843] Input: User's inquiry (e.g., "Do you have this item in stock?")
[0844] Output: Sending query text to the server
[0845] Step 2:
[0846] The server receives a query from the user and analyzes the input text using a natural language processing model (distilbert-base-uncased). This analysis extracts key keywords and intent.
[0847] Input: Inquiry text (e.g., "Do you have this item in stock?")
[0848] Output: Extracted keywords and intent (e.g., "inventory")
[0849] Specific operation: A natural language processing model tokenizes the text and extracts the keyword "inventory" and the intent "I want to check the availability of the product."
[0850] Step 3:
[0851] The server searches the database for relevant information based on the extracted keywords and intent. This search retrieves product inventory information.
[0852] Input: Extracted keywords (e.g., "inventory")
[0853] Output: Related information (e.g., "We have ample stock")
[0854] Specific operation: The server uses SQL queries or similar methods to retrieve information from the database stating "We have sufficient stock."
[0855] Step 4:
[0856] The server uses a summarization algorithm to concisely organize the acquired information. This summary extracts the key information that should be provided to the user.
[0857] Input: Search results (Example: "We have plenty of stock")
[0858] Output: Summarized information (e.g., "In stock")
[0859] Specific operation: The summarization algorithm removes redundant information and extracts the important parts.
[0860] Step 5:
[0861] The server uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from user input. In this example, it determines that the user is feeling "anxious".
[0862] Input: Inquiry text (e.g., "Do you have this item in stock?")
[0863] Output: Recognized emotion (e.g., "anxiety")
[0864] Specific operation: The emotion recognition model analyzes the text and determines the user's emotion to be "anxiety."
[0865] Step 6:
[0866] The server adjusts the retrieved and summarized information based on the perceived emotions. For example, if the user is feeling "anxious," the response will be changed to a friendly and reassuring tone.
[0867] Input: Summarized information and perceived emotions (e.g., "We have it in stock," "Anxious")
[0868] Output: A response tailored to the emotion (e.g., "Don't worry, we have plenty in stock.")
[0869] Specific operation: The adjustment algorithm detects the emotion "anxiety" and changes the tone of the response.
[0870] Step 7:
[0871] The server generates a final response based on the adjusted information and sends it to the user's smartphone.
[0872] Input: A prepared response (e.g., "Don't worry, we have plenty in stock.")
[0873] Output: Sending a response message to the user terminal.
[0874] Specific operation: To send the final response, the response is sent to the user's smartphone terminal via the network interface.
[0875] Step 8:
[0876] The terminal receives the response sent from the server and displays it on the user's screen.
[0877] Input: Response message from the server (Example: "Don't worry, we have plenty in stock.")
[0878] Output: Display to the user
[0879] Specific operation: The terminal application receives the response message and displays it on the user interface.
[0880] In this way, through a series of processing steps, an immediate, emotion-sensitive, and appropriate response to user inquiries is achieved.
[0881] 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.
[0882] The data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of the 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.
[0883] 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.
[0884] [Third Embodiment]
[0885] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0886] 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.
[0887] 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).
[0888] 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.
[0889] 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.
[0890] 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).
[0891] 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.
[0892] 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.
[0893] 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.
[0894] 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.
[0895] 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.
[0896] 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".
[0897] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily executing the necessary procedures. The following describes specific embodiments for carrying out this invention.
[0898] System Overview
[0899] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries, retrieve appropriate information, summarize it, and provide it to the user. This system mainly performs information reception, analysis, retrieval, summarization, response generation, and transmission between the server and the user terminal.
[0900] Server-side processing
[0901] 1. Request received
[0902] The server receives user inquiries sent from the terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[0903] 2. Query Analysis
[0904] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0905] 3. Searching for related information
[0906] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[0907] 4. Information Summary
[0908] The server uses an algorithm to summarize the acquired information, extracting the main points the user needs and presenting them concisely.
[0909] 5. Generating and sending responses
[0910] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the terminal and displayed on the user's screen.
[0911] User-side processing
[0912] 1. Enter your inquiry
[0913] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[0914] 2. Receiving and displaying responses
[0915] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with the correct internal procedures.
[0916] Specific example
[0917] For example, consider a scenario where a user inquires, "Could you please tell me about the latest travel regulations and procedures?"
[0918] 1. User inquiry input
[0919] The user enters this inquiry into their device and sends it to the system.
[0920] 2. Server processing starts
[0921] The server receives the query and begins analysis.
[0922] The keywords "travel regulations" and "procedures" are extracted using natural language processing.
[0923] 3. Database Search
[0924] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0925] 4. Information Summary
[0926] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0927] 5. Generate and submit your response.
[0928] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day."
[0929] The generated response is sent to the user's terminal and displayed on the user's screen.
[0930] In this way, users can quickly obtain the necessary information and execute internal procedures accurately. This system is particularly beneficial for new employees and those unfamiliar with procedures, and can significantly improve work efficiency.
[0931] The following describes the processing flow.
[0932] Step 1:
[0933] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0934] Step 2:
[0935] The terminal sends user input to the server as an HTTP request. The data format used is typically JSON.
[0936] Step 3:
[0937] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[0938] Step 4:
[0939] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[0940] Step 5:
[0941] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[0942] Step 6:
[0943] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[0944] Step 7:
[0945] The server integrates multiple summarized pieces of information and generates a response in a user-friendly format. For example, it might apply the retrieved summary to a template to construct the response.
[0946] Step 8:
[0947] The server sends the generated response to the terminal as an HTTP response.
[0948] Step 9:
[0949] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly obtain the necessary information.
[0950] (Example 1)
[0951] 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."
[0952] Conventional information retrieval systems for personnel and general affairs procedures have problems such as the search results being enormous, making it difficult for users to quickly find the information they need, and the procedures being complex, which is time-consuming and troublesome, especially for new employees and employees unfamiliar with the procedures. Furthermore, the lack of accuracy and consistency of the information has also been a problem. Therefore, the present invention aims to improve the efficiency of procedures by quickly providing appropriate and summarized information in response to user inquiries.
[0953] 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.
[0954] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from an information storage device based on the extracted keywords and intents, means for summarizing the retrieved information using a summary generation model, means for integrating the summarized information and generating an answer for the user, and means for sending the generated answer to the user and displaying it on the user terminal. This enables users to quickly obtain the necessary information and efficiently execute accurate internal procedures.
[0955] "User" refers to an end-user who uses this system to obtain information and perform procedures.
[0956] An "inquiry" refers to a question or request that a user enters into a system to obtain information.
[0957] A "server" refers to a computer system that receives inquiries from users, analyzes them, processes them, searches for information, summarizes it, generates responses, and sends them.
[0958] "Natural language processing" refers to the technology that enables computers to understand and analyze human language.
[0959] "Keywords" refer to important words or phrases extracted through the analysis of user inquiries.
[0960] "Intention" refers to the user's purpose or the type of information they are seeking, as included in the inquiry.
[0961] "Information storage device" refers to databases and storage devices that systems use to store and retrieve information.
[0962] "Related information" refers to information retrieved from the information storage device based on the extracted keywords and intent.
[0963] A "summary generation model" refers to an algorithm or artificial intelligence model designed to concisely summarize retrieved information.
[0964] "Answer" refers to a response message generated by the system in response to a user's inquiry, which contains summarized information.
[0965] A "user terminal" refers to a device used by a user to access the system, enter inquiries, and receive and display responses.
[0966] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily performing the necessary procedures. This system primarily involves receiving, analyzing, searching, summarizing, generating responses, and transmitting information between a server and a user terminal.
[0967] System Overview
[0968] Server-side processing
[0969] 1. Request received
[0970] The server receives inquiries sent from the user's terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[0971] 2. Query Analysis
[0972] The server analyzes incoming queries using natural language processing techniques. Specifically, it utilizes the Google Cloud Natural Language API and OpenAI's GPT-4. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[0973] 3. Searching for related information
[0974] Based on the extracted keywords and intent, the server searches for relevant information from its information storage device (database). The databases used are MySQL and PostgreSQL. For example, searching for documents related to "latest travel regulations" is achieved by generating and executing an SQL query.
[0975] 4. Information Summary
[0976] The server summarizes the retrieved information using a summarization model (e.g., OpenAI's GPT-4). This model extracts the key information the user needs and presents it concisely.
[0977] 5. Generating and sending responses
[0978] The server generates a response for the user based on the summarized information. This generated response is structured in an easy-to-understand format. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day." This response is sent to the user's terminal and displayed on the user's screen.
[0979] User-side processing
[0980] 1. Enter your inquiry
[0981] Users access the system and enter inquiries about the information or procedures they want to know. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[0982] 2. Receiving and displaying responses
[0983] The user terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with accurate internal procedures.
[0984] Specific example
[0985] For example, if a user asks, "Could you please tell me about the latest travel regulations and procedures?":
[0986] 1. User inquiry input
[0987] The user enters this inquiry into their device and sends it to the system.
[0988] 2. Server processing starts
[0989] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[0990] 3. Database Search
[0991] The server searches the database for the latest travel regulations and procedures based on these keywords.
[0992] 4. Information Summary
[0993] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[0994] 5. Generate and submit your response.
[0995] The server combines the summary results and generates an easy-to-understand answer for the user. The generated answer is sent to the user's terminal and displayed on the user's screen.
[0996] Example of a prompt
[0997] Examples of prompts include, "Please tell me about the latest company regulations and procedures," or "I would like to know the current travel expense limit." This allows for the effective extraction of specific information requested by the user.
[0998] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0999] Step 1:
[1000] User inquiry input
[1001] The user accesses the system and enters their inquiry. This input is done through a web browser on their terminal or a dedicated application. For example, the user might type "Please tell me the latest travel regulations and procedures" and click the submit button.
[1002] Input: User inquiry (e.g., "Please tell me about the latest travel regulations and procedures.")
[1003] Output: HTTP request sent to the server containing the user's query.
[1004] Specific action: The user enters a question in the text box and clicks the submit button.
[1005] Step 2:
[1006] Server receives request
[1007] The server receives an HTTP request sent from the user's terminal. The request contains the user's inquiry.
[1008] Input: HTTP request sent by the user
[1009] Output: Data extracted from the query content for analysis and passed to internal processing.
[1010] Specific operation: The server receives an HTTP POST request through a web server (e.g., Nginx or Apache) and passes the data to the application server.
[1011] Step 3:
[1012] Server-side query analysis
[1013] The server analyzes the received query content using natural language processing techniques. Specifically, it uses a natural language processing API (e.g., Google Cloud Natural Language API) or a generative AI model (e.g., OpenAI GPT-4).
[1014] Input: Extracted query content (text format)
[1015] Output: Analysis results including keywords and user intent.
[1016] Specific operation: The server tokenizes the query text and extracts key keywords and user intent. Example: Extracts keywords such as "latest," "travel regulations," and "procedures."
[1017] Step 4:
[1018] Searching for related information by server
[1019] The server searches for relevant information from its information storage device (database) based on the analyzed keywords and intent. The databases used are MySQL and PostgreSQL.
[1020] Input: Keyword and user intention
[1021] Output: Relevant information as search results
[1022] Specific operation: The server generates a SQL query and executes the query against the database. Example: "SELECT FROM regulations WHERE category='business trip' AND type='latest'".
[1023] Step 5:
[1024] Summary of information by the server
[1025] The server summarizes the retrieved information using a summarization model (e.g., OpenAI GPT-4). It extracts the main parts required by the user and summarizes them concisely.
[1026] Input: Relevant information as search results
[1027] Output: Summarized information
[1028] Specific operation: The server inputs the search results into GPT-4, extracts the key points, and generates a concise text. Example: Generate the information "The upper limit of business trip expenses revised since January 1, 2023 is 5,000 yen per day" using the summarization model.
[1029] Step 6:
[1030] Generation and transmission of the server's response
[1031] The server generates an answer for the user based on the summarized information and sends it to the user terminal. The generated answer is in an easy-to-understand format.
[1032] Input: Summarized information
[1033] Output: Answer text sent to the user
[1034] Specific operation: The server generates the response message "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." and sends it to the user's terminal as an HTTP response.
[1035] Step 7:
[1036] User response received and displayed
[1037] The user terminal receives the response sent from the server and displays it on the screen. Based on the information provided, the user can proceed with accurate internal procedures.
[1038] Input: Response text sent from the server
[1039] Output: The response displayed on the user's terminal.
[1040] Specific operation: The user's terminal receives an HTTP response, parses the response text, and displays it. Example: Using HTML and CSS, the text "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." is displayed on the screen.
[1041] (Application Example 1)
[1042] 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."
[1043] In the operational processes of physical stores, it is crucial for staff to quickly and accurately obtain necessary information and perform their duties efficiently. However, researching the required information and procedures often takes a lot of time and effort, leading to decreased efficiency and errors. This invention aims to solve these problems and provide a system for streamlining operational processes within physical stores.
[1044] 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.
[1045] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for integrating the summarized information and generating an answer for the user, means for sending the generated answer to the user, and means for supporting procedures and information retrieval in business processes within a physical store using a smart device or robot. This enables staff in physical stores to quickly and accurately obtain the information they need and perform their duties efficiently.
[1046] "Means of receiving inquiries from users" refers to the means by which users input questions or requests for information from the system.
[1047] "Natural language processing" is a technology that enables computers to understand and process human language, and it involves analyzing queries to extract key keywords and intents.
[1048] "Means for extracting key keywords and intent" refers to methods for identifying important words and objectives from user inquiries using natural language processing technology.
[1049] "Methods for searching for relevant information from a database" refer to methods for finding appropriate information from stored data based on extracted keywords or intents.
[1050] "Methods for summarizing retrieved information" refer to methods for extracting key points from found information and summarizing them concisely.
[1051] "Means for generating answers for users" refers to methods for creating answers in a format that is easy for users to understand, based on summarized information.
[1052] "Means of sending to the user" refers to the means of sending the generated response to the user's device and displaying it.
[1053] "Means of supporting procedures and information retrieval in in-store business processes using smart devices or robots" refers to means of using smartphones, tablets, or robots to guide customers through procedures related to in-store business processes or to search for and provide necessary information.
[1054] This invention is a system that efficiently and accurately supports procedures and information retrieval in business processes within physical stores. This system primarily performs information reception, analysis, retrieval, summarization, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out this invention.
[1055] System Overview
[1056] Users use smart devices or robots to inquire about business processes within physical stores. These inquiries are received by the system and analyzed using natural language processing technology. Based on the analyzed inquiry, the server searches the database for relevant information, summarizes it, and generates a response. The generated response is sent to the user's terminal and displayed on the screen.
[1057] Server-side processing
[1058] 1. Request received
[1059] The server receives user inquiries sent from smart devices and robots. These inquiries are in the form of specific questions, such as "Please tell me the latest inventory management regulations."
[1060] 2. Query Analysis
[1061] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[1062] 3. Searching for related information
[1063] Based on the extracted keywords and intent, the server searches the database for relevant information. For example, it might retrieve documents related to the latest inventory management regulations. This process uses a database management system (e.g., MySQL, PostgreSQL).
[1064] 4. Information Summary
[1065] The server uses an algorithm to summarize the acquired information, extracting the key parts the user needs and presenting them concisely. Generative AI models (e.g., Transformers, GPT-3) can be used for summarization.
[1066] 5. Generating and sending responses
[1067] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the user's terminal and displayed on the user's screen.
[1068] User-side processing
[1069] 1. Enter your inquiry
[1070] Users access the system using smart devices or robots and input inquiries about the information or procedures they want to know. For example, if they want to know about inventory management procedures, they might input, "Please tell me the latest inventory management regulations."
[1071] 2. Receiving and displaying responses
[1072] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with in-store operations accurately.
[1073] Specific example
[1074] For example, consider a scenario where a user asks, "Could you please provide me with the latest inventory management regulations?"
[1075] 1. User inquiry input
[1076] The user enters this inquiry into their device and sends it to the system.
[1077] 2. Server processing starts
[1078] The server receives the query and begins analysis. Natural language processing is used to extract the keyword "inventory management regulations".
[1079] 3. Database Search
[1080] The server searches the database for information on the latest inventory management regulations based on these keywords.
[1081] 4. Information Summary
[1082] The server search results are summarized to highlight key points. For example, information such as "Inventory management regulations effective from March 1, 2023: Product inventory must be checked once a week" is extracted.
[1083] 5. Generate and submit your response.
[1084] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might say, "Regarding the latest inventory management regulations: Effective March 1, 2023, product inventory must be checked once a week." The generated response is sent to the user's terminal and displayed on the user's screen.
[1085] Example of a prompt
[1086] "Could you please provide me with the latest inventory management regulations?"
[1087] "What are the store's promotional offers for today?"
[1088] "I'd like to confirm the inventory management procedures for our products."
[1089] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1090] Step 1:
[1091] The user enters an inquiry into a terminal and sends it to the system. The input is a question in natural language format, for example, "Please tell me the latest inventory management regulations." The terminal sends this input to the server.
[1092] Step 2:
[1093] The server receives queries sent by users. The received data is in text format, such as a specific question like, "Please tell me the latest inventory management regulations." The server passes the received text to a natural language processing (NLP) engine.
[1094] Step 3:
[1095] The server uses an NLP engine to analyze queries. First, it tokenizes the text and performs grammatical analysis. Then, it extracts the main keyword "inventory management regulations" and the user's intent. The input is a text-based query, and the output is a set of main keywords and intent.
[1096] Step 4:
[1097] The server searches the database based on the extracted keywords and intent. In this step, it searches for relevant information from multiple databases (e.g., MySQL, PostgreSQL). The input is the keyword "Inventory Management Regulations," and the output is the relevant documents or data.
[1098] Step 5:
[1099] The server summarizes the retrieved information using a generative AI model (e.g., Transformers, GPT-3). The summarization algorithm extracts key points from long documents and condenses them into a concise format. The input is the relevant documents, and the output is a concise, to-the-point summary.
[1100] Step 6:
[1101] The server generates an answer in a user-friendly format based on the summarized information. The generated answer includes the necessary information and procedures. The input is summarized information, and the output is the completed answer text.
[1102] Step 7:
[1103] The server sends the generated response to the user's terminal. The input is the response text, and the output is the transmission of data to the terminal. The terminal displays the received response on the user's screen, and the user can proceed with the task based on the provided information.
[1104] Through the above processing steps, users will be able to quickly and accurately obtain information about business processes within physical stores.
[1105] 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.
[1106] This invention is a system that receives inquiries from users and provides information on internal company procedures more quickly and accurately by combining natural language processing and an emotion engine. The following describes specific embodiments for carrying out this invention.
[1107] System Overview
[1108] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries using natural language processing, determine the user's emotions using an emotion engine that recognizes emotions, and then retrieve, summarize, and adjust appropriate information to provide to the user. This system mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between the server and the user terminal.
[1109] Server-side processing
[1110] 1. Request received
[1111] The server receives user inquiries sent from the terminal. For example, a user might type, "Please tell me the latest travel regulations and procedures."
[1112] 2. Query Analysis
[1113] The server uses natural language processing techniques to analyze user inquiries. In this step, the text is tokenized, and key keywords and the user's intent are extracted.
[1114] 3. Recognition of emotions
[1115] The extracted inquiry text is sent to the emotion engine to recognize the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety, and records the results.
[1116] 4. Searching for related information
[1117] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[1118] 5. Information Summary
[1119] The server uses a summarization algorithm to extract the main parts of the acquired information that the user needs and summarizes them concisely.
[1120] 6. Adjusting the answer
[1121] The server adjusts the generated response based on the perceived emotions of the user. For example, if the user is feeling anxious, it will use more polite and reassuring language.
[1122] 7. Generating and sending the response
[1123] The server generates an appropriate response for the user based on the summarized information, and constructs a response sentence that is adjusted considering the emotional information obtained from the emotion engine.
[1124] The generated response is sent to the user's terminal and displayed on the user's screen.
[1125] User-side processing
[1126] 1. Enter your inquiry
[1127] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[1128] 2. Receiving and displaying responses
[1129] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the provided information and the adjusted response, the user can proceed with accurate internal procedures.
[1130] Specific example
[1131] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[1132] 1. User inquiry input
[1133] The user enters their inquiry into their terminal and sends it to the system.
[1134] 2. Server processing starts
[1135] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[1136] 3. Recognition of emotions
[1137] The server sends the query text to the sentiment engine, which recognizes the user's emotions. For example, it might determine that the user is feeling anxious.
[1138] 4. Database Search
[1139] The server searches the database for the latest travel regulations and procedures based on these keywords.
[1140] 5. Information Summary
[1141] The server summarizes the search results and extracts key information. For example, it might provide information such as, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[1142] 6. Adjusting the answer
[1143] The server will add polite and reassuring language to alleviate user anxiety.
[1144] 7. Generate and submit your response.
[1145] The server generates a response based on summarized information and sentiment information, and sends it to the terminal.
[1146] 8. Display to the user
[1147] The device receives the response and displays it on the user's screen. For example, it might be presented in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[1148] Thus, the system of the present invention, which incorporates an emotion engine, can provide necessary information quickly and accurately while taking into account the user's emotions. By recognizing emotions and responding appropriately, the user experience can be improved.
[1149] The following describes the processing flow.
[1150] Step 1:
[1151] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[1152] Step 2:
[1153] The terminal sends user input to the server as an HTTP request. Data formats such as JSON are commonly used.
[1154] Step 3:
[1155] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[1156] Step 4:
[1157] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[1158] Step 5:
[1159] The server sends the extracted query text to the emotion engine, which recognizes the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety through text analysis.
[1160] Step 6:
[1161] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[1162] Step 7:
[1163] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[1164] Step 8:
[1165] The server adjusts the generated responses based on the recognized user's emotions. For example, for an anxious user, it adds reassuring language.
[1166] Step 9:
[1167] The server sends the adjusted response to the terminal as an HTTP response.
[1168] Step 10:
[1169] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly and securely obtain the necessary information.
[1170] (Example 2)
[1171] 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."
[1172] Traditional information systems have struggled to provide quick and accurate answers to user inquiries. Furthermore, they often provide answers that disregard user feelings, resulting in a poor user experience. Additionally, they are limited to information retrieval based on specific keywords, making it difficult to aggregate appropriate information from diverse sources. To address these issues, a more efficient and user-friendly information system is needed.
[1173] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1174] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for recognizing the user's emotions and adjusting the information based on the results, means for integrating the summarized information and generating an emotionally adjusted response, and means for sending the generated response to the user. This enables the provision of fast and accurate information that takes the user's emotions into consideration.
[1175] A "user" is a person or entity that requests information from a system and receives a response in return.
[1176] An "inquiry" refers to text or audio data that a user inputs to request information from a system.
[1177] "Natural language processing" is a technology that enables computers to understand, analyze, and generate human language.
[1178] "Keywords" are important words or phrases within an inquiry, and they serve as the starting point for information retrieval and analysis.
[1179] "Intention" refers to the purpose or information that the user is trying to achieve through their inquiry.
[1180] A "database" is a system designed to systematically store information and facilitate searching and updating.
[1181] "Related information" refers to the information in the database necessary to generate appropriate answers to user inquiries.
[1182] A "summary" is a concise document that extracts the most important parts from searched information and puts them together.
[1183] "Emotion recognition" is a technology that analyzes a user's emotions (joy, anger, anxiety, etc.) from the content of their inquiry.
[1184] "Adjustment" refers to modifying the content of responses and other materials to suit the user's preferences based on the results of emotional recognition.
[1185] A "response" is a text or response containing information generated based on a user's inquiry.
[1186] "Sending" refers to the act of sending the generated response to the user's device.
[1187] This invention is a system for receiving user inquiries and providing information more quickly and accurately by combining natural language processing and an emotion engine. The system of this invention mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out the invention.
[1188] Server-side processing
[1189] The server receives user inquiries via the terminal. For example, a user might type and submit "Please tell me the latest travel regulations and procedures." This request is passed to the server as an HTTP request.
[1190] The server uses natural language processing (NLP) techniques to analyze incoming queries. Python's NLTK and SpaCy are used for this process. The input text is tokenized, keywords such as "travel regulations" and "procedures" are extracted, and an intent classifier is also used to understand the user's intent.
[1191] Furthermore, the server sends the extracted query text to a sentiment engine (for example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics). The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server. This result is used to generate future responses.
[1192] Next, the server searches for relevant information from internal databases (such as PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might retrieve documents from the database regarding the latest travel regulations and application procedures.
[1193] The server summarizes the retrieved information using a summarization algorithm (for example, Python's Gensim or Transformers library). The goal is to extract the main points the user is looking for and summarize them concisely.
[1194] The server adjusts the generated response based on the recognized user's emotions. For example, if the user is feeling anxious, it adds more polite and reassuring language. This adjustment utilizes the output of the emotion engine.
[1195] Finally, the server generates a final response and sends it to the user's terminal. The response includes summarized information and sentiment-based adjustments. It is sent to the user's terminal as an HTTP response.
[1196] User-side processing
[1197] Users access the system and enter the information or procedures they want to know as inquiries. For example, a user who wants to know about the travel application process would enter "Please tell me the latest travel regulations and procedures" and press the submit button.
[1198] The user terminal receives a response from the server and displays it on the screen. For example, information might be displayed in the format of, "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence."
[1199] Specific example
[1200] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[1201] The user enters "Please tell me the latest travel regulations and procedures" into their terminal and sends it to the system. The server receives the inquiry and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[1202] Next, the server sends the query text to the sentiment engine to recognize the user's emotions. For example, it might determine that the user is feeling anxious. Based on these keywords, the server searches the database for information on the latest travel policies and procedures.
[1203] The acquired information is summarized, and key information is extracted. For example, information such as "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day" is provided. The server adds polite and reassuring language to alleviate user concerns.
[1204] The final response is generated and sent to the device. For example, it might appear on the user's screen in the format of: "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[1205] By combining this system with an emotion engine, it can provide necessary information quickly and accurately while taking the user's emotions into consideration. This can improve the user experience.
[1206] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1207] Step 1:
[1208] The server receives an HTTP request from the user's terminal. The user uses their terminal's web browser or mobile app to enter and send an inquiry, for example, "Please tell me the latest travel regulations and procedures." This request reaches the server, and the server logs its contents.
[1209] Input: User's inquiry text
[1210] Output: Received and logged query text.
[1211] Step 2:
[1212] The server analyzes the received query text using natural language processing (NLP) techniques. Specifically, it tokenizes the text using Python's NLTK or SpaCy and extracts key keywords such as "travel regulations" and "procedures." It also uses an intent classifier to understand the user's intent.
[1213] Input: Inquiry text
[1214] Output: Extracted keywords and user intent
[1215] Step 3:
[1216] The server sends the extracted query text to a sentiment engine. For example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics may be used. The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server.
[1217] Input: Inquiry text
[1218] Output: User's emotional information (e.g., Joy 0.2, Anger 0.1, Anxiety 0.7)
[1219] Step 4:
[1220] The server searches for relevant information from internal databases (e.g., PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might execute a query to retrieve the latest information on travel regulations and application procedures from the database.
[1221] Input: Extracted keywords, user intent
[1222] Output: Search results for related information
[1223] Step 5:
[1224] The server uses a summarization algorithm to concisely organize the acquired information. It uses Python's Gensim or Transformers libraries to summarize the main information (for example, "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day").
[1225] Input: Search result information
[1226] Output: Summarized information
[1227] Step 6:
[1228] The server adjusts the summarized information based on the perceived emotions of the user. For example, if the user is feeling anxious, it adds reassuring phrases to the response, such as "Please proceed with your travel arrangements with peace of mind."
[1229] Input: User sentiment information, summarized information
[1230] Output: Adjusted response
[1231] Step 7:
[1232] The server generates the final response and sends it to the user's terminal as an HTTP response. The generated response includes summarized information and sentiment-based adjustments.
[1233] Input: Adjusted response
[1234] Output: Sent to and displayed to the user (in the format of "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence.")
[1235] (Application Example 2)
[1236] 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."
[1237] In physical stores, responding quickly and appropriately to customer inquiries is a crucial issue directly linked to improving service quality and customer satisfaction. However, traditional methods often involve uniform responses without considering customer emotions, which can sometimes lead to customer dissatisfaction. Furthermore, there is a lack of established means for providing appropriate information in real time. To address these challenges, a system is needed that recognizes customer emotions and adjusts responses accordingly.
[1238] 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 inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for recognizing the user's emotions, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for adjusting the summarized information based on the recognized emotions, means for integrating the adjusted information and generating an answer for the user, and means for sending the generated answer to the user. This enables appropriate and immediate responses to customer inquiries at physical stores, taking emotions into consideration.
[1239] (definition statement)
[1240] "Means of receiving inquiries from users" refers to an interface for importing user-entered inquiry content into the system.
[1241] "Methods for analyzing received inquiries using natural language processing to extract key keywords and intent" refers to technologies that analyze input text data to identify important words, phrases, user requests, and objectives.
[1242] "Means of searching for relevant information from a database based on extracted keywords and intent" refers to the technology of finding relevant information from an appropriate database based on the analysis results.
[1243] "Means of recognizing user emotions" refers to technologies that analyze and identify a user's psychological state and emotions from the text they input and other interactions.
[1244] "Methods for summarizing retrieved information" refer to techniques for extracting important parts from a large amount of information and presenting them in a concise and easy-to-understand format.
[1245] "Means of adjusting summarized information based on perceived emotions" refers to technologies that modify or correct the content and expression of summarized information according to the perceived emotions of the user.
[1246] "Means of integrating adjusted information and generating responses for users" refers to techniques that combine adjusted information to create response sentences for providing to users as final answers.
[1247] "Means of sending generated answers to users" refers to the technology that sends the final constructed answers to the user's device for display.
[1248] This invention is a system that uses natural language processing and sentiment recognition to respond quickly and appropriately to customer inquiries in physical stores. This system receives, analyzes, searches, summarizes, recognizes sentiment, adjusts, generates responses, and transmits information between a server and a smartphone terminal.
[1249] The server uses the following hardware and software:
[1250] Hardware: High-performance servers, network interfaces
[1251] Software: Natural language processing model (distilbert-base-uncased), emotion recognition model (distilbert-base-uncased-emotion), database management system
[1252] The specific procedures are as follows:
[1253] First, the user uses their smartphone to input their inquiry into the application. For example, the user might input the question, "Do you have this item in stock?" The device then sends the input to the server.
[1254] The server receives the input and analyzes it using a natural language processing model (distilbert-base-uncased) to extract key keywords and intent. In this case, the keyword "inventory" and the intent "I want to check the availability of the product" are extracted.
[1255] Next, based on the extracted keywords and intent, relevant information is searched from the database management system. This search retrieves the relevant information, "We have sufficient stock."
[1256] The server then uses a summarization algorithm to concisely organize the acquired information. Next, it uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from the user's input. In this example, it is determined that the user is feeling "anxious".
[1257] Based on perceived emotions, the summarized information is adjusted. If the user is feeling "anxious," the response is changed to a friendly and reassuring expression. For example, it might be adjusted to something like, "Don't worry, we have plenty in stock."
[1258] Finally, a response is generated based on the adjusted information and sent to the user's smartphone. The device displays this response to the user. The user receives a message saying, "Don't worry, we have plenty of stock," and can continue shopping with peace of mind.
[1259] Examples of prompt statements are as follows:
[1260] text
[1261] User question: Is this item in stock?
[1262] Extracted keywords: inventory
[1263] User's emotion: Anxiety
[1264] Corresponding database information: We have ample stock.
[1265] Response after adjustment: Don't worry, we have plenty in stock.
[1266] Thus, the embodiment of the invention includes a process of analyzing information and generating responses using a server and a smartphone terminal, enabling responses that take customer emotions into consideration.
[1267] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1268] Program processing steps
[1269] Step 1:
[1270] Users use their smartphones to input inquiries about the store into the application. For example, they might enter an inquiry such as, "Do you have this product in stock?" The input data is the text information of the inquiry, which is then sent to the server.
[1271] Input: User's inquiry (e.g., "Do you have this item in stock?")
[1272] Output: Sending query text to the server
[1273] Step 2:
[1274] The server receives a query from the user and analyzes the input text using a natural language processing model (distilbert-base-uncased). This analysis extracts key keywords and intent.
[1275] Input: Inquiry text (e.g., "Do you have this item in stock?")
[1276] Output: Extracted keywords and intent (e.g., "inventory")
[1277] Specific operation: A natural language processing model tokenizes the text and extracts the keyword "inventory" and the intent "I want to check the availability of the product."
[1278] Step 3:
[1279] The server searches the database for relevant information based on the extracted keywords and intent. This search retrieves product inventory information.
[1280] Input: Extracted keywords (e.g., "inventory")
[1281] Output: Related information (e.g., "We have ample stock")
[1282] Specific operation: The server uses SQL queries or similar methods to retrieve information from the database stating "We have sufficient stock."
[1283] Step 4:
[1284] The server uses a summarization algorithm to concisely organize the acquired information. This summary extracts the key information that should be provided to the user.
[1285] Input: Search results (Example: "We have plenty of stock")
[1286] Output: Summarized information (e.g., "In stock")
[1287] Specific operation: The summarization algorithm removes redundant information and extracts the important parts.
[1288] Step 5:
[1289] The server uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from user input. In this example, it determines that the user is feeling "anxious".
[1290] Input: Inquiry text (e.g., "Do you have this item in stock?")
[1291] Output: Recognized emotion (e.g., "anxiety")
[1292] Specific operation: The emotion recognition model analyzes the text and determines the user's emotion to be "anxiety."
[1293] Step 6:
[1294] The server adjusts the retrieved and summarized information based on the perceived emotions. For example, if the user is feeling "anxious," the response will be changed to a friendly and reassuring tone.
[1295] Input: Summarized information and perceived emotions (e.g., "We have it in stock," "Anxious")
[1296] Output: A response tailored to the emotion (e.g., "Don't worry, we have plenty in stock.")
[1297] Specific operation: The adjustment algorithm detects the emotion "anxiety" and changes the tone of the response.
[1298] Step 7:
[1299] The server generates a final response based on the adjusted information and sends it to the user's smartphone.
[1300] Input: A prepared response (e.g., "Don't worry, we have plenty in stock.")
[1301] Output: Sending a response message to the user terminal.
[1302] Specific operation: To send the final response, the response is sent to the user's smartphone terminal via the network interface.
[1303] Step 8:
[1304] The terminal receives the response sent from the server and displays it on the user's screen.
[1305] Input: Response message from the server (Example: "Don't worry, we have plenty in stock.")
[1306] Output: Display to the user
[1307] Specific operation: The terminal application receives the response message and displays it on the user interface.
[1308] In this way, through a series of processing steps, an immediate, emotion-sensitive, and appropriate response to user inquiries is achieved.
[1309] 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.
[1310] The data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of the 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.
[1311] 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.
[1312] [Fourth Embodiment]
[1313] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1314] 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.
[1315] 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).
[1316] 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.
[1317] 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.
[1318] 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).
[1319] 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.
[1320] 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.
[1321] 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.
[1322] 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.
[1323] 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.
[1324] 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.
[1325] 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".
[1326] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily executing the necessary procedures. The following describes specific embodiments for carrying out this invention.
[1327] System Overview
[1328] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries, retrieve appropriate information, summarize it, and provide it to the user. This system mainly performs information reception, analysis, retrieval, summarization, response generation, and transmission between the server and the user terminal.
[1329] Server-side processing
[1330] 1. Request received
[1331] The server receives user inquiries sent from the terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[1332] 2. Query Analysis
[1333] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[1334] 3. Searching for related information
[1335] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[1336] 4. Information Summary
[1337] The server uses an algorithm to summarize the acquired information, extracting the main points the user needs and presenting them concisely.
[1338] 5. Generating and sending responses
[1339] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the terminal and displayed on the user's screen.
[1340] User-side processing
[1341] 1. Enter your inquiry
[1342] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[1343] 2. Receiving and displaying responses
[1344] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with the correct internal procedures.
[1345] Specific example
[1346] For example, consider a scenario where a user inquires, "Could you please tell me about the latest travel regulations and procedures?"
[1347] 1. User inquiry input
[1348] The user enters this inquiry into their device and sends it to the system.
[1349] 2. Server processing starts
[1350] The server receives the query and begins analysis.
[1351] The keywords "travel regulations" and "procedures" are extracted using natural language processing.
[1352] 3. Database Search
[1353] The server searches the database for the latest travel regulations and procedures based on these keywords.
[1354] 4. Information Summary
[1355] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[1356] 5. Generate and submit your response.
[1357] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day."
[1358] The generated response is sent to the user's terminal and displayed on the user's screen.
[1359] In this way, users can quickly obtain the necessary information and execute internal procedures accurately. This system is particularly beneficial for new employees and those unfamiliar with procedures, and can significantly improve work efficiency.
[1360] The following describes the processing flow.
[1361] Step 1:
[1362] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[1363] Step 2:
[1364] The terminal sends user input to the server as an HTTP request. The data format used is typically JSON.
[1365] Step 3:
[1366] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[1367] Step 4:
[1368] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[1369] Step 5:
[1370] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[1371] Step 6:
[1372] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[1373] Step 7:
[1374] The server integrates multiple summarized pieces of information and generates a response in a user-friendly format. For example, it might apply the retrieved summary to a template to construct the response.
[1375] Step 8:
[1376] The server sends the generated response to the terminal as an HTTP response.
[1377] Step 9:
[1378] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly obtain the necessary information.
[1379] (Example 1)
[1380] 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".
[1381] Conventional information retrieval systems for personnel and general affairs procedures have problems such as the search results being enormous, making it difficult for users to quickly find the information they need, and the procedures being complex, which is time-consuming and troublesome, especially for new employees and employees unfamiliar with the procedures. Furthermore, the lack of accuracy and consistency of the information has also been a problem. Therefore, the present invention aims to improve the efficiency of procedures by quickly providing appropriate and summarized information in response to user inquiries.
[1382] 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.
[1383] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from an information storage device based on the extracted keywords and intents, means for summarizing the retrieved information using a summary generation model, means for integrating the summarized information and generating an answer for the user, and means for sending the generated answer to the user and displaying it on the user terminal. This enables users to quickly obtain the necessary information and efficiently execute accurate internal procedures.
[1384] "User" refers to an end-user who uses this system to obtain information and perform procedures.
[1385] An "inquiry" refers to a question or request that a user enters into a system to obtain information.
[1386] A "server" refers to a computer system that receives inquiries from users, analyzes them, processes them, searches for information, summarizes it, generates responses, and sends them.
[1387] "Natural language processing" refers to the technology that enables computers to understand and analyze human language.
[1388] "Keywords" refer to important words or phrases extracted through the analysis of user inquiries.
[1389] "Intention" refers to the user's purpose or the type of information they are seeking, as included in the inquiry.
[1390] "Information storage device" refers to databases and storage devices that systems use to store and retrieve information.
[1391] "Related information" refers to information retrieved from the information storage device based on the extracted keywords and intent.
[1392] A "summary generation model" refers to an algorithm or artificial intelligence model designed to concisely summarize retrieved information.
[1393] "Answer" refers to a response message generated by the system in response to a user's inquiry, which contains summarized information.
[1394] A "user terminal" refers to a device used by a user to access the system, enter inquiries, and receive and display responses.
[1395] This invention is a system for efficiently and accurately acquiring information on internal personnel and general affairs procedures, and for supporting users in quickly and easily performing the necessary procedures. This system primarily involves receiving, analyzing, searching, summarizing, generating responses, and transmitting information between a server and a user terminal.
[1396] System Overview
[1397] Server-side processing
[1398] 1. Request received
[1399] The server receives inquiries sent from the user's terminal. These inquiries are in the form of specific questions, such as "Please tell me about the latest travel regulations and procedures."
[1400] 2. Query Analysis
[1401] The server analyzes incoming queries using natural language processing techniques. Specifically, it utilizes the Google Cloud Natural Language API and OpenAI's GPT-4. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[1402] 3. Searching for related information
[1403] Based on the extracted keywords and intent, the server searches for relevant information from its information storage device (database). The databases used are MySQL and PostgreSQL. For example, searching for documents related to "latest travel regulations" is achieved by generating and executing an SQL query.
[1404] 4. Information Summary
[1405] The server summarizes the retrieved information using a summarization model (e.g., OpenAI's GPT-4). This model extracts the key information the user needs and presents it concisely.
[1406] 5. Generating and sending responses
[1407] The server generates a response for the user based on the summarized information. This generated response is structured in an easy-to-understand format. For example, it might be in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day." This response is sent to the user's terminal and displayed on the user's screen.
[1408] User-side processing
[1409] 1. Enter your inquiry
[1410] Users access the system and enter inquiries about the information or procedures they want to know. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[1411] 2. Receiving and displaying responses
[1412] The user terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with accurate internal procedures.
[1413] Specific example
[1414] For example, if a user asks, "Could you please tell me about the latest travel regulations and procedures?":
[1415] 1. User inquiry input
[1416] The user enters this inquiry into their device and sends it to the system.
[1417] 2. Server processing starts
[1418] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[1419] 3. Database Search
[1420] The server searches the database for the latest travel regulations and procedures based on these keywords.
[1421] 4. Information Summary
[1422] The server searches are performed to summarize the main points. For example, the information extracted might be, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[1423] 5. Generate and submit your response.
[1424] The server combines the summary results and generates an easy-to-understand answer for the user. The generated answer is sent to the user's terminal and displayed on the user's screen.
[1425] Example of a prompt
[1426] Examples of prompts include, "Please tell me about the latest company regulations and procedures," or "I would like to know the current travel expense limit." This allows for the effective extraction of specific information requested by the user.
[1427] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1428] Step 1:
[1429] User inquiry input
[1430] The user accesses the system and enters their inquiry. This input is done through a web browser on their terminal or a dedicated application. For example, the user might type "Please tell me the latest travel regulations and procedures" and click the submit button.
[1431] Input: User inquiry (e.g., "Please tell me about the latest travel regulations and procedures.")
[1432] Output: HTTP request sent to the server containing the user's query.
[1433] Specific action: The user enters a question in the text box and clicks the submit button.
[1434] Step 2:
[1435] Server receives request
[1436] The server receives an HTTP request sent from the user's terminal. The request contains the user's inquiry.
[1437] Input: HTTP request sent by the user
[1438] Output: Data extracted from the query content for analysis and passed to internal processing.
[1439] Specific operation: The server receives an HTTP POST request through a web server (e.g., Nginx or Apache) and passes the data to the application server.
[1440] Step 3:
[1441] Server-side query analysis
[1442] The server analyzes the received query content using natural language processing techniques. Specifically, it uses a natural language processing API (e.g., Google Cloud Natural Language API) or a generative AI model (e.g., OpenAI GPT-4).
[1443] Input: Extracted query content (text format)
[1444] Output: Analysis results including keywords and user intent.
[1445] Specific operation: The server tokenizes the query text and extracts the main keywords and the user's intent. Example: Extract keywords such as "latest", "business trip regulations", and "procedure method".
[1446] Step 4:
[1447] Search for relevant information by the server
[1448] Based on the analyzed keywords and intent, the server searches for relevant information from the information storage device (database). The databases used are MySQL and PostgreSQL.
[1449] Input: Keywords and user's intent
[1450] Output: Relevant information as search results
[1451] Specific operation: The server generates an SQL query and executes the query against the database. Example: "SELECT FROM regulations WHERE category='business trip' AND type='latest'".
[1452] Step 5:
[1453] Summary of information by the server
[1454] The server summarizes the retrieved information using a summarization model (e.g., OpenAI GPT-4). It extracts the main parts required by the user and summarizes them concisely.
[1455] Input: Relevant information as search results
[1456] Output: Summarized information
[1457] Specific operation: The server inputs search results into GPT-4, extracts key points, and generates concise text. Example: The information "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen" is generated using a summary generation model.
[1458] Step 6:
[1459] Server generates and sends responses.
[1460] The server generates a response for the user based on the summarized information and sends it to the user's terminal. The generated response is in an easy-to-understand format.
[1461] Input: Summarized information
[1462] Output: Response text sent to the user
[1463] Specific operation: The server generates the response message "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." and sends it to the user's terminal as an HTTP response.
[1464] Step 7:
[1465] User response received and displayed
[1466] The user terminal receives the response sent from the server and displays it on the screen. Based on the information provided, the user can proceed with accurate internal procedures.
[1467] Input: Response text sent from the server
[1468] Output: The response displayed on the user's terminal.
[1469] Specific operation: The user's terminal receives an HTTP response, parses the response text, and displays it. Example: Using HTML and CSS, the text "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day." is displayed on the screen.
[1470] (Application Example 1)
[1471] 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".
[1472] In the operational processes of physical stores, it is crucial for staff to quickly and accurately obtain necessary information and perform their duties efficiently. However, researching the required information and procedures often takes a lot of time and effort, leading to decreased efficiency and errors. This invention aims to solve these problems and provide a system for streamlining operational processes within physical stores.
[1473] 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.
[1474] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for integrating the summarized information and generating an answer for the user, means for sending the generated answer to the user, and means for supporting procedures and information retrieval in business processes within a physical store using a smart device or robot. This enables staff in physical stores to quickly and accurately obtain the information they need and perform their duties efficiently.
[1475] "Means of receiving inquiries from users" refers to the means by which users input questions or requests for information from the system.
[1476] "Natural language processing" is a technology that enables computers to understand and process human language, and it involves analyzing queries to extract key keywords and intents.
[1477] "Means for extracting key keywords and intent" refers to methods for identifying important words and objectives from user inquiries using natural language processing technology.
[1478] "Methods for searching for relevant information from a database" refer to methods for finding appropriate information from stored data based on extracted keywords or intents.
[1479] "Methods for summarizing retrieved information" refer to methods for extracting key points from found information and summarizing them concisely.
[1480] "Means for generating answers for users" refers to methods for creating answers in a format that is easy for users to understand, based on summarized information.
[1481] "Means of sending to the user" refers to the means of sending the generated response to the user's device and displaying it.
[1482] "Means of supporting procedures and information retrieval in in-store business processes using smart devices or robots" refers to means of using smartphones, tablets, or robots to guide customers through procedures related to in-store business processes or to search for and provide necessary information.
[1483] This invention is a system that efficiently and accurately supports procedures and information retrieval in business processes within physical stores. This system primarily performs information reception, analysis, retrieval, summarization, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out this invention.
[1484] System Overview
[1485] Users use smart devices or robots to inquire about business processes within physical stores. These inquiries are received by the system and analyzed using natural language processing technology. Based on the analyzed inquiry, the server searches the database for relevant information, summarizes it, and generates a response. The generated response is sent to the user's terminal and displayed on the screen.
[1486] Server-side processing
[1487] 1. Request received
[1488] The server receives user inquiries sent from smart devices and robots. These inquiries are in the form of specific questions, such as "Please tell me the latest inventory management regulations."
[1489] 2. Query Analysis
[1490] The server uses natural language processing techniques to analyze user queries. In this step, the query content is tokenized, and key keywords and user intent are extracted.
[1491] 3. Searching for related information
[1492] Based on the extracted keywords and intent, the server searches the database for relevant information. For example, it might retrieve documents related to the latest inventory management regulations. This process uses a database management system (e.g., MySQL, PostgreSQL).
[1493] 4. Information Summary
[1494] The server uses an algorithm to summarize the acquired information, extracting the key parts the user needs and presenting them concisely. Generative AI models (e.g., Transformers, GPT-3) can be used for summarization.
[1495] 5. Generating and sending responses
[1496] The server generates a response based on the summarized information and constructs the answer in a format that is easy for the user to understand. The generated response is sent to the user's terminal and displayed on the user's screen.
[1497] User-side processing
[1498] 1. Enter your inquiry
[1499] Users access the system using smart devices or robots and input inquiries about the information or procedures they want to know. For example, if they want to know about inventory management procedures, they might input, "Please tell me the latest inventory management regulations."
[1500] 2. Receiving and displaying responses
[1501] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the information provided, the user can proceed with in-store operations accurately.
[1502] Specific example
[1503] For example, consider a scenario where a user asks, "Could you please provide me with the latest inventory management regulations?"
[1504] 1. User inquiry input
[1505] The user enters this inquiry into their device and sends it to the system.
[1506] 2. Server processing starts
[1507] The server receives the query and begins analysis. Natural language processing is used to extract the keyword "inventory management regulations".
[1508] 3. Database Search
[1509] The server searches the database for information on the latest inventory management regulations based on these keywords.
[1510] 4. Information Summary
[1511] The server search results are summarized to highlight key points. For example, information such as "Inventory management regulations effective from March 1, 2023: Product inventory must be checked once a week" is extracted.
[1512] 5. Generate and submit your response.
[1513] The server combines the summary results to generate an easy-to-understand response for the user. For example, it might say, "Regarding the latest inventory management regulations: Effective March 1, 2023, product inventory must be checked once a week." The generated response is sent to the user's terminal and displayed on the user's screen.
[1514] Example of a prompt
[1515] "Could you please provide me with the latest inventory management regulations?"
[1516] "What are the store's promotional offers for today?"
[1517] "I'd like to confirm the inventory management procedures for our products."
[1518] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1519] Step 1:
[1520] The user enters an inquiry into a terminal and sends it to the system. The input is a question in natural language format, for example, "Please tell me the latest inventory management regulations." The terminal sends this input to the server.
[1521] Step 2:
[1522] The server receives queries sent by users. The received data is in text format, such as a specific question like, "Please tell me the latest inventory management regulations." The server passes the received text to a natural language processing (NLP) engine.
[1523] Step 3:
[1524] The server uses an NLP engine to analyze queries. First, it tokenizes the text and performs grammatical analysis. Then, it extracts the main keyword "inventory management regulations" and the user's intent. The input is a text-based query, and the output is a set of main keywords and intent.
[1525] Step 4:
[1526] The server searches the database based on the extracted keywords and intent. In this step, it searches for relevant information from multiple databases (e.g., MySQL, PostgreSQL). The input is the keyword "Inventory Management Regulations," and the output is the relevant documents or data.
[1527] Step 5:
[1528] The server summarizes the retrieved information using a generative AI model (e.g., Transformers, GPT-3). The summarization algorithm extracts key points from long documents and condenses them into a concise format. The input is the relevant documents, and the output is a concise, to-the-point summary.
[1529] Step 6:
[1530] The server generates an answer in a user-friendly format based on the summarized information. The generated answer includes the necessary information and procedures. The input is summarized information, and the output is the completed answer text.
[1531] Step 7:
[1532] The server sends the generated response to the user's terminal. The input is the response text, and the output is the transmission of data to the terminal. The terminal displays the received response on the user's screen, and the user can proceed with the task based on the provided information.
[1533] Through the above processing steps, users will be able to quickly and accurately obtain information about business processes within physical stores.
[1534] 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.
[1535] This invention is a system that receives inquiries from users and provides information on internal company procedures more quickly and accurately by combining natural language processing and an emotion engine. The following describes specific embodiments for carrying out this invention.
[1536] System Overview
[1537] The system of the present invention has a series of functions that receive inquiries from users, analyze the content of those inquiries using natural language processing, determine the user's emotions using an emotion engine that recognizes emotions, and then retrieve, summarize, and adjust appropriate information to provide to the user. This system mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between the server and the user terminal.
[1538] Server-side processing
[1539] 1. Request received
[1540] The server receives user inquiries sent from the terminal. For example, a user might type, "Please tell me the latest travel regulations and procedures."
[1541] 2. Query Analysis
[1542] The server uses natural language processing techniques to analyze user inquiries. In this step, the text is tokenized, and key keywords and the user's intent are extracted.
[1543] 3. Recognition of emotions
[1544] The extracted inquiry text is sent to the emotion engine to recognize the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety, and records the results.
[1545] 4. Searching for related information
[1546] Based on the extracted keywords and intent, the server searches the company's internal database for relevant information. For example, it might retrieve documents regarding the latest travel regulations and application procedures.
[1547] 5. Information Summary
[1548] The server uses a summarization algorithm to extract the main parts of the acquired information that the user needs and summarizes them concisely.
[1549] 6. Adjusting the answer
[1550] The server adjusts the generated response based on the perceived emotions of the user. For example, if the user is feeling anxious, it will use more polite and reassuring language.
[1551] 7. Generating and sending the response
[1552] The server generates an appropriate response for the user based on the summarized information, and constructs a response sentence that is adjusted considering the emotional information obtained from the emotion engine.
[1553] The generated response is sent to the user's terminal and displayed on the user's screen.
[1554] User-side processing
[1555] 1. Enter your inquiry
[1556] Users access the system and enter the information or procedures they want to know as inquiries. For example, if they want to know how to apply for a business trip, they would enter, "Please tell me the latest business trip regulations and procedures."
[1557] 2. Receiving and displaying responses
[1558] The user's terminal receives the response sent from the server and displays it on the user's screen. Based on the provided information and the adjusted response, the user can proceed with accurate internal procedures.
[1559] Specific example
[1560] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[1561] 1. User inquiry input
[1562] The user enters their inquiry into their terminal and sends it to the system.
[1563] 2. Server processing starts
[1564] The server receives the query and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[1565] 3. Recognition of emotions
[1566] The server sends the query text to the sentiment engine, which recognizes the user's emotions. For example, it might determine that the user is feeling anxious.
[1567] 4. Database Search
[1568] The server searches the database for the latest travel regulations and procedures based on these keywords.
[1569] 5. Information Summary
[1570] The server summarizes the search results and extracts key information. For example, it might provide information such as, "The revised daily limit for business travel expenses, effective January 1, 2023, is 5,000 yen."
[1571] 6. Adjusting the answer
[1572] The server will add polite and reassuring language to alleviate user anxiety.
[1573] 7. Generate and submit your response.
[1574] The server generates a response based on summarized information and sentiment information, and sends it to the terminal.
[1575] 8. Display to the user
[1576] The device receives the response and displays it on the user's screen. For example, it might be presented in the format of, "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[1577] Thus, the system of the present invention, which incorporates an emotion engine, can provide necessary information quickly and accurately while taking into account the user's emotions. By recognizing emotions and responding appropriately, the user experience can be improved.
[1578] The following describes the processing flow.
[1579] Step 1:
[1580] The user enters their inquiry into the terminal and presses the send button. For example, they might enter, "Please tell me the latest travel regulations and procedures."
[1581] Step 2:
[1582] The terminal sends user input to the server as an HTTP request. Data formats such as JSON are commonly used.
[1583] Step 3:
[1584] The server receives this HTTP request. The received data is logged and assigned a session ID and other information.
[1585] Step 4:
[1586] The server uses a natural language processing (NLP) engine to analyze the received query text. First, the text is tokenized, and key keywords and their intent are extracted.
[1587] Step 5:
[1588] The server sends the extracted query text to the emotion engine, which recognizes the user's emotions. The emotion engine identifies emotions such as joy, anger, and anxiety through text analysis.
[1589] Step 6:
[1590] The server searches the database for relevant information based on the extracted keywords and intent. For example, it might search for documents related to "travel regulations" or "procedures."
[1591] Step 7:
[1592] The server sends the search results to a summarization algorithm, which extracts the key information. For example, algorithms such as TextRank or BERT are used to generate summaries.
[1593] Step 8:
[1594] The server adjusts the generated responses based on the recognized user's emotions. For example, for an anxious user, it adds reassuring language.
[1595] Step 9:
[1596] The server sends the adjusted response to the terminal as an HTTP response.
[1597] Step 10:
[1598] The terminal analyzes the response received from the server and displays the results on the user's screen. This allows the user to quickly and securely obtain the necessary information.
[1599] (Example 2)
[1600] 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".
[1601] Traditional information systems have struggled to provide quick and accurate answers to user inquiries. Furthermore, they often provide answers that disregard user feelings, resulting in a poor user experience. Additionally, they are limited to information retrieval based on specific keywords, making it difficult to aggregate appropriate information from diverse sources. To address these issues, a more efficient and user-friendly information system is needed.
[1602] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1603] In this invention, the server includes means for receiving inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for recognizing the user's emotions and adjusting the information based on the results, means for integrating the summarized information and generating an emotionally adjusted response, and means for sending the generated response to the user. This enables the provision of fast and accurate information that takes the user's emotions into consideration.
[1604] A "user" is a person or entity that requests information from a system and receives a response in return.
[1605] An "inquiry" refers to text or audio data that a user inputs to request information from a system.
[1606] "Natural language processing" is a technology that enables computers to understand, analyze, and generate human language.
[1607] "Keywords" are important words or phrases within an inquiry, and they serve as the starting point for information retrieval and analysis.
[1608] "Intention" refers to the purpose or information that the user is trying to achieve through their inquiry.
[1609] A "database" is a system designed to systematically store information and facilitate searching and updating.
[1610] "Related information" refers to the information in the database necessary to generate appropriate answers to user inquiries.
[1611] A "summary" is a concise document that extracts the most important parts from searched information and puts them together.
[1612] "Emotion recognition" is a technology that analyzes a user's emotions (joy, anger, anxiety, etc.) from the content of their inquiry.
[1613] "Adjustment" refers to modifying the content of responses and other materials to suit the user's preferences based on the results of emotional recognition.
[1614] A "response" is a text or response containing information generated based on a user's inquiry.
[1615] "Sending" refers to the act of sending the generated response to the user's device.
[1616] This invention is a system for receiving user inquiries and providing information more quickly and accurately by combining natural language processing and an emotion engine. The system of this invention mainly performs information reception, analysis, retrieval, summarization, emotion determination, response generation, and transmission between a server and a user terminal. The following describes specific embodiments for carrying out the invention.
[1617] Server-side processing
[1618] The server receives user inquiries via the terminal. For example, a user might type and submit "Please tell me the latest travel regulations and procedures." This request is passed to the server as an HTTP request.
[1619] The server uses natural language processing (NLP) techniques to analyze incoming queries. Python's NLTK and SpaCy are used for this process. The input text is tokenized, keywords such as "travel regulations" and "procedures" are extracted, and an intent classifier is also used to understand the user's intent.
[1620] Furthermore, the server sends the extracted query text to a sentiment engine (for example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics). The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server. This result is used to generate future responses.
[1621] Next, the server searches for relevant information from internal databases (such as PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might retrieve documents from the database regarding the latest travel regulations and application procedures.
[1622] The server summarizes the retrieved information using a summarization algorithm (for example, Python's Gensim or Transformers library). The goal is to extract the main points the user is looking for and summarize them concisely.
[1623] The server adjusts the generated response based on the recognized user's emotions. For example, if the user is feeling anxious, it adds more polite and reassuring language. This adjustment utilizes the output of the emotion engine.
[1624] Finally, the server generates a final response and sends it to the user's terminal. The response includes summarized information and sentiment-based adjustments. It is sent to the user's terminal as an HTTP response.
[1625] User-side processing
[1626] Users access the system and enter the information or procedures they want to know as inquiries. For example, a user who wants to know about the travel application process would enter "Please tell me the latest travel regulations and procedures" and press the submit button.
[1627] The user terminal receives a response from the server and displays it on the screen. For example, information might be displayed in the format of, "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence."
[1628] Specific example
[1629] For example, consider a scenario where a user inquires, "Please tell me the latest travel regulations and procedures," and sends the information to their device.
[1630] The user enters "Please tell me the latest travel regulations and procedures" into their terminal and sends it to the system. The server receives the inquiry and begins analysis. Natural language processing is used to extract the keywords "travel regulations" and "procedures."
[1631] Next, the server sends the query text to the sentiment engine to recognize the user's emotions. For example, it might determine that the user is feeling anxious. Based on these keywords, the server searches the database for information on the latest travel policies and procedures.
[1632] The acquired information is summarized, and key information is extracted. For example, information such as "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day" is provided. The server adds polite and reassuring language to alleviate user concerns.
[1633] The final response is generated and sent to the device. For example, it might appear on the user's screen in the format of: "Regarding the latest travel regulations: Revised as of January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel arrangements with confidence."
[1634] By combining this system with an emotion engine, it can provide necessary information quickly and accurately while taking the user's emotions into consideration. This can improve the user experience.
[1635] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1636] Step 1:
[1637] The server receives an HTTP request from the user's terminal. The user uses their terminal's web browser or mobile app to enter and send an inquiry, for example, "Please tell me the latest travel regulations and procedures." This request reaches the server, and the server logs its contents.
[1638] Input: User's inquiry text
[1639] Output: Received and logged query text.
[1640] Step 2:
[1641] The server analyzes the received query text using natural language processing (NLP) techniques. Specifically, it tokenizes the text using Python's NLTK or SpaCy and extracts key keywords such as "travel regulations" and "procedures." It also uses an intent classifier to understand the user's intent.
[1642] Input: Inquiry text
[1643] Output: Extracted keywords and user intent
[1644] Step 3:
[1645] The server sends the extracted query text to a sentiment engine. For example, IBM Watson Tone Analyzer or Microsoft Azure Text Analytics may be used. The sentiment engine identifies emotions such as joy, anger, and anxiety from the text and returns the results to the server.
[1646] Input: Inquiry text
[1647] Output: User's emotional information (e.g., Joy 0.2, Anger 0.1, Anxiety 0.7)
[1648] Step 4:
[1649] The server searches for relevant information from internal databases (e.g., PostgreSQL or MySQL) based on the extracted keywords and the user's intent. For example, it might execute a query to retrieve the latest information on travel regulations and application procedures from the database.
[1650] Input: Extracted keywords, user intent
[1651] Output: Search results for related information
[1652] Step 5:
[1653] The server uses a summarization algorithm to concisely organize the acquired information. It uses Python's Gensim or Transformers libraries to summarize the main information (for example, "The revised travel expense limit effective January 1, 2023, is 5,000 yen per day").
[1654] Input: Search result information
[1655] Output: Summarized information
[1656] Step 6:
[1657] The server adjusts the summarized information based on the perceived emotions of the user. For example, if the user is feeling anxious, it adds reassuring phrases to the response, such as "Please proceed with your travel arrangements with peace of mind."
[1658] Input: User sentiment information, summarized information
[1659] Output: Adjusted response
[1660] Step 7:
[1661] The server generates the final response and sends it to the user's terminal as an HTTP response. The generated response includes summarized information and sentiment-based adjustments.
[1662] Input: Adjusted response
[1663] Output: Sent to and displayed to the user (in the format of "Regarding the latest travel regulations: Revised from January 1, 2023. The maximum travel expense is 5,000 yen per day. Please proceed with your travel procedures with confidence.")
[1664] (Application Example 2)
[1665] 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".
[1666] In physical stores, responding quickly and appropriately to customer inquiries is a crucial issue directly linked to improving service quality and customer satisfaction. However, traditional methods often involve uniform responses without considering customer emotions, which can sometimes lead to customer dissatisfaction. Furthermore, there is a lack of established means for providing appropriate information in real time. To address these challenges, a system is needed that recognizes customer emotions and adjusts responses accordingly.
[1667] 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 inquiries from users, means for analyzing the received inquiries using natural language processing to extract key keywords and intents, means for recognizing the user's emotions, means for searching for relevant information from a database based on the extracted keywords and intents, means for summarizing the retrieved information, means for adjusting the summarized information based on the recognized emotions, means for integrating the adjusted information and generating an answer for the user, and means for sending the generated answer to the user. This enables appropriate and immediate responses to customer inquiries at physical stores, taking emotions into consideration.
[1668] (definition statement)
[1669] "Means of receiving inquiries from users" refers to an interface for importing user-entered inquiry content into the system.
[1670] "Methods for analyzing received inquiries using natural language processing to extract key keywords and intent" refers to technologies that analyze input text data to identify important words, phrases, user requests, and objectives.
[1671] "Means of searching for relevant information from a database based on extracted keywords and intent" refers to the technology of finding relevant information from an appropriate database based on the analysis results.
[1672] "Means of recognizing user emotions" refers to technologies that analyze and identify a user's psychological state and emotions from the text they input and other interactions.
[1673] "Methods for summarizing retrieved information" refer to techniques for extracting important parts from a large amount of information and presenting them in a concise and easy-to-understand format.
[1674] "Means of adjusting summarized information based on perceived emotions" refers to technologies that modify or correct the content and expression of summarized information according to the perceived emotions of the user.
[1675] "Means of integrating adjusted information and generating responses for users" refers to techniques that combine adjusted information to create response sentences for providing to users as final answers.
[1676] "Means of sending generated answers to users" refers to the technology that sends the final constructed answers to the user's device for display.
[1677] This invention is a system that uses natural language processing and sentiment recognition to respond quickly and appropriately to customer inquiries in physical stores. This system receives, analyzes, searches, summarizes, recognizes sentiment, adjusts, generates responses, and transmits information between a server and a smartphone terminal.
[1678] The server uses the following hardware and software:
[1679] Hardware: High-performance servers, network interfaces
[1680] Software: Natural language processing model (distilbert-base-uncased), emotion recognition model (distilbert-base-uncased-emotion), database management system
[1681] The specific procedures are as follows:
[1682] First, the user uses their smartphone to input their inquiry into the application. For example, the user might input the question, "Do you have this item in stock?" The device then sends the input to the server.
[1683] The server receives the input and analyzes it using a natural language processing model (distilbert-base-uncased) to extract key keywords and intent. In this case, the keyword "inventory" and the intent "I want to check the availability of the product" are extracted.
[1684] Next, based on the extracted keywords and intent, relevant information is searched from the database management system. This search retrieves the relevant information, "We have sufficient stock."
[1685] The server then uses a summarization algorithm to concisely organize the acquired information. Next, it uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from the user's input. In this example, it is determined that the user is feeling "anxious".
[1686] Based on perceived emotions, the summarized information is adjusted. If the user is feeling "anxious," the response is changed to a friendly and reassuring expression. For example, it might be adjusted to something like, "Don't worry, we have plenty in stock."
[1687] Finally, a response is generated based on the adjusted information and sent to the user's smartphone. The device displays this response to the user. The user receives a message saying, "Don't worry, we have plenty of stock," and can continue shopping with peace of mind.
[1688] Examples of prompt statements are as follows:
[1689] text
[1690] User question: Is this item in stock?
[1691] Extracted keywords: inventory
[1692] User's emotion: Anxiety
[1693] Corresponding database information: We have ample stock.
[1694] Response after adjustment: Don't worry, we have plenty in stock.
[1695] Thus, the embodiment of the invention includes a process of analyzing information and generating responses using a server and a smartphone terminal, enabling responses that take customer emotions into consideration.
[1696] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1697] Program processing steps
[1698] Step 1:
[1699] Users use their smartphones to input inquiries about the store into the application. For example, they might enter an inquiry such as, "Do you have this product in stock?" The input data is the text information of the inquiry, which is then sent to the server.
[1700] Input: User's inquiry (e.g., "Do you have this item in stock?")
[1701] Output: Sending query text to the server
[1702] Step 2:
[1703] The server receives a query from the user and analyzes the input text using a natural language processing model (distilbert-base-uncased). This analysis extracts key keywords and intent.
[1704] Input: Inquiry text (e.g., "Do you have this item in stock?")
[1705] Output: Extracted keywords and intent (e.g., "inventory")
[1706] Specific operation: A natural language processing model tokenizes the text and extracts the keyword "inventory" and the intent "I want to check the availability of the product."
[1707] Step 3:
[1708] The server searches the database for relevant information based on the extracted keywords and intent. This search retrieves product inventory information.
[1709] Input: Extracted keywords (e.g., "inventory")
[1710] Output: Related information (e.g., "We have ample stock")
[1711] Specific operation: The server uses SQL queries or similar methods to retrieve information from the database stating "We have sufficient stock."
[1712] Step 4:
[1713] The server uses a summarization algorithm to concisely organize the acquired information. This summary extracts the key information that should be provided to the user.
[1714] Input: Search results (Example: "We have plenty of stock")
[1715] Output: Summarized information (e.g., "In stock")
[1716] Specific operation: The summarization algorithm removes redundant information and extracts the important parts.
[1717] Step 5:
[1718] The server uses an emotion recognition model (distilbert-base-uncased-emotion) to recognize emotions from user input. In this example, it determines that the user is feeling "anxious".
[1719] Input: Inquiry text (e.g., "Do you have this item in stock?")
[1720] Output: Recognized emotion (e.g., "anxiety")
[1721] Specific operation: The emotion recognition model analyzes the text and determines the user's emotion to be "anxiety."
[1722] Step 6:
[1723] The server adjusts the retrieved and summarized information based on the perceived emotions. For example, if the user is feeling "anxious," the response will be changed to a friendly and reassuring tone.
[1724] Input: Summarized information and perceived emotions (e.g., "We have it in stock," "Anxious")
[1725] Output: A response tailored to the emotion (e.g., "Don't worry, we have plenty in stock.")
[1726] Specific operation: The adjustment algorithm detects the emotion "anxiety" and changes the tone of the response.
[1727] Step 7:
[1728] The server generates a final response based on the adjusted information and sends it to the user's smartphone.
[1729] Input: A prepared response (e.g., "Don't worry, we have plenty in stock.")
[1730] Output: Sending a response message to the user terminal.
[1731] Specific operation: To send the final response, the response is sent to the user's smartphone terminal via the network interface.
[1732] Step 8:
[1733] The terminal receives the response sent from the server and displays it on the user's screen.
[1734] Input: Response message from the server (Example: "Don't worry, we have plenty in stock.")
[1735] Output: Display to the user
[1736] Specific operation: The terminal application receives the response message and displays it on the user interface.
[1737] In this way, through a series of processing steps, an immediate, emotion-sensitive, and appropriate response to user inquiries is achieved.
[1738] 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.
[1739] The data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of the 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.
[1740] 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.
[1741] 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.
[1742] 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. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, 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.
[1743] 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.
[1744] 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.
[1745] 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.
[1746] 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."
[1747] 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.
[1748] 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.
[1749] 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.
[1750] 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.
[1751] 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.
[1752] 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.
[1753] 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.
[1754] 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.
[1755] 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.
[1756] 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.
[1757] 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.
[1758] 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 to be incorporated by reference.
[1759] The following is further disclosed regarding the embodiments described above.
[1760] (Claim 1)
[1761] A means of receiving inquiries from users,
[1762] A means for analyzing received queries using natural language processing to extract key keywords and intent,
[1763] A means for searching for relevant information from a database based on extracted keywords and intent,
[1764] A means of summarizing the searched information,
[1765] A means of integrating summarized information and generating an answer for the user,
[1766] A means of sending the generated response to the user,
[1767] A system that includes this.
[1768] (Claim 2)
[1769] The system according to claim 1, further comprising, as a summarization means, means for performing document summarization using a specified algorithm.
[1770] (Claim 3)
[1771] The system according to claim 1, further comprising, as a search means, means for searching for relevant information from multiple databases.
[1772] "Example 1"
[1773] (Claim 1)
[1774] A means of receiving inquiries from users,
[1775] A means for analyzing received queries using natural language processing to extract key keywords and intent,
[1776] A means for searching for relevant information from an information storage device based on extracted keywords and intent,
[1777] A means of summarizing retrieved information using a summary generation model,
[1778] A means of integrating summarized information and generating an answer for the user,
[1779] A means of sending the generated response to the user and displaying it on the user's terminal,
[1780] A system that includes this.
[1781] (Claim 2)
[1782] The system according to claim 1, further comprising means for performing document summarization using a specified summarization generation model.
[1783] (Claim 3)
[1784] The system according to claim 1, further comprising means for retrieving related information from multiple information storage devices.
[1785] "Application Example 1"
[1786] (Claim 1)
[1787] A means of receiving inquiries from users,
[1788] A means for analyzing received queries using natural language processing to extract key keywords and intent,
[1789] A means for searching for relevant information from a database based on extracted keywords and intent,
[1790] A means of summarizing the searched information,
[1791] A means of integrating summarized information and generating an answer for the user,
[1792] A means of sending the generated response to the user,
[1793] A means of supporting procedures and information retrieval in business processes within physical stores using smart devices or robots,
[1794] A system that includes this.
[1795] (Claim 2)
[1796] The system according to claim 1, further comprising, as a summarization means, means for performing document summarization using a specified algorithm.
[1797] (Claim 3)
[1798] The system according to claim 1, further comprising, as a search means, means for searching for relevant information from multiple databases.
[1799] "Example 2 of combining an emotion engine"
[1800] (Claim 1)
[1801] A means of receiving inquiries from users,
[1802] A means for analyzing received queries using natural language processing to extract key keywords and intent,
[1803] A means for searching for relevant information from a database based on extracted keywords and intent,
[1804] A means of summarizing the searched information,
[1805] A means of recognizing user emotions and adjusting information based on those emotions,
[1806] A means of integrating summarized information and generating responses adjusted based on emotions,
[1807] A means of sending the generated response to the user,
[1808] A system that includes this.
[1809] (Claim 2)
[1810] The system according to claim 1, further comprising means for performing document summarization using a specified algorithm.
[1811] (Claim 3)
[1812] The system according to claim 1, further comprising means for retrieving relevant information from multiple databases.
[1813] "Application example 2 when combining with an emotional engine"
[1814] (Claim 1)
[1815] A means of receiving inquiries from users,
[1816] A means for analyzing received queries using natural language processing to extract key keywords and intent,
[1817] A means for searching for relevant information from a database based on extracted keywords and intent,
[1818] Means of recognizing user emotions,
[1819] A means of summarizing the searched information,
[1820] Means for adjusting summarized information based on perceived emotions,
[1821] A means of integrating the adjusted information and generating an answer for the user,
[1822] A means of sending the generated response to the user,
[1823] A system that includes this.
[1824] (Claim 2)
[1825] The system according to claim 1, further comprising means for performing document summarization using a specified algorithm.
[1826] (Claim 3)
[1827] The system according to claim 1, further comprising means for retrieving relevant information from multiple databases. [Explanation of symbols]
[1828] 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. A means of receiving inquiries from users, A means for analyzing received queries using natural language processing to extract key keywords and intent, A means for searching for relevant information from a database based on extracted keywords and intent, A means of summarizing the searched information, A means of integrating summarized information and generating an answer for the user, A means of sending the generated response to the user, A system that includes this.
2. The system according to claim 1, further comprising, as a summarization means, means for performing document summarization using a specified algorithm.
3. The system according to claim 1, further comprising, as a search means, means for searching for relevant information from multiple databases.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A