system
The system automates customer service and management tasks through natural language processing, addressing inefficiencies and enhancing user satisfaction and operational efficiency.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-10-02
- Publication Date
- 2026-04-14
AI Technical Summary
Conventional systems require manual responses, leading to inefficiencies and increased costs, and lack the ability to quickly respond to user inquiries, resulting in decreased customer satisfaction and operational inefficiencies.
A system that includes a server to analyze user inquiries using natural language processing, retrieve information, and generate automated responses, while also managing schedule and administrative tasks.
Automates customer service and management operations, improving efficiency and reducing human error, thereby enhancing user satisfaction and operational efficiency.
Smart Images

Figure 2026064752000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, the method including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In the modern business environment, improving the efficiency of customer service and daily management operations has become an important issue. However, in conventional systems, manual response is required, which results in a large amount of time and cost, which is a problem. Furthermore, if the system cannot quickly respond to user inquiries, it will lead to a decrease in customer satisfaction. Also, in management operations such as schedule management and data entry, mistakes are likely to occur, and improvement in operational efficiency is required. Against this background, there is a need to develop a system that can efficiently automate customer service and management operations.
Means for Solving the Problems
[0005] To solve this problem, the present invention provides a system having the following configuration: It includes means for the user to input an inquiry through a terminal, and means for the terminal to send the inquiry content to a server. Furthermore, it includes means for the server to analyze the inquiry content and acquire information based on the analysis results. The server has means to generate a response based on the acquired information and send the response to the terminal. The terminal has means to display the response from the server to the user. In addition, the server can generate highly accurate responses by analyzing the inquiry content using natural language processing technology. Furthermore, the server has means to manage the user's schedule information, which can improve the efficiency of management operations. With such a system configuration, it is possible to automate customer support and management operations and significantly improve work efficiency.
[0006] A "user" is an individual or group that operates and utilizes this system.
[0007] A "terminal" refers to a device such as a computer or smartphone that is operated by a user.
[0008] A "server" is a central processing unit that processes data related to inquiries and management tasks and generates responses.
[0009] An "inquiry" refers to a question or request that a user sends to a system via their device.
[0010] "Natural language processing technology" is a technology that enables computers to understand and analyze human natural language.
[0011] "Analysis" refers to the process of understanding the content of an inquiry received and extracting appropriate information based on that understanding.
[0012] "Information acquisition" refers to the act of a server obtaining relevant data from a database or external system based on the analysis results.
[0013] "Response" refers to a reply message to a user's inquiry, formed based on the information obtained.
[0014] "Schedule management" refers to a function that helps users organize and efficiently manage their appointments and tasks.
[0015] "Administrative tasks" refer to a part of daily operations, including tasks such as scheduling appointments, creating invoices, and data entry. [Brief explanation of the drawing]
[0016] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12]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 Embodiment 2 when combined with an emotion engine. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when combined with an emotion engine.
Mode for Carrying Out the Invention
[0017] 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.
[0018] First, the terms used in the following description will be explained.
[0019] In the following embodiments, a processor with a reference numeral (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0020] In the following embodiments, a RAM (Random Access Memory) with a reference numeral is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0021] 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.
[0022] 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).
[0023] 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."
[0024] [First Embodiment]
[0025] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0026] 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.
[0027] 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).
[0028] 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.
[0029] 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.
[0030] 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.
[0031] 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.
[0032] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0033] 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.
[0034] 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.
[0035] 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.
[0036] 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".
[0037] This invention begins with a user entering an inquiry and sending it to a server using a terminal. The system aims to automatically process user inquiries and generate quick and appropriate responses. It also aims to streamline administrative tasks.
[0038] Program Processing Overview
[0039] Intelligent customer support
[0040] 1. The user enters the inquiry:
[0041] The user enters their inquiry using a device (such as a smartphone or computer). For example, they might enter, "I would like to know the delivery status of order number 12345."
[0042] 2. The device sends the query to the server:
[0043] The device sends data containing the inquiry details and user information to the server. This data is sent to the server in the form of an API request or similar.
[0044] 3. The server parses the query:
[0045] The query content is analyzed using natural language processing technology running on the server. This analysis extracts the main elements of the query (e.g., order number).
[0046] 4. The server retrieves the information:
[0047] Based on the analysis results, the server retrieves the necessary information from databases and other information sources. For example, it retrieves the current status of order number 12345 from the order management database.
[0048] 5. The server generates a response:
[0049] Based on the acquired information, the server generates a message to send back to the user. For example, it might generate a response such as, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0050] 6. The device receives a response and displays it to the user:
[0051] The terminal receives the response sent from the server and displays it on the screen in a format that the user can see.
[0052] Automation of administrative tasks
[0053] 1. The user enters the administrative task:
[0054] The user enters management tasks (e.g., scheduling appointments) through their device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023."
[0055] 2. The device sends task information to the server:
[0056] The device sends task details to the server in the form of an API request. The data sent includes the date and time and the task details.
[0057] 3. The server processes the task:
[0058] The server analyzes the received task details and registers them based on the schedule. For example, it might add a meeting to the user's calendar system.
[0059] 4. The server generates a confirmation message:
[0060] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[0061] 5. The device receives a confirmation message and displays it to the user:
[0062] The terminal receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0063] Specific example
[0064] For example, if a user enters the inquiry "I want to know the delivery status of order number 12345," the device sends this inquiry to the server. The server uses natural language processing to extract order number 12345 and retrieves its delivery information from the database. Based on the retrieved information, it generates a response such as "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023," and sends it to the device. The device receives this response and displays it to the user.
[0065] Additionally, if the user enters "Schedule a meeting for 3 PM on October 20, 2023," the device sends this information to the server. The server adds this task to the schedule and generates and sends a confirmation message to the device stating "Meeting successfully scheduled." The device then displays this confirmation message to the user.
[0066] Thus, the system of the present invention reduces the burden on users and improves operational efficiency by automating inquiry handling and management tasks.
[0067] The following describes the processing flow.
[0068] Intelligent customer support
[0069] Detailed flow of inquiry processing
[0070] Step 1:
[0071] The user enters their inquiry into the input field on the device and clicks the submit button.
[0072] Step 2:
[0073] The terminal converts this input into a data format and sends it to the server as an API request along with the user ID.
[0074] Step 3:
[0075] The server analyzes the received data and uses natural language processing technology to analyze the received inquiry content as text. For example, if an inquiry is sent stating "I want to know the delivery status of order number 12345," the server will extract the keywords "order number 12345" and "delivery status."
[0076] Step 4:
[0077] The server accesses the database and searches for relevant information based on the extracted keywords. For example, it retrieves the current status of order number 12345 from the order management database.
[0078] Step 5:
[0079] Based on the information obtained by the server, it generates an appropriate response. For example, it might generate a response such as, "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023."
[0080] Step 6:
[0081] The server generates a response message which is then sent back to the terminal as an API response.
[0082] Step 7:
[0083] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[0084] Automation of administrative tasks
[0085] Detailed flow of the scheduling process
[0086] Step 1:
[0087] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[0088] Step 2:
[0089] The terminal converts the entered task information into a data format and sends it to the server as an API request along with the user ID.
[0090] Step 3:
[0091] The server analyzes the received task information and verifies the date, time, and content. For example, if information such as "A meeting is scheduled for 3 PM on October 20, 2023" is sent, the server extracts the date, time, and task details.
[0092] Step 4:
[0093] The server accesses the database to check if there are any existing schedule conflicts at the specified date and time. For example, it checks if there are any other appointments at that time.
[0094] Step 5:
[0095] After confirming that there are no duplicates on the server, the extracted tasks are registered in the schedule database. For example, information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00" is saved.
[0096] Step 6:
[0097] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[0098] Step 7:
[0099] The server generates a confirmation message and sends it to the terminal as an API response.
[0100] Step 8:
[0101] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0102] These specific processing steps allow users to easily submit inquiries, receive appropriate responses, and manage their schedules efficiently.
[0103] (Example 1)
[0104] 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."
[0105] Existing response processing systems lack the ability to provide timely and appropriate responses to user inquiries. Furthermore, the lack of automation in administrative tasks is contributing to decreased operational efficiency.
[0106] 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.
[0107] In this invention, the server includes means for a user to input an inquiry via a communication device, means for the communication device to transmit the inquiry content to an information processing device, means for the information processing device to analyze the inquiry content, means for the information processing device to acquire information based on the analysis results, means for the information processing device to generate a response based on the acquired information, and means for the communication device to display the response from the information processing device to the user. As a result, the user can receive a quick and appropriate response, and an improvement in work efficiency can be expected.
[0108] A "user" refers to anyone who utilizes the response processing system, and is the entity that inputs inquiries and management tasks.
[0109] "Communication equipment" refers to terminal devices used by users, and includes electronic devices such as smartphones, computers, and tablets.
[0110] An "inquiry" refers to a question or request that a user sends via a communication device to obtain information.
[0111] An "information processing device" refers to a server or cloud computing infrastructure that analyzes user inquiries and generates responses.
[0112] "Natural language processing technology" refers to the techniques used to understand, analyze, and generate human language, and is also known as NLP (Natural Language Processing).
[0113] "Analysis" refers to the process by which an information processing device understands the content of a user's inquiry and extracts the necessary information.
[0114] "Acquisition" refers to the act of an information processing device collecting necessary information from databases and other information sources based on the analysis results.
[0115] "Response" refers to the reply to the user generated based on the information analyzed and acquired by the information processing device.
[0116] "Administrative tasks" refer to daily business operations such as setting schedules and managing tasks.
[0117] "Schedule information" refers to information related to time management, including the user's appointments and tasks.
[0118] An "API request" refers to a standardized request format for exchanging data between communication devices and information processing devices.
[0119] This invention begins with a user inputting an inquiry via a communication device and transmitting it to an information processing device. Specifically, the user inputs the inquiry using a communication device such as a smartphone or computer. The inputted inquiry is then transmitted to the information processing device by the communication device. Here, the communication device transmits the data using an API request format.
[0120] The information processing device (server) analyzes the received query content using natural language processing (NLP) techniques. Examples of NLP techniques include spaCy, BERT, and GPT. The server extracts key elements from the query and retrieves relevant information based on the analysis results. This retrieved information is obtained from database systems (such as MySQL® or PostgreSQL).
[0121] The information processing device generates a response message to the user based on the analysis results and acquired information. A generative AI model is used to generate the response message. For example, OpenAI's GPT-3 is a typical example.
[0122] The generated response message is sent back to the communication device in the form of an API response. The communication device displays the received response message to the user. This allows the user to quickly obtain an appropriate answer to their inquiry.
[0123] As a concrete example, consider a case where a user enters the inquiry, "I want to know the delivery status of order number 12345." The communication device sends this inquiry to the information processing device, and the server uses natural language processing technology to extract "order number 12345." Next, the server retrieves the delivery information for "order number 12345" from the database and generates a response: "Order 12345 is currently being shipped, and the estimated arrival date is October 15, 2023." This response is sent to the communication device and displayed to the user.
[0124] This system also includes the automation of administrative tasks. For example, if a user enters "Schedule a meeting for 3 PM on October 20, 2023," the communication device sends this task information to the server, and the server adds the task to the user's schedule. Specifically, it registers the schedule using the Google® Calendar API, etc. The server generates a confirmation message, "The meeting has been successfully scheduled," and displays it to the user via the communication device.
[0125] This system allows users to receive quick and appropriate responses and automates administrative tasks. This is expected to improve operational efficiency. In this way, the invention's benefits are maximized.
[0126] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0127] Step 1:
[0128] The user enters their inquiry.
[0129] Users enter their inquiries in text format using communication devices such as smartphones or computers. For example, they might enter, "I would like to know the delivery status of order number 12345." This input data is then processed by the communication device in the next step.
[0130] Step 2:
[0131] The terminal sends the query to the server.
[0132] The communication device converts the user's input into an API request format. Specifically, it uses the HTTP POST method to send JSON data containing the inquiry content and user information to the information processing device (server). The input data consists of the inquiry text and user information, and the output is the transmission of the request to the server.
[0133] Step 3:
[0134] The server analyzes the query.
[0135] The information processing device analyzes the received API request. Specifically, it analyzes the query text using natural language processing techniques (e.g., spaCy, BERT, GPT) and extracts key elements (e.g., order number). The input data is the query text, and the output is the key elements of the analysis result (such as the order number).
[0136] Step 4:
[0137] The server retrieves the information.
[0138] The information processing device retrieves necessary information from databases and other information sources based on the analysis results. For example, it might execute a query against an order management database (e.g., MySQL, PostgreSQL) to retrieve delivery information for "order number 12345". The input data is the analysis results, and the output is the retrieved information (such as delivery status).
[0139] Step 5:
[0140] The server generates a response.
[0141] The information processing device generates an appropriate response message based on the acquired information. Specifically, it uses a generation AI model (e.g., OpenAI's GPT-3) to create a response in a natural style. For example, the response might be, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the acquired information, and the output is the generated response message.
[0142] Step 6:
[0143] The terminal receives a response and displays it to the user.
[0144] The communication device receives a response message sent from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the response message from the server, and the output is the message displayed on the screen.
[0145] Step 7:
[0146] The user enters the management task.
[0147] The user enters management tasks in text format using a communication device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023." This input data is then processed by the communication device in the next step.
[0148] Step 8:
[0149] The terminal sends task information to the server.
[0150] The communication device converts the task content entered by the user into an API request format. It uses the HTTP POST method to send JSON data containing the task content to the information processing device (server). The input data is the task text, and the output is the request sent to the server.
[0151] Step 9:
[0152] The server processes the task.
[0153] The information processing device analyzes the received task details and registers them in the user's scheduling system. For example, it uses the Google Calendar API to add a meeting to the schedule. The input data is the task details, and the output is the task registered in the schedule.
[0154] Step 10:
[0155] The server generates a confirmation message.
[0156] The information processing device generates a confirmation message to notify that a task has been successfully registered. It may also use a generation AI model to create the message in a natural style. For example, a confirmation message such as "The meeting has been successfully scheduled." might be generated. The input data is the registered task information, and the output is the generated confirmation message.
[0157] Step 11:
[0158] The device receives a confirmation message and displays it to the user.
[0159] The communication device receives a confirmation message from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "The meeting has been successfully scheduled." The input data is the confirmation message from the server, and the output is the message displayed on the screen.
[0160] (Application Example 1)
[0161] 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."
[0162] Traditional customer support systems can generate quick and appropriate responses to user inquiries, but they lack the ability to provide optimal suggestions based on the user's usage history and preferences. As a result, the user experience is limited, and the quality of information provided does not improve. In addition, in content distribution services, users may not receive recommendations based on their viewing history and preferences, which can lead to decreased service satisfaction.
[0163] 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.
[0164] In this invention, the server includes means for the user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content to the server, and means for the server to analyze the inquiry content. This makes it possible to provide a system that includes means for the server to refer to the user's usage history data to make optimal suggestions, and means for using a generative AI model to generate recommendation information based on the inquiry content. This improves the user experience and increases user satisfaction. Furthermore, in content distribution services, it is possible to provide recommendations optimized for individual users, thereby increasing the competitiveness of the service.
[0165] An "inquiry" refers to a question or request that a user enters through their device and sends to a server.
[0166] "Device" refers to a device used by a user, such as a smartphone, computer, smart glasses, or head-mounted display.
[0167] A "server" refers to a computer system used to analyze queries, retrieve information, and generate responses.
[0168] "Analysis" refers to the process that a server uses natural language processing techniques to understand the content of a query.
[0169] "Usage history data" refers to data that includes records of actions and viewings that a user has performed in the past.
[0170] A "response" refers to a reply message generated by the server based on the information it has acquired and provided to the user.
[0171] "Suggestion" refers to the act of a server recommending optimal information or content by referring to the user's usage history data.
[0172] A "generative AI model" refers to an artificial intelligence model that performs natural language processing and data analysis to automatically generate appropriate responses and suggestions.
[0173] "Recommended information" refers to specific content or information provided by the server based on the user's inquiries and usage history.
[0174] A "content distribution service" refers to a service that provides users with digital content such as videos, music, and articles.
[0175] The system for implementing this invention involves a user inputting an inquiry through a terminal, which is then transmitted from the terminal to a server. The server analyzes the inquiry and retrieves information based on the analysis results. It also references the user's usage history data to provide optimal suggestions. Furthermore, it uses a generative AI model to generate recommended information based on the inquiry.
[0176] Hardware and software to use
[0177] Hardware: Smartphones, smart glasses, head-mounted displays, or computers, etc.
[0178] software:
[0179] 1. Natural Language Processing Techniques:
[0180] The server analyzes user inquiries using natural language processing techniques. For this purpose, the Google NLP API and the transformers library are used.
[0181] 2. Data analysis algorithms:
[0182] The server uses data analysis algorithms such as Collaborative Filtering to analyze user usage history data and generate optimal suggestions.
[0183] 3. Generative AI Models:
[0184] The server uses generative AI models such as BERT and GPT (Generative Pre-trained Transformer) to generate recommendation information based on the query content.
[0185] Program Processing Overview
[0186] 1. User input:
[0187] The user enters a question into their device, such as "What are today's recommended movies?" The question can be entered via keyboard or voice input.
[0188] 2. API Request:
[0189] The device sends data to the server, including user information along with the query details. This request is structured in a format such as JSON before being sent.
[0190] 3. Natural Language Processing:
[0191] The server analyzes the query using the Google NLP API and the transformers library, extracting key keywords. This step helps understand the intent behind the query.
[0192] 4. Data acquisition:
[0193] The server identifies the most suitable content (e.g., movies or TV shows) by referencing user usage history data and rating databases. Algorithms such as collaborative filtering are used to select content that best matches the user's preferences.
[0194] 5. Response generation:
[0195] Based on the information it retrieves, the server uses a generative AI model (e.g., GPT) to generate an appropriate response to the query. For example, it might generate a message like, "We recommend the movie 'Inception' for you. This movie is a good match for your viewing history."
[0196] 6. Response display:
[0197] The response sent from the server is received by the terminal and displayed to the user. The response message is displayed on the screen of a smartphone, smart glasses, or head-mounted display.
[0198] Specific example
[0199] When a user types "What are today's recommended movies?" into their smartphone, the server analyzes the query and selects the most suitable movie from the user's viewing history database. Then, using a generative AI model, it generates a response such as "The movie we recommend for you is 'Inception'," and displays this response on the smartphone screen.
[0200] Example of a prompt
[0201] "What's your recommended movie for today?"
[0202] "Could you recommend some movies you've seen recently?"
[0203] "Tell me about movies related to the genre I'm currently watching."
[0204] Thus, this invention not only responds quickly to user inquiries but also improves the user experience by recommending optimal content based on the user's usage history. Furthermore, by using a generative AI model, the quality of responses to inquiries can also be improved.
[0205] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0206] Step 1:
[0207] User input
[0208] The user enters their inquiry into the terminal. Input methods include text input and voice input.
[0209] Input: The user types "What are today's recommended movies?" into their smartphone.
[0210] Operation: The terminal captures the content of this inquiry and converts it into a data format.
[0211] Step 2:
[0212] Sending an API request
[0213] The terminal sends the user's inquiry and user information to the server.
[0214] Input: User inquiry details and user information (e.g., User ID, past viewing history).
[0215] Data processing: Convert to structured data such as JSON format.
[0216] Output: API request sent to the server.
[0217] Operation: The terminal bundles the inquiry details and user information and sends an API request to the server.
[0218] Step 3:
[0219] Natural Language Processing
[0220] The server analyzes the content of the received query using natural language processing technology.
[0221] Input: The content of the user's inquiry sent from the terminal.
[0222] Data processing: Keyword extraction using the Google NLP API and the transformers library.
[0223] Output: Analyzed keywords (e.g., "recommended movies").
[0224] Operation: The server analyzes the query content using natural language processing technology and extracts key keywords.
[0225] Step 4:
[0226] Data acquisition
[0227] The server selects the most suitable content by referring to usage history data.
[0228] Input: Analyzed keywords and user information (e.g., viewing history).
[0229] Data processing: Recommends optimal content using algorithms such as Collaborative Filtering.
[0230] Output: Recommended content (e.g., movie title "Inception").
[0231] Operation: The server refers to the user's viewing history database and selects appropriate recommended content.
[0232] Step 5:
[0233] Response generation
[0234] The server uses a generated AI model to produce a response to the query.
[0235] Input: Recommended content and user inquiries.
[0236] Data processing: Generate response messages based on a generative AI model (e.g., GPT).
[0237] Output: Response message (e.g., "The movie I recommend for you is 'Inception'").
[0238] Operation: The server uses a generative AI model to create an appropriate response to the query.
[0239] Step 6:
[0240] Response display
[0241] The terminal receives a response message from the server and displays it to the user.
[0242] Input: The response message sent from the server.
[0243] Output: The response message displayed to the user.
[0244] Operation: The device displays the received response message to the user, for example, on the screen of a smartphone.
[0245] The above outlines the specific processing steps involved in responding to a user inquiry, from the server recommending the most suitable content to displaying the response.
[0246] 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.
[0247] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion engine to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[0248] Program Processing Overview
[0249] Integrating an emotion engine into intelligent customer support
[0250] 1. The user enters the inquiry:
[0251] The user enters their inquiry into the input field on the device and clicks the submit button. For example, they might enter, "I would like to know the delivery status of order number 12345."
[0252] 2. The device sends the inquiry and the user's sentiment to the sentiment engine:
[0253] The device sends the inquiry content and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, the user's input speed, and word choice.
[0254] 3. The emotion engine analyzes the user's emotions:
[0255] The emotion engine analyzes the user's emotions based on the data it receives. For example, it determines whether the user is anxious, angry, or calm.
[0256] 4. The emotion engine sends the analysis results to the server:
[0257] The emotion engine analyzes the emotion data and sends the inquiry details to the server. For example, it sends data such as "Order number 12345" and "User is angry."
[0258] 5. The server analyzes the query content and retrieves information based on sentiment data:
[0259] The server analyzes the received query and retrieves the necessary information from the database. It also adjusts the method and priority of information retrieval based on the user's emotional state.
[0260] 6. The server generates a response:
[0261] Based on the acquired information and sentiment data, the server generates an appropriate response. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0262] 7. The terminal receives a response from the server and displays it to the user:
[0263] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[0264] Integrating an emotion engine into the automation of administrative tasks
[0265] 1. The user enters the administrative task:
[0266] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[0267] 2. The device sends task information and sentiment data to the sentiment engine:
[0268] The terminal sends the entered task details and user sentiment data to the sentiment engine.
[0269] 3. The emotion engine analyzes the user's emotions:
[0270] The emotion engine analyzes the user's emotions based on the data it receives.
[0271] 4. The emotion engine sends the analysis results to the server:
[0272] The emotion engine sends task information, including analysis results, to the server.
[0273] 5. The server analyzes the task and registers it for scheduling based on sentiment data:
[0274] The server analyzes the received task details and adds them to the schedule, taking into account the results and sentiment data.
[0275] 6. The server generates a confirmation message:
[0276] The server generates a confirmation message tailored to the user's emotional state to notify them that the task has been successfully registered.
[0277] 7. The device receives a confirmation message and displays it to the user:
[0278] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0279] Specific example
[0280] For example, if a user enters an inquiry asking for the delivery status of order number 12345 and is feeling angry, the terminal sends this data to the emotion engine, which analyzes that the user is angry. The server processes the inquiry along with the "angry" emotion data and generates a response, sending to the user, saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0281] Furthermore, if a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotional data to the emotion engine, which analyzes the user's anxiety. Based on the emotional data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[0282] In this way, the system of the present invention can significantly improve the user experience by analyzing the user's emotions in inquiry response and management operations and generating appropriate responses.
[0283] The following describes the processing flow.
[0284] Integration of the Emotion Engine in Intelligent Customer Support
[0285] Detailed Flow of Inquiry Processing
[0286] Step 1:
[0287] The user enters the inquiry content in the input field of the terminal and clicks the send button.
[0288] Step 2:
[0289] The terminal sends this input content and the user's emotion data to the emotion engine. The emotion data is collected from text analysis, keyboard input speed, touch screen tap intensity, etc.
[0290] Step 3:
[0291] Based on the data received by the emotion engine, the user's emotion is analyzed. For example, it is estimated whether the user is angry, anxious, or calm from the text context and input style.
[0292] Step 4:
[0293] The emotion engine sends the analysis result to the server. For example, data such as "Order number 12345" "Emotion: Anger" is sent.
[0294] Step 5:
[0295] The server analyzes the received inquiry content and extracts key information such as "Delivery status of order number 12345" using natural language processing technology.
[0296] Step 6:
[0297] The server accesses the database and retrieves the current status of order number 12345 from the order management database.
[0298] Step 7:
[0299] Based on the information obtained by the server, a response message corresponding to the sentiment data is generated. For example, if the user is angry, a response is generated in the form of "We apologize for the inconvenience. Order number 12345 is currently in transit and the expected arrival date is October 15, 2023."
[0300] Step 8:
[0301] The server sends the generated response message to the terminal as an API response.
[0302] Step 9:
[0303] The terminal receives the response from the server and displays it on the screen in a form that can be confirmed by the user.
[0304] Integration of the sentiment engine in automated administrative tasks
[0305] Detailed flow of the scheduling process
[0306] Step 1:
[0307] The user enters a new task (e.g., meeting) in the scheduling interface of the terminal, specifies the date and time, and clicks the registration button.
[0308] Step 2:
[0309] The terminal sends the entered task information and the user's sentiment data to the sentiment engine. The sentiment data is extracted from the context at the time of input, the input speed, the diction, etc.
[0310] Step 3:
[0311] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can analyze whether the user is anxious based on their input style and speed.
[0312] Step 4:
[0313] The emotion engine sends the analysis results to the server. For example, it sends data such as "October 20, 2023, 3 PM", "Meeting", and "Emotion: Anxiety".
[0314] Step 5:
[0315] The server analyzes the received task details and checks for duplicates and other issues using the calendar system. It then checks for any problems by comparing them with existing schedules.
[0316] Step 6:
[0317] The server registers the task in the scheduling database. For example, it saves information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00."
[0318] Step 7:
[0319] To notify the user that the task has been successfully registered, the server generates a confirmation message tailored to the user's emotional state. For example, if the user is anxious, it might generate a message such as, "Your meeting has been successfully scheduled. Please rest assured."
[0320] Step 8:
[0321] The server generates a confirmation message and sends it to the terminal as an API response.
[0322] Step 9:
[0323] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0324] These specific processing steps allow users to submit inquiries, receive appropriate responses tailored to their emotions, and manage their schedules efficiently.
[0325] (Example 2)
[0326] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0327] Traditional customer support systems have a problem in that they do not generate responses that take into account the user's emotions, making it difficult to improve user satisfaction. In particular, when users are experiencing emotions such as anger or frustration, appropriate responses cannot be provided, and the effectiveness of problem solving is reduced. Furthermore, in schedule management, there is a lack of appropriate notifications and responses that respond to the user's emotions, which poses a challenge to improving work efficiency and preventing errors.
[0328] 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.
[0329] In this invention, the server includes means for a user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content and the user's emotional data to an emotion analysis device, means for the emotion analysis device to analyze the inquiry content and emotional data, means for the emotion analysis device to transmit the analysis results to the server, means for the server to acquire information based on the analysis results, means for the server to generate a response based on the acquired information and the analysis results, and means for the terminal to display the response from the server to the user.
[0330] This enables the generation of personalized responses that take user emotions into account, thereby improving user satisfaction. Furthermore, appropriate notifications tailored to emotions are provided during schedule management, leading to improved work efficiency and reduced errors.
[0331] A "user" is an individual or organization that uses the system to make inquiries or input tasks.
[0332] A "terminal" is a device operated by the user, which inputs inquiry details and task information, and communicates with the server and sentiment analysis device.
[0333] An "emotion analysis device" is a software module or hardware device that analyzes emotions based on user input data.
[0334] A "server" is a computer system that retrieves information based on analysis results, generates appropriate responses, and sends those responses to terminals.
[0335] "Inquiry content" refers to text data related to questions and requests entered by the user through their device.
[0336] "Emotional data" refers to data that indicates the emotional state of a user, extracted from their input actions, word choice, and context.
[0337] "Analysis results" refer to data generated by the emotion analysis device, including the analysis results of the user's emotional state and inquiry content.
[0338] "Information" refers to data related to user queries that the server retrieves from databases and other information sources.
[0339] A "response" is a message generated by the server in response to a user's inquiry, and it is a document created with the user's emotional state in mind.
[0340] "Natural language processing technology" refers to the technology used to analyze, understand, and generate human language using computer systems.
[0341] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion analysis device (hereinafter referred to as the emotion engine) to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[0342] Hardware and software to be used
[0343] The following hardware and software are required to implement this system:
[0344] Device: The device used by the user (PC, smartphone, tablet, etc.)
[0345] Server: A computer system that performs data analysis and response generation (e.g., Linux® server, Windows Server).
[0346] Emotion engine: A software module that analyzes user emotions (e.g., IBM Watson® Tone Analyzer, Microsoft® Azure® Text Analytics)
[0347] Overview of Program Processing
[0348] Integrating an emotion engine into intelligent customer support
[0349] When a user enters an inquiry into the terminal's input field and clicks the submit button, the terminal sends the inquiry and the user's sentiment data to the sentiment engine. The sentiment engine analyzes the user's sentiment based on the received data and sends the results to the server. The server analyzes the received inquiry and sentiment data and retrieves the necessary information from the database. Then, based on the retrieved information and analysis results, it generates an appropriate response and sends it to the terminal. The terminal receives the response from the server and displays it to the user.
[0350] Software technologies used
[0351] The emotion engine uses natural language processing technology for analysis. This allows it to extract emotion data from the user's inquiry content, input speed, and word choice. On the server side, it retrieves information from the database based on the received emotion data and inquiry content, and generates a customized response using a template engine.
[0352] Specific example
[0353] Example 1: Customer Support
[0354] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" and is feeling angry, the terminal sends this data to the emotion engine. The emotion engine analyzes whether the user is angry and sends the results to the server. The server processes the inquiry along with the emotion data "angry" and generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[0355] Specific example 2: Management tasks
[0356] If a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotion data to the emotion engine. The emotion engine analyzes the user's anxiety and sends the results to the server. Based on the emotion data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[0357] Example of a prompt
[0358] Customer Support: "I would like to know the delivery status of order number 12345. Please generate an appropriate response for when the user is angry."
[0359] Administrative Task: "A meeting is scheduled for 3 PM on October 20, 2023. Please create a confirmation message for users who are feeling anxious."
[0360] This system can significantly improve the user experience by analyzing user emotions during inquiry handling and management tasks and generating appropriate responses.
[0361] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0362] Step 1:
[0363] The user enters their inquiry.
[0364] Input: The user enters their inquiry into the input field on the terminal and clicks the submit button. For example, "I would like to know the delivery status of order number 12345."
[0365] Action: Characters appear in the terminal's input field, and a click event occurs on the send button.
[0366] Step 2:
[0367] The terminal sends the inquiry details and user sentiment data to the sentiment analysis device.
[0368] Input: User inquiry content, input speed, and characteristic information such as language use.
[0369] Data processing: Generate sentiment data and integrate it with the query content.
[0370] Output: Integrated data of inquiry content and sentiment data.
[0371] Operation: The device sends data to the sentiment analysis device via an API request.
[0372] Step 3:
[0373] An emotion analysis device analyzes the user's emotions.
[0374] Input: Inquiry content and sentiment data sent from the device.
[0375] Data processing: Using natural language processing (NLP) techniques, we identify emotions from context and word choice and generate analysis scores.
[0376] Output: JSON data containing the user's emotional state (e.g., "Angry" 80%) as an analysis result.
[0377] Operation: The analysis module is executed, and the emotion score is calculated and the analysis results are generated.
[0378] Step 4:
[0379] The emotion analysis device sends the analysis results to the server.
[0380] Input: JSON data of analysis results, including the user's emotional state.
[0381] Output: Analysis result data sent to the server.
[0382] Operation: The analysis results are sent to the server via an HTTP POST request.
[0383] Step 5:
[0384] The server analyzes the query and retrieves the information.
[0385] Input: Analysis results and inquiry content sent from the emotion analysis device.
[0386] Data processing: Based on the analysis results and query content, SQL queries are issued to the database to search for and retrieve the necessary information.
[0387] Output: Information retrieved from the database.
[0388] Operation: Establishes a database connection and executes SQL queries to retrieve the necessary data.
[0389] Step 6:
[0390] The server generates a response.
[0391] Input: Information retrieved from the database and sentiment analysis results.
[0392] Data processing: Use a template engine to generate response sentences that correspond to emotional states.
[0393] Output: The response message to send to the user.
[0394] Operation: The template engine is executed and a response message is generated.
[0395] Step 7:
[0396] The terminal receives a response from the server and displays it to the user.
[0397] Input: The response message sent from the server.
[0398] Output: The response message displayed on the screen.
[0399] Operation: The terminal receives data from the server, and a response message is displayed on the screen.
[0400] (Application Example 2)
[0401] 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".
[0402] In today's online shopping and service environment, customers demand fast and effective customer support. However, traditional systems often fail to provide personalized responses that take user emotions into account, leading to decreased customer satisfaction. Furthermore, insufficient sentiment analysis makes it difficult to respond to users' true needs and emotions. This hinders improvements in the customer experience.
[0403] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the inquiry content and sentiment data, means for acquiring information based on the analysis results, and means for generating a response based on the acquired information and sentiment data. This enables the generation of a response that matches the user's emotions, resulting in personalized, high-quality customer support.
[0404] A "terminal" is an electronic device that a user operates and uses to input inquiries.
[0405] "Emotional data" refers to data that indicates a user's emotional state, extracted from factors such as the speed at which they input information and the language they use when submitting an inquiry.
[0406] An "emotion engine" is an analytical system that analyzes user inquiries and emotional data to determine their emotional state.
[0407] A "server" is a central processing unit that analyzes received inquiries and sentiment data to generate appropriate responses.
[0408] "Natural language processing technology" is a language analysis technology that analyzes user inquiries and generates appropriate responses.
[0409] "Personalization" refers to individually adjusting responses based on the user's emotional state to provide the most appropriate service.
[0410] This invention begins with the user entering their inquiry into a terminal and sending that data to a server. The server is a system that analyzes the user's inquiry and sentiment data using a tuned sentiment engine and natural language processing technology, and generates a personalized response based on the analysis results. This enables higher quality and more personalized customer support.
[0411] Hardware and software configuration
[0412] Terminal:
[0413] A terminal is an electronic device used by the user to enter inquiries, and includes smartphones, tablets, and personal computers. The user enters the inquiry details into the input field on the terminal and clicks the submit button.
[0414] Emotional engine:
[0415] The emotion engine is a system that analyzes emotions from input text data, using a combination of natural language processing (NLP) models and emotion analysis APIs (such as Clarabridge or IBM Watson).
[0416] server:
[0417] A server is a central processing unit that receives and analyzes inquiry content and sentiment data, and generates appropriate responses. Cloud services such as AWS®, Google Cloud Platform, and Microsoft Azure can be used.
[0418] Data processing and calculation
[0419] When a user enters an inquiry, the terminal sends the inquiry and emotion data to the emotion engine. The emotion engine uses natural language processing technology to analyze the input text and determine the user's emotion. This analysis result and the inquiry are then sent back to the server. On the server side, a generative AI model (e.g., GPT-4®) is used to generate a response that takes the emotional state into account. The generated response is then sent back to the terminal and displayed to the user.
[0420] Specific examples and prompt statements
[0421] Specific example:
[0422] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" while expressing anger, the terminal sends this data to the emotion engine. The emotion engine analyzes the emotional state of "angry" and sends the result to the server. The server generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[0423] Example of a prompt:
[0424] "I want to know the delivery status of order number 12345. Please tell me now!"
[0425] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0426] Step 1:
[0427] The user enters their inquiry into the terminal and clicks the send button. At this time, the user's input is text data such as "I want to know the delivery status of order number 12345. Tell me now!" The input data also includes input speed and word choice, which are used as sentiment data.
[0428] Step 2:
[0429] The device sends the inquiry content and sentiment data to the sentiment engine. The device's program passes the text data from the input fields, the user's input speed, and their word choice to the sentiment engine, generating a set of inquiry content and sentiment data. The input data is sent in JSON format or similar.
[0430] Step 3:
[0431] The emotion engine analyzes the received data to determine the user's emotions. The emotion engine uses natural language processing models (e.g., BERT or GPT-4) to analyze text data and generate emotion labels such as "angry," "anxious," and "calm." The input for this step is the query and emotion data, and the output is the resulting emotion labels.
[0432] Step 4:
[0433] The emotion engine sends the analysis results to the server. These results include the query content and an emotion label (e.g., "angry"). The input is the analysis results, and the output is the dataset sent to the server. This is also sent in JSON format.
[0434] Step 5:
[0435] The server receives the query content and sentiment label and retrieves the necessary information. The server accesses the database and retrieves information corresponding to the query (for example, "Delivery status of order number 12345"). At this time, the server adjusts the method and priority of information retrieval, taking the sentiment label into consideration. The input is the query content and sentiment label, and the output is the retrieved information data.
[0436] Step 6:
[0437] The server generates a response based on the information and sentiment data it has acquired. The server uses a generative AI model (e.g., GPT-4) to generate a personalized response that takes into account the acquired information and sentiment labels. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input is the acquired information and sentiment labels, and the output is the generated response.
[0438] Step 7:
[0439] The server generates a response message and sends it to the terminal, which then displays it to the user. The terminal's program receives the response message from the server and displays it on the screen in a user-friendly format, allowing the user to confirm the appropriate response. The input is the generated response message, and the output is what is displayed to the user.
[0440] 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.
[0441] 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.
[0442] 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.
[0443] [Second Embodiment]
[0444] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0445] 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.
[0446] 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).
[0447] 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.
[0448] 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.
[0449] 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).
[0450] 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.
[0451] 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.
[0452] 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.
[0453] 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.
[0454] 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.
[0455] 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".
[0456] This invention begins with a user entering an inquiry and sending it to a server using a terminal. The system aims to automatically process user inquiries and generate quick and appropriate responses. It also aims to streamline administrative tasks.
[0457] Program Processing Overview
[0458] Intelligent customer support
[0459] 1. The user enters the inquiry:
[0460] The user enters their inquiry using a device (such as a smartphone or computer). For example, they might enter, "I would like to know the delivery status of order number 12345."
[0461] 2. The device sends the query to the server:
[0462] The device sends data containing the inquiry details and user information to the server. This data is sent to the server in the form of an API request or similar.
[0463] 3. The server parses the query:
[0464] The query content is analyzed using natural language processing technology running on the server. This analysis extracts the main elements of the query (e.g., order number).
[0465] 4. The server retrieves the information:
[0466] Based on the analysis results, the server retrieves the necessary information from databases and other information sources. For example, it retrieves the current status of order number 12345 from the order management database.
[0467] 5. The server generates a response:
[0468] Based on the acquired information, the server generates a message to send back to the user. For example, it might generate a response such as, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0469] 6. The device receives a response and displays it to the user:
[0470] The terminal receives the response sent from the server and displays it on the screen in a format that the user can see.
[0471] Automation of administrative tasks
[0472] 1. The user enters the administrative task:
[0473] The user enters management tasks (e.g., scheduling appointments) through their device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023."
[0474] 2. The device sends task information to the server:
[0475] The device sends task details to the server in the form of an API request. The data sent includes the date and time and the task details.
[0476] 3. The server processes the task:
[0477] The server analyzes the received task details and registers them based on the schedule. For example, it might add a meeting to the user's calendar system.
[0478] 4. The server generates a confirmation message:
[0479] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[0480] 5. The device receives a confirmation message and displays it to the user:
[0481] The terminal receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0482] Specific example
[0483] For example, if a user enters the inquiry "I want to know the delivery status of order number 12345," the device sends this inquiry to the server. The server uses natural language processing to extract order number 12345 and retrieves its delivery information from the database. Based on the retrieved information, it generates a response such as "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023," and sends it to the device. The device receives this response and displays it to the user.
[0484] Additionally, if the user enters "Schedule a meeting for 3 PM on October 20, 2023," the device sends this information to the server. The server adds this task to the schedule and generates and sends a confirmation message to the device stating "Meeting successfully scheduled." The device then displays this confirmation message to the user.
[0485] Thus, the system of the present invention reduces the burden on users and improves operational efficiency by automating inquiry handling and management tasks.
[0486] The following describes the processing flow.
[0487] Intelligent customer support
[0488] Detailed flow of inquiry processing
[0489] Step 1:
[0490] The user enters their inquiry into the input field on the device and clicks the submit button.
[0491] Step 2:
[0492] The terminal converts this input into a data format and sends it to the server as an API request along with the user ID.
[0493] Step 3:
[0494] The server analyzes the received data and uses natural language processing technology to analyze the received inquiry content as text. For example, if an inquiry is sent stating "I want to know the delivery status of order number 12345," the server will extract the keywords "order number 12345" and "delivery status."
[0495] Step 4:
[0496] The server accesses the database and searches for relevant information based on the extracted keywords. For example, it retrieves the current status of order number 12345 from the order management database.
[0497] Step 5:
[0498] Based on the information obtained by the server, it generates an appropriate response. For example, it might generate a response such as, "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023."
[0499] Step 6:
[0500] The server generates a response message which is then sent back to the terminal as an API response.
[0501] Step 7:
[0502] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[0503] Automation of administrative tasks
[0504] Detailed flow of the scheduling process
[0505] Step 1:
[0506] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[0507] Step 2:
[0508] The terminal converts the entered task information into a data format and sends it to the server as an API request along with the user ID.
[0509] Step 3:
[0510] The server analyzes the received task information and verifies the date, time, and content. For example, if information such as "A meeting is scheduled for 3 PM on October 20, 2023" is sent, the server extracts the date, time, and task details.
[0511] Step 4:
[0512] The server accesses the database to check if there are any existing schedule conflicts at the specified date and time. For example, it checks if there are any other appointments at that time.
[0513] Step 5:
[0514] After confirming that there are no duplicates on the server, the extracted tasks are registered in the schedule database. For example, information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00" is saved.
[0515] Step 6:
[0516] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[0517] Step 7:
[0518] The server generates a confirmation message and sends it to the terminal as an API response.
[0519] Step 8:
[0520] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0521] These specific processing steps allow users to easily submit inquiries, receive appropriate responses, and manage their schedules efficiently.
[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] Existing response processing systems lack the ability to provide timely and appropriate responses to user inquiries. Furthermore, the lack of automation in administrative tasks is contributing to decreased operational efficiency.
[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 a user to input an inquiry via a communication device, means for the communication device to transmit the inquiry content to an information processing device, means for the information processing device to analyze the inquiry content, means for the information processing device to acquire information based on the analysis results, means for the information processing device to generate a response based on the acquired information, and means for the communication device to display the response from the information processing device to the user. As a result, the user can receive a quick and appropriate response, and an improvement in work efficiency can be expected.
[0527] A "user" refers to anyone who utilizes the response processing system, and is the entity that inputs inquiries and management tasks.
[0528] "Communication equipment" refers to terminal devices used by users, and includes electronic devices such as smartphones, computers, and tablets.
[0529] An "inquiry" refers to a question or request that a user sends via a communication device to obtain information.
[0530] An "information processing device" refers to a server or cloud computing infrastructure that analyzes user inquiries and generates responses.
[0531] "Natural language processing technology" refers to the techniques used to understand, analyze, and generate human language, and is also known as NLP (Natural Language Processing).
[0532] "Analysis" refers to the process by which an information processing device understands the content of a user's inquiry and extracts the necessary information.
[0533] "Acquisition" refers to the act of an information processing device collecting necessary information from databases and other information sources based on the analysis results.
[0534] "Response" refers to the reply to the user generated based on the information analyzed and acquired by the information processing device.
[0535] "Administrative tasks" refer to daily business operations such as setting schedules and managing tasks.
[0536] "Schedule information" refers to information related to time management, including the user's appointments and tasks.
[0537] An "API request" refers to a standardized request format for exchanging data between communication devices and information processing devices.
[0538] This invention begins with a user inputting an inquiry via a communication device and transmitting it to an information processing device. Specifically, the user inputs the inquiry using a communication device such as a smartphone or computer. The inputted inquiry is then transmitted to the information processing device by the communication device. Here, the communication device transmits the data using an API request format.
[0539] The information processing device (server) analyzes the received query content using natural language processing (NLP) techniques. Examples of NLP techniques include spaCy, BERT, and GPT. The server extracts key elements from the query and retrieves relevant information based on the analysis results. This retrieved information is obtained, for example, from a database system (such as MySQL or PostgreSQL).
[0540] The information processing device generates a response message to the user based on the analysis results and acquired information. A generative AI model is used to generate the response message. For example, OpenAI's GPT-3 is a typical example.
[0541] The generated response message is sent back to the communication device in the form of an API response. The communication device displays the received response message to the user. This allows the user to quickly obtain an appropriate answer to their inquiry.
[0542] As a concrete example, consider a case where a user enters the inquiry, "I want to know the delivery status of order number 12345." The communication device sends this inquiry to the information processing device, and the server uses natural language processing technology to extract "order number 12345." Next, the server retrieves the delivery information for "order number 12345" from the database and generates a response: "Order 12345 is currently being shipped, and the estimated arrival date is October 15, 2023." This response is sent to the communication device and displayed to the user.
[0543] This system also includes the automation of administrative tasks. For example, if a user enters "Schedule a meeting for 3 PM on October 20, 2023," the communication device sends this task information to the server, and the server adds the task to the user's schedule. Specifically, it registers the schedule using the Google Calendar API, etc. The server generates a confirmation message, "Meeting successfully scheduled," and displays it to the user via the communication device.
[0544] This system allows users to receive quick and appropriate responses and automates administrative tasks. This is expected to improve operational efficiency. In this way, the invention's benefits are maximized.
[0545] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0546] Step 1:
[0547] The user enters their inquiry.
[0548] Users enter their inquiries in text format using communication devices such as smartphones or computers. For example, they might enter, "I would like to know the delivery status of order number 12345." This input data is then processed by the communication device in the next step.
[0549] Step 2:
[0550] The terminal sends the query to the server.
[0551] The communication device converts the user's input into an API request format. Specifically, it uses the HTTP POST method to send JSON data containing the inquiry content and user information to the information processing device (server). The input data consists of the inquiry text and user information, and the output is the transmission of the request to the server.
[0552] Step 3:
[0553] The server analyzes the query.
[0554] The information processing device analyzes the received API request. Specifically, it analyzes the query text using natural language processing techniques (e.g., spaCy, BERT, GPT) and extracts key elements (e.g., order number). The input data is the query text, and the output is the key elements of the analysis result (such as the order number).
[0555] Step 4:
[0556] The server retrieves the information.
[0557] The information processing device retrieves necessary information from databases and other information sources based on the analysis results. For example, it might execute a query against an order management database (e.g., MySQL, PostgreSQL) to retrieve delivery information for "order number 12345". The input data is the analysis results, and the output is the retrieved information (such as delivery status).
[0558] Step 5:
[0559] The server generates a response.
[0560] The information processing device generates an appropriate response message based on the acquired information. Specifically, it uses a generation AI model (e.g., OpenAI's GPT-3) to create a response in a natural style. For example, the response might be, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the acquired information, and the output is the generated response message.
[0561] Step 6:
[0562] The terminal receives a response and displays it to the user.
[0563] The communication device receives a response message sent from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the response message from the server, and the output is the message displayed on the screen.
[0564] Step 7:
[0565] The user enters the management task.
[0566] The user enters management tasks in text format using a communication device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023." This input data is then processed by the communication device in the next step.
[0567] Step 8:
[0568] The terminal sends task information to the server.
[0569] The communication device converts the task content entered by the user into an API request format. It uses the HTTP POST method to send JSON data containing the task content to the information processing device (server). The input data is the task text, and the output is the request sent to the server.
[0570] Step 9:
[0571] The server processes the task.
[0572] The information processing device analyzes the received task details and registers them in the user's scheduling system. For example, it uses the Google Calendar API to add a meeting to the schedule. The input data is the task details, and the output is the task registered in the schedule.
[0573] Step 10:
[0574] The server generates a confirmation message.
[0575] The information processing device generates a confirmation message to notify that a task has been successfully registered. It may also use a generation AI model to create the message in a natural style. For example, a confirmation message such as "The meeting has been successfully scheduled." might be generated. The input data is the registered task information, and the output is the generated confirmation message.
[0576] Step 11:
[0577] The device receives a confirmation message and displays it to the user.
[0578] The communication device receives a confirmation message from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "The meeting has been successfully scheduled." The input data is the confirmation message from the server, and the output is the message displayed on the screen.
[0579] (Application Example 1)
[0580] 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."
[0581] Traditional customer support systems can generate quick and appropriate responses to user inquiries, but they lack the ability to provide optimal suggestions based on the user's usage history and preferences. As a result, the user experience is limited, and the quality of information provided does not improve. In addition, in content distribution services, users may not receive recommendations based on their viewing history and preferences, which can lead to decreased service satisfaction.
[0582] 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.
[0583] In this invention, the server includes means for the user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content to the server, and means for the server to analyze the inquiry content. This makes it possible to provide a system that includes means for the server to refer to the user's usage history data to make optimal suggestions, and means for using a generative AI model to generate recommendation information based on the inquiry content. This improves the user experience and increases user satisfaction. Furthermore, in content distribution services, it is possible to provide recommendations optimized for individual users, thereby increasing the competitiveness of the service.
[0584] An "inquiry" refers to a question or request that a user enters through their device and sends to a server.
[0585] "Device" refers to a device used by a user, such as a smartphone, computer, smart glasses, or head-mounted display.
[0586] A "server" refers to a computer system used to analyze queries, retrieve information, and generate responses.
[0587] "Analysis" refers to the process that a server uses natural language processing techniques to understand the content of a query.
[0588] "Usage history data" refers to data that includes records of actions and viewings that a user has performed in the past.
[0589] A "response" refers to a reply message generated by the server based on the information it has acquired and provided to the user.
[0590] "Suggestion" refers to the act of a server recommending optimal information or content by referring to the user's usage history data.
[0591] A "generative AI model" refers to an artificial intelligence model that performs natural language processing and data analysis to automatically generate appropriate responses and suggestions.
[0592] "Recommended information" refers to specific content or information provided by the server based on the user's inquiries and usage history.
[0593] A "content distribution service" refers to a service that provides users with digital content such as videos, music, and articles.
[0594] The system for implementing this invention involves a user inputting an inquiry through a terminal, which is then transmitted from the terminal to a server. The server analyzes the inquiry and retrieves information based on the analysis results. It also references the user's usage history data to provide optimal suggestions. Furthermore, it uses a generative AI model to generate recommended information based on the inquiry.
[0595] Hardware and software to use
[0596] Hardware: Smartphones, smart glasses, head-mounted displays, or computers, etc.
[0597] software:
[0598] 1. Natural Language Processing Techniques:
[0599] The server analyzes user inquiries using natural language processing techniques. For this purpose, the Google NLP API and the transformers library are used.
[0600] 2. Data analysis algorithms:
[0601] The server uses data analysis algorithms such as Collaborative Filtering to analyze user usage history data and generate optimal suggestions.
[0602] 3. Generative AI Models:
[0603] The server uses generative AI models such as BERT and GPT (Generative Pre-trained Transformer) to generate recommendation information based on the query content.
[0604] Program Processing Overview
[0605] 1. User input:
[0606] The user enters a question into their device, such as "What are today's recommended movies?" The question can be entered via keyboard or voice input.
[0607] 2. API Request:
[0608] The device sends data to the server, including user information along with the query details. This request is structured in a format such as JSON before being sent.
[0609] 3. Natural Language Processing:
[0610] The server analyzes the query using the Google NLP API and the transformers library, extracting key keywords. This step helps understand the intent behind the query.
[0611] 4. Data acquisition:
[0612] The server identifies the most suitable content (e.g., movies or TV shows) by referencing user usage history data and rating databases. Algorithms such as collaborative filtering are used to select content that best matches the user's preferences.
[0613] 5. Response generation:
[0614] Based on the information it retrieves, the server uses a generative AI model (e.g., GPT) to generate an appropriate response to the query. For example, it might generate a message like, "We recommend the movie 'Inception' for you. This movie is a good match for your viewing history."
[0615] 6. Response display:
[0616] The response sent from the server is received by the terminal and displayed to the user. The response message is displayed on the screen of a smartphone, smart glasses, or head-mounted display.
[0617] Specific example
[0618] When a user types "What are today's recommended movies?" into their smartphone, the server analyzes the query and selects the most suitable movie from the user's viewing history database. Then, using a generative AI model, it generates a response such as "The movie we recommend for you is 'Inception'," and displays this response on the smartphone screen.
[0619] Example of a prompt
[0620] "What's your recommended movie for today?"
[0621] "Could you recommend some movies you've seen recently?"
[0622] "Tell me about movies related to the genre I'm currently watching."
[0623] Thus, this invention not only responds quickly to user inquiries but also improves the user experience by recommending optimal content based on the user's usage history. Furthermore, by using a generative AI model, the quality of responses to inquiries can also be improved.
[0624] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0625] Step 1:
[0626] User input
[0627] The user enters their inquiry into the terminal. Input methods include text input and voice input.
[0628] Input: The user types "What are today's recommended movies?" into their smartphone.
[0629] Operation: The terminal captures the content of this inquiry and converts it into a data format.
[0630] Step 2:
[0631] Sending an API request
[0632] The terminal sends the user's inquiry and user information to the server.
[0633] Input: User inquiry details and user information (e.g., User ID, past viewing history).
[0634] Data processing: Convert to structured data such as JSON format.
[0635] Output: API request sent to the server.
[0636] Operation: The terminal bundles the inquiry details and user information and sends an API request to the server.
[0637] Step 3:
[0638] Natural Language Processing
[0639] The server analyzes the content of the received query using natural language processing technology.
[0640] Input: The content of the user's inquiry sent from the terminal.
[0641] Data processing: Keyword extraction using the Google NLP API and the transformers library.
[0642] Output: Analyzed keywords (e.g., "recommended movies").
[0643] Operation: The server analyzes the query content using natural language processing technology and extracts key keywords.
[0644] Step 4:
[0645] Data acquisition
[0646] The server selects the most suitable content by referring to usage history data.
[0647] Input: Analyzed keywords and user information (e.g., viewing history).
[0648] Data processing: Recommends optimal content using algorithms such as Collaborative Filtering.
[0649] Output: Recommended content (e.g., movie title "Inception").
[0650] Operation: The server refers to the user's viewing history database and selects appropriate recommended content.
[0651] Step 5:
[0652] Response generation
[0653] The server uses a generated AI model to produce a response to the query.
[0654] Input: Recommended content and user inquiries.
[0655] Data processing: Generate response messages based on a generative AI model (e.g., GPT).
[0656] Output: Response message (e.g., "The movie I recommend for you is 'Inception'").
[0657] Operation: The server uses a generative AI model to create an appropriate response to the query.
[0658] Step 6:
[0659] Response display
[0660] The terminal receives a response message from the server and displays it to the user.
[0661] Input: The response message sent from the server.
[0662] Output: The response message displayed to the user.
[0663] Operation: The device displays the received response message to the user, for example, on the screen of a smartphone.
[0664] The above outlines the specific processing steps involved in responding to a user inquiry, from the server recommending the most suitable content to displaying the response.
[0665] 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.
[0666] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion engine to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[0667] Program Processing Overview
[0668] Integrating an emotion engine into intelligent customer support
[0669] 1. The user enters the inquiry:
[0670] The user enters their inquiry into the input field on the device and clicks the submit button. For example, they might enter, "I would like to know the delivery status of order number 12345."
[0671] 2. The device sends the inquiry and the user's sentiment to the sentiment engine:
[0672] The device sends the inquiry content and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, the user's input speed, and word choice.
[0673] 3. The emotion engine analyzes the user's emotions:
[0674] The emotion engine analyzes the user's emotions based on the data it receives. For example, it determines whether the user is anxious, angry, or calm.
[0675] 4. The emotion engine sends the analysis results to the server:
[0676] The emotion engine analyzes the emotion data and sends the inquiry details to the server. For example, it sends data such as "Order number 12345" and "User is angry."
[0677] 5. The server analyzes the query content and retrieves information based on sentiment data:
[0678] The server analyzes the received query and retrieves the necessary information from the database. It also adjusts the method and priority of information retrieval based on the user's emotional state.
[0679] 6. The server generates a response:
[0680] Based on the acquired information and sentiment data, the server generates an appropriate response. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0681] 7. The terminal receives a response from the server and displays it to the user:
[0682] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[0683] Integrating an emotion engine into the automation of administrative tasks
[0684] 1. The user enters the administrative task:
[0685] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[0686] 2. The device sends task information and sentiment data to the sentiment engine:
[0687] The terminal sends the entered task details and user sentiment data to the sentiment engine.
[0688] 3. The emotion engine analyzes the user's emotions:
[0689] The emotion engine analyzes the user's emotions based on the data it receives.
[0690] 4. The emotion engine sends the analysis results to the server:
[0691] The emotion engine sends task information, including analysis results, to the server.
[0692] 5. The server analyzes the task and registers it for scheduling based on sentiment data:
[0693] The server analyzes the received task details and adds them to the schedule, taking into account the results and sentiment data.
[0694] 6. The server generates a confirmation message:
[0695] The server generates a confirmation message tailored to the user's emotional state to notify them that the task has been successfully registered.
[0696] 7. The device receives a confirmation message and displays it to the user:
[0697] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0698] Specific example
[0699] For example, if a user enters an inquiry asking for the delivery status of order number 12345 and is feeling angry, the terminal sends this data to the emotion engine, which analyzes that the user is angry. The server processes the inquiry along with the "angry" emotion data and generates a response, sending to the user, saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0700] Furthermore, if a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotional data to the emotion engine, which analyzes the user's anxiety. Based on the emotional data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[0701] Thus, the system of the present invention can significantly improve the user experience by analyzing user emotions in inquiry handling and management tasks and generating appropriate responses.
[0702] The following describes the processing flow.
[0703] Integrating an emotion engine into intelligent customer support
[0704] Detailed flow of inquiry processing
[0705] Step 1:
[0706] The user enters their inquiry into the input field on the device and clicks the submit button.
[0707] Step 2:
[0708] The device sends this input along with the user's sentiment data to the sentiment engine. Sentiment data is collected from text analysis, keyboard input speed, touchscreen tap intensity, and other factors.
[0709] Step 3:
[0710] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can estimate whether the user is angry, anxious, or calm based on the text content and input style.
[0711] Step 4:
[0712] The emotion engine sends the analysis results to the server. For example, it sends data such as "Order number 12345" and "Emotion: Anger".
[0713] Step 5:
[0714] The server analyzes the received inquiry and uses natural language processing technology to extract key information such as "delivery status of order number 12345".
[0715] Step 6:
[0716] The server accesses the database and retrieves the current status of order number 12345 from the order management database.
[0717] Step 7:
[0718] Based on the information acquired by the server, a response message is generated that corresponds to the user's emotional state. For example, if the user is angry, the response might be something like, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0719] Step 8:
[0720] The server sends the generated response message to the terminal as an API response.
[0721] Step 9:
[0722] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[0723] Integrating an emotion engine into the automation of administrative tasks
[0724] Detailed flow of the scheduling process
[0725] Step 1:
[0726] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[0727] Step 2:
[0728] The terminal sends the entered task information and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, input speed, word choice, etc.
[0729] Step 3:
[0730] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can analyze whether the user is anxious based on their input style and speed.
[0731] Step 4:
[0732] The emotion engine sends the analysis results to the server. For example, it sends data such as "October 20, 2023, 3 PM", "Meeting", and "Emotion: Anxiety".
[0733] Step 5:
[0734] The server analyzes the received task details and checks for duplicates and other issues using the calendar system. It then checks for any problems by comparing them with existing schedules.
[0735] Step 6:
[0736] The server registers the task in the scheduling database. For example, it saves information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00."
[0737] Step 7:
[0738] To notify the user that the task has been successfully registered, the server generates a confirmation message tailored to the user's emotional state. For example, if the user is anxious, it might generate a message such as, "Your meeting has been successfully scheduled. Please rest assured."
[0739] Step 8:
[0740] The server generates a confirmation message and sends it to the terminal as an API response.
[0741] Step 9:
[0742] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0743] These specific processing steps allow users to submit inquiries, receive appropriate responses tailored to their emotions, and manage their schedules efficiently.
[0744] (Example 2)
[0745] 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".
[0746] Traditional customer support systems have a problem in that they do not generate responses that take into account the user's emotions, making it difficult to improve user satisfaction. In particular, when users are experiencing emotions such as anger or frustration, appropriate responses cannot be provided, and the effectiveness of problem solving is reduced. Furthermore, in schedule management, there is a lack of appropriate notifications and responses that respond to the user's emotions, which poses a challenge to improving work efficiency and preventing errors.
[0747] 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.
[0748] In this invention, the server includes means for a user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content and the user's emotional data to an emotion analysis device, means for the emotion analysis device to analyze the inquiry content and emotional data, means for the emotion analysis device to transmit the analysis results to the server, means for the server to acquire information based on the analysis results, means for the server to generate a response based on the acquired information and the analysis results, and means for the terminal to display the response from the server to the user.
[0749] This enables the generation of personalized responses that take user emotions into account, thereby improving user satisfaction. Furthermore, appropriate notifications tailored to emotions are provided during schedule management, leading to improved work efficiency and reduced errors.
[0750] A "user" is an individual or organization that uses the system to make inquiries or input tasks.
[0751] A "terminal" is a device operated by the user, which inputs inquiry details and task information, and communicates with the server and sentiment analysis device.
[0752] An "emotion analysis device" is a software module or hardware device that analyzes emotions based on user input data.
[0753] A "server" is a computer system that retrieves information based on analysis results, generates appropriate responses, and sends those responses to terminals.
[0754] "Inquiry content" refers to text data related to questions and requests entered by the user through their device.
[0755] "Emotional data" refers to data that indicates the emotional state of a user, extracted from their input actions, word choice, and context.
[0756] "Analysis results" refer to data generated by the emotion analysis device, including the analysis results of the user's emotional state and inquiry content.
[0757] "Information" refers to data related to user queries that the server retrieves from databases and other information sources.
[0758] A "response" is a message generated by the server in response to a user's inquiry, and it is a document created with the user's emotional state in mind.
[0759] "Natural language processing technology" refers to the technology used to analyze, understand, and generate human language using computer systems.
[0760] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion analysis device (hereinafter referred to as the emotion engine) to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[0761] Hardware and software to be used
[0762] The following hardware and software are required to implement this system:
[0763] Device: The device used by the user (PC, smartphone, tablet, etc.)
[0764] Server: A computer system that performs data analysis and response generation (e.g., Linux server, Windows Server).
[0765] Emotion engine: A software module that analyzes user emotions (e.g., IBM Watson Tone Analyzer, Microsoft Azure Text Analytics)
[0766] Overview of Program Processing
[0767] Integrating an emotion engine into intelligent customer support
[0768] When a user enters an inquiry into the terminal's input field and clicks the submit button, the terminal sends the inquiry and the user's sentiment data to the sentiment engine. The sentiment engine analyzes the user's sentiment based on the received data and sends the results to the server. The server analyzes the received inquiry and sentiment data and retrieves the necessary information from the database. Then, based on the retrieved information and analysis results, it generates an appropriate response and sends it to the terminal. The terminal receives the response from the server and displays it to the user.
[0769] Software technologies used
[0770] The emotion engine uses natural language processing technology for analysis. This allows it to extract emotion data from the user's inquiry content, input speed, and word choice. On the server side, it retrieves information from the database based on the received emotion data and inquiry content, and generates a customized response using a template engine.
[0771] Specific example
[0772] Example 1: Customer Support
[0773] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" and is feeling angry, the terminal sends this data to the emotion engine. The emotion engine analyzes whether the user is angry and sends the results to the server. The server processes the inquiry along with the emotion data "angry" and generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[0774] Specific example 2: Management tasks
[0775] If a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotion data to the emotion engine. The emotion engine analyzes the user's anxiety and sends the results to the server. Based on the emotion data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[0776] Example of a prompt
[0777] Customer Support: "I would like to know the delivery status of order number 12345. Please generate an appropriate response for when the user is angry."
[0778] Administrative Task: "A meeting is scheduled for 3 PM on October 20, 2023. Please create a confirmation message for users who are feeling anxious."
[0779] This system can significantly improve the user experience by analyzing user emotions during inquiry handling and management tasks and generating appropriate responses.
[0780] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0781] Step 1:
[0782] The user enters their inquiry.
[0783] Input: The user enters their inquiry into the input field on the terminal and clicks the submit button. For example, "I would like to know the delivery status of order number 12345."
[0784] Action: Characters appear in the terminal's input field, and a click event occurs on the send button.
[0785] Step 2:
[0786] The terminal sends the inquiry details and user sentiment data to the sentiment analysis device.
[0787] Input: User inquiry content, input speed, and characteristic information such as language use.
[0788] Data processing: Generate sentiment data and integrate it with the query content.
[0789] Output: Integrated data of inquiry content and sentiment data.
[0790] Operation: The device sends data to the sentiment analysis device via an API request.
[0791] Step 3:
[0792] An emotion analysis device analyzes the user's emotions.
[0793] Input: Inquiry content and sentiment data sent from the device.
[0794] Data processing: Using natural language processing (NLP) techniques, we identify emotions from context and word choice and generate analysis scores.
[0795] Output: JSON data containing the user's emotional state (e.g., "Angry" 80%) as an analysis result.
[0796] Operation: The analysis module is executed, and the emotion score is calculated and the analysis results are generated.
[0797] Step 4:
[0798] The emotion analysis device sends the analysis results to the server.
[0799] Input: JSON data of analysis results, including the user's emotional state.
[0800] Output: Analysis result data sent to the server.
[0801] Operation: The analysis results are sent to the server via an HTTP POST request.
[0802] Step 5:
[0803] The server analyzes the query and retrieves the information.
[0804] Input: Analysis results and inquiry content sent from the emotion analysis device.
[0805] Data processing: Based on the analysis results and query content, SQL queries are issued to the database to search for and retrieve the necessary information.
[0806] Output: Information retrieved from the database.
[0807] Operation: Establishes a database connection and executes SQL queries to retrieve the necessary data.
[0808] Step 6:
[0809] The server generates a response.
[0810] Input: Information retrieved from the database and sentiment analysis results.
[0811] Data processing: Use a template engine to generate response sentences that correspond to emotional states.
[0812] Output: The response message to send to the user.
[0813] Operation: The template engine is executed and a response message is generated.
[0814] Step 7:
[0815] The terminal receives a response from the server and displays it to the user.
[0816] Input: The response message sent from the server.
[0817] Output: The response message displayed on the screen.
[0818] Operation: The terminal receives data from the server, and a response message is displayed on the screen.
[0819] (Application Example 2)
[0820] 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."
[0821] In today's online shopping and service environment, customers demand fast and effective customer support. However, traditional systems often fail to provide personalized responses that take user emotions into account, leading to decreased customer satisfaction. Furthermore, insufficient sentiment analysis makes it difficult to respond to users' true needs and emotions. This hinders improvements in the customer experience.
[0822] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the inquiry content and sentiment data, means for acquiring information based on the analysis results, and means for generating a response based on the acquired information and sentiment data. This enables the generation of a response that matches the user's emotions, resulting in personalized, high-quality customer support.
[0823] A "terminal" is an electronic device that a user operates and uses to input inquiries.
[0824] "Emotional data" refers to data that indicates a user's emotional state, extracted from factors such as the speed at which they input information and the language they use when submitting an inquiry.
[0825] An "emotion engine" is an analytical system that analyzes user inquiries and emotional data to determine their emotional state.
[0826] A "server" is a central processing unit that analyzes received inquiries and sentiment data to generate appropriate responses.
[0827] "Natural language processing technology" is a language analysis technology that analyzes user inquiries and generates appropriate responses.
[0828] "Personalization" refers to individually adjusting responses based on the user's emotional state to provide the most appropriate service.
[0829] This invention begins with the user entering their inquiry into a terminal and sending that data to a server. The server is a system that analyzes the user's inquiry and sentiment data using a tuned sentiment engine and natural language processing technology, and generates a personalized response based on the analysis results. This enables higher quality and more personalized customer support.
[0830] Hardware and software configuration
[0831] Terminal:
[0832] A terminal is an electronic device used by the user to enter inquiries, and includes smartphones, tablets, and personal computers. The user enters the inquiry details into the input field on the terminal and clicks the submit button.
[0833] Emotional engine:
[0834] The emotion engine is a system that analyzes emotions from input text data, using a combination of natural language processing (NLP) models and emotion analysis APIs (such as Clarabridge or IBM Watson).
[0835] server:
[0836] A server is a central processing unit that receives and analyzes inquiry content and sentiment data, and generates appropriate responses. Cloud services such as AWS, Google Cloud Platform, and Microsoft Azure can be used for this purpose.
[0837] Data processing and calculation
[0838] When a user enters an inquiry, the terminal sends the inquiry and emotion data to the emotion engine. The emotion engine uses natural language processing techniques to analyze the input text and determine the user's emotion. This analysis result and the inquiry are then sent back to the server. On the server side, a generative AI model (e.g., GPT-4) is used to generate a response that takes the emotional state into account. The generated response is then sent back to the terminal and displayed to the user.
[0839] Specific examples and prompt statements
[0840] Specific example:
[0841] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" while expressing anger, the terminal sends this data to the emotion engine. The emotion engine analyzes the emotional state of "angry" and sends the result to the server. The server generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[0842] Example of a prompt:
[0843] "I want to know the delivery status of order number 12345. Please tell me now!"
[0844] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0845] Step 1:
[0846] The user enters their inquiry into the terminal and clicks the send button. At this time, the user's input is text data such as "I want to know the delivery status of order number 12345. Tell me now!" The input data also includes input speed and word choice, which are used as sentiment data.
[0847] Step 2:
[0848] The device sends the inquiry content and sentiment data to the sentiment engine. The device's program passes the text data from the input fields, the user's input speed, and their word choice to the sentiment engine, generating a set of inquiry content and sentiment data. The input data is sent in JSON format or similar.
[0849] Step 3:
[0850] The emotion engine analyzes the received data to determine the user's emotions. The emotion engine uses natural language processing models (e.g., BERT or GPT-4) to analyze text data and generate emotion labels such as "angry," "anxious," and "calm." The input for this step is the query and emotion data, and the output is the resulting emotion labels.
[0851] Step 4:
[0852] The emotion engine sends the analysis results to the server. These results include the query content and an emotion label (e.g., "angry"). The input is the analysis results, and the output is the dataset sent to the server. This is also sent in JSON format.
[0853] Step 5:
[0854] The server receives the query content and sentiment label and retrieves the necessary information. The server accesses the database and retrieves information corresponding to the query (for example, "Delivery status of order number 12345"). At this time, the server adjusts the method and priority of information retrieval, taking the sentiment label into consideration. The input is the query content and sentiment label, and the output is the retrieved information data.
[0855] Step 6:
[0856] The server generates a response based on the information and sentiment data it has acquired. The server uses a generative AI model (e.g., GPT-4) to generate a personalized response that takes into account the acquired information and sentiment labels. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input is the acquired information and sentiment labels, and the output is the generated response.
[0857] Step 7:
[0858] The server generates a response message and sends it to the terminal, which then displays it to the user. The terminal's program receives the response message from the server and displays it on the screen in a user-friendly format, allowing the user to confirm the appropriate response. The input is the generated response message, and the output is what is displayed to the user.
[0859] 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.
[0860] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0861] 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.
[0862] [Third Embodiment]
[0863] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0864] 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.
[0865] 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).
[0866] 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.
[0867] 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.
[0868] 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).
[0869] 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.
[0870] 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.
[0871] 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.
[0872] 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.
[0873] 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.
[0874] 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".
[0875] This invention begins with a user entering an inquiry and sending it to a server using a terminal. The system aims to automatically process user inquiries and generate quick and appropriate responses. It also aims to streamline administrative tasks.
[0876] Program Processing Overview
[0877] Intelligent customer support
[0878] 1. The user enters the inquiry:
[0879] The user enters their inquiry using a device (such as a smartphone or computer). For example, they might enter, "I would like to know the delivery status of order number 12345."
[0880] 2. The device sends the query to the server:
[0881] The device sends data containing the inquiry details and user information to the server. This data is sent to the server in the form of an API request or similar.
[0882] 3. The server parses the query:
[0883] The query content is analyzed using natural language processing technology running on the server. This analysis extracts the main elements of the query (e.g., order number).
[0884] 4. The server retrieves the information:
[0885] Based on the analysis results, the server retrieves the necessary information from databases and other information sources. For example, it retrieves the current status of order number 12345 from the order management database.
[0886] 5. The server generates a response:
[0887] Based on the acquired information, the server generates a message to send back to the user. For example, it might generate a response such as, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[0888] 6. The device receives a response and displays it to the user:
[0889] The terminal receives the response sent from the server and displays it on the screen in a format that the user can see.
[0890] Automation of administrative tasks
[0891] 1. The user enters the administrative task:
[0892] The user enters management tasks (e.g., scheduling appointments) through their device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023."
[0893] 2. The device sends task information to the server:
[0894] The device sends task details to the server in the form of an API request. The data sent includes the date and time and the task details.
[0895] 3. The server processes the task:
[0896] The server analyzes the received task details and registers them based on the schedule. For example, it might add a meeting to the user's calendar system.
[0897] 4. The server generates a confirmation message:
[0898] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[0899] 5. The device receives a confirmation message and displays it to the user:
[0900] The terminal receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0901] Specific example
[0902] For example, if a user enters the inquiry "I want to know the delivery status of order number 12345," the device sends this inquiry to the server. The server uses natural language processing to extract order number 12345 and retrieves its delivery information from the database. Based on the retrieved information, it generates a response such as "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023," and sends it to the device. The device receives this response and displays it to the user.
[0903] Additionally, if the user enters "Schedule a meeting for 3 PM on October 20, 2023," the device sends this information to the server. The server adds this task to the schedule and generates and sends a confirmation message to the device stating "Meeting successfully scheduled." The device then displays this confirmation message to the user.
[0904] Thus, the system of the present invention reduces the burden on users and improves operational efficiency by automating inquiry handling and management tasks.
[0905] The following describes the processing flow.
[0906] Intelligent customer support
[0907] Detailed flow of inquiry processing
[0908] Step 1:
[0909] The user enters their inquiry into the input field on the device and clicks the submit button.
[0910] Step 2:
[0911] The terminal converts this input into a data format and sends it to the server as an API request along with the user ID.
[0912] Step 3:
[0913] The server analyzes the received data and uses natural language processing technology to analyze the received inquiry content as text. For example, if an inquiry is sent stating "I want to know the delivery status of order number 12345," the server will extract the keywords "order number 12345" and "delivery status."
[0914] Step 4:
[0915] The server accesses the database and searches for relevant information based on the extracted keywords. For example, it retrieves the current status of order number 12345 from the order management database.
[0916] Step 5:
[0917] Based on the information obtained by the server, it generates an appropriate response. For example, it might generate a response such as, "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023."
[0918] Step 6:
[0919] The server generates a response message which is then sent back to the terminal as an API response.
[0920] Step 7:
[0921] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[0922] Automation of administrative tasks
[0923] Detailed flow of the scheduling process
[0924] Step 1:
[0925] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[0926] Step 2:
[0927] The terminal converts the entered task information into a data format and sends it to the server as an API request along with the user ID.
[0928] Step 3:
[0929] The server analyzes the received task information and verifies the date, time, and content. For example, if information such as "A meeting is scheduled for 3 PM on October 20, 2023" is sent, the server extracts the date, time, and task details.
[0930] Step 4:
[0931] The server accesses the database to check if there are any existing schedule conflicts at the specified date and time. For example, it checks if there are any other appointments at that time.
[0932] Step 5:
[0933] After confirming that there are no duplicates on the server, the extracted tasks are registered in the schedule database. For example, information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00" is saved.
[0934] Step 6:
[0935] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[0936] Step 7:
[0937] The server generates a confirmation message and sends it to the terminal as an API response.
[0938] Step 8:
[0939] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[0940] These specific processing steps allow users to easily submit inquiries, receive appropriate responses, and manage their schedules efficiently.
[0941] (Example 1)
[0942] 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."
[0943] Existing response processing systems lack the ability to provide timely and appropriate responses to user inquiries. Furthermore, the lack of automation in administrative tasks is contributing to decreased operational efficiency.
[0944] 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.
[0945] In this invention, the server includes means for a user to input an inquiry via a communication device, means for the communication device to transmit the inquiry content to an information processing device, means for the information processing device to analyze the inquiry content, means for the information processing device to acquire information based on the analysis results, means for the information processing device to generate a response based on the acquired information, and means for the communication device to display the response from the information processing device to the user. As a result, the user can receive a quick and appropriate response, and an improvement in work efficiency can be expected.
[0946] A "user" refers to anyone who utilizes the response processing system, and is the entity that inputs inquiries and management tasks.
[0947] "Communication equipment" refers to terminal devices used by users, and includes electronic devices such as smartphones, computers, and tablets.
[0948] An "inquiry" refers to a question or request that a user sends via a communication device to obtain information.
[0949] An "information processing device" refers to a server or cloud computing infrastructure that analyzes user inquiries and generates responses.
[0950] "Natural language processing technology" refers to the techniques used to understand, analyze, and generate human language, and is also known as NLP (Natural Language Processing).
[0951] "Analysis" refers to the process by which an information processing device understands the content of a user's inquiry and extracts the necessary information.
[0952] "Acquisition" refers to the act of an information processing device collecting necessary information from databases and other information sources based on the analysis results.
[0953] "Response" refers to the reply to the user generated based on the information analyzed and acquired by the information processing device.
[0954] "Administrative tasks" refer to daily business operations such as setting schedules and managing tasks.
[0955] "Schedule information" refers to information related to time management, including the user's appointments and tasks.
[0956] An "API request" refers to a standardized request format for exchanging data between communication devices and information processing devices.
[0957] This invention begins with a user inputting an inquiry via a communication device and transmitting it to an information processing device. Specifically, the user inputs the inquiry using a communication device such as a smartphone or computer. The inputted inquiry is then transmitted to the information processing device by the communication device. Here, the communication device transmits the data using an API request format.
[0958] The information processing device (server) analyzes the received query content using natural language processing (NLP) techniques. Examples of NLP techniques include spaCy, BERT, and GPT. The server extracts key elements from the query and retrieves relevant information based on the analysis results. This retrieved information is obtained, for example, from a database system (such as MySQL or PostgreSQL).
[0959] The information processing device generates a response message to the user based on the analysis results and acquired information. A generative AI model is used to generate the response message. For example, OpenAI's GPT-3 is a typical example.
[0960] The generated response message is sent back to the communication device in the form of an API response. The communication device displays the received response message to the user. This allows the user to quickly obtain an appropriate answer to their inquiry.
[0961] As a concrete example, consider a case where a user enters the inquiry, "I want to know the delivery status of order number 12345." The communication device sends this inquiry to the information processing device, and the server uses natural language processing technology to extract "order number 12345." Next, the server retrieves the delivery information for "order number 12345" from the database and generates a response: "Order 12345 is currently being shipped, and the estimated arrival date is October 15, 2023." This response is sent to the communication device and displayed to the user.
[0962] This system also includes the automation of administrative tasks. For example, if a user enters "Schedule a meeting for 3 PM on October 20, 2023," the communication device sends this task information to the server, and the server adds the task to the user's schedule. Specifically, it registers the schedule using the Google Calendar API, etc. The server generates a confirmation message, "Meeting successfully scheduled," and displays it to the user via the communication device.
[0963] This system allows users to receive quick and appropriate responses and automates administrative tasks. This is expected to improve operational efficiency. In this way, the invention's benefits are maximized.
[0964] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0965] Step 1:
[0966] The user enters their inquiry.
[0967] Users enter their inquiries in text format using communication devices such as smartphones or computers. For example, they might enter, "I would like to know the delivery status of order number 12345." This input data is then processed by the communication device in the next step.
[0968] Step 2:
[0969] The terminal sends the query to the server.
[0970] The communication device converts the user's input into an API request format. Specifically, it uses the HTTP POST method to send JSON data containing the inquiry content and user information to the information processing device (server). The input data consists of the inquiry text and user information, and the output is the transmission of the request to the server.
[0971] Step 3:
[0972] The server analyzes the query.
[0973] The information processing device analyzes the received API request. Specifically, it analyzes the query text using natural language processing techniques (e.g., spaCy, BERT, GPT) and extracts key elements (e.g., order number). The input data is the query text, and the output is the key elements of the analysis result (such as the order number).
[0974] Step 4:
[0975] The server retrieves the information.
[0976] The information processing device retrieves necessary information from databases and other information sources based on the analysis results. For example, it might execute a query against an order management database (e.g., MySQL, PostgreSQL) to retrieve delivery information for "order number 12345". The input data is the analysis results, and the output is the retrieved information (such as delivery status).
[0977] Step 5:
[0978] The server generates a response.
[0979] The information processing device generates an appropriate response message based on the acquired information. Specifically, it uses a generation AI model (e.g., OpenAI's GPT-3) to create a response in a natural style. For example, the response might be, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the acquired information, and the output is the generated response message.
[0980] Step 6:
[0981] The terminal receives a response and displays it to the user.
[0982] The communication device receives a response message sent from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the response message from the server, and the output is the message displayed on the screen.
[0983] Step 7:
[0984] The user enters the management task.
[0985] The user enters management tasks in text format using a communication device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023." This input data is then processed by the communication device in the next step.
[0986] Step 8:
[0987] The terminal sends task information to the server.
[0988] The communication device converts the task content entered by the user into an API request format. It uses the HTTP POST method to send JSON data containing the task content to the information processing device (server). The input data is the task text, and the output is the request sent to the server.
[0989] Step 9:
[0990] The server processes the task.
[0991] The information processing device analyzes the received task details and registers them in the user's scheduling system. For example, it uses the Google Calendar API to add a meeting to the schedule. The input data is the task details, and the output is the task registered in the schedule.
[0992] Step 10:
[0993] The server generates a confirmation message.
[0994] The information processing device generates a confirmation message to notify that a task has been successfully registered. It may also use a generation AI model to create the message in a natural style. For example, a confirmation message such as "The meeting has been successfully scheduled." might be generated. The input data is the registered task information, and the output is the generated confirmation message.
[0995] Step 11:
[0996] The device receives a confirmation message and displays it to the user.
[0997] The communication device receives a confirmation message from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "The meeting has been successfully scheduled." The input data is the confirmation message from the server, and the output is the message displayed on the screen.
[0998] (Application Example 1)
[0999] 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."
[1000] Traditional customer support systems can generate quick and appropriate responses to user inquiries, but they lack the ability to provide optimal suggestions based on the user's usage history and preferences. As a result, the user experience is limited, and the quality of information provided does not improve. In addition, in content distribution services, users may not receive recommendations based on their viewing history and preferences, which can lead to decreased service satisfaction.
[1001] 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.
[1002] In this invention, the server includes means for the user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content to the server, and means for the server to analyze the inquiry content. This makes it possible to provide a system that includes means for the server to refer to the user's usage history data to make optimal suggestions, and means for using a generative AI model to generate recommendation information based on the inquiry content. This improves the user experience and increases user satisfaction. Furthermore, in content distribution services, it is possible to provide recommendations optimized for individual users, thereby increasing the competitiveness of the service.
[1003] An "inquiry" refers to a question or request that a user enters through their device and sends to a server.
[1004] "Device" refers to a device used by a user, such as a smartphone, computer, smart glasses, or head-mounted display.
[1005] A "server" refers to a computer system used to analyze queries, retrieve information, and generate responses.
[1006] "Analysis" refers to the process that a server uses natural language processing techniques to understand the content of a query.
[1007] "Usage history data" refers to data that includes records of actions and viewings that a user has performed in the past.
[1008] A "response" refers to a reply message generated by the server based on the information it has acquired and provided to the user.
[1009] "Suggestion" refers to the act of a server recommending optimal information or content by referring to the user's usage history data.
[1010] A "generative AI model" refers to an artificial intelligence model that performs natural language processing and data analysis to automatically generate appropriate responses and suggestions.
[1011] "Recommended information" refers to specific content or information provided by the server based on the user's inquiries and usage history.
[1012] A "content distribution service" refers to a service that provides users with digital content such as videos, music, and articles.
[1013] The system for implementing this invention involves a user inputting an inquiry through a terminal, which is then transmitted from the terminal to a server. The server analyzes the inquiry and retrieves information based on the analysis results. It also references the user's usage history data to provide optimal suggestions. Furthermore, it uses a generative AI model to generate recommended information based on the inquiry.
[1014] Hardware and software to use
[1015] Hardware: Smartphones, smart glasses, head-mounted displays, or computers, etc.
[1016] software:
[1017] 1. Natural Language Processing Techniques:
[1018] The server analyzes user inquiries using natural language processing techniques. For this purpose, the Google NLP API and the transformers library are used.
[1019] 2. Data analysis algorithms:
[1020] The server uses data analysis algorithms such as Collaborative Filtering to analyze user usage history data and generate optimal suggestions.
[1021] 3. Generative AI Models:
[1022] The server uses generative AI models such as BERT and GPT (Generative Pre-trained Transformer) to generate recommendation information based on the query content.
[1023] Program Processing Overview
[1024] 1. User input:
[1025] The user enters a question into their device, such as "What are today's recommended movies?" The question can be entered via keyboard or voice input.
[1026] 2. API Request:
[1027] The device sends data to the server, including user information along with the query details. This request is structured in a format such as JSON before being sent.
[1028] 3. Natural Language Processing:
[1029] The server analyzes the query using the Google NLP API and the transformers library, extracting key keywords. This step helps understand the intent behind the query.
[1030] 4. Data acquisition:
[1031] The server identifies the most suitable content (e.g., movies or TV shows) by referencing user usage history data and rating databases. Algorithms such as collaborative filtering are used to select content that best matches the user's preferences.
[1032] 5. Response generation:
[1033] Based on the information it retrieves, the server uses a generative AI model (e.g., GPT) to generate an appropriate response to the query. For example, it might generate a message like, "We recommend the movie 'Inception' for you. This movie is a good match for your viewing history."
[1034] 6. Response display:
[1035] The response sent from the server is received by the terminal and displayed to the user. The response message is displayed on the screen of a smartphone, smart glasses, or head-mounted display.
[1036] Specific example
[1037] When a user types "What are today's recommended movies?" into their smartphone, the server analyzes the query and selects the most suitable movie from the user's viewing history database. Then, using a generative AI model, it generates a response such as "The movie we recommend for you is 'Inception'," and displays this response on the smartphone screen.
[1038] Example of a prompt
[1039] "What's your recommended movie for today?"
[1040] "Could you recommend some movies you've seen recently?"
[1041] "Tell me about movies related to the genre I'm currently watching."
[1042] Thus, this invention not only responds quickly to user inquiries but also improves the user experience by recommending optimal content based on the user's usage history. Furthermore, by using a generative AI model, the quality of responses to inquiries can also be improved.
[1043] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1044] Step 1:
[1045] User input
[1046] The user enters their inquiry into the terminal. Input methods include text input and voice input.
[1047] Input: The user types "What are today's recommended movies?" into their smartphone.
[1048] Operation: The terminal captures the content of this inquiry and converts it into a data format.
[1049] Step 2:
[1050] Sending an API request
[1051] The terminal sends the user's inquiry and user information to the server.
[1052] Input: User inquiry details and user information (e.g., User ID, past viewing history).
[1053] Data processing: Convert to structured data such as JSON format.
[1054] Output: API request sent to the server.
[1055] Operation: The terminal bundles the inquiry details and user information and sends an API request to the server.
[1056] Step 3:
[1057] Natural Language Processing
[1058] The server analyzes the content of the received query using natural language processing technology.
[1059] Input: The content of the user's inquiry sent from the terminal.
[1060] Data processing: Keyword extraction using the Google NLP API and the transformers library.
[1061] Output: Analyzed keywords (e.g., "recommended movies").
[1062] Operation: The server analyzes the query content using natural language processing technology and extracts key keywords.
[1063] Step 4:
[1064] Data acquisition
[1065] The server selects the most suitable content by referring to usage history data.
[1066] Input: Analyzed keywords and user information (e.g., viewing history).
[1067] Data processing: Recommends optimal content using algorithms such as Collaborative Filtering.
[1068] Output: Recommended content (e.g., movie title "Inception").
[1069] Operation: The server refers to the user's viewing history database and selects appropriate recommended content.
[1070] Step 5:
[1071] Response generation
[1072] The server uses a generated AI model to produce a response to the query.
[1073] Input: Recommended content and user inquiries.
[1074] Data processing: Generate response messages based on a generative AI model (e.g., GPT).
[1075] Output: Response message (e.g., "The movie I recommend for you is 'Inception'").
[1076] Operation: The server uses a generative AI model to create an appropriate response to the query.
[1077] Step 6:
[1078] Response display
[1079] The terminal receives a response message from the server and displays it to the user.
[1080] Input: The response message sent from the server.
[1081] Output: The response message displayed to the user.
[1082] Operation: The device displays the received response message to the user, for example, on the screen of a smartphone.
[1083] The above outlines the specific processing steps involved in responding to a user inquiry, from the server recommending the most suitable content to displaying the response.
[1084] 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.
[1085] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion engine to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[1086] Program Processing Overview
[1087] Integrating an emotion engine into intelligent customer support
[1088] 1. The user enters the inquiry:
[1089] The user enters their inquiry into the input field on the device and clicks the submit button. For example, they might enter, "I would like to know the delivery status of order number 12345."
[1090] 2. The device sends the inquiry and the user's sentiment to the sentiment engine:
[1091] The device sends the inquiry content and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, the user's input speed, and word choice.
[1092] 3. The emotion engine analyzes the user's emotions:
[1093] The emotion engine analyzes the user's emotions based on the data it receives. For example, it determines whether the user is anxious, angry, or calm.
[1094] 4. The emotion engine sends the analysis results to the server:
[1095] The emotion engine analyzes the emotion data and sends the inquiry details to the server. For example, it sends data such as "Order number 12345" and "User is angry."
[1096] 5. The server analyzes the query content and retrieves information based on sentiment data:
[1097] The server analyzes the received query and retrieves the necessary information from the database. It also adjusts the method and priority of information retrieval based on the user's emotional state.
[1098] 6. The server generates a response:
[1099] Based on the acquired information and sentiment data, the server generates an appropriate response. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1100] 7. The terminal receives a response from the server and displays it to the user:
[1101] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[1102] Integrating an emotion engine into the automation of administrative tasks
[1103] 1. The user enters the administrative task:
[1104] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[1105] 2. The device sends task information and sentiment data to the sentiment engine:
[1106] The terminal sends the entered task details and user sentiment data to the sentiment engine.
[1107] 3. The emotion engine analyzes the user's emotions:
[1108] The emotion engine analyzes the user's emotions based on the data it receives.
[1109] 4. The emotion engine sends the analysis results to the server:
[1110] The emotion engine sends task information, including analysis results, to the server.
[1111] 5. The server analyzes the task and registers it for scheduling based on sentiment data:
[1112] The server analyzes the received task details and adds them to the schedule, taking into account the results and sentiment data.
[1113] 6. The server generates a confirmation message:
[1114] The server generates a confirmation message tailored to the user's emotional state to notify them that the task has been successfully registered.
[1115] 7. The device receives a confirmation message and displays it to the user:
[1116] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[1117] Specific example
[1118] For example, if a user enters an inquiry asking for the delivery status of order number 12345 and is feeling angry, the terminal sends this data to the emotion engine, which analyzes that the user is angry. The server processes the inquiry along with the "angry" emotion data and generates a response, sending to the user, saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1119] Furthermore, if a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotional data to the emotion engine, which analyzes the user's anxiety. Based on the emotional data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[1120] Thus, the system of the present invention can significantly improve the user experience by analyzing user emotions in inquiry handling and management tasks and generating appropriate responses.
[1121] The following describes the processing flow.
[1122] Integrating an emotion engine into intelligent customer support
[1123] Detailed flow of inquiry processing
[1124] Step 1:
[1125] The user enters their inquiry into the input field on the device and clicks the submit button.
[1126] Step 2:
[1127] The device sends this input along with the user's sentiment data to the sentiment engine. Sentiment data is collected from text analysis, keyboard input speed, touchscreen tap intensity, and other factors.
[1128] Step 3:
[1129] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can estimate whether the user is angry, anxious, or calm based on the text content and input style.
[1130] Step 4:
[1131] The emotion engine sends the analysis results to the server. For example, it sends data such as "Order number 12345" and "Emotion: Anger".
[1132] Step 5:
[1133] The server analyzes the received inquiry and uses natural language processing technology to extract key information such as "delivery status of order number 12345".
[1134] Step 6:
[1135] The server accesses the database and retrieves the current status of order number 12345 from the order management database.
[1136] Step 7:
[1137] Based on the information acquired by the server, a response message is generated that corresponds to the user's emotional state. For example, if the user is angry, the response might be something like, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1138] Step 8:
[1139] The server sends the generated response message to the terminal as an API response.
[1140] Step 9:
[1141] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[1142] Integrating an emotion engine into the automation of administrative tasks
[1143] Detailed flow of the scheduling process
[1144] Step 1:
[1145] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[1146] Step 2:
[1147] The terminal sends the entered task information and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, input speed, word choice, etc.
[1148] Step 3:
[1149] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can analyze whether the user is anxious based on their input style and speed.
[1150] Step 4:
[1151] The emotion engine sends the analysis results to the server. For example, it sends data such as "October 20, 2023, 3 PM", "Meeting", and "Emotion: Anxiety".
[1152] Step 5:
[1153] The server analyzes the received task details and checks for duplicates and other issues using the calendar system. It then checks for any problems by comparing them with existing schedules.
[1154] Step 6:
[1155] The server registers the task in the scheduling database. For example, it saves information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00."
[1156] Step 7:
[1157] To notify the user that the task has been successfully registered, the server generates a confirmation message tailored to the user's emotional state. For example, if the user is anxious, it might generate a message such as, "Your meeting has been successfully scheduled. Please rest assured."
[1158] Step 8:
[1159] The server generates a confirmation message and sends it to the terminal as an API response.
[1160] Step 9:
[1161] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[1162] These specific processing steps allow users to submit inquiries, receive appropriate responses tailored to their emotions, and manage their schedules efficiently.
[1163] (Example 2)
[1164] 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."
[1165] Traditional customer support systems have a problem in that they do not generate responses that take into account the user's emotions, making it difficult to improve user satisfaction. In particular, when users are experiencing emotions such as anger or frustration, appropriate responses cannot be provided, and the effectiveness of problem solving is reduced. Furthermore, in schedule management, there is a lack of appropriate notifications and responses that respond to the user's emotions, which poses a challenge to improving work efficiency and preventing errors.
[1166] 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.
[1167] In this invention, the server includes means for a user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content and the user's emotional data to an emotion analysis device, means for the emotion analysis device to analyze the inquiry content and emotional data, means for the emotion analysis device to transmit the analysis results to the server, means for the server to acquire information based on the analysis results, means for the server to generate a response based on the acquired information and the analysis results, and means for the terminal to display the response from the server to the user.
[1168] This enables the generation of personalized responses that take user emotions into account, thereby improving user satisfaction. Furthermore, appropriate notifications tailored to emotions are provided during schedule management, leading to improved work efficiency and reduced errors.
[1169] A "user" is an individual or organization that uses the system to make inquiries or input tasks.
[1170] A "terminal" is a device operated by the user, which inputs inquiry details and task information, and communicates with the server and sentiment analysis device.
[1171] An "emotion analysis device" is a software module or hardware device that analyzes emotions based on user input data.
[1172] A "server" is a computer system that retrieves information based on analysis results, generates appropriate responses, and sends those responses to terminals.
[1173] "Inquiry content" refers to text data related to questions and requests entered by the user through their device.
[1174] "Emotional data" refers to data that indicates the emotional state of a user, extracted from their input actions, word choice, and context.
[1175] "Analysis results" refer to data generated by the emotion analysis device, including the analysis results of the user's emotional state and inquiry content.
[1176] "Information" refers to data related to user queries that the server retrieves from databases and other information sources.
[1177] A "response" is a message generated by the server in response to a user's inquiry, and it is a document created with the user's emotional state in mind.
[1178] "Natural language processing technology" refers to the technology used to analyze, understand, and generate human language using computer systems.
[1179] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion analysis device (hereinafter referred to as the emotion engine) to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[1180] Hardware and software to be used
[1181] The following hardware and software are required to implement this system:
[1182] Device: The device used by the user (PC, smartphone, tablet, etc.)
[1183] Server: A computer system that performs data analysis and response generation (e.g., Linux server, Windows Server).
[1184] Emotion engine: A software module that analyzes user emotions (e.g., IBM Watson Tone Analyzer, Microsoft Azure Text Analytics)
[1185] Overview of Program Processing
[1186] Integrating an emotion engine into intelligent customer support
[1187] When a user enters an inquiry into the terminal's input field and clicks the submit button, the terminal sends the inquiry and the user's sentiment data to the sentiment engine. The sentiment engine analyzes the user's sentiment based on the received data and sends the results to the server. The server analyzes the received inquiry and sentiment data and retrieves the necessary information from the database. Then, based on the retrieved information and analysis results, it generates an appropriate response and sends it to the terminal. The terminal receives the response from the server and displays it to the user.
[1188] Software technologies used
[1189] The emotion engine uses natural language processing technology for analysis. This allows it to extract emotion data from the user's inquiry content, input speed, and word choice. On the server side, it retrieves information from the database based on the received emotion data and inquiry content, and generates a customized response using a template engine.
[1190] Specific example
[1191] Example 1: Customer Support
[1192] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" and is feeling angry, the terminal sends this data to the emotion engine. The emotion engine analyzes whether the user is angry and sends the results to the server. The server processes the inquiry along with the emotion data "angry" and generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[1193] Specific example 2: Management tasks
[1194] If a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotion data to the emotion engine. The emotion engine analyzes the user's anxiety and sends the results to the server. Based on the emotion data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[1195] Example of a prompt
[1196] Customer Support: "I would like to know the delivery status of order number 12345. Please generate an appropriate response for when the user is angry."
[1197] Administrative Task: "A meeting is scheduled for 3 PM on October 20, 2023. Please create a confirmation message for users who are feeling anxious."
[1198] This system can significantly improve the user experience by analyzing user emotions during inquiry handling and management tasks and generating appropriate responses.
[1199] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1200] Step 1:
[1201] The user enters their inquiry.
[1202] Input: The user enters their inquiry into the input field on the terminal and clicks the submit button. For example, "I would like to know the delivery status of order number 12345."
[1203] Action: Characters appear in the terminal's input field, and a click event occurs on the send button.
[1204] Step 2:
[1205] The terminal sends the inquiry details and user sentiment data to the sentiment analysis device.
[1206] Input: User inquiry content, input speed, and characteristic information such as language use.
[1207] Data processing: Generate sentiment data and integrate it with the query content.
[1208] Output: Integrated data of inquiry content and sentiment data.
[1209] Operation: The device sends data to the sentiment analysis device via an API request.
[1210] Step 3:
[1211] An emotion analysis device analyzes the user's emotions.
[1212] Input: Inquiry content and sentiment data sent from the device.
[1213] Data processing: Using natural language processing (NLP) techniques, we identify emotions from context and word choice and generate analysis scores.
[1214] Output: JSON data containing the user's emotional state (e.g., "Angry" 80%) as an analysis result.
[1215] Operation: The analysis module is executed, and the emotion score is calculated and the analysis results are generated.
[1216] Step 4:
[1217] The emotion analysis device sends the analysis results to the server.
[1218] Input: JSON data of analysis results, including the user's emotional state.
[1219] Output: Analysis result data sent to the server.
[1220] Operation: The analysis results are sent to the server via an HTTP POST request.
[1221] Step 5:
[1222] The server analyzes the query and retrieves the information.
[1223] Input: Analysis results and inquiry content sent from the emotion analysis device.
[1224] Data processing: Based on the analysis results and query content, SQL queries are issued to the database to search for and retrieve the necessary information.
[1225] Output: Information retrieved from the database.
[1226] Operation: Establishes a database connection and executes SQL queries to retrieve the necessary data.
[1227] Step 6:
[1228] The server generates a response.
[1229] Input: Information retrieved from the database and sentiment analysis results.
[1230] Data processing: Use a template engine to generate response sentences that correspond to emotional states.
[1231] Output: The response message to send to the user.
[1232] Operation: The template engine is executed and a response message is generated.
[1233] Step 7:
[1234] The terminal receives a response from the server and displays it to the user.
[1235] Input: The response message sent from the server.
[1236] Output: The response message displayed on the screen.
[1237] Operation: The terminal receives data from the server, and a response message is displayed on the screen.
[1238] (Application Example 2)
[1239] 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."
[1240] In today's online shopping and service environment, customers demand fast and effective customer support. However, traditional systems often fail to provide personalized responses that take user emotions into account, leading to decreased customer satisfaction. Furthermore, insufficient sentiment analysis makes it difficult to respond to users' true needs and emotions. This hinders improvements in the customer experience.
[1241] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the inquiry content and sentiment data, means for acquiring information based on the analysis results, and means for generating a response based on the acquired information and sentiment data. This enables the generation of a response that matches the user's emotions, resulting in personalized, high-quality customer support.
[1242] A "terminal" is an electronic device that a user operates and uses to input inquiries.
[1243] "Emotional data" refers to data that indicates a user's emotional state, extracted from factors such as the speed at which they input information and the language they use when submitting an inquiry.
[1244] An "emotion engine" is an analytical system that analyzes user inquiries and emotional data to determine their emotional state.
[1245] A "server" is a central processing unit that analyzes received inquiries and sentiment data to generate appropriate responses.
[1246] "Natural language processing technology" is a language analysis technology that analyzes user inquiries and generates appropriate responses.
[1247] "Personalization" refers to individually adjusting responses based on the user's emotional state to provide the most appropriate service.
[1248] This invention begins with the user entering their inquiry into a terminal and sending that data to a server. The server is a system that analyzes the user's inquiry and sentiment data using a tuned sentiment engine and natural language processing technology, and generates a personalized response based on the analysis results. This enables higher quality and more personalized customer support.
[1249] Hardware and software configuration
[1250] Terminal:
[1251] A terminal is an electronic device used by the user to enter inquiries, and includes smartphones, tablets, and personal computers. The user enters the inquiry details into the input field on the terminal and clicks the submit button.
[1252] Emotional engine:
[1253] The emotion engine is a system that analyzes emotions from input text data, using a combination of natural language processing (NLP) models and emotion analysis APIs (such as Clarabridge or IBM Watson).
[1254] server:
[1255] A server is a central processing unit that receives and analyzes inquiry content and sentiment data, and generates appropriate responses. Cloud services such as AWS, Google Cloud Platform, and Microsoft Azure can be used for this purpose.
[1256] Data processing and calculation
[1257] When a user enters an inquiry, the terminal sends the inquiry and emotion data to the emotion engine. The emotion engine uses natural language processing techniques to analyze the input text and determine the user's emotion. This analysis result and the inquiry are then sent back to the server. On the server side, a generative AI model (e.g., GPT-4) is used to generate a response that takes the emotional state into account. The generated response is then sent back to the terminal and displayed to the user.
[1258] Specific examples and prompt statements
[1259] Specific example:
[1260] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" while expressing anger, the terminal sends this data to the emotion engine. The emotion engine analyzes the emotional state of "angry" and sends the result to the server. The server generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[1261] Example of a prompt:
[1262] "I want to know the delivery status of order number 12345. Please tell me now!"
[1263] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1264] Step 1:
[1265] The user enters their inquiry into the terminal and clicks the send button. At this time, the user's input is text data such as "I want to know the delivery status of order number 12345. Tell me now!" The input data also includes input speed and word choice, which are used as sentiment data.
[1266] Step 2:
[1267] The device sends the inquiry content and sentiment data to the sentiment engine. The device's program passes the text data from the input fields, the user's input speed, and their word choice to the sentiment engine, generating a set of inquiry content and sentiment data. The input data is sent in JSON format or similar.
[1268] Step 3:
[1269] The emotion engine analyzes the received data to determine the user's emotions. The emotion engine uses natural language processing models (e.g., BERT or GPT-4) to analyze text data and generate emotion labels such as "angry," "anxious," and "calm." The input for this step is the query and emotion data, and the output is the resulting emotion labels.
[1270] Step 4:
[1271] The emotion engine sends the analysis results to the server. These results include the query content and an emotion label (e.g., "angry"). The input is the analysis results, and the output is the dataset sent to the server. This is also sent in JSON format.
[1272] Step 5:
[1273] The server receives the query content and sentiment label and retrieves the necessary information. The server accesses the database and retrieves information corresponding to the query (for example, "Delivery status of order number 12345"). At this time, the server adjusts the method and priority of information retrieval, taking the sentiment label into consideration. The input is the query content and sentiment label, and the output is the retrieved information data.
[1274] Step 6:
[1275] The server generates a response based on the information and sentiment data it has acquired. The server uses a generative AI model (e.g., GPT-4) to generate a personalized response that takes into account the acquired information and sentiment labels. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input is the acquired information and sentiment labels, and the output is the generated response.
[1276] Step 7:
[1277] The server generates a response message and sends it to the terminal, which then displays it to the user. The terminal's program receives the response message from the server and displays it on the screen in a user-friendly format, allowing the user to confirm the appropriate response. The input is the generated response message, and the output is what is displayed to the user.
[1278] 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.
[1279] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1280] 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.
[1281] [Fourth Embodiment]
[1282] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1283] 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.
[1284] 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).
[1285] 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.
[1286] 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.
[1287] 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).
[1288] 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.
[1289] 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.
[1290] 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.
[1291] 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.
[1292] 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.
[1293] 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.
[1294] 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".
[1295] This invention begins with a user entering an inquiry and sending it to a server using a terminal. The system aims to automatically process user inquiries and generate quick and appropriate responses. It also aims to streamline administrative tasks.
[1296] Program Processing Overview
[1297] Intelligent customer support
[1298] 1. The user enters the inquiry:
[1299] The user enters their inquiry using a device (such as a smartphone or computer). For example, they might enter, "I would like to know the delivery status of order number 12345."
[1300] 2. The device sends the query to the server:
[1301] The device sends data containing the inquiry details and user information to the server. This data is sent to the server in the form of an API request or similar.
[1302] 3. The server parses the query:
[1303] The query content is analyzed using natural language processing technology running on the server. This analysis extracts the main elements of the query (e.g., order number).
[1304] 4. The server retrieves the information:
[1305] Based on the analysis results, the server retrieves the necessary information from databases and other information sources. For example, it retrieves the current status of order number 12345 from the order management database.
[1306] 5. The server generates a response:
[1307] Based on the acquired information, the server generates a message to send back to the user. For example, it might generate a response such as, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1308] 6. The device receives a response and displays it to the user:
[1309] The terminal receives the response sent from the server and displays it on the screen in a format that the user can see.
[1310] Automation of administrative tasks
[1311] 1. The user enters the administrative task:
[1312] The user enters management tasks (e.g., scheduling appointments) through their device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023."
[1313] 2. The device sends task information to the server:
[1314] The device sends task details to the server in the form of an API request. The data sent includes the date and time and the task details.
[1315] 3. The server processes the task:
[1316] The server analyzes the received task details and registers them based on the schedule. For example, it might add a meeting to the user's calendar system.
[1317] 4. The server generates a confirmation message:
[1318] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[1319] 5. The device receives a confirmation message and displays it to the user:
[1320] The terminal receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[1321] Specific example
[1322] For example, if a user enters the inquiry "I want to know the delivery status of order number 12345," the device sends this inquiry to the server. The server uses natural language processing to extract order number 12345 and retrieves its delivery information from the database. Based on the retrieved information, it generates a response such as "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023," and sends it to the device. The device receives this response and displays it to the user.
[1323] Additionally, if the user enters "Schedule a meeting for 3 PM on October 20, 2023," the device sends this information to the server. The server adds this task to the schedule and generates and sends a confirmation message to the device stating "Meeting successfully scheduled." The device then displays this confirmation message to the user.
[1324] Thus, the system of the present invention reduces the burden on users and improves operational efficiency by automating inquiry handling and management tasks.
[1325] The following describes the processing flow.
[1326] Intelligent customer support
[1327] Detailed flow of inquiry processing
[1328] Step 1:
[1329] The user enters their inquiry into the input field on the device and clicks the submit button.
[1330] Step 2:
[1331] The terminal converts this input into a data format and sends it to the server as an API request along with the user ID.
[1332] Step 3:
[1333] The server analyzes the received data and uses natural language processing technology to analyze the received inquiry content as text. For example, if an inquiry is sent stating "I want to know the delivery status of order number 12345," the server will extract the keywords "order number 12345" and "delivery status."
[1334] Step 4:
[1335] The server accesses the database and searches for relevant information based on the extracted keywords. For example, it retrieves the current status of order number 12345 from the order management database.
[1336] Step 5:
[1337] Based on the information obtained by the server, it generates an appropriate response. For example, it might generate a response such as, "Order number 12345 is currently being shipped. The estimated arrival date is October 15, 2023."
[1338] Step 6:
[1339] The server generates a response message which is then sent back to the terminal as an API response.
[1340] Step 7:
[1341] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[1342] Automation of administrative tasks
[1343] Detailed flow of the scheduling process
[1344] Step 1:
[1345] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[1346] Step 2:
[1347] The terminal converts the entered task information into a data format and sends it to the server as an API request along with the user ID.
[1348] Step 3:
[1349] The server analyzes the received task information and verifies the date, time, and content. For example, if information such as "A meeting is scheduled for 3 PM on October 20, 2023" is sent, the server extracts the date, time, and task details.
[1350] Step 4:
[1351] The server accesses the database to check if there are any existing schedule conflicts at the specified date and time. For example, it checks if there are any other appointments at that time.
[1352] Step 5:
[1353] After confirming that there are no duplicates on the server, the extracted tasks are registered in the schedule database. For example, information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00" is saved.
[1354] Step 6:
[1355] The server generates a confirmation message to notify that the task has been successfully registered. For example, it might generate a message saying, "The meeting has been successfully scheduled."
[1356] Step 7:
[1357] The server generates a confirmation message and sends it to the terminal as an API response.
[1358] Step 8:
[1359] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[1360] These specific processing steps allow users to easily submit inquiries, receive appropriate responses, and manage their schedules efficiently.
[1361] (Example 1)
[1362] 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".
[1363] Existing response processing systems lack the ability to provide timely and appropriate responses to user inquiries. Furthermore, the lack of automation in administrative tasks is contributing to decreased operational efficiency.
[1364] 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.
[1365] In this invention, the server includes means for a user to input an inquiry via a communication device, means for the communication device to transmit the inquiry content to an information processing device, means for the information processing device to analyze the inquiry content, means for the information processing device to acquire information based on the analysis results, means for the information processing device to generate a response based on the acquired information, and means for the communication device to display the response from the information processing device to the user. As a result, the user can receive a quick and appropriate response, and an improvement in work efficiency can be expected.
[1366] A "user" refers to anyone who utilizes the response processing system, and is the entity that inputs inquiries and management tasks.
[1367] "Communication equipment" refers to terminal devices used by users, and includes electronic devices such as smartphones, computers, and tablets.
[1368] An "inquiry" refers to a question or request that a user sends via a communication device to obtain information.
[1369] An "information processing device" refers to a server or cloud computing infrastructure that analyzes user inquiries and generates responses.
[1370] "Natural language processing technology" refers to the techniques used to understand, analyze, and generate human language, and is also known as NLP (Natural Language Processing).
[1371] "Analysis" refers to the process by which an information processing device understands the content of a user's inquiry and extracts the necessary information.
[1372] "Acquisition" refers to the act of an information processing device collecting necessary information from databases and other information sources based on the analysis results.
[1373] "Response" refers to the reply to the user generated based on the information analyzed and acquired by the information processing device.
[1374] "Administrative tasks" refer to daily business operations such as setting schedules and managing tasks.
[1375] "Schedule information" refers to information related to time management, including the user's appointments and tasks.
[1376] An "API request" refers to a standardized request format for exchanging data between communication devices and information processing devices.
[1377] This invention begins with a user inputting an inquiry via a communication device and transmitting it to an information processing device. Specifically, the user inputs the inquiry using a communication device such as a smartphone or computer. The inputted inquiry is then transmitted to the information processing device by the communication device. Here, the communication device transmits the data using an API request format.
[1378] The information processing device (server) analyzes the received query content using natural language processing (NLP) techniques. Examples of NLP techniques include spaCy, BERT, and GPT. The server extracts key elements from the query and retrieves relevant information based on the analysis results. This retrieved information is obtained, for example, from a database system (such as MySQL or PostgreSQL).
[1379] The information processing device generates a response message to the user based on the analysis results and acquired information. A generative AI model is used to generate the response message. For example, OpenAI's GPT-3 is a typical example.
[1380] The generated response message is sent back to the communication device in the form of an API response. The communication device displays the received response message to the user. This allows the user to quickly obtain an appropriate answer to their inquiry.
[1381] As a concrete example, consider a case where a user enters the inquiry, "I want to know the delivery status of order number 12345." The communication device sends this inquiry to the information processing device, and the server uses natural language processing technology to extract "order number 12345." Next, the server retrieves the delivery information for "order number 12345" from the database and generates a response: "Order 12345 is currently being shipped, and the estimated arrival date is October 15, 2023." This response is sent to the communication device and displayed to the user.
[1382] This system also includes the automation of administrative tasks. For example, if a user enters "Schedule a meeting for 3 PM on October 20, 2023," the communication device sends this task information to the server, and the server adds the task to the user's schedule. Specifically, it registers the schedule using the Google Calendar API, etc. The server generates a confirmation message, "Meeting successfully scheduled," and displays it to the user via the communication device.
[1383] This system allows users to receive quick and appropriate responses and automates administrative tasks. This is expected to improve operational efficiency. In this way, the invention's benefits are maximized.
[1384] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1385] Step 1:
[1386] The user enters their inquiry.
[1387] Users enter their inquiries in text format using communication devices such as smartphones or computers. For example, they might enter, "I would like to know the delivery status of order number 12345." This input data is then processed by the communication device in the next step.
[1388] Step 2:
[1389] The terminal sends the query to the server.
[1390] The communication device converts the user's input into an API request format. Specifically, it uses the HTTP POST method to send JSON data containing the inquiry content and user information to the information processing device (server). The input data consists of the inquiry text and user information, and the output is the transmission of the request to the server.
[1391] Step 3:
[1392] The server analyzes the query.
[1393] The information processing device analyzes the received API request. Specifically, it analyzes the query text using natural language processing techniques (e.g., spaCy, BERT, GPT) and extracts key elements (e.g., order number). The input data is the query text, and the output is the key elements of the analysis result (such as the order number).
[1394] Step 4:
[1395] The server retrieves the information.
[1396] The information processing device retrieves necessary information from databases and other information sources based on the analysis results. For example, it might execute a query against an order management database (e.g., MySQL, PostgreSQL) to retrieve delivery information for "order number 12345". The input data is the analysis results, and the output is the retrieved information (such as delivery status).
[1397] Step 5:
[1398] The server generates a response.
[1399] The information processing device generates an appropriate response message based on the acquired information. Specifically, it uses a generation AI model (e.g., OpenAI's GPT-3) to create a response in a natural style. For example, the response might be, "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the acquired information, and the output is the generated response message.
[1400] Step 6:
[1401] The terminal receives a response and displays it to the user.
[1402] The communication device receives a response message sent from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "Order 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input data is the response message from the server, and the output is the message displayed on the screen.
[1403] Step 7:
[1404] The user enters the management task.
[1405] The user enters management tasks in text format using a communication device. For example, they might enter, "Schedule a meeting for 3 PM on October 20, 2023." This input data is then processed by the communication device in the next step.
[1406] Step 8:
[1407] The terminal sends task information to the server.
[1408] The communication device converts the task content entered by the user into an API request format. It uses the HTTP POST method to send JSON data containing the task content to the information processing device (server). The input data is the task text, and the output is the request sent to the server.
[1409] Step 9:
[1410] The server processes the task.
[1411] The information processing device analyzes the received task details and registers them in the user's scheduling system. For example, it uses the Google Calendar API to add a meeting to the schedule. The input data is the task details, and the output is the task registered in the schedule.
[1412] Step 10:
[1413] The server generates a confirmation message.
[1414] The information processing device generates a confirmation message to notify that a task has been successfully registered. It may also use a generation AI model to create the message in a natural style. For example, a confirmation message such as "The meeting has been successfully scheduled." might be generated. The input data is the registered task information, and the output is the generated confirmation message.
[1415] Step 11:
[1416] The device receives a confirmation message and displays it to the user.
[1417] The communication device receives a confirmation message from the server and displays it on the user's screen. Specifically, the UI component of the communication device displays the message in the designated location. For example, the user's smartphone screen might display "The meeting has been successfully scheduled." The input data is the confirmation message from the server, and the output is the message displayed on the screen.
[1418] (Application Example 1)
[1419] 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".
[1420] Traditional customer support systems can generate quick and appropriate responses to user inquiries, but they lack the ability to provide optimal suggestions based on the user's usage history and preferences. As a result, the user experience is limited, and the quality of information provided does not improve. In addition, in content distribution services, users may not receive recommendations based on their viewing history and preferences, which can lead to decreased service satisfaction.
[1421] 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.
[1422] In this invention, the server includes means for the user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content to the server, and means for the server to analyze the inquiry content. This makes it possible to provide a system that includes means for the server to refer to the user's usage history data to make optimal suggestions, and means for using a generative AI model to generate recommendation information based on the inquiry content. This improves the user experience and increases user satisfaction. Furthermore, in content distribution services, it is possible to provide recommendations optimized for individual users, thereby increasing the competitiveness of the service.
[1423] An "inquiry" refers to a question or request that a user enters through their device and sends to a server.
[1424] "Device" refers to a device used by a user, such as a smartphone, computer, smart glasses, or head-mounted display.
[1425] A "server" refers to a computer system used to analyze queries, retrieve information, and generate responses.
[1426] "Analysis" refers to the process that a server uses natural language processing techniques to understand the content of a query.
[1427] "Usage history data" refers to data that includes records of actions and viewings that a user has performed in the past.
[1428] A "response" refers to a reply message generated by the server based on the information it has acquired and provided to the user.
[1429] "Suggestion" refers to the act of a server recommending optimal information or content by referring to the user's usage history data.
[1430] A "generative AI model" refers to an artificial intelligence model that performs natural language processing and data analysis to automatically generate appropriate responses and suggestions.
[1431] "Recommended information" refers to specific content or information provided by the server based on the user's inquiries and usage history.
[1432] A "content distribution service" refers to a service that provides users with digital content such as videos, music, and articles.
[1433] The system for implementing this invention involves a user inputting an inquiry through a terminal, which is then transmitted from the terminal to a server. The server analyzes the inquiry and retrieves information based on the analysis results. It also references the user's usage history data to provide optimal suggestions. Furthermore, it uses a generative AI model to generate recommended information based on the inquiry.
[1434] Hardware and software to use
[1435] Hardware: Smartphones, smart glasses, head-mounted displays, or computers, etc.
[1436] software:
[1437] 1. Natural Language Processing Techniques:
[1438] The server analyzes user inquiries using natural language processing techniques. For this purpose, the Google NLP API and the transformers library are used.
[1439] 2. Data analysis algorithms:
[1440] The server uses data analysis algorithms such as Collaborative Filtering to analyze user usage history data and generate optimal suggestions.
[1441] 3. Generative AI Models:
[1442] The server uses generative AI models such as BERT and GPT (Generative Pre-trained Transformer) to generate recommendation information based on the query content.
[1443] Program Processing Overview
[1444] 1. User input:
[1445] The user enters a question into their device, such as "What are today's recommended movies?" The question can be entered via keyboard or voice input.
[1446] 2. API Request:
[1447] The device sends data to the server, including user information along with the query details. This request is structured in a format such as JSON before being sent.
[1448] 3. Natural Language Processing:
[1449] The server analyzes the query using the Google NLP API and the transformers library, extracting key keywords. This step helps understand the intent behind the query.
[1450] 4. Data acquisition:
[1451] The server identifies the most suitable content (e.g., movies or TV shows) by referencing user usage history data and rating databases. Algorithms such as collaborative filtering are used to select content that best matches the user's preferences.
[1452] 5. Response generation:
[1453] Based on the information it retrieves, the server uses a generative AI model (e.g., GPT) to generate an appropriate response to the query. For example, it might generate a message like, "We recommend the movie 'Inception' for you. This movie is a good match for your viewing history."
[1454] 6. Response display:
[1455] The response sent from the server is received by the terminal and displayed to the user. The response message is displayed on the screen of a smartphone, smart glasses, or head-mounted display.
[1456] Specific example
[1457] When a user types "What are today's recommended movies?" into their smartphone, the server analyzes the query and selects the most suitable movie from the user's viewing history database. Then, using a generative AI model, it generates a response such as "The movie we recommend for you is 'Inception'," and displays this response on the smartphone screen.
[1458] Example of a prompt
[1459] "What's your recommended movie for today?"
[1460] "Could you recommend some movies you've seen recently?"
[1461] "Tell me about movies related to the genre I'm currently watching."
[1462] Thus, this invention not only responds quickly to user inquiries but also improves the user experience by recommending optimal content based on the user's usage history. Furthermore, by using a generative AI model, the quality of responses to inquiries can also be improved.
[1463] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1464] Step 1:
[1465] User input
[1466] The user enters their inquiry into the terminal. Input methods include text input and voice input.
[1467] Input: The user types "What are today's recommended movies?" into their smartphone.
[1468] Operation: The terminal captures the content of this inquiry and converts it into a data format.
[1469] Step 2:
[1470] Sending an API request
[1471] The terminal sends the user's inquiry and user information to the server.
[1472] Input: User inquiry details and user information (e.g., User ID, past viewing history).
[1473] Data processing: Convert to structured data such as JSON format.
[1474] Output: API request sent to the server.
[1475] Operation: The terminal bundles the inquiry details and user information and sends an API request to the server.
[1476] Step 3:
[1477] Natural Language Processing
[1478] The server analyzes the content of the received query using natural language processing technology.
[1479] Input: The content of the user's inquiry sent from the terminal.
[1480] Data processing: Keyword extraction using the Google NLP API and the transformers library.
[1481] Output: Analyzed keywords (e.g., "recommended movies").
[1482] Operation: The server analyzes the query content using natural language processing technology and extracts key keywords.
[1483] Step 4:
[1484] Data acquisition
[1485] The server selects the most suitable content by referring to usage history data.
[1486] Input: Analyzed keywords and user information (e.g., viewing history).
[1487] Data processing: Recommends optimal content using algorithms such as Collaborative Filtering.
[1488] Output: Recommended content (e.g., movie title "Inception").
[1489] Operation: The server refers to the user's viewing history database and selects appropriate recommended content.
[1490] Step 5:
[1491] Response generation
[1492] The server uses a generated AI model to produce a response to the query.
[1493] Input: Recommended content and user inquiries.
[1494] Data processing: Generate response messages based on a generative AI model (e.g., GPT).
[1495] Output: Response message (e.g., "The movie I recommend for you is 'Inception'").
[1496] Operation: The server uses a generative AI model to create an appropriate response to the query.
[1497] Step 6:
[1498] Response display
[1499] The terminal receives a response message from the server and displays it to the user.
[1500] Input: The response message sent from the server.
[1501] Output: The response message displayed to the user.
[1502] Operation: The device displays the received response message to the user, for example, on the screen of a smartphone.
[1503] The above outlines the specific processing steps involved in responding to a user inquiry, from the server recommending the most suitable content to displaying the response.
[1504] 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.
[1505] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion engine to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[1506] Program Processing Overview
[1507] Integrating an emotion engine into intelligent customer support
[1508] 1. The user enters the inquiry:
[1509] The user enters their inquiry into the input field on the device and clicks the submit button. For example, they might enter, "I would like to know the delivery status of order number 12345."
[1510] 2. The device sends the inquiry and the user's sentiment to the sentiment engine:
[1511] The device sends the inquiry content and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, the user's input speed, and word choice.
[1512] 3. The emotion engine analyzes the user's emotions:
[1513] The emotion engine analyzes the user's emotions based on the data it receives. For example, it determines whether the user is anxious, angry, or calm.
[1514] 4. The emotion engine sends the analysis results to the server:
[1515] The emotion engine analyzes the emotion data and sends the inquiry details to the server. For example, it sends data such as "Order number 12345" and "User is angry."
[1516] 5. The server analyzes the query content and retrieves information based on sentiment data:
[1517] The server analyzes the received query and retrieves the necessary information from the database. It also adjusts the method and priority of information retrieval based on the user's emotional state.
[1518] 6. The server generates a response:
[1519] Based on the acquired information and sentiment data, the server generates an appropriate response. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1520] 7. The terminal receives a response from the server and displays it to the user:
[1521] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[1522] Integrating an emotion engine into the automation of administrative tasks
[1523] 1. The user enters the administrative task:
[1524] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[1525] 2. The device sends task information and sentiment data to the sentiment engine:
[1526] The terminal sends the entered task details and user sentiment data to the sentiment engine.
[1527] 3. The emotion engine analyzes the user's emotions:
[1528] The emotion engine analyzes the user's emotions based on the data it receives.
[1529] 4. The emotion engine sends the analysis results to the server:
[1530] The emotion engine sends task information, including analysis results, to the server.
[1531] 5. The server analyzes the task and registers it for scheduling based on sentiment data:
[1532] The server analyzes the received task details and adds them to the schedule, taking into account the results and sentiment data.
[1533] 6. The server generates a confirmation message:
[1534] The server generates a confirmation message tailored to the user's emotional state to notify them that the task has been successfully registered.
[1535] 7. The device receives a confirmation message and displays it to the user:
[1536] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[1537] Specific example
[1538] For example, if a user enters an inquiry asking for the delivery status of order number 12345 and is feeling angry, the terminal sends this data to the emotion engine, which analyzes that the user is angry. The server processes the inquiry along with the "angry" emotion data and generates a response, sending to the user, saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1539] Furthermore, if a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotional data to the emotion engine, which analyzes the user's anxiety. Based on the emotional data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[1540] Thus, the system of the present invention can significantly improve the user experience by analyzing user emotions in inquiry handling and management tasks and generating appropriate responses.
[1541] The following describes the processing flow.
[1542] Integrating an emotion engine into intelligent customer support
[1543] Detailed flow of inquiry processing
[1544] Step 1:
[1545] The user enters their inquiry into the input field on the device and clicks the submit button.
[1546] Step 2:
[1547] The device sends this input along with the user's sentiment data to the sentiment engine. Sentiment data is collected from text analysis, keyboard input speed, touchscreen tap intensity, and other factors.
[1548] Step 3:
[1549] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can estimate whether the user is angry, anxious, or calm based on the text content and input style.
[1550] Step 4:
[1551] The emotion engine sends the analysis results to the server. For example, it sends data such as "Order number 12345" and "Emotion: Anger".
[1552] Step 5:
[1553] The server analyzes the received inquiry and uses natural language processing technology to extract key information such as "delivery status of order number 12345".
[1554] Step 6:
[1555] The server accesses the database and retrieves the current status of order number 12345 from the order management database.
[1556] Step 7:
[1557] Based on the information acquired by the server, a response message is generated that corresponds to the user's emotional state. For example, if the user is angry, the response might be something like, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023."
[1558] Step 8:
[1559] The server sends the generated response message to the terminal as an API response.
[1560] Step 9:
[1561] The terminal receives a response from the server and displays it on the screen in a format that the user can review.
[1562] Integrating an emotion engine into the automation of administrative tasks
[1563] Detailed flow of the scheduling process
[1564] Step 1:
[1565] The user enters a new task (e.g., a meeting) into the terminal's scheduling interface, specifies the date, time, and content, and clicks the register button.
[1566] Step 2:
[1567] The terminal sends the entered task information and user sentiment data to the sentiment engine. Sentiment data is extracted from the context of input, input speed, word choice, etc.
[1568] Step 3:
[1569] The emotion engine analyzes the user's emotions based on the data it receives. For example, it can analyze whether the user is anxious based on their input style and speed.
[1570] Step 4:
[1571] The emotion engine sends the analysis results to the server. For example, it sends data such as "October 20, 2023, 3 PM", "Meeting", and "Emotion: Anxiety".
[1572] Step 5:
[1573] The server analyzes the received task details and checks for duplicates and other issues using the calendar system. It then checks for any problems by comparing them with existing schedules.
[1574] Step 6:
[1575] The server registers the task in the scheduling database. For example, it saves information such as "Register a meeting for user ID 6789 on October 20, 2023 at 15:00."
[1576] Step 7:
[1577] To notify the user that the task has been successfully registered, the server generates a confirmation message tailored to the user's emotional state. For example, if the user is anxious, it might generate a message such as, "Your meeting has been successfully scheduled. Please rest assured."
[1578] Step 8:
[1579] The server generates a confirmation message and sends it to the terminal as an API response.
[1580] Step 9:
[1581] The device receives a confirmation message from the server and displays it on the screen in a format that the user can confirm.
[1582] These specific processing steps allow users to submit inquiries, receive appropriate responses tailored to their emotions, and manage their schedules efficiently.
[1583] (Example 2)
[1584] 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".
[1585] Traditional customer support systems have a problem in that they do not generate responses that take into account the user's emotions, making it difficult to improve user satisfaction. In particular, when users are experiencing emotions such as anger or frustration, appropriate responses cannot be provided, and the effectiveness of problem solving is reduced. Furthermore, in schedule management, there is a lack of appropriate notifications and responses that respond to the user's emotions, which poses a challenge to improving work efficiency and preventing errors.
[1586] 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.
[1587] In this invention, the server includes means for a user to input an inquiry through a terminal, means for the terminal to transmit the inquiry content and the user's emotional data to an emotion analysis device, means for the emotion analysis device to analyze the inquiry content and emotional data, means for the emotion analysis device to transmit the analysis results to the server, means for the server to acquire information based on the analysis results, means for the server to generate a response based on the acquired information and the analysis results, and means for the terminal to display the response from the server to the user.
[1588] This enables the generation of personalized responses that take user emotions into account, thereby improving user satisfaction. Furthermore, appropriate notifications tailored to emotions are provided during schedule management, leading to improved work efficiency and reduced errors.
[1589] A "user" is an individual or organization that uses the system to make inquiries or input tasks.
[1590] A "terminal" is a device operated by the user, which inputs inquiry details and task information, and communicates with the server and sentiment analysis device.
[1591] An "emotion analysis device" is a software module or hardware device that analyzes emotions based on user input data.
[1592] A "server" is a computer system that retrieves information based on analysis results, generates appropriate responses, and sends those responses to terminals.
[1593] "Inquiry content" refers to text data related to questions and requests entered by the user through their device.
[1594] "Emotional data" refers to data that indicates the emotional state of a user, extracted from their input actions, word choice, and context.
[1595] "Analysis results" refer to data generated by the emotion analysis device, including the analysis results of the user's emotional state and inquiry content.
[1596] "Information" refers to data related to user queries that the server retrieves from databases and other information sources.
[1597] A "response" is a message generated by the server in response to a user's inquiry, and it is a document created with the user's emotional state in mind.
[1598] "Natural language processing technology" refers to the technology used to analyze, understand, and generate human language using computer systems.
[1599] This invention is a system that, in addition to the process of a user inputting an inquiry and sending it to a server using a terminal, combines it with an emotion analysis device (hereinafter referred to as the emotion engine) to analyze the user's emotions and generate a response accordingly. This system achieves higher customer satisfaction by providing personalized responses that correspond to the user's emotions.
[1600] Hardware and software to be used
[1601] The following hardware and software are required to implement this system:
[1602] Device: The device used by the user (PC, smartphone, tablet, etc.)
[1603] Server: A computer system that performs data analysis and response generation (e.g., Linux server, Windows Server).
[1604] Emotion engine: A software module that analyzes user emotions (e.g., IBM Watson Tone Analyzer, Microsoft Azure Text Analytics)
[1605] Overview of Program Processing
[1606] Integrating an emotion engine into intelligent customer support
[1607] When a user enters an inquiry into the terminal's input field and clicks the submit button, the terminal sends the inquiry and the user's sentiment data to the sentiment engine. The sentiment engine analyzes the user's sentiment based on the received data and sends the results to the server. The server analyzes the received inquiry and sentiment data and retrieves the necessary information from the database. Then, based on the retrieved information and analysis results, it generates an appropriate response and sends it to the terminal. The terminal receives the response from the server and displays it to the user.
[1608] Software technologies used
[1609] The emotion engine uses natural language processing technology for analysis. This allows it to extract emotion data from the user's inquiry content, input speed, and word choice. On the server side, it retrieves information from the database based on the received emotion data and inquiry content, and generates a customized response using a template engine.
[1610] Specific example
[1611] Example 1: Customer Support
[1612] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" and is feeling angry, the terminal sends this data to the emotion engine. The emotion engine analyzes whether the user is angry and sends the results to the server. The server processes the inquiry along with the emotion data "angry" and generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[1613] Specific example 2: Management tasks
[1614] If a user enters "Meeting scheduled for 3 PM on October 20, 2023" and is feeling anxious, the device sends this information and emotion data to the emotion engine. The emotion engine analyzes the user's anxiety and sends the results to the server. Based on the emotion data, the server quickly schedules the task and sends a reassuring confirmation message to the user stating, "Meeting successfully scheduled."
[1615] Example of a prompt
[1616] Customer Support: "I would like to know the delivery status of order number 12345. Please generate an appropriate response for when the user is angry."
[1617] Administrative Task: "A meeting is scheduled for 3 PM on October 20, 2023. Please create a confirmation message for users who are feeling anxious."
[1618] This system can significantly improve the user experience by analyzing user emotions during inquiry handling and management tasks and generating appropriate responses.
[1619] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1620] Step 1:
[1621] The user enters their inquiry.
[1622] Input: The user enters their inquiry into the input field on the terminal and clicks the submit button. For example, "I would like to know the delivery status of order number 12345."
[1623] Action: Characters appear in the terminal's input field, and a click event occurs on the send button.
[1624] Step 2:
[1625] The terminal sends the inquiry details and user sentiment data to the sentiment analysis device.
[1626] Input: User inquiry content, input speed, and characteristic information such as language use.
[1627] Data processing: Generate sentiment data and integrate it with the query content.
[1628] Output: Integrated data of inquiry content and sentiment data.
[1629] Operation: The device sends data to the sentiment analysis device via an API request.
[1630] Step 3:
[1631] An emotion analysis device analyzes the user's emotions.
[1632] Input: Inquiry content and sentiment data sent from the device.
[1633] Data processing: Using natural language processing (NLP) techniques, we identify emotions from context and word choice and generate analysis scores.
[1634] Output: JSON data containing the user's emotional state (e.g., "Angry" 80%) as an analysis result.
[1635] Operation: The analysis module is executed, and the emotion score is calculated and the analysis results are generated.
[1636] Step 4:
[1637] The emotion analysis device sends the analysis results to the server.
[1638] Input: JSON data of analysis results, including the user's emotional state.
[1639] Output: Analysis result data sent to the server.
[1640] Operation: The analysis results are sent to the server via an HTTP POST request.
[1641] Step 5:
[1642] The server analyzes the query and retrieves the information.
[1643] Input: Analysis results and inquiry content sent from the emotion analysis device.
[1644] Data processing: Based on the analysis results and query content, SQL queries are issued to the database to search for and retrieve the necessary information.
[1645] Output: Information retrieved from the database.
[1646] Operation: Establishes a database connection and executes SQL queries to retrieve the necessary data.
[1647] Step 6:
[1648] The server generates a response.
[1649] Input: Information retrieved from the database and sentiment analysis results.
[1650] Data processing: Use a template engine to generate response sentences that correspond to emotional states.
[1651] Output: The response message to send to the user.
[1652] Operation: The template engine is executed and a response message is generated.
[1653] Step 7:
[1654] The terminal receives a response from the server and displays it to the user.
[1655] Input: The response message sent from the server.
[1656] Output: The response message displayed on the screen.
[1657] Operation: The terminal receives data from the server, and a response message is displayed on the screen.
[1658] (Application Example 2)
[1659] 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".
[1660] In today's online shopping and service environment, customers demand fast and effective customer support. However, traditional systems often fail to provide personalized responses that take user emotions into account, leading to decreased customer satisfaction. Furthermore, insufficient sentiment analysis makes it difficult to respond to users' true needs and emotions. This hinders improvements in the customer experience.
[1661] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for analyzing the inquiry content and sentiment data, means for acquiring information based on the analysis results, and means for generating a response based on the acquired information and sentiment data. This enables the generation of a response that matches the user's emotions, resulting in personalized, high-quality customer support.
[1662] A "terminal" is an electronic device that a user operates and uses to input inquiries.
[1663] "Emotional data" refers to data that indicates a user's emotional state, extracted from factors such as the speed at which they input information and the language they use when submitting an inquiry.
[1664] An "emotion engine" is an analytical system that analyzes user inquiries and emotional data to determine their emotional state.
[1665] A "server" is a central processing unit that analyzes received inquiries and sentiment data to generate appropriate responses.
[1666] "Natural language processing technology" is a language analysis technology that analyzes user inquiries and generates appropriate responses.
[1667] "Personalization" refers to individually adjusting responses based on the user's emotional state to provide the most appropriate service.
[1668] This invention begins with the user entering their inquiry into a terminal and sending that data to a server. The server is a system that analyzes the user's inquiry and sentiment data using a tuned sentiment engine and natural language processing technology, and generates a personalized response based on the analysis results. This enables higher quality and more personalized customer support.
[1669] Hardware and software configuration
[1670] Terminal:
[1671] A terminal is an electronic device used by the user to enter inquiries, and includes smartphones, tablets, and personal computers. The user enters the inquiry details into the input field on the terminal and clicks the submit button.
[1672] Emotional engine:
[1673] The emotion engine is a system that analyzes emotions from input text data, using a combination of natural language processing (NLP) models and emotion analysis APIs (such as Clarabridge or IBM Watson).
[1674] server:
[1675] A server is a central processing unit that receives and analyzes inquiry content and sentiment data, and generates appropriate responses. Cloud services such as AWS, Google Cloud Platform, and Microsoft Azure can be used for this purpose.
[1676] Data processing and calculation
[1677] When a user enters an inquiry, the terminal sends the inquiry and emotion data to the emotion engine. The emotion engine uses natural language processing techniques to analyze the input text and determine the user's emotion. This analysis result and the inquiry are then sent back to the server. On the server side, a generative AI model (e.g., GPT-4) is used to generate a response that takes the emotional state into account. The generated response is then sent back to the terminal and displayed to the user.
[1678] Specific examples and prompt statements
[1679] Specific example:
[1680] If a user enters an inquiry such as "I want to know the delivery status of order number 12345" while expressing anger, the terminal sends this data to the emotion engine. The emotion engine analyzes the emotional state of "angry" and sends the result to the server. The server generates a response saying, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023," and sends it to the user.
[1681] Example of a prompt:
[1682] "I want to know the delivery status of order number 12345. Please tell me now!"
[1683] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1684] Step 1:
[1685] The user enters their inquiry into the terminal and clicks the send button. At this time, the user's input is text data such as "I want to know the delivery status of order number 12345. Tell me now!" The input data also includes input speed and word choice, which are used as sentiment data.
[1686] Step 2:
[1687] The device sends the inquiry content and sentiment data to the sentiment engine. The device's program passes the text data from the input fields, the user's input speed, and their word choice to the sentiment engine, generating a set of inquiry content and sentiment data. The input data is sent in JSON format or similar.
[1688] Step 3:
[1689] The emotion engine analyzes the received data to determine the user's emotions. The emotion engine uses natural language processing models (e.g., BERT or GPT-4) to analyze text data and generate emotion labels such as "angry," "anxious," and "calm." The input for this step is the query and emotion data, and the output is the resulting emotion labels.
[1690] Step 4:
[1691] The emotion engine sends the analysis results to the server. These results include the query content and an emotion label (e.g., "angry"). The input is the analysis results, and the output is the dataset sent to the server. This is also sent in JSON format.
[1692] Step 5:
[1693] The server receives the query content and sentiment label and retrieves the necessary information. The server accesses the database and retrieves information corresponding to the query (for example, "Delivery status of order number 12345"). At this time, the server adjusts the method and priority of information retrieval, taking the sentiment label into consideration. The input is the query content and sentiment label, and the output is the retrieved information data.
[1694] Step 6:
[1695] The server generates a response based on the information and sentiment data it has acquired. The server uses a generative AI model (e.g., GPT-4) to generate a personalized response that takes into account the acquired information and sentiment labels. For example, if the user is angry, it will generate a response such as, "We apologize for the inconvenience. Order number 12345 is currently being shipped and is expected to arrive on October 15, 2023." The input is the acquired information and sentiment labels, and the output is the generated response.
[1696] Step 7:
[1697] The server generates a response message and sends it to the terminal, which then displays it to the user. The terminal's program receives the response message from the server and displays it on the screen in a user-friendly format, allowing the user to confirm the appropriate response. The input is the generated response message, and the output is what is displayed to the user.
[1698] 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.
[1699] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1700] 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 robot 414.
[1701] 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.
[1702] 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.
[1703] 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.
[1704] 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.
[1705] 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.
[1706] 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."
[1707] 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.
[1708] 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.
[1709] 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.
[1710] 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.
[1711] 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.
[1712] 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.
[1713] 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.
[1714] 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.
[1715] 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.
[1716] 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.
[1717] 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.
[1718] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted as being incorporated by reference.
[1719] The following is further disclosed regarding the embodiments described above.
[1720] (Claim 1)
[1721] A means for the user to enter an inquiry through a terminal,
[1722] A means by which the terminal sends the inquiry content to the server,
[1723] The server has a means of analyzing the query content,
[1724] A means by which the server obtains information based on the analysis results,
[1725] A means of generating a response based on information acquired by the server,
[1726] A means by which the terminal displays the response from the server to the user,
[1727] A system that includes this.
[1728] (Claim 2)
[1729] The system according to claim 1, wherein the server analyzes the content of the inquiry using natural language processing technology.
[1730] (Claim 3)
[1731] The system according to claim 1, comprising means for the server to manage user schedule information.
[1732] "Example 1"
[1733] (Claim 1)
[1734] A means by which users enter inquiries via communication devices,
[1735] A means by which a communication device transmits the content of an inquiry to an information processing device,
[1736] The means by which the information processing device analyzes the content of the inquiry,
[1737] A means by which an information processing device acquires information based on the analysis results,
[1738] A means for generating a response based on information acquired by an information processing device,
[1739] A means by which a communication device displays a response from an information processing device to the user,
[1740] A response processing system including a response processing system.
[1741] (Claim 2)
[1742] The response processing system according to claim 1, wherein the information processing device analyzes the content of the inquiry using natural language processing technology.
[1743] (Claim 3)
[1744] The response processing system according to claim 1, wherein the information processing device includes means for managing the user's schedule information.
[1745] "Application Example 1"
[1746] (Claim 1)
[1747] A means for the user to enter an inquiry through a terminal,
[1748] A means by which the terminal sends the inquiry content to the server,
[1749] The server has a means of analyzing the query content,
[1750] A means by which the server obtains information based on the analysis results,
[1751] A means of generating a response based on information acquired by the server,
[1752] A means by which the terminal displays the response from the server to the user,
[1753] A means by which the server makes optimal suggestions by referring to the user's usage history data,
[1754] A system that includes this.
[1755] (Claim 2)
[1756] The system according to claim 1, wherein the server analyzes the content of the inquiry using natural language processing technology.
[1757] (Claim 3)
[1758] The system according to claim 1, comprising means for the server to manage user schedule information.
[1759] (Claim 4)
[1760] The system according to claim 1, wherein the server uses a generative AI model to generate recommended information based on the content of the inquiry.
[1761] "Example 2 of combining an emotion engine"
[1762] (Claim 1)
[1763] A means for the user to enter an inquiry through a terminal,
[1764] A means by which the terminal transmits the inquiry content and user sentiment data to an sentiment analysis device,
[1765] The emotion analysis device provides a means for analyzing the content of inquiries and emotion data,
[1766] A means by which the emotion analysis device transmits the analysis results to a server,
[1767] A means by which the server obtains information based on the analysis results,
[1768] A means for generating a response based on the information acquired by the server and the analysis results,
[1769] A means by which the terminal displays the response from the server to the user,
[1770] A system that includes this.
[1771] (Claim 2)
[1772] The system according to claim 1, wherein a server analyzes the content of an inquiry using natural language processing technology, and an emotion analysis device analyzes the user's emotions.
[1773] (Claim 3)
[1774] The system according to claim 1, comprising means for a server to manage user schedule information and an emotion analysis device to provide appropriate notifications to the user based on emotions.
[1775] "Application example 2 when combining with an emotional engine"
[1776] (Claim 1)
[1777] A means for the user to enter an inquiry through a terminal,
[1778] A means by which the terminal sends inquiry content and sentiment data to the server,
[1779] The emotion engine provides a means for analyzing the content of inquiries and emotion data,
[1780] A means by which the server obtains information based on the analysis results,
[1781] A means of generating a response based on information and sentiment data acquired by the server,
[1782] A means by which the terminal displays the response from the server to the user,
[1783] A system that includes this.
[1784] (Claim 2)
[1785] The system according to claim 1, which includes means for a server to analyze query content and sentiment data using natural language processing technology.
[1786] (Claim 3)
[1787] The system according to claim 1, comprising means for the server to personalize its response according to the user's emotional state. [Explanation of Symbols]
[1788] 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 for the user to enter an inquiry through a terminal, A means by which the terminal sends the inquiry content to the server, The server has a means of analyzing the query content, A means by which the server obtains information based on the analysis results, A means of generating a response based on information acquired by the server, A means by which the terminal displays the response from the server to the user, A system that includes this.
2. The system according to claim 1, wherein the server analyzes the content of the inquiry using natural language processing technology.
3. The system according to claim 1, which includes means for the server to manage user schedule information.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A