system
The system addresses the lack of personalized responses in conventional systems by integrating time, location, and weather information to generate tailored advice, enhancing user convenience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-02
- Publication Date
- 2026-04-14
AI Technical Summary
Conventional systems fail to provide personalized responses that take into account individual time, location, and weather information, leading to inconvenience and difficulty in judging appropriate actions.
A system that includes means for receiving user input, acquiring time and location information, generating greeting and response messages based on weather information, and providing tailored information by combining these factors, with the option to add additional advice based on specific conditions.
Enables users to receive optimal information tailored to their environment, improving convenience by providing detailed advice on clothing and weather conditions.
Smart Images

Figure 2026064622000001_ABST
Abstract
Description
Technical Field
[0001] The technology of this disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, the method including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance as a response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In a conventional system, only a simple response is made to an input from a user, and it has been difficult to provide appropriate information according to individual time, weather, and location information. For this reason, the user could not obtain the information most suitable for the environment at that time and sometimes felt inconvenient. Also, due to the lack of detailed advice according to changes in weather and time zones, the user was in a situation where it was difficult to judge appropriate actions.
Means for Solving the Problems
[0005] To solve the above problems, the present invention provides the following means: a system including means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, and means for providing the response message to the user. Furthermore, by including means for adding additional information when specific conditions are included in the weather information during the generation of the response message, and means for suggesting clothing according to the weather and temperature based on the user's location information and time information, it becomes possible to provide optimal information according to the user's environment.
[0006] A "user" refers to an individual who uses the system.
[0007] A "terminal" refers to a device used by a user to access, input, and output information from a system. This includes smartphones, tablets, and computers.
[0008] A "server" refers to a computer system used to process user requests and provide necessary data.
[0009] "Input method" refers to an interface for receiving instructions or information from the user. Examples include keyboards and touchscreens.
[0010] "Time information" refers to data that indicates the current time.
[0011] "Location information" refers to latitude and longitude data used to indicate the user's current location.
[0012] "Weather information" refers to data about the current weather conditions in a specified area. This includes weather conditions such as sunny, rainy, and snowy, as well as temperature and humidity.
[0013] A "greeting message" refers to the initial message sent to the user based on the time of day. This includes messages like "Good morning" for the morning and "Good afternoon" for the afternoon.
[0014] A "response message" refers to a reply message generated based on user input and acquired information.
[0015] "Additional information" refers to information added to weather forecasts when specific conditions are included. For example, it may include advice such as "Please bring an umbrella" when rain is expected.
[0016] "Clothing suggestions" refers to the act of recommending appropriate clothing to the user based on the current weather and temperature. [Brief explanation of the drawing]
[0017] [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] Shows an emotion map where multiple emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when the emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when the emotion engine is combined. **Mode for Carrying Out the Invention**
[0018] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described according to the accompanying drawings.
[0019] First, the language used in the following description will be explained.
[0020] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), etc.
[0021] In the following embodiments, a numbered RAM (Random Access Memory) is a memory where information is temporarily stored and is used as a work memory by the processor.
[0022] 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.
[0023] 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).
[0024] 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."
[0025] [First Embodiment]
[0026] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0027] 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.
[0028] 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).
[0029] 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.
[0030] 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.
[0031] 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.
[0032] 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.
[0033] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] 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.
[0035] 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.
[0036] 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.
[0037] 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".
[0038] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[0039] System Configuration
[0040] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information.
[0041] Program Processing Overview
[0042] 1. Receive user input
[0043] The user enters text into the terminal. A specific example would be entering the question, "What's the weather like today?"
[0044] The terminal receives this input and sends the corresponding text data to the server.
[0045] 2. Obtaining time information
[0046] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[0047] 3. Acquisition of location information
[0048] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[0049] 4. Obtaining weather information
[0050] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0051] 5. Generating a greeting message
[0052] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0053] 6. Generating a response
[0054] The server combines the retrieved weather information with a greeting. For example, a response message like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," is generated.
[0055] 7. Adding additional information
[0056] The server generates additional information if the weather information includes certain conditions. For example, if the weather information includes the condition "rain," the message "It looks like it's going to rain, so please take an umbrella" will be added.
[0057] 8. Responding to the user
[0058] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[0059] Specific example
[0060] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[0061] This system allows users to obtain information tailored to their own environment, enabling them to live their daily lives more comfortably.
[0062] The following describes the processing flow.
[0063] Step 1:
[0064] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[0065] Step 2:
[0066] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[0067] Step 3:
[0068] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[0069] Step 4:
[0070] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[0071] Step 5:
[0072] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[0073] Step 6:
[0074] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[0075] Step 7:
[0076] The server generates an appropriate greeting based on the time information it obtains. If it is between 5 AM and 12 PM, the greeting will be "Good morning."
[0077] Step 8:
[0078] The server generates a response by combining a greeting based on the time information with the weather information it has obtained. For example, it might generate a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0079] Step 9:
[0080] The server generates a response message and sends it to the terminal. The sent message is the optimal response message for the specific environment.
[0081] Step 10:
[0082] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0083] Through these steps, users can receive detailed information tailored to their specific circumstances at any given time.
[0084] (Example 1)
[0085] 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."
[0086] In modern society, it is crucial for users to quickly obtain information that is relevant to their daily lives in real time. However, existing systems often fail to provide personalized responses that take into account the user's current time, location, and even weather information. As a result, users may experience inconvenience because they cannot obtain information that is optimal for their individual circumstances.
[0087] 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.
[0088] In this invention, the server includes a terminal for receiving input from a user, means for processing the received input text, means for acquiring time information when the input was received, a terminal for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, and a terminal for providing the generated response message to the user. This enables the user to obtain personalized information based on the current time and location in real time.
[0089] A "user" is an individual or group of people who use a system.
[0090] A "terminal" is an electronic device used by a user for input and output. Specific examples include smartphones and personal computers.
[0091] A "server" is a computer system that receives requests from users and processes them accordingly.
[0092] "Input text" refers to the character information that a user sends to the system through their device. A concrete example would be "What's the weather like today?".
[0093] "Time information" refers to data that indicates the time when the user entered the information.
[0094] "Location information" refers to data that includes the latitude and longitude of the user's current location.
[0095] "Weather information" refers to data that indicates weather conditions at a specific location. Specific examples include "sunny" and "temperature 30 degrees Celsius."
[0096] A "greeting message" is a greeting text that is generated based on a specific time of day. Examples include "Good morning" and "Hello."
[0097] A "response message" is the text of the response that the system generates in response to user input. This is personalized based on time, location, and weather information.
[0098] "Additional information" refers to supplementary text added to a response when certain conditions are met. A concrete example would be, "It looks like it might rain, so please take an umbrella."
[0099] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[0100] System Configuration
[0101] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. Specifically, it uses the following hardware and software.
[0102] Terminal: This refers to devices such as smartphones and personal computers. The terminal's role is to receive input from the user, acquire location information, and transmit it to the server. It uses GPS functionality to acquire the user's location information.
[0103] Server: Used to process input text, location information, and time information, and to retrieve weather information from the weather API. The server is built using programming languages such as Python or Java (registered trademark).
[0104] External weather APIs: Use APIs such as OpenWeatherMap and Weatherstack to obtain the latest weather information for a specific location.
[0105] Program Processing Overview
[0106] The program of this system proceeds in the following steps. Specifically, the user enters text into the terminal, the server receives that text, retrieves various information, and generates the optimal response.
[0107] Receiving user input
[0108] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?" The terminal receives this input and sends the corresponding text data to the server. For example, it might send the text data using an HTTP request.
[0109] Acquisition of time information
[0110] The server obtains the time information from the system clock at the time it receives user input. This information is obtained using the Java method System.currentTimeMillis() or the Python method datetime.now(). This information is used to generate the greeting message.
[0111] Location information acquisition
[0112] The device obtains the user's current location information. This is done using the device's GPS function (for example, the LocationManager class in Android®). The obtained location information (latitude and longitude) is sent to the server via an HTTP request.
[0113] Obtaining weather information
[0114] The server accesses an external weather API based on the acquired location information (latitude and longitude). The server sends an API request (for example, an HTTP GET request) to retrieve the latest weather data (such as "sunny" or "temperature 30 degrees").
[0115] Generating a greeting message
[0116] The server generates an appropriate greeting based on the acquired time information. It generates "Good morning" if it is between 5 AM and 12 PM, "Good afternoon" if it is between 12 PM and 6 PM, and "Good evening" for all other times.
[0117] Generating a response
[0118] The server combines the retrieved weather information with a greeting to generate a response. For example, it might create a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." The server dynamically combines the text, generating the response using methods like Java's String.format() or Python's f-strings.
[0119] Adding additional information
[0120] If the weather information includes the condition "rain," the server generates additional information such as, "It looks like it's going to rain, so please take an umbrella." This allows users to receive appropriate advice based on specific conditions.
[0121] Response to the user
[0122] The server sends the generated response to the device. This transmission is done using an HTTP response. The device then displays the received response to the user. Specifically, it is displayed in a text view on the screen (for example, Android's TextView).
[0123] Specific example
[0124] For example, suppose a user enters "What's the weather like today?" into their terminal at 8:00 AM. In this case, the system will operate as follows:
[0125] 1. The user enters "What's the weather like today?" into the device.
[0126] 2. The terminal sends the input text to the server.
[0127] 3. The server obtains the reception time (8:00 AM) from the system clock.
[0128] 4. The device uses its GPS function to obtain location information (latitude 35.6895, longitude 139.6917) and transmits it to the server.
[0129] 5. The server accesses an external weather API to obtain the latest weather information for Tokyo ("Sunny, temperature 30 degrees Celsius").
[0130] 6. The server generates the greeting "Good morning."
[0131] 7. The server generates a response message that reads, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0132] 8. The server sends a response message to the terminal, which then displays it to the user.
[0133] Example of a prompt
[0134] The following are examples of prompts to input to a generative AI model.
[0135] An example of a prompt that a generative AI model uses to generate a response to the input "What's the weather like today?":
[0136] "The user entered 'What's the weather like today?'. The current location is latitude 35.6895, longitude 139.6917, and the current time is 8:00 AM. The latest weather information is 'Sunny, temperature 30 degrees Celsius'. Based on this information, generate a response that combines an appropriate greeting and weather information."
[0137] In this way, the present invention can provide users with more personalized information and improve convenience in their daily lives.
[0138] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0139] Step 1:
[0140] The user enters text into the terminal. Specifically, they enter the question, "What's the weather like today?" The terminal receives this input, generates text data, and sends it to the server. Input: The text entered by the user. Output: The text data sent to the server.
[0141] Step 2:
[0142] The server receives text data sent by the user. It analyzes the received text data to identify any information that needs to be addressed. For example, it might determine that weather information is needed from the text "What's the weather like today?". Input: Text data sent by the user. Output: Analyzed information.
[0143] Step 3:
[0144] The server obtains the time information from the system clock at the time it received the text data. Specifically, it uses the Java method System.currentTimeMillis() or the Python method datetime.now(). Input: Server's system clock. Output: Obtained time information.
[0145] Step 4:
[0146] The device obtains the user's current location information. It uses GPS functionality to obtain latitude and longitude. This information is generated and sent to the server. Input: GPS functionality built into the device. Output: Obtained location information.
[0147] Step 5:
[0148] The server receives location information sent from the device. Based on the received location information (latitude and longitude), it accesses an external weather API (e.g., OpenWeatherMap API) to obtain the latest weather information for the specified area. Input: Location information from the device. Output: Weather information obtained from the API.
[0149] Step 6:
[0150] The server generates an appropriate greeting based on the acquired time information. For example, it will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times. Input: Acquired time information. Output: Generated greeting.
[0151] Step 7:
[0152] The server generates a response by combining weather information it has obtained with a generated greeting. For example, it will generate text such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Obtained weather information and greeting. Output: Generated response.
[0153] Step 8:
[0154] This function adds additional information to the response message generated by the server. If the weather information includes a specific condition, such as "rain," it adds information such as "It looks like it's going to rain, so please take an umbrella." Input: Generated response message and weather information. Output: Response message with additional information.
[0155] Step 9:
[0156] The server sends the final response to the device. The device displays the received response. Specifically, it displays the response in a text view on the screen (for example, Android's TextView). Input: The response sent by the server. Output: The response displayed to the user.
[0157] This process allows users to quickly and conveniently obtain relevant information based on their time and location.
[0158] (Application Example 1)
[0159] 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."
[0160] Conventional systems did not allow users to receive personalized advice or information based on specific environmental information (such as weather or time). Furthermore, in food delivery services, efficient and effective information provision to delivery personnel and customers was not possible, resulting in low convenience. Therefore, there was a need for a system that provides real-time notifications regarding deliveries and appropriate advice based on weather conditions.
[0161] 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.
[0162] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, and means for generating a real-time notification that takes into account the scheduled delivery time and delivery status. As a result, the user can receive real-time information according to the current weather and delivery status, improving convenience for both delivery personnel and customers.
[0163] A "user" is someone who uses a system.
[0164] "Means of receiving input" refers to devices or software that have the function of capturing instructions from the user, such as text or voice.
[0165] "Time information" refers to data that indicates the date and time the user entered the information.
[0166] "Location information" refers to data that indicates the user's current location, and uses technologies such as GPS.
[0167] "Weather information" refers to meteorological data collected based on specific location information.
[0168] A "greeting message" is a polite message generated based on time information.
[0169] A "response message" is a message generated to address information requested by a user.
[0170] "Real-time notifications" are information delivered instantly based on the current situation and time.
[0171] "Estimated delivery time" refers to the time it is predicted that a delivery item will reach its destination.
[0172] "Delivery status" refers to information indicating the current stage of a delivery.
[0173] "Additional information" refers to supplementary information added to a basic response when certain conditions are met.
[0174] "Equipment suggestions" refer to advice that informs users of appropriate clothing and items to bring, depending on the weather and temperature.
[0175] This invention is a system that generates an optimal response to user input, taking into account time information, location information, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment. The specific configuration and processing procedures for implementing this invention are described below.
[0176] System Configuration
[0177] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. It also includes GPS functionality to acquire location information, which is used for delivery prediction and real-time notifications.
[0178] Program Processing Overview
[0179] hardware
[0180] Device: Smartphone (with GPS function)
[0181] Server: Cloud server or data center
[0182] External API: WeatherAPI
[0183] software
[0184] Programming language: Python
[0185] Library for obtaining weather information: requests
[0186] Library for obtaining time information: datetime
[0187] Generative AI model: GPT-3® or equivalent language model
[0188] Processing procedure
[0189] 1. Receiving user input
[0190] The user enters text via a smartphone application. For example, a question like "What's the weather like today?" might be asked.
[0191] The terminal receives this input and sends the input data to the server.
[0192] 2. Obtaining time information
[0193] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message.
[0194] 3. Acquisition of location information
[0195] The device uses GPS functionality to obtain the user's current location. The obtained location information (for example, latitude 35.6895, longitude 139.6917) is sent to the server.
[0196] 4. Obtaining weather information
[0197] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0198] 5. Generating a greeting message
[0199] The server generates appropriate greetings based on time information obtained using a generative AI model. It will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times.
[0200] 6. Generating a response
[0201] The server combines the acquired weather information with a greeting, and further considers the user's inquiry to generate a response. For example, it might generate a specific message such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0202] 7. Adding additional information
[0203] The server adds additional information to the weather forecast if it includes specific conditions, such as "It looks like it's going to rain, so please take an umbrella."
[0204] 8. Responding to the user
[0205] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[0206] Specific example
[0207] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[0208] Examples of prompt statements are as follows:
[0209] "Please generate a real-time notification that takes today's weather and estimated delivery time into consideration."
[0210] Example of a prompt:
[0211] "Please generate a message that says, 'Your delivery will be in X minutes,' taking into account the current weather information and estimated delivery time for the user while they are in Tokyo. Also, please include advice based on the outside weather information."
[0212] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0213] Step 1:
[0214] A user enters text via a smartphone application. For example, they might enter the question, "What's the weather like today?" The device receives this input and sends the input data to the server. Input: User-entered text. Output: Input data sent to the server.
[0215] Step 2:
[0216] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message. Input: System clock data. Output: Time information.
[0217] Step 3:
[0218] The device uses GPS functionality to obtain the user's current location. The obtained location information is then sent to the server. Input: GPS data. Output: Location information.
[0219] Step 4:
[0220] The server accesses the WeatherAPI based on the acquired location information to retrieve the latest weather information for a specific area. Specifically, it includes the location information in the API request to obtain weather information. Input: Location information. Output: Weather information.
[0221] Step 5:
[0222] The server generates an appropriate greeting based on time information obtained using a generative AI model. For example, if the time is between 5 AM and 12 PM, it will generate "Good morning." Input: Time information. Output: Greeting message.
[0223] Step 6:
[0224] The server combines the acquired weather information and greeting, and further considers the user's inquiry to generate a response. Using a generation AI model, it can generate a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Weather information, greeting. Output: Response.
[0225] Step 7:
[0226] The server adds additional information to the weather forecast if it includes certain conditions, such as "It looks like it's going to rain, so please take an umbrella." Input: Weather information. Output: Response message (with additional information).
[0227] Step 8:
[0228] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances. Input: Generated response. Output: Displayed to the user.
[0229] 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.
[0230] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[0231] System Configuration
[0232] This system consists of a terminal that receives user input, a server that processes the input and generates information, an API that acquires external weather information, and an emotion engine that recognizes the user's emotions.
[0233] Program Processing Overview
[0234] 1. Receive user input
[0235] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?"
[0236] The terminal receives this input and sends the corresponding text data to the server.
[0237] 2. Obtaining time information
[0238] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[0239] 3. Acquisition of location information
[0240] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[0241] 4. Obtaining weather information
[0242] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0243] 5. Generating a greeting message
[0244] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0245] 6. Recognition of Emotions
[0246] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad" from the user's text.
[0247] 7. Generating a response
[0248] The server combines the acquired weather information, greeting, and emotion information recognized by the emotion engine to generate a response. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[0249] 8. Adding additional information
[0250] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella." Also, if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[0251] 9. Responding to the user
[0252] The server generates a response message, which is sent to the terminal and displayed to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[0253] Specific example
[0254] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, and the emotion engine recognizes the user's emotion as "happy," the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot at 30 degrees Celsius, so you should dress lightly when you go out," and send it to the user's device. In addition, if the weather information includes rain, or if the emotion engine recognizes the user's emotion as "sad," additional information will be added accordingly.
[0255] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[0256] The following describes the processing flow.
[0257] Step 1:
[0258] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[0259] Step 2:
[0260] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[0261] Step 3:
[0262] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[0263] Step 4:
[0264] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, the greeting will be "Good morning." Between 12 PM and 6 PM, it will be "Good afternoon," and at all other times, it will be "Good evening."
[0265] Step 5:
[0266] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[0267] Step 6:
[0268] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[0269] Step 7:
[0270] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[0271] Step 8:
[0272] The server retrieves weather information and sends the user's input text data to the emotion engine. The emotion engine analyzes the emotions and recognizes feelings such as "happy" or "sad" from the user's input text.
[0273] Step 9:
[0274] The server generates a response by combining weather information, a greeting, and emotional information recognized by the emotion engine. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[0275] Step 10:
[0276] When the server generates a response, it adds additional information as needed based on weather information that includes specific conditions or on sentiment information. For example, if the weather information includes "rain," it adds the message, "It looks like it's going to rain, so don't forget your umbrella." Also, if the sentiment engine recognizes that the user is "sad," it adds a caring message such as, "It's a little chilly, so please dress warmly."
[0277] Step 11:
[0278] The server generates a response message and sends it to the terminal. The content of the message will correspond to the user's current emotions and environment.
[0279] Step 12:
[0280] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees, so you should dress lightly."
[0281] Through these steps, the user can obtain detailed information according to the current environment and emotions.
[0282] (Example 2)
[0283] Next, Example 2 will be described. In the following description, the data processing device 12 is referred to as a "server", and the smart device 14 is referred to as a "terminal".
[0284] In a conventional system, although weather information can be provided based on time information and location information for a user input, it is difficult to provide a personalized user experience because a response considering the user's emotional state cannot be generated. Also, the provision of additional information based on the acquired weather information is limited, and there is a lack of detailed correspondence according to the user's emotions.
[0285] The specific processing by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for recognizing the user's emotional state, means for generating a response sentence by combining weather information, greeting sentences, and emotional information, means for adding additional information when specific conditions are included in the weather information, and means for adding additional information based on the emotional information. Thereby, it becomes possible to generate an optimal response considering the emotional state for a user input and provide a personalized user experience.
[0286] The "means for receiving user input" refers to a device or software having a function of receiving text input from the user and transmitting it to other components within the system.
[0287] The "means for obtaining time information" refers to a device or software having a function of obtaining the current date and time from the system clock and making it available for other processes within the system.
[0288] "Means for obtaining user location information" refers to devices or software that have the function of obtaining the user's current location information (latitude and longitude) using GPS or similar functions, and making it available for use in other processes within the system.
[0289] "Means for obtaining weather information" refers to devices or software that have the function of accessing external weather information APIs based on specified location information and obtaining the latest weather data.
[0290] "Means for generating greeting messages" refers to devices or software that have the function of generating appropriate greeting messages (such as "Good morning," "Good afternoon," and "Good evening") based on acquired time information.
[0291] "Means for recognizing a user's emotional state" refers to devices or software that analyze a user's input text to understand their emotions and recognize emotional states such as "happy" or "sad."
[0292] "Means for generating response messages" refers to devices or software that have the function of generating the optimal response message to provide to the user by combining acquired weather information, greeting messages, and emotional information.
[0293] "Means of providing a response to the user" refers to devices or software that have the function of sending the generated response to the user's terminal and displaying it to the user.
[0294] "Means of adding additional information" refers to devices or software that have the function of adding additional information (such as a message prompting the user to bring an umbrella or a message showing concern for the user) to the response text when specific conditions are included in weather information or sentiment information.
[0295] "Means of suggesting clothing" refers to devices or software that have the function of suggesting appropriate clothing based on the user's location and time information, taking into account weather and temperature.
[0296] The present invention combines an emotion engine with a system that generates an optimal response based on time information, location information, and weather information for a user's input. This system recognizes the user's emotional state and provides a more personalized user experience by adjusting the response content according to the emotion.
[0297] System Configuration
[0298] This system is composed of the following components:
[0299] 1. A terminal that receives user input
[0300] 2. A server that processes the input and generates information
[0301] 3. An API that retrieves external weather information
[0302] 4. An emotion engine that recognizes the user's emotions
[0303] Implementation Method of the System
[0304] 1. A terminal that receives user input
[0305] The user inputs text from their terminal. For example, they input a question such as "What's the weather today?"
[0306] The terminal receives this input text data and sends it to the server.
[0307] 2. Server Processing
[0308] Obtaining time information:
[0309] The server obtains the time information from the system clock at the time when it receives the user's input. This information is used to generate an appropriate greeting sentence.
[0310] Obtaining location information:
[0311] The device uses GPS functionality to obtain the user's current location information and transmit it to the server. For example, the obtained location information is latitude 35.6895 and longitude 139.6917.
[0312] Obtaining weather information:
[0313] The server accesses a weather information API based on the acquired location information to retrieve the latest weather information. This includes data such as "sunny" and "temperature 30 degrees."
[0314] Generating a greeting message:
[0315] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0316] Recognition of emotions:
[0317] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad."
[0318] 3. Generating a response sentence
[0319] The server combines the acquired weather information, greetings, and emotional information recognized by the emotion engine to generate a response. For example, if the message is "Good morning," "It's sunny in Tokyo right now," and the recipient is happy, the response would be, "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly when you go out."
[0320] 4. Adding additional information
[0321] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella," and if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[0322] 5. Responding to the user
[0323] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[0324] Specific example
[0325] For example, if a user types "What's the weather like today?" from Tokyo at 8 AM and the emotion engine recognizes the emotion as "happy," the server will generate and send "Good morning! It's sunny in Tokyo right now. It's a nice day, and it's going to be hot at 30 degrees today, so you should dress lightly." to the device. If the weather information includes rain, or if the user's emotion is recognized as "sad," additional information will be added accordingly.
[0326] Example of a prompt
[0327] Example 1:
[0328] User input: What's the weather like today?
[0329] Time: 8:00 AM
[0330] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[0331] Emotion: Happy
[0332] Example 2:
[0333] User input: What's the weather like today?
[0334] Time: 2 PM
[0335] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[0336] Emotion: Sad
[0337] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[0338] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0339] Step 1: Receiving user input
[0340] The user enters text such as "What's the weather like today?" into their device.
[0341] Input: User's text input.
[0342] The terminal receives this entered text data and sends it to the specified server.
[0343] Output: User input text data sent to the server.
[0344] Step 2: Obtain time information
[0345] The server receives input from the user and simultaneously obtains the current time information from the system clock.
[0346] Input: User-input text data.
[0347] The server calls the system clock API to obtain the current date and time.
[0348] Output: Current time information (e.g., 8:00 AM).
[0349] Step 3: Obtaining location information
[0350] The device uses its built-in GPS function to obtain the user's current location information.
[0351] Input: Request to obtain the device's location information.
[0352] The device calls the GPS module to obtain the user's location information (latitude and longitude) and sends it to the server.
[0353] Output: User location information sent to the server (e.g., latitude 35.6895, longitude 139.6917).
[0354] Step 4: Obtain weather information
[0355] The server accesses an external weather information API based on the acquired location information.
[0356] Input: User's location information.
[0357] The server sends a request to a weather information API to retrieve the latest weather information for the specified location. It then analyzes the response from the API and extracts the weather data.
[0358] Output: Latest weather information (e.g., sunny, temperature 30 degrees Celsius).
[0359] Step 5: Generating a greeting message
[0360] The server generates an appropriate greeting message based on the acquired time information.
[0361] Input: Current time information.
[0362] The server selects an appropriate greeting such as "Good morning," "Good afternoon," or "Good evening" based on the time information and stores it as text data.
[0363] Output: Generated greeting message (e.g., "Good morning").
[0364] Step 6: Recognizing Emotions
[0365] The server sends the user's input text to the emotion engine, which then analyzes the emotional state.
[0366] Input: User-input text data.
[0367] The emotion engine uses an NLP model to extract emotions from text and recognize feelings such as "happy" or "sad."
[0368] Output: Recognized emotion information (e.g., "happy").
[0369] Step 7: Generating the response
[0370] The server combines the acquired weather information, greetings, and emotional information to generate a response.
[0371] Input: Weather information, greeting message, emotional information.
[0372] The server combines this information to generate a response. For example, it might say, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees Celsius, so you should dress lightly when you go out."
[0373] Output: The generated response.
[0374] Step 8: Adding additional information
[0375] The server adds additional information based on weather and sentiment data.
[0376] Input: Generated response text, weather information, sentiment information.
[0377] If the weather information includes "rain," the server adds additional information such as "It looks like it's going to rain, so don't forget your umbrella." If the emotion information is "sad," it adds a message such as "It's a little chilly, so please dress warmly."
[0378] Output: A response message with additional information added.
[0379] Step 9: Responding to the user
[0380] The server sends the generated response message to the terminal, and the terminal displays the response message to the user.
[0381] Input: The generated response message.
[0382] The terminal receives a response message from the server and displays it on the screen.
[0383] Output: The response displayed to the user.
[0384] (Application Example 2)
[0385] 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".
[0386] Conventional user response systems can generate basic responses based on time and location information, but they struggle to generate personalized responses that take into account the user's emotional state. Furthermore, they cannot provide specific suggestions based on weather information or emotional state, resulting in a limited user experience. In particular, in the food delivery sector, there is a need for suggestions of dishes and restaurants tailored to when the user is tired or in a specific mood, but conventional systems have been unable to achieve this level of personalization.
[0387] 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.
[0388] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, means for analyzing the user's emotional state from the input text, and means for adjusting the response message based on the emotional state. This makes it possible to generate personalized responses based on the user's time information, location information, weather information, and emotional state. Furthermore, by suggesting the most suitable dishes and restaurants according to the user's emotional state, it is possible to provide a more highly personalized user experience, particularly in the field of food delivery.
[0389] "Means of receiving input from the user" refers to an interface for the user to input text or other data, and includes devices and software that can transmit such input to the system in a processable format.
[0390] "Means for obtaining time information of input received" include devices and software that record the time when user input is received and provide that information in a format usable within the system.
[0391] "Means for obtaining user location information" refers to technologies for determining the user's current location, and includes devices and software with location information acquisition capabilities such as GPS.
[0392] "Means for obtaining weather information based on location information" include devices and software that access external weather information APIs, etc., based on the user's location information and obtain weather data for the region corresponding to the location information.
[0393] "Means for generating greeting messages based on time information" include devices and software that automatically generate appropriate greeting messages (for example, "Good morning") based on acquired time information.
[0394] "Means for generating response texts by combining weather information and greetings" include devices and software that integrate acquired weather information and greetings to generate response texts for the user.
[0395] "Means of providing a response to the user" include devices and software that provide the generated response to the user by displaying it on the user's terminal or by conveying it by voice.
[0396] "Means for analyzing emotional states from user input text" include devices and software that analyze user input text and recognize the user's emotional state (e.g., "happy," "sad," etc.) from its content.
[0397] "Means for adjusting response statements based on emotional state" include devices and software that personalize the content of response statements and adjust them to be more appropriate according to the recognized emotional state of the user.
[0398] "Means for adding additional information when weather information includes specific conditions" include devices or software that add additional information (for example, "don't forget your umbrella") to a response statement based on specific conditions (for example, "rain" or "cold") when the acquired weather information includes those conditions.
[0399] "Means for suggesting clothing based on weather and temperature" include devices and software that suggest appropriate clothing to users based on acquired weather and temperature information.
[0400] "Means of suggesting the most suitable dishes and restaurants based on emotional state" include devices and software that suggest the most suitable dishes and restaurants to use to a user based on the recognized emotional state of the user.
[0401] Modes for carrying out the invention
[0402] This invention is a system that generates an optimal response to user input based on time information, location information, weather information, and emotional state. This system is applied to food delivery services to enhance the user experience by making it more personalized.
[0403] System Configuration
[0404] This system consists of the following elements:
[0405] 1. A device that receives input from the user (e.g., a smartphone)
[0406] The user enters text through this device. For example, they might type "I'm tired" using a food delivery app.
[0407] 2. Means of obtaining time information (e.g., system clock)
[0408] The server records the time when the user made their input. This information is used to generate an appropriate greeting message.
[0409] 3. Means of obtaining location information (e.g., GPS function)
[0410] The device obtains the user's current location information and sends this data to the server. For example, it sends the latitude and longitude information for Tokyo.
[0411] 4. Means of obtaining weather information (e.g., external weather API)
[0412] The server accesses an external weather information API based on location data to retrieve weather data for the relevant area. This data includes information such as whether the weather is sunny, rainy, and temperature.
[0413] 5. Means for generating greeting messages (e.g., a greeting message generation algorithm based on the time of day)
[0414] The server generates a greeting message based on the acquired time information. For example, if it's morning, it will say "Good morning."
[0415] 6. Means for analyzing the user's emotional state (e.g., an emotion analysis engine)
[0416] The server analyzes the user's input text and recognizes their emotional state. For example, it recognizes the emotion "tired" from the input "tired".
[0417] 7. Means for generating a response (e.g., a response generation algorithm)
[0418] The server generates a response by combining a greeting, weather information, and emotional information. For example, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[0419] 8. Means for providing a response (e.g., terminal display function)
[0420] The server sends the generated response to the terminal and displays it to the user.
[0421] Hardware and software to be used
[0422] This system uses user devices such as smartphones and tablets, employing GPS functionality for location information acquisition and an external weather API (e.g., OpenWeatherMap API) for weather information acquisition. Furthermore, it uses a sentiment analysis engine incorporating natural language processing technology (e.g., Python's sentiment analysis library) for sentiment analysis.
[0423] Specific example
[0424] For example, if a user enters "tired" at 10 AM in Tokyo, the system retrieves weather information, analyzes the user's emotional state, and then generates a response such as, "Good morning! The current weather is sunny, and the temperature is 25 degrees Celsius. We recommend a relaxing meal." This allows the user to receive appropriate information based on their current situation.
[0425] Example of a prompt
[0426] "How can I suggest a relaxing delivery menu to a user who is feeling tired?"
[0427] This system allows users to receive optimal information and suggestions based on time, location, weather, and mood, enabling them to enjoy a more personalized experience, particularly in the food delivery sector.
[0428] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0429] Step 1:
[0430] The user enters text. The user opens a food delivery app on a device such as a smartphone and enters text (for example, "I'm tired") into the input field. The entered text is sent to the server by the device.
[0431] Step 2:
[0432] The server obtains time information. The server records the time it receives input from the user. This time information is obtained from the system clock.
[0433] Step 3:
[0434] The device acquires location information. The GPS function built into the device identifies the user's current location and obtains latitude and longitude data. This location information is sent to the server.
[0435] Step 4:
[0436] The server retrieves weather information. Based on the retrieved location information, the server accesses an external weather information API (for example, the OpenWeatherMap API) to obtain weather data for the relevant area (for example, the weather is "sunny" and the temperature is 25 degrees Celsius).
[0437] Step 5:
[0438] The server generates a greeting message. The server generates an appropriate greeting message based on the acquired time information. For example, if it is morning, it will generate "Good morning."
[0439] Step 6:
[0440] The server analyzes the user's emotional state. The server sends the user's input text to an emotion analysis engine (for example, the Python sentiment analysis library), which analyzes the emotional state (e.g., "tired") from the text and retrieves the result.
[0441] Step 7:
[0442] The server generates a response. The server combines the generated greeting, weather information, and analyzed sentiment information to create a response. For example, it might generate a response such as, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[0443] Step 8:
[0444] The server sends a response message to the terminal. The server sends the generated response message to the user's terminal. This response message is displayed on the user's terminal screen.
[0445] 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.
[0446] 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.
[0447] 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.
[0448] [Second Embodiment]
[0449] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0450] 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.
[0451] 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).
[0452] 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.
[0453] 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.
[0454] 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).
[0455] 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.
[0456] 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.
[0457] 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.
[0458] 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.
[0459] 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.
[0460] 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".
[0461] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[0462] System Configuration
[0463] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information.
[0464] Program Processing Overview
[0465] 1. Receive user input
[0466] The user enters text into the terminal. A specific example would be entering the question, "What's the weather like today?"
[0467] The terminal receives this input and sends the corresponding text data to the server.
[0468] 2. Obtaining time information
[0469] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[0470] 3. Acquisition of location information
[0471] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[0472] 4. Obtaining weather information
[0473] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0474] 5. Generating a greeting message
[0475] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0476] 6. Generating a response
[0477] The server combines the retrieved weather information with a greeting. For example, a response message like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," is generated.
[0478] 7. Adding additional information
[0479] The server generates additional information if the weather information includes certain conditions. For example, if the weather information includes the condition "rain," the message "It looks like it's going to rain, so please take an umbrella" will be added.
[0480] 8. Responding to the user
[0481] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[0482] Specific example
[0483] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[0484] This system allows users to obtain information tailored to their own environment, enabling them to live their daily lives more comfortably.
[0485] The following describes the processing flow.
[0486] Step 1:
[0487] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[0488] Step 2:
[0489] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[0490] Step 3:
[0491] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[0492] Step 4:
[0493] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[0494] Step 5:
[0495] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[0496] Step 6:
[0497] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[0498] Step 7:
[0499] The server generates an appropriate greeting based on the time information it obtains. If it is between 5 AM and 12 PM, the greeting will be "Good morning."
[0500] Step 8:
[0501] The server generates a response by combining a greeting based on the time information with the weather information it has obtained. For example, it might generate a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0502] Step 9:
[0503] The server generates a response message and sends it to the terminal. The sent message is the optimal response message for the specific environment.
[0504] Step 10:
[0505] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0506] Through these steps, users can receive detailed information tailored to their specific circumstances at any given time.
[0507] (Example 1)
[0508] 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."
[0509] In modern society, it is crucial for users to quickly obtain information that is relevant to their daily lives in real time. However, existing systems often fail to provide personalized responses that take into account the user's current time, location, and even weather information. As a result, users may experience inconvenience because they cannot obtain information that is optimal for their individual circumstances.
[0510] 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.
[0511] In this invention, the server includes a terminal for receiving input from a user, means for processing the received input text, means for acquiring time information when the input was received, a terminal for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, and a terminal for providing the generated response message to the user. This enables the user to obtain personalized information based on the current time and location in real time.
[0512] A "user" is an individual or group of people who use a system.
[0513] A "terminal" is an electronic device used by a user for input and output. Specific examples include smartphones and personal computers.
[0514] A "server" is a computer system that receives requests from users and processes them accordingly.
[0515] "Input text" refers to the character information that a user sends to the system through their device. A concrete example would be "What's the weather like today?".
[0516] "Time information" refers to data that indicates the time when the user entered the information.
[0517] "Location information" refers to data that includes the latitude and longitude of the user's current location.
[0518] "Weather information" refers to data that indicates weather conditions at a specific location. Specific examples include "sunny" and "temperature 30 degrees Celsius."
[0519] A "greeting message" is a greeting text that is generated based on a specific time of day. Examples include "Good morning" and "Hello."
[0520] A "response message" is the text of the response that the system generates in response to user input. This is personalized based on time, location, and weather information.
[0521] "Additional information" refers to supplementary text added to a response when certain conditions are met. A concrete example would be, "It looks like it might rain, so please take an umbrella."
[0522] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[0523] System Configuration
[0524] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. Specifically, it uses the following hardware and software.
[0525] Terminal: This refers to devices such as smartphones and personal computers. The terminal's role is to receive input from the user, acquire location information, and transmit it to the server. It uses GPS functionality to acquire the user's location information.
[0526] Server: Used to process input text, location information, and time information, and to retrieve weather information from the weather API. The server is built using programming languages such as Python or Java.
[0527] External weather APIs: Use APIs such as OpenWeatherMap and Weatherstack to obtain the latest weather information for a specific location.
[0528] Program Processing Overview
[0529] The program of this system proceeds in the following steps. Specifically, the user enters text into the terminal, the server receives that text, retrieves various information, and generates the optimal response.
[0530] Receiving user input
[0531] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?" The terminal receives this input and sends the corresponding text data to the server. For example, it might send the text data using an HTTP request.
[0532] Acquisition of time information
[0533] The server obtains the time information from the system clock at the time it receives user input. This information is obtained using the Java method System.currentTimeMillis() or the Python method datetime.now(). This information is used to generate the greeting message.
[0534] Location information acquisition
[0535] The device obtains the user's current location information. This is done using the device's GPS function (for example, Android's LocationManager class). The obtained location information (latitude and longitude) is sent to the server via an HTTP request.
[0536] Obtaining weather information
[0537] The server accesses an external weather API based on the acquired location information (latitude and longitude). The server sends an API request (for example, an HTTP GET request) to retrieve the latest weather data (such as "sunny" or "temperature 30 degrees").
[0538] Generating a greeting message
[0539] The server generates an appropriate greeting based on the acquired time information. It generates "Good morning" if it is between 5 AM and 12 PM, "Good afternoon" if it is between 12 PM and 6 PM, and "Good evening" for all other times.
[0540] Generating a response
[0541] The server combines the retrieved weather information with a greeting to generate a response. For example, it might create a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." The server dynamically combines the text, generating the response using methods like Java's String.format() or Python's f-strings.
[0542] Adding additional information
[0543] If the weather information includes the condition "rain," the server generates additional information such as, "It looks like it's going to rain, so please take an umbrella." This allows users to receive appropriate advice based on specific conditions.
[0544] Response to the user
[0545] The server sends the generated response to the device. This transmission is done using an HTTP response. The device then displays the received response to the user. Specifically, it is displayed in a text view on the screen (for example, Android's TextView).
[0546] Specific example
[0547] For example, suppose a user enters "What's the weather like today?" into their terminal at 8:00 AM. In this case, the system will operate as follows:
[0548] 1. The user enters "What's the weather like today?" into the device.
[0549] 2. The terminal sends the input text to the server.
[0550] 3. The server obtains the reception time (8:00 AM) from the system clock.
[0551] 4. The device uses its GPS function to obtain location information (latitude 35.6895, longitude 139.6917) and transmits it to the server.
[0552] 5. The server accesses an external weather API to obtain the latest weather information for Tokyo ("Sunny, temperature 30 degrees Celsius").
[0553] 6. The server generates the greeting "Good morning."
[0554] 7. The server generates a response message that reads, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0555] 8. The server sends a response message to the terminal, which then displays it to the user.
[0556] Example of a prompt
[0557] The following are examples of prompts to input to a generative AI model.
[0558] An example of a prompt that a generative AI model uses to generate a response to the input "What's the weather like today?":
[0559] "The user entered 'What's the weather like today?'. The current location is latitude 35.6895, longitude 139.6917, and the current time is 8:00 AM. The latest weather information is 'Sunny, temperature 30 degrees Celsius'. Based on this information, generate a response that combines an appropriate greeting and weather information."
[0560] In this way, the present invention can provide users with more personalized information and improve convenience in their daily lives.
[0561] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0562] Step 1:
[0563] The user enters text into the terminal. Specifically, they enter the question, "What's the weather like today?" The terminal receives this input, generates text data, and sends it to the server. Input: The text entered by the user. Output: The text data sent to the server.
[0564] Step 2:
[0565] The server receives text data sent by the user. It analyzes the received text data to identify any information that needs to be addressed. For example, it might determine that weather information is needed from the text "What's the weather like today?". Input: Text data sent by the user. Output: Analyzed information.
[0566] Step 3:
[0567] The server obtains the time information from the system clock at the time it received the text data. Specifically, it uses the Java method System.currentTimeMillis() or the Python method datetime.now(). Input: Server's system clock. Output: Obtained time information.
[0568] Step 4:
[0569] The device obtains the user's current location information. It uses GPS functionality to obtain latitude and longitude. This information is generated and sent to the server. Input: GPS functionality built into the device. Output: Obtained location information.
[0570] Step 5:
[0571] The server receives location information sent from the device. Based on the received location information (latitude and longitude), it accesses an external weather API (e.g., OpenWeatherMap API) to obtain the latest weather information for the specified area. Input: Location information from the device. Output: Weather information obtained from the API.
[0572] Step 6:
[0573] The server generates an appropriate greeting based on the acquired time information. For example, it will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times. Input: Acquired time information. Output: Generated greeting.
[0574] Step 7:
[0575] The server generates a response by combining weather information it has obtained with a generated greeting. For example, it will generate text such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Obtained weather information and greeting. Output: Generated response.
[0576] Step 8:
[0577] This function adds additional information to the response message generated by the server. If the weather information includes a specific condition, such as "rain," it adds information such as "It looks like it's going to rain, so please take an umbrella." Input: Generated response message and weather information. Output: Response message with additional information.
[0578] Step 9:
[0579] The server sends the final response to the device. The device displays the received response. Specifically, it displays the response in a text view on the screen (for example, Android's TextView). Input: The response sent by the server. Output: The response displayed to the user.
[0580] This process allows users to quickly and conveniently obtain relevant information based on their time and location.
[0581] (Application Example 1)
[0582] 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."
[0583] Conventional systems did not allow users to receive personalized advice or information based on specific environmental information (such as weather or time). Furthermore, in food delivery services, efficient and effective information provision to delivery personnel and customers was not possible, resulting in low convenience. Therefore, there was a need for a system that provides real-time notifications regarding deliveries and appropriate advice based on weather conditions.
[0584] 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.
[0585] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, and means for generating a real-time notification that takes into account the scheduled delivery time and delivery status. As a result, the user can receive real-time information according to the current weather and delivery status, improving convenience for both delivery personnel and customers.
[0586] A "user" is someone who uses a system.
[0587] "Means of receiving input" refers to devices or software that have the function of capturing instructions from the user, such as text or voice.
[0588] "Time information" refers to data that indicates the date and time the user entered the information.
[0589] "Location information" refers to data that indicates the user's current location, and uses technologies such as GPS.
[0590] "Weather information" refers to meteorological data collected based on specific location information.
[0591] A "greeting message" is a polite message generated based on time information.
[0592] A "response message" is a message generated to address information requested by a user.
[0593] "Real-time notifications" are information delivered instantly based on the current situation and time.
[0594] "Estimated delivery time" refers to the time it is predicted that a delivery item will reach its destination.
[0595] "Delivery status" refers to information indicating the current stage of a delivery.
[0596] "Additional information" refers to supplementary information added to a basic response when certain conditions are met.
[0597] "Equipment suggestions" refer to advice that informs users of appropriate clothing and items to bring, depending on the weather and temperature.
[0598] This invention is a system that generates an optimal response to user input, taking into account time information, location information, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment. The specific configuration and processing procedures for implementing this invention are described below.
[0599] System Configuration
[0600] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. It also includes GPS functionality to acquire location information, which is used for delivery prediction and real-time notifications.
[0601] Program Processing Overview
[0602] hardware
[0603] Device: Smartphone (with GPS function)
[0604] Server: Cloud server or data center
[0605] External API: WeatherAPI
[0606] software
[0607] Programming language: Python
[0608] Library for obtaining weather information: requests
[0609] Library for obtaining time information: datetime
[0610] Generative AI model: GPT-3 or equivalent language model
[0611] Processing procedure
[0612] 1. Receiving user input
[0613] The user enters text via a smartphone application. For example, a question like "What's the weather like today?" might be asked.
[0614] The terminal receives this input and sends the input data to the server.
[0615] 2. Obtaining time information
[0616] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message.
[0617] 3. Acquisition of location information
[0618] The device uses GPS functionality to obtain the user's current location. The obtained location information (for example, latitude 35.6895, longitude 139.6917) is sent to the server.
[0619] 4. Obtaining weather information
[0620] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0621] 5. Generating a greeting message
[0622] The server generates appropriate greetings based on time information obtained using a generative AI model. It will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times.
[0623] 6. Generating a response
[0624] The server combines the acquired weather information with a greeting, and further considers the user's inquiry to generate a response. For example, it might generate a specific message such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0625] 7. Adding additional information
[0626] The server adds additional information to the weather forecast if it includes specific conditions, such as "It looks like it's going to rain, so please take an umbrella."
[0627] 8. Responding to the user
[0628] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[0629] Specific example
[0630] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[0631] Examples of prompt statements are as follows:
[0632] "Please generate a real-time notification that takes today's weather and estimated delivery time into consideration."
[0633] Example of a prompt:
[0634] "Please generate a message that says, 'Your delivery will be in X minutes,' taking into account the current weather information and estimated delivery time for the user while they are in Tokyo. Also, please include advice based on the outside weather information."
[0635] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0636] Step 1:
[0637] A user enters text via a smartphone application. For example, they might enter the question, "What's the weather like today?" The device receives this input and sends the input data to the server. Input: User-entered text. Output: Input data sent to the server.
[0638] Step 2:
[0639] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message. Input: System clock data. Output: Time information.
[0640] Step 3:
[0641] The device uses GPS functionality to obtain the user's current location. The obtained location information is then sent to the server. Input: GPS data. Output: Location information.
[0642] Step 4:
[0643] The server accesses the WeatherAPI based on the acquired location information to retrieve the latest weather information for a specific area. Specifically, it includes the location information in the API request to obtain weather information. Input: Location information. Output: Weather information.
[0644] Step 5:
[0645] The server generates an appropriate greeting based on time information obtained using a generative AI model. For example, if the time is between 5 AM and 12 PM, it will generate "Good morning." Input: Time information. Output: Greeting message.
[0646] Step 6:
[0647] The server combines the acquired weather information and greeting, and further considers the user's inquiry to generate a response. Using a generation AI model, it can generate a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Weather information, greeting. Output: Response.
[0648] Step 7:
[0649] The server adds additional information to the weather forecast if it includes certain conditions, such as "It looks like it's going to rain, so please take an umbrella." Input: Weather information. Output: Response message (with additional information).
[0650] Step 8:
[0651] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances. Input: Generated response. Output: Displayed to the user.
[0652] 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.
[0653] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[0654] System Configuration
[0655] This system consists of a terminal that receives user input, a server that processes the input and generates information, an API that acquires external weather information, and an emotion engine that recognizes the user's emotions.
[0656] Program Processing Overview
[0657] 1. Receive user input
[0658] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?"
[0659] The terminal receives this input and sends the corresponding text data to the server.
[0660] 2. Obtaining time information
[0661] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[0662] 3. Acquisition of location information
[0663] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[0664] 4. Obtaining weather information
[0665] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0666] 5. Generating a greeting message
[0667] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0668] 6. Recognition of Emotions
[0669] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad" from the user's text.
[0670] 7. Generating a response
[0671] The server combines the acquired weather information, greeting, and emotion information recognized by the emotion engine to generate a response. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[0672] 8. Adding additional information
[0673] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella." Also, if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[0674] 9. Responding to the user
[0675] The server generates a response message, which is sent to the terminal and displayed to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[0676] Specific example
[0677] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, and the emotion engine recognizes the user's emotion as "happy," the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot at 30 degrees Celsius, so you should dress lightly when you go out," and send it to the user's device. In addition, if the weather information includes rain, or if the emotion engine recognizes the user's emotion as "sad," additional information will be added accordingly.
[0678] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[0679] The following describes the processing flow.
[0680] Step 1:
[0681] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[0682] Step 2:
[0683] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[0684] Step 3:
[0685] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[0686] Step 4:
[0687] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, the greeting will be "Good morning." Between 12 PM and 6 PM, it will be "Good afternoon," and at all other times, it will be "Good evening."
[0688] Step 5:
[0689] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[0690] Step 6:
[0691] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[0692] Step 7:
[0693] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[0694] Step 8:
[0695] The server retrieves weather information and sends the user's input text data to the emotion engine. The emotion engine analyzes the emotions and recognizes feelings such as "happy" or "sad" from the user's input text.
[0696] Step 9:
[0697] The server generates a response by combining weather information, a greeting, and emotional information recognized by the emotion engine. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[0698] Step 10:
[0699] When the server generates a response, it adds additional information as needed based on weather information that includes specific conditions or on sentiment information. For example, if the weather information includes "rain," it adds the message, "It looks like it's going to rain, so don't forget your umbrella." Also, if the sentiment engine recognizes that the user is "sad," it adds a caring message such as, "It's a little chilly, so please dress warmly."
[0700] Step 11:
[0701] The server generates a response message and sends it to the terminal. The content of the message will correspond to the user's current emotions and environment.
[0702] Step 12:
[0703] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees, so you should dress lightly."
[0704] Through these steps, users can obtain detailed information tailored to their environment and emotions at any given time.
[0705] (Example 2)
[0706] 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".
[0707] Conventional systems can provide weather information based on time and location data in response to user input, but they cannot generate responses that take into account the user's emotional state, making it difficult to provide a personalized user experience. Furthermore, the provision of additional information based on acquired weather data is limited, resulting in a lack of nuanced responses that respond to the user's emotions.
[0708] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for recognizing the user's emotional state, means for generating a response sentence by combining weather information, a greeting, and emotional information, means for adding additional information when specific conditions are included in the weather information, and means for adding additional information based on emotional information. This makes it possible to generate an optimal response that takes the emotional state into account in response to the user's input and to provide a personalized user experience.
[0709] "Means of receiving user input" refers to devices or software that have the function of receiving text input from a user and transmitting it to other components within the system.
[0710] "Means for acquiring time information" refers to devices or software that have the function of obtaining the current date and time from the system clock and making it available for use in other processes within the system.
[0711] "Means for obtaining user location information" refers to devices or software that have the function of obtaining the user's current location information (latitude and longitude) using GPS or similar functions, and making it available for use in other processes within the system.
[0712] "Means for obtaining weather information" refers to devices or software that have the function of accessing external weather information APIs based on specified location information and obtaining the latest weather data.
[0713] "Means for generating greeting messages" refers to devices or software that have the function of generating appropriate greeting messages (such as "Good morning," "Good afternoon," and "Good evening") based on acquired time information.
[0714] "Means for recognizing a user's emotional state" refers to devices or software that analyze a user's input text to understand their emotions and recognize emotional states such as "happy" or "sad."
[0715] "Means for generating response messages" refers to devices or software that have the function of generating the optimal response message to provide to the user by combining acquired weather information, greeting messages, and emotional information.
[0716] "Means of providing a response to the user" refers to devices or software that have the function of sending the generated response to the user's terminal and displaying it to the user.
[0717] "Means of adding additional information" refers to devices or software that have the function of adding additional information (such as a message prompting the user to bring an umbrella or a message showing concern for the user) to the response text when specific conditions are included in weather information or sentiment information.
[0718] "Means of suggesting clothing" refers to devices or software that have the function of suggesting appropriate clothing based on the user's location and time information, taking into account weather and temperature.
[0719] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[0720] System Configuration
[0721] This system consists of the following components:
[0722] 1. A terminal that receives user input.
[0723] 2. A server that processes input and generates information.
[0724] 3. API for obtaining external weather information
[0725] 4. Emotion engine that recognizes user emotions
[0726] System Implementation Method
[0727] 1. A terminal that receives user input.
[0728] The user enters text from their device. For example, they might enter the question, "What's the weather like today?"
[0729] The terminal receives this entered text data and sends it to the server.
[0730] 2. Server processing
[0731] Obtaining time information:
[0732] The server obtains time information from the system clock at the time it receives user input. This information is used to generate an appropriate greeting message.
[0733] Location information acquisition:
[0734] The device uses GPS functionality to obtain the user's current location information and transmit it to the server. For example, the obtained location information is latitude 35.6895 and longitude 139.6917.
[0735] Obtaining weather information:
[0736] The server accesses a weather information API based on the acquired location information to retrieve the latest weather information. This includes data such as "sunny" and "temperature 30 degrees."
[0737] Generating a greeting message:
[0738] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0739] Recognition of emotions:
[0740] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad."
[0741] 3. Generating a response sentence
[0742] The server combines the acquired weather information, greetings, and emotional information recognized by the emotion engine to generate a response. For example, if the message is "Good morning," "It's sunny in Tokyo right now," and the recipient is happy, the response would be, "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly when you go out."
[0743] 4. Adding additional information
[0744] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella," and if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[0745] 5. Responding to the user
[0746] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[0747] Specific example
[0748] For example, if a user types "What's the weather like today?" from Tokyo at 8 AM and the emotion engine recognizes the emotion as "happy," the server will generate and send "Good morning! It's sunny in Tokyo right now. It's a nice day, and it's going to be hot at 30 degrees today, so you should dress lightly." to the device. If the weather information includes rain, or if the user's emotion is recognized as "sad," additional information will be added accordingly.
[0749] Example of a prompt
[0750] Example 1:
[0751] User input: What's the weather like today?
[0752] Time: 8:00 AM
[0753] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[0754] Emotion: Happy
[0755] Example 2:
[0756] User input: What's the weather like today?
[0757] Time: 2 PM
[0758] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[0759] Emotion: Sad
[0760] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[0761] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0762] Step 1: Receiving user input
[0763] The user enters text such as "What's the weather like today?" into their device.
[0764] Input: User's text input.
[0765] The terminal receives this entered text data and sends it to the specified server.
[0766] Output: User input text data sent to the server.
[0767] Step 2: Obtain time information
[0768] The server receives input from the user and simultaneously obtains the current time information from the system clock.
[0769] Input: User-input text data.
[0770] The server calls the system clock API to obtain the current date and time.
[0771] Output: Current time information (e.g., 8:00 AM).
[0772] Step 3: Obtaining location information
[0773] The device uses its built-in GPS function to obtain the user's current location information.
[0774] Input: Request to obtain the device's location information.
[0775] The device calls the GPS module to obtain the user's location information (latitude and longitude) and sends it to the server.
[0776] Output: User location information sent to the server (e.g., latitude 35.6895, longitude 139.6917).
[0777] Step 4: Obtain weather information
[0778] The server accesses an external weather information API based on the acquired location information.
[0779] Input: User's location information.
[0780] The server sends a request to a weather information API to retrieve the latest weather information for the specified location. It then analyzes the response from the API and extracts the weather data.
[0781] Output: Latest weather information (e.g., sunny, temperature 30 degrees Celsius).
[0782] Step 5: Generating a greeting message
[0783] The server generates an appropriate greeting message based on the acquired time information.
[0784] Input: Current time information.
[0785] The server selects an appropriate greeting such as "Good morning," "Good afternoon," or "Good evening" based on the time information and stores it as text data.
[0786] Output: Generated greeting message (e.g., "Good morning").
[0787] Step 6: Recognizing Emotions
[0788] The server sends the user's input text to the emotion engine, which then analyzes the emotional state.
[0789] Input: User-input text data.
[0790] The emotion engine uses an NLP model to extract emotions from text and recognize feelings such as "happy" or "sad."
[0791] Output: Recognized emotion information (e.g., "happy").
[0792] Step 7: Generating the response
[0793] The server combines the acquired weather information, greetings, and emotional information to generate a response.
[0794] Input: Weather information, greeting message, emotional information.
[0795] The server combines this information to generate a response. For example, it might say, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees Celsius, so you should dress lightly when you go out."
[0796] Output: The generated response.
[0797] Step 8: Adding additional information
[0798] The server adds additional information based on weather and sentiment data.
[0799] Input: Generated response text, weather information, sentiment information.
[0800] If the weather information includes "rain," the server adds additional information such as "It looks like it's going to rain, so don't forget your umbrella." If the emotion information is "sad," it adds a message such as "It's a little chilly, so please dress warmly."
[0801] Output: A response message with additional information added.
[0802] Step 9: Responding to the user
[0803] The server sends the generated response message to the terminal, and the terminal displays the response message to the user.
[0804] Input: The generated response message.
[0805] The terminal receives a response message from the server and displays it on the screen.
[0806] Output: The response displayed to the user.
[0807] (Application Example 2)
[0808] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0809] Conventional user response systems can generate basic responses based on time and location information, but they struggle to generate personalized responses that take into account the user's emotional state. Furthermore, they cannot provide specific suggestions based on weather information or emotional state, resulting in a limited user experience. In particular, in the food delivery sector, there is a need for suggestions of dishes and restaurants tailored to when the user is tired or in a specific mood, but conventional systems have been unable to achieve this level of personalization.
[0810] 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.
[0811] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, means for analyzing the user's emotional state from the input text, and means for adjusting the response message based on the emotional state. This makes it possible to generate personalized responses based on the user's time information, location information, weather information, and emotional state. Furthermore, by suggesting the most suitable dishes and restaurants according to the user's emotional state, it is possible to provide a more highly personalized user experience, particularly in the field of food delivery.
[0812] "Means of receiving input from the user" refers to an interface for the user to input text or other data, and includes devices and software that can transmit such input to the system in a processable format.
[0813] "Means for obtaining time information of input received" include devices and software that record the time when user input is received and provide that information in a format usable within the system.
[0814] "Means for obtaining user location information" refers to technologies for determining the user's current location, and includes devices and software with location information acquisition capabilities such as GPS.
[0815] "Means for obtaining weather information based on location information" include devices and software that access external weather information APIs, etc., based on the user's location information and obtain weather data for the region corresponding to the location information.
[0816] "Means for generating greeting messages based on time information" include devices and software that automatically generate appropriate greeting messages (for example, "Good morning") based on acquired time information.
[0817] "Means for generating response texts by combining weather information and greetings" include devices and software that integrate acquired weather information and greetings to generate response texts for the user.
[0818] "Means of providing a response to the user" include devices and software that provide the generated response to the user by displaying it on the user's terminal or by conveying it by voice.
[0819] "Means for analyzing emotional states from user input text" include devices and software that analyze user input text and recognize the user's emotional state (e.g., "happy," "sad," etc.) from its content.
[0820] "Means for adjusting response statements based on emotional state" include devices and software that personalize the content of response statements and adjust them to be more appropriate according to the recognized emotional state of the user.
[0821] "Means for adding additional information when weather information includes specific conditions" include devices or software that add additional information (for example, "don't forget your umbrella") to a response statement based on specific conditions (for example, "rain" or "cold") when the acquired weather information includes those conditions.
[0822] "Means for suggesting clothing based on weather and temperature" include devices and software that suggest appropriate clothing to users based on acquired weather and temperature information.
[0823] "Means of suggesting the most suitable dishes and restaurants based on emotional state" include devices and software that suggest the most suitable dishes and restaurants to use to a user based on the recognized emotional state of the user.
[0824] Modes for carrying out the invention
[0825] This invention is a system that generates an optimal response to user input based on time information, location information, weather information, and emotional state. This system is applied to food delivery services to enhance the user experience by making it more personalized.
[0826] System Configuration
[0827] This system consists of the following elements:
[0828] 1. A device that receives input from the user (e.g., a smartphone)
[0829] The user enters text through this device. For example, they might type "I'm tired" using a food delivery app.
[0830] 2. Means of obtaining time information (e.g., system clock)
[0831] The server records the time when the user made their input. This information is used to generate an appropriate greeting message.
[0832] 3. Means of obtaining location information (e.g., GPS function)
[0833] The device obtains the user's current location information and sends this data to the server. For example, it sends the latitude and longitude information for Tokyo.
[0834] 4. Means of obtaining weather information (e.g., external weather API)
[0835] The server accesses an external weather information API based on location data to retrieve weather data for the relevant area. This data includes information such as whether the weather is sunny, rainy, and temperature.
[0836] 5. Means for generating greeting messages (e.g., a greeting message generation algorithm based on the time of day)
[0837] The server generates a greeting message based on the acquired time information. For example, if it's morning, it will say "Good morning."
[0838] 6. Means for analyzing the user's emotional state (e.g., an emotion analysis engine)
[0839] The server analyzes the user's input text and recognizes their emotional state. For example, it recognizes the emotion "tired" from the input "tired".
[0840] 7. Means for generating a response (e.g., a response generation algorithm)
[0841] The server generates a response by combining a greeting, weather information, and emotional information. For example, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[0842] 8. Means for providing a response (e.g., terminal display function)
[0843] The server sends the generated response to the terminal and displays it to the user.
[0844] Hardware and software to be used
[0845] This system uses user devices such as smartphones and tablets, employing GPS functionality for location information acquisition and an external weather API (e.g., OpenWeatherMap API) for weather information acquisition. Furthermore, it uses a sentiment analysis engine incorporating natural language processing technology (e.g., Python's sentiment analysis library) for sentiment analysis.
[0846] Specific example
[0847] For example, if a user enters "tired" at 10 AM in Tokyo, the system retrieves weather information, analyzes the user's emotional state, and then generates a response such as, "Good morning! The current weather is sunny, and the temperature is 25 degrees Celsius. We recommend a relaxing meal." This allows the user to receive appropriate information based on their current situation.
[0848] Example of a prompt
[0849] "How can I suggest a relaxing delivery menu to a user who is feeling tired?"
[0850] This system allows users to receive optimal information and suggestions based on time, location, weather, and mood, enabling them to enjoy a more personalized experience, particularly in the food delivery sector.
[0851] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0852] Step 1:
[0853] The user enters text. The user opens a food delivery app on a device such as a smartphone and enters text (for example, "I'm tired") into the input field. The entered text is sent to the server by the device.
[0854] Step 2:
[0855] The server obtains time information. The server records the time it receives input from the user. This time information is obtained from the system clock.
[0856] Step 3:
[0857] The device acquires location information. The GPS function built into the device identifies the user's current location and obtains latitude and longitude data. This location information is sent to the server.
[0858] Step 4:
[0859] The server retrieves weather information. Based on the retrieved location information, the server accesses an external weather information API (for example, the OpenWeatherMap API) to obtain weather data for the relevant area (for example, the weather is "sunny" and the temperature is 25 degrees Celsius).
[0860] Step 5:
[0861] The server generates a greeting message. The server generates an appropriate greeting message based on the acquired time information. For example, if it is morning, it will generate "Good morning."
[0862] Step 6:
[0863] The server analyzes the user's emotional state. The server sends the user's input text to an emotion analysis engine (for example, the Python sentiment analysis library), which analyzes the emotional state (e.g., "tired") from the text and retrieves the result.
[0864] Step 7:
[0865] The server generates a response. The server combines the generated greeting, weather information, and analyzed sentiment information to create a response. For example, it might generate a response such as, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[0866] Step 8:
[0867] The server sends a response message to the terminal. The server sends the generated response message to the user's terminal. This response message is displayed on the user's terminal screen.
[0868] 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.
[0869] 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.
[0870] 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.
[0871] [Third Embodiment]
[0872] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0873] 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.
[0874] 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).
[0875] 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.
[0876] 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.
[0877] 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).
[0878] 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.
[0879] 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.
[0880] 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.
[0881] 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.
[0882] 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.
[0883] 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".
[0884] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[0885] System Configuration
[0886] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information.
[0887] Program Processing Overview
[0888] 1. Receive user input
[0889] The user enters text into the terminal. A specific example would be entering the question, "What's the weather like today?"
[0890] The terminal receives this input and sends the corresponding text data to the server.
[0891] 2. Obtaining time information
[0892] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[0893] 3. Acquisition of location information
[0894] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[0895] 4. Obtaining weather information
[0896] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[0897] 5. Generating a greeting message
[0898] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[0899] 6. Generating a response
[0900] The server combines the retrieved weather information with a greeting. For example, a response message like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," is generated.
[0901] 7. Adding additional information
[0902] The server generates additional information if the weather information includes certain conditions. For example, if the weather information includes the condition "rain," the message "It looks like it's going to rain, so please take an umbrella" will be added.
[0903] 8. Responding to the user
[0904] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[0905] Specific example
[0906] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[0907] This system allows users to obtain information tailored to their own environment, enabling them to live their daily lives more comfortably.
[0908] The following describes the processing flow.
[0909] Step 1:
[0910] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[0911] Step 2:
[0912] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[0913] Step 3:
[0914] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[0915] Step 4:
[0916] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[0917] Step 5:
[0918] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[0919] Step 6:
[0920] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[0921] Step 7:
[0922] The server generates an appropriate greeting based on the time information it obtains. If it is between 5 AM and 12 PM, the greeting will be "Good morning."
[0923] Step 8:
[0924] The server generates a response by combining a greeting based on the time information with the weather information it has obtained. For example, it might generate a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0925] Step 9:
[0926] The server generates a response message and sends it to the terminal. The sent message is the optimal response message for the specific environment.
[0927] Step 10:
[0928] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0929] Through these steps, users can receive detailed information tailored to their specific circumstances at any given time.
[0930] (Example 1)
[0931] 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."
[0932] In modern society, it is crucial for users to quickly obtain information that is relevant to their daily lives in real time. However, existing systems often fail to provide personalized responses that take into account the user's current time, location, and even weather information. As a result, users may experience inconvenience because they cannot obtain information that is optimal for their individual circumstances.
[0933] 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.
[0934] In this invention, the server includes a terminal for receiving input from a user, means for processing the received input text, means for acquiring time information when the input was received, a terminal for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, and a terminal for providing the generated response message to the user. This enables the user to obtain personalized information based on the current time and location in real time.
[0935] A "user" is an individual or group of people who use a system.
[0936] A "terminal" is an electronic device used by a user for input and output. Specific examples include smartphones and personal computers.
[0937] A "server" is a computer system that receives requests from users and processes them accordingly.
[0938] "Input text" refers to the character information that a user sends to the system through their device. A concrete example would be "What's the weather like today?".
[0939] "Time information" refers to data that indicates the time when the user entered the information.
[0940] "Location information" refers to data that includes the latitude and longitude of the user's current location.
[0941] "Weather information" refers to data that indicates weather conditions at a specific location. Specific examples include "sunny" and "temperature 30 degrees Celsius."
[0942] A "greeting message" is a greeting text that is generated based on a specific time of day. Examples include "Good morning" and "Hello."
[0943] A "response message" is the text of the response that the system generates in response to user input. This is personalized based on time, location, and weather information.
[0944] "Additional information" refers to supplementary text added to a response when certain conditions are met. A concrete example would be, "It looks like it might rain, so please take an umbrella."
[0945] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[0946] System Configuration
[0947] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. Specifically, it uses the following hardware and software.
[0948] Terminal: This refers to devices such as smartphones and personal computers. The terminal's role is to receive input from the user, acquire location information, and transmit it to the server. It uses GPS functionality to acquire the user's location information.
[0949] Server: Used to process input text, location information, and time information, and to retrieve weather information from the weather API. The server is built using programming languages such as Python or Java.
[0950] External weather APIs: Use APIs such as OpenWeatherMap and Weatherstack to obtain the latest weather information for a specific location.
[0951] Program Processing Overview
[0952] The program of this system proceeds in the following steps. Specifically, the user enters text into the terminal, the server receives that text, retrieves various information, and generates the optimal response.
[0953] Receiving user input
[0954] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?" The terminal receives this input and sends the corresponding text data to the server. For example, it might send the text data using an HTTP request.
[0955] Acquisition of time information
[0956] The server obtains the time information from the system clock at the time it receives user input. This information is obtained using the Java method System.currentTimeMillis() or the Python method datetime.now(). This information is used to generate the greeting message.
[0957] Location information acquisition
[0958] The device obtains the user's current location information. This is done using the device's GPS function (for example, Android's LocationManager class). The obtained location information (latitude and longitude) is sent to the server via an HTTP request.
[0959] Obtaining weather information
[0960] The server accesses an external weather API based on the acquired location information (latitude and longitude). The server sends an API request (for example, an HTTP GET request) to retrieve the latest weather data (such as "sunny" or "temperature 30 degrees").
[0961] Generating a greeting message
[0962] The server generates an appropriate greeting based on the acquired time information. It generates "Good morning" if it is between 5 AM and 12 PM, "Good afternoon" if it is between 12 PM and 6 PM, and "Good evening" for all other times.
[0963] Generating a response
[0964] The server combines the retrieved weather information with a greeting to generate a response. For example, it might create a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." The server dynamically combines the text, generating the response using methods like Java's String.format() or Python's f-strings.
[0965] Adding additional information
[0966] If the weather information includes the condition "rain," the server generates additional information such as, "It looks like it's going to rain, so please take an umbrella." This allows users to receive appropriate advice based on specific conditions.
[0967] Response to the user
[0968] The server sends the generated response to the device. This transmission is done using an HTTP response. The device then displays the received response to the user. Specifically, it is displayed in a text view on the screen (for example, Android's TextView).
[0969] Specific example
[0970] For example, suppose a user enters "What's the weather like today?" into their terminal at 8:00 AM. In this case, the system will operate as follows:
[0971] 1. The user enters "What's the weather like today?" into the device.
[0972] 2. The terminal sends the input text to the server.
[0973] 3. The server obtains the reception time (8:00 AM) from the system clock.
[0974] 4. The device uses its GPS function to obtain location information (latitude 35.6895, longitude 139.6917) and transmits it to the server.
[0975] 5. The server accesses an external weather API to obtain the latest weather information for Tokyo ("Sunny, temperature 30 degrees Celsius").
[0976] 6. The server generates the greeting "Good morning."
[0977] 7. The server generates a response message that reads, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[0978] 8. The server sends a response message to the terminal, which then displays it to the user.
[0979] Example of a prompt
[0980] The following are examples of prompts to input to a generative AI model.
[0981] An example of a prompt that a generative AI model uses to generate a response to the input "What's the weather like today?":
[0982] "The user entered 'What's the weather like today?'. The current location is latitude 35.6895, longitude 139.6917, and the current time is 8:00 AM. The latest weather information is 'Sunny, temperature 30 degrees Celsius'. Based on this information, generate a response that combines an appropriate greeting and weather information."
[0983] In this way, the present invention can provide users with more personalized information and improve convenience in their daily lives.
[0984] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0985] Step 1:
[0986] The user enters text into the terminal. Specifically, they enter the question, "What's the weather like today?" The terminal receives this input, generates text data, and sends it to the server. Input: The text entered by the user. Output: The text data sent to the server.
[0987] Step 2:
[0988] The server receives text data sent by the user. It analyzes the received text data to identify any information that needs to be addressed. For example, it might determine that weather information is needed from the text "What's the weather like today?". Input: Text data sent by the user. Output: Analyzed information.
[0989] Step 3:
[0990] The server obtains the time information from the system clock at the time it received the text data. Specifically, it uses the Java method System.currentTimeMillis() or the Python method datetime.now(). Input: Server's system clock. Output: Obtained time information.
[0991] Step 4:
[0992] The device obtains the user's current location information. It uses GPS functionality to obtain latitude and longitude. This information is generated and sent to the server. Input: GPS functionality built into the device. Output: Obtained location information.
[0993] Step 5:
[0994] The server receives location information sent from the device. Based on the received location information (latitude and longitude), it accesses an external weather API (e.g., OpenWeatherMap API) to obtain the latest weather information for the specified area. Input: Location information from the device. Output: Weather information obtained from the API.
[0995] Step 6:
[0996] The server generates an appropriate greeting based on the acquired time information. For example, it will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times. Input: Acquired time information. Output: Generated greeting.
[0997] Step 7:
[0998] The server generates a response by combining weather information it has obtained with a generated greeting. For example, it will generate text such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Obtained weather information and greeting. Output: Generated response.
[0999] Step 8:
[1000] This function adds additional information to the response message generated by the server. If the weather information includes a specific condition, such as "rain," it adds information such as "It looks like it's going to rain, so please take an umbrella." Input: Generated response message and weather information. Output: Response message with additional information.
[1001] Step 9:
[1002] The server sends the final response to the device. The device displays the received response. Specifically, it displays the response in a text view on the screen (for example, Android's TextView). Input: The response sent by the server. Output: The response displayed to the user.
[1003] This process allows users to quickly and conveniently obtain relevant information based on their time and location.
[1004] (Application Example 1)
[1005] 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."
[1006] Conventional systems did not allow users to receive personalized advice or information based on specific environmental information (such as weather or time). Furthermore, in food delivery services, efficient and effective information provision to delivery personnel and customers was not possible, resulting in low convenience. Therefore, there was a need for a system that provides real-time notifications regarding deliveries and appropriate advice based on weather conditions.
[1007] 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.
[1008] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, and means for generating a real-time notification that takes into account the scheduled delivery time and delivery status. As a result, the user can receive real-time information according to the current weather and delivery status, improving convenience for both delivery personnel and customers.
[1009] A "user" is someone who uses a system.
[1010] "Means of receiving input" refers to devices or software that have the function of capturing instructions from the user, such as text or voice.
[1011] "Time information" refers to data that indicates the date and time the user entered the information.
[1012] "Location information" refers to data that indicates the user's current location, and uses technologies such as GPS.
[1013] "Weather information" refers to meteorological data collected based on specific location information.
[1014] A "greeting message" is a polite message generated based on time information.
[1015] A "response message" is a message generated to address information requested by a user.
[1016] "Real-time notifications" are information delivered instantly based on the current situation and time.
[1017] "Estimated delivery time" refers to the time it is predicted that a delivery item will reach its destination.
[1018] "Delivery status" refers to information indicating the current stage of a delivery.
[1019] "Additional information" refers to supplementary information added to a basic response when certain conditions are met.
[1020] "Equipment suggestions" refer to advice that informs users of appropriate clothing and items to bring, depending on the weather and temperature.
[1021] This invention is a system that generates an optimal response to user input, taking into account time information, location information, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment. The specific configuration and processing procedures for implementing this invention are described below.
[1022] System Configuration
[1023] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. It also includes GPS functionality to acquire location information, which is used for delivery prediction and real-time notifications.
[1024] Program Processing Overview
[1025] hardware
[1026] Device: Smartphone (with GPS function)
[1027] Server: Cloud server or data center
[1028] External API: WeatherAPI
[1029] software
[1030] Programming language: Python
[1031] Library for obtaining weather information: requests
[1032] Library for obtaining time information: datetime
[1033] Generative AI model: GPT-3 or equivalent language model
[1034] Processing procedure
[1035] 1. Receiving user input
[1036] The user enters text via a smartphone application. For example, a question like "What's the weather like today?" might be asked.
[1037] The terminal receives this input and sends the input data to the server.
[1038] 2. Obtaining time information
[1039] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message.
[1040] 3. Acquisition of location information
[1041] The device uses GPS functionality to obtain the user's current location. The obtained location information (for example, latitude 35.6895, longitude 139.6917) is sent to the server.
[1042] 4. Obtaining weather information
[1043] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[1044] 5. Generating a greeting message
[1045] The server generates appropriate greetings based on time information obtained using a generative AI model. It will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times.
[1046] 6. Generating a response
[1047] The server combines the acquired weather information with a greeting, and further considers the user's inquiry to generate a response. For example, it might generate a specific message such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[1048] 7. Adding additional information
[1049] The server adds additional information to the weather forecast if it includes specific conditions, such as "It looks like it's going to rain, so please take an umbrella."
[1050] 8. Responding to the user
[1051] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[1052] Specific example
[1053] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[1054] Examples of prompt statements are as follows:
[1055] "Please generate a real-time notification that takes today's weather and estimated delivery time into consideration."
[1056] Example of a prompt:
[1057] "Please generate a message that says, 'Your delivery will be in X minutes,' taking into account the current weather information and estimated delivery time for the user while they are in Tokyo. Also, please include advice based on the outside weather information."
[1058] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1059] Step 1:
[1060] A user enters text via a smartphone application. For example, they might enter the question, "What's the weather like today?" The device receives this input and sends the input data to the server. Input: User-entered text. Output: Input data sent to the server.
[1061] Step 2:
[1062] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message. Input: System clock data. Output: Time information.
[1063] Step 3:
[1064] The device uses GPS functionality to obtain the user's current location. The obtained location information is then sent to the server. Input: GPS data. Output: Location information.
[1065] Step 4:
[1066] The server accesses the WeatherAPI based on the acquired location information to retrieve the latest weather information for a specific area. Specifically, it includes the location information in the API request to obtain weather information. Input: Location information. Output: Weather information.
[1067] Step 5:
[1068] The server generates an appropriate greeting based on time information obtained using a generative AI model. For example, if the time is between 5 AM and 12 PM, it will generate "Good morning." Input: Time information. Output: Greeting message.
[1069] Step 6:
[1070] The server combines the acquired weather information and greeting, and further considers the user's inquiry to generate a response. Using a generation AI model, it can generate a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Weather information, greeting. Output: Response.
[1071] Step 7:
[1072] The server adds additional information to the weather forecast if it includes certain conditions, such as "It looks like it's going to rain, so please take an umbrella." Input: Weather information. Output: Response message (with additional information).
[1073] Step 8:
[1074] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances. Input: Generated response. Output: Displayed to the user.
[1075] 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.
[1076] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[1077] System Configuration
[1078] This system consists of a terminal that receives user input, a server that processes the input and generates information, an API that acquires external weather information, and an emotion engine that recognizes the user's emotions.
[1079] Program Processing Overview
[1080] 1. Receive user input
[1081] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?"
[1082] The terminal receives this input and sends the corresponding text data to the server.
[1083] 2. Obtaining time information
[1084] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[1085] 3. Acquisition of location information
[1086] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[1087] 4. Obtaining weather information
[1088] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[1089] 5. Generating a greeting message
[1090] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[1091] 6. Recognition of Emotions
[1092] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad" from the user's text.
[1093] 7. Generating a response
[1094] The server combines the acquired weather information, greeting, and emotion information recognized by the emotion engine to generate a response. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[1095] 8. Adding additional information
[1096] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella." Also, if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[1097] 9. Responding to the user
[1098] The server generates a response message, which is sent to the terminal and displayed to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[1099] Specific example
[1100] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, and the emotion engine recognizes the user's emotion as "happy," the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot at 30 degrees Celsius, so you should dress lightly when you go out," and send it to the user's device. In addition, if the weather information includes rain, or if the emotion engine recognizes the user's emotion as "sad," additional information will be added accordingly.
[1101] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[1102] The following describes the processing flow.
[1103] Step 1:
[1104] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[1105] Step 2:
[1106] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[1107] Step 3:
[1108] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[1109] Step 4:
[1110] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, the greeting will be "Good morning." Between 12 PM and 6 PM, it will be "Good afternoon," and at all other times, it will be "Good evening."
[1111] Step 5:
[1112] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[1113] Step 6:
[1114] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[1115] Step 7:
[1116] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[1117] Step 8:
[1118] The server retrieves weather information and sends the user's input text data to the emotion engine. The emotion engine analyzes the emotions and recognizes feelings such as "happy" or "sad" from the user's input text.
[1119] Step 9:
[1120] The server generates a response by combining weather information, a greeting, and emotional information recognized by the emotion engine. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[1121] Step 10:
[1122] When the server generates a response, it adds additional information as needed based on weather information that includes specific conditions or on sentiment information. For example, if the weather information includes "rain," it adds the message, "It looks like it's going to rain, so don't forget your umbrella." Also, if the sentiment engine recognizes that the user is "sad," it adds a caring message such as, "It's a little chilly, so please dress warmly."
[1123] Step 11:
[1124] The server generates a response message and sends it to the terminal. The content of the message will correspond to the user's current emotions and environment.
[1125] Step 12:
[1126] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees, so you should dress lightly."
[1127] Through these steps, users can obtain detailed information tailored to their environment and emotions at any given time.
[1128] (Example 2)
[1129] 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."
[1130] Conventional systems can provide weather information based on time and location data in response to user input, but they cannot generate responses that take into account the user's emotional state, making it difficult to provide a personalized user experience. Furthermore, the provision of additional information based on acquired weather data is limited, resulting in a lack of nuanced responses that respond to the user's emotions.
[1131] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for recognizing the user's emotional state, means for generating a response sentence by combining weather information, a greeting, and emotional information, means for adding additional information when specific conditions are included in the weather information, and means for adding additional information based on emotional information. This makes it possible to generate an optimal response that takes the emotional state into account in response to the user's input and to provide a personalized user experience.
[1132] "Means of receiving user input" refers to devices or software that have the function of receiving text input from a user and transmitting it to other components within the system.
[1133] "Means for acquiring time information" refers to devices or software that have the function of obtaining the current date and time from the system clock and making it available for use in other processes within the system.
[1134] "Means for obtaining user location information" refers to devices or software that have the function of obtaining the user's current location information (latitude and longitude) using GPS or similar functions, and making it available for use in other processes within the system.
[1135] "Means for obtaining weather information" refers to devices or software that have the function of accessing external weather information APIs based on specified location information and obtaining the latest weather data.
[1136] "Means for generating greeting messages" refers to devices or software that have the function of generating appropriate greeting messages (such as "Good morning," "Good afternoon," and "Good evening") based on acquired time information.
[1137] "Means for recognizing a user's emotional state" refers to devices or software that analyze a user's input text to understand their emotions and recognize emotional states such as "happy" or "sad."
[1138] "Means for generating response messages" refers to devices or software that have the function of generating the optimal response message to provide to the user by combining acquired weather information, greeting messages, and emotional information.
[1139] "Means of providing a response to the user" refers to devices or software that have the function of sending the generated response to the user's terminal and displaying it to the user.
[1140] "Means of adding additional information" refers to devices or software that have the function of adding additional information (such as a message prompting the user to bring an umbrella or a message showing concern for the user) to the response text when specific conditions are included in weather information or sentiment information.
[1141] "Means of suggesting clothing" refers to devices or software that have the function of suggesting appropriate clothing based on the user's location and time information, taking into account weather and temperature.
[1142] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[1143] System Configuration
[1144] This system consists of the following components:
[1145] 1. A terminal that receives user input.
[1146] 2. A server that processes input and generates information.
[1147] 3. API for obtaining external weather information
[1148] 4. Emotion engine that recognizes user emotions
[1149] System Implementation Method
[1150] 1. A terminal that receives user input.
[1151] The user enters text from their device. For example, they might enter the question, "What's the weather like today?"
[1152] The terminal receives this entered text data and sends it to the server.
[1153] 2. Server processing
[1154] Obtaining time information:
[1155] The server obtains time information from the system clock at the time it receives user input. This information is used to generate an appropriate greeting message.
[1156] Location information acquisition:
[1157] The device uses GPS functionality to obtain the user's current location information and transmit it to the server. For example, the obtained location information is latitude 35.6895 and longitude 139.6917.
[1158] Obtaining weather information:
[1159] The server accesses a weather information API based on the acquired location information to retrieve the latest weather information. This includes data such as "sunny" and "temperature 30 degrees."
[1160] Generating a greeting message:
[1161] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[1162] Recognition of emotions:
[1163] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad."
[1164] 3. Generating a response sentence
[1165] The server combines the acquired weather information, greetings, and emotional information recognized by the emotion engine to generate a response. For example, if the message is "Good morning," "It's sunny in Tokyo right now," and the recipient is happy, the response would be, "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly when you go out."
[1166] 4. Adding additional information
[1167] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella," and if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[1168] 5. Responding to the user
[1169] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[1170] Specific example
[1171] For example, if a user types "What's the weather like today?" from Tokyo at 8 AM and the emotion engine recognizes the emotion as "happy," the server will generate and send "Good morning! It's sunny in Tokyo right now. It's a nice day, and it's going to be hot at 30 degrees today, so you should dress lightly." to the device. If the weather information includes rain, or if the user's emotion is recognized as "sad," additional information will be added accordingly.
[1172] Example of a prompt
[1173] Example 1:
[1174] User input: What's the weather like today?
[1175] Time: 8:00 AM
[1176] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[1177] Emotion: Happy
[1178] Example 2:
[1179] User input: What's the weather like today?
[1180] Time: 2 PM
[1181] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[1182] Emotion: Sad
[1183] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[1184] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1185] Step 1: Receiving user input
[1186] The user enters text such as "What's the weather like today?" into their device.
[1187] Input: User's text input.
[1188] The terminal receives this entered text data and sends it to the specified server.
[1189] Output: User input text data sent to the server.
[1190] Step 2: Obtain time information
[1191] The server receives input from the user and simultaneously obtains the current time information from the system clock.
[1192] Input: User-input text data.
[1193] The server calls the system clock API to obtain the current date and time.
[1194] Output: Current time information (e.g., 8:00 AM).
[1195] Step 3: Obtaining location information
[1196] The device uses its built-in GPS function to obtain the user's current location information.
[1197] Input: Request to obtain the device's location information.
[1198] The device calls the GPS module to obtain the user's location information (latitude and longitude) and sends it to the server.
[1199] Output: User location information sent to the server (e.g., latitude 35.6895, longitude 139.6917).
[1200] Step 4: Obtain weather information
[1201] The server accesses an external weather information API based on the acquired location information.
[1202] Input: User's location information.
[1203] The server sends a request to a weather information API to retrieve the latest weather information for the specified location. It then analyzes the response from the API and extracts the weather data.
[1204] Output: Latest weather information (e.g., sunny, temperature 30 degrees Celsius).
[1205] Step 5: Generating a greeting message
[1206] The server generates an appropriate greeting message based on the acquired time information.
[1207] Input: Current time information.
[1208] The server selects an appropriate greeting such as "Good morning," "Good afternoon," or "Good evening" based on the time information and stores it as text data.
[1209] Output: Generated greeting message (e.g., "Good morning").
[1210] Step 6: Recognizing Emotions
[1211] The server sends the user's input text to the emotion engine, which then analyzes the emotional state.
[1212] Input: User-input text data.
[1213] The emotion engine uses an NLP model to extract emotions from text and recognize feelings such as "happy" or "sad."
[1214] Output: Recognized emotion information (e.g., "happy").
[1215] Step 7: Generating the response
[1216] The server combines the acquired weather information, greetings, and emotional information to generate a response.
[1217] Input: Weather information, greeting message, emotional information.
[1218] The server combines this information to generate a response. For example, it might say, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees Celsius, so you should dress lightly when you go out."
[1219] Output: The generated response.
[1220] Step 8: Adding additional information
[1221] The server adds additional information based on weather and sentiment data.
[1222] Input: Generated response text, weather information, sentiment information.
[1223] If the weather information includes "rain," the server adds additional information such as "It looks like it's going to rain, so don't forget your umbrella." If the emotion information is "sad," it adds a message such as "It's a little chilly, so please dress warmly."
[1224] Output: A response message with additional information added.
[1225] Step 9: Responding to the user
[1226] The server sends the generated response message to the terminal, and the terminal displays the response message to the user.
[1227] Input: The generated response message.
[1228] The terminal receives a response message from the server and displays it on the screen.
[1229] Output: The response displayed to the user.
[1230] (Application Example 2)
[1231] 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."
[1232] Conventional user response systems can generate basic responses based on time and location information, but they struggle to generate personalized responses that take into account the user's emotional state. Furthermore, they cannot provide specific suggestions based on weather information or emotional state, resulting in a limited user experience. In particular, in the food delivery sector, there is a need for suggestions of dishes and restaurants tailored to when the user is tired or in a specific mood, but conventional systems have been unable to achieve this level of personalization.
[1233] 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.
[1234] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, means for analyzing the user's emotional state from the input text, and means for adjusting the response message based on the emotional state. This makes it possible to generate personalized responses based on the user's time information, location information, weather information, and emotional state. Furthermore, by suggesting the most suitable dishes and restaurants according to the user's emotional state, it is possible to provide a more highly personalized user experience, particularly in the field of food delivery.
[1235] "Means of receiving input from the user" refers to an interface for the user to input text or other data, and includes devices and software that can transmit such input to the system in a processable format.
[1236] "Means for obtaining time information of input received" include devices and software that record the time when user input is received and provide that information in a format usable within the system.
[1237] "Means for obtaining user location information" refers to technologies for determining the user's current location, and includes devices and software with location information acquisition capabilities such as GPS.
[1238] "Means for obtaining weather information based on location information" include devices and software that access external weather information APIs, etc., based on the user's location information and obtain weather data for the region corresponding to the location information.
[1239] "Means for generating greeting messages based on time information" include devices and software that automatically generate appropriate greeting messages (for example, "Good morning") based on acquired time information.
[1240] "Means for generating response texts by combining weather information and greetings" include devices and software that integrate acquired weather information and greetings to generate response texts for the user.
[1241] "Means of providing a response to the user" include devices and software that provide the generated response to the user by displaying it on the user's terminal or by conveying it by voice.
[1242] "Means for analyzing emotional states from user input text" include devices and software that analyze user input text and recognize the user's emotional state (e.g., "happy," "sad," etc.) from its content.
[1243] "Means for adjusting response statements based on emotional state" include devices and software that personalize the content of response statements and adjust them to be more appropriate according to the recognized emotional state of the user.
[1244] "Means for adding additional information when weather information includes specific conditions" include devices or software that add additional information (for example, "don't forget your umbrella") to a response statement based on specific conditions (for example, "rain" or "cold") when the acquired weather information includes those conditions.
[1245] "Means for suggesting clothing based on weather and temperature" include devices and software that suggest appropriate clothing to users based on acquired weather and temperature information.
[1246] "Means of suggesting the most suitable dishes and restaurants based on emotional state" include devices and software that suggest the most suitable dishes and restaurants to use to a user based on the recognized emotional state of the user.
[1247] Modes for carrying out the invention
[1248] This invention is a system that generates an optimal response to user input based on time information, location information, weather information, and emotional state. This system is applied to food delivery services to enhance the user experience by making it more personalized.
[1249] System Configuration
[1250] This system consists of the following elements:
[1251] 1. A device that receives input from the user (e.g., a smartphone)
[1252] The user enters text through this device. For example, they might type "I'm tired" using a food delivery app.
[1253] 2. Means of obtaining time information (e.g., system clock)
[1254] The server records the time when the user made their input. This information is used to generate an appropriate greeting message.
[1255] 3. Means of obtaining location information (e.g., GPS function)
[1256] The device obtains the user's current location information and sends this data to the server. For example, it sends the latitude and longitude information for Tokyo.
[1257] 4. Means of obtaining weather information (e.g., external weather API)
[1258] The server accesses an external weather information API based on location data to retrieve weather data for the relevant area. This data includes information such as whether the weather is sunny, rainy, and temperature.
[1259] 5. Means for generating greeting messages (e.g., a greeting message generation algorithm based on the time of day)
[1260] The server generates a greeting message based on the acquired time information. For example, if it's morning, it will say "Good morning."
[1261] 6. Means for analyzing the user's emotional state (e.g., an emotion analysis engine)
[1262] The server analyzes the user's input text and recognizes their emotional state. For example, it recognizes the emotion "tired" from the input "tired".
[1263] 7. Means for generating a response (e.g., a response generation algorithm)
[1264] The server generates a response by combining a greeting, weather information, and emotional information. For example, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[1265] 8. Means for providing a response (e.g., terminal display function)
[1266] The server sends the generated response to the terminal and displays it to the user.
[1267] Hardware and software to be used
[1268] This system uses user devices such as smartphones and tablets, employing GPS functionality for location information acquisition and an external weather API (e.g., OpenWeatherMap API) for weather information acquisition. Furthermore, it uses a sentiment analysis engine incorporating natural language processing technology (e.g., Python's sentiment analysis library) for sentiment analysis.
[1269] Specific example
[1270] For example, if a user enters "tired" at 10 AM in Tokyo, the system retrieves weather information, analyzes the user's emotional state, and then generates a response such as, "Good morning! The current weather is sunny, and the temperature is 25 degrees Celsius. We recommend a relaxing meal." This allows the user to receive appropriate information based on their current situation.
[1271] Example of a prompt
[1272] "How can I suggest a relaxing delivery menu to a user who is feeling tired?"
[1273] This system allows users to receive optimal information and suggestions based on time, location, weather, and mood, enabling them to enjoy a more personalized experience, particularly in the food delivery sector.
[1274] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1275] Step 1:
[1276] The user enters text. The user opens a food delivery app on a device such as a smartphone and enters text (for example, "I'm tired") into the input field. The entered text is sent to the server by the device.
[1277] Step 2:
[1278] The server obtains time information. The server records the time it receives input from the user. This time information is obtained from the system clock.
[1279] Step 3:
[1280] The device acquires location information. The GPS function built into the device identifies the user's current location and obtains latitude and longitude data. This location information is sent to the server.
[1281] Step 4:
[1282] The server retrieves weather information. Based on the retrieved location information, the server accesses an external weather information API (for example, the OpenWeatherMap API) to obtain weather data for the relevant area (for example, the weather is "sunny" and the temperature is 25 degrees Celsius).
[1283] Step 5:
[1284] The server generates a greeting message. The server generates an appropriate greeting message based on the acquired time information. For example, if it is morning, it will generate "Good morning."
[1285] Step 6:
[1286] The server analyzes the user's emotional state. The server sends the user's input text to an emotion analysis engine (for example, the Python sentiment analysis library), which analyzes the emotional state (e.g., "tired") from the text and retrieves the result.
[1287] Step 7:
[1288] The server generates a response. The server combines the generated greeting, weather information, and analyzed sentiment information to create a response. For example, it might generate a response such as, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[1289] Step 8:
[1290] The server sends a response message to the terminal. The server sends the generated response message to the user's terminal. This response message is displayed on the user's terminal screen.
[1291] 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.
[1292] 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.
[1293] 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.
[1294] [Fourth Embodiment]
[1295] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1296] 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.
[1297] 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).
[1298] 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.
[1299] 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.
[1300] 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).
[1301] 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.
[1302] 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.
[1303] 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.
[1304] 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.
[1305] 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.
[1306] 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.
[1307] 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".
[1308] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[1309] System Configuration
[1310] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information.
[1311] Program Processing Overview
[1312] 1. Receive user input
[1313] The user enters text into the terminal. A specific example would be entering the question, "What's the weather like today?"
[1314] The terminal receives this input and sends the corresponding text data to the server.
[1315] 2. Obtaining time information
[1316] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[1317] 3. Acquisition of location information
[1318] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[1319] 4. Obtaining weather information
[1320] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[1321] 5. Generating a greeting message
[1322] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[1323] 6. Generating a response
[1324] The server combines the retrieved weather information with a greeting. For example, a response message like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," is generated.
[1325] 7. Adding additional information
[1326] The server generates additional information if the weather information includes certain conditions. For example, if the weather information includes the condition "rain," the message "It looks like it's going to rain, so please take an umbrella" will be added.
[1327] 8. Responding to the user
[1328] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[1329] Specific example
[1330] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[1331] This system allows users to obtain information tailored to their own environment, enabling them to live their daily lives more comfortably.
[1332] The following describes the processing flow.
[1333] Step 1:
[1334] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[1335] Step 2:
[1336] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[1337] Step 3:
[1338] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[1339] Step 4:
[1340] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[1341] Step 5:
[1342] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[1343] Step 6:
[1344] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[1345] Step 7:
[1346] The server generates an appropriate greeting based on the time information it obtains. If it is between 5 AM and 12 PM, the greeting will be "Good morning."
[1347] Step 8:
[1348] The server generates a response by combining a greeting based on the time information with the weather information it has obtained. For example, it might generate a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[1349] Step 9:
[1350] The server generates a response message and sends it to the terminal. The sent message is the optimal response message for the specific environment.
[1351] Step 10:
[1352] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[1353] Through these steps, users can receive detailed information tailored to their specific circumstances at any given time.
[1354] (Example 1)
[1355] 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".
[1356] In modern society, it is crucial for users to quickly obtain information that is relevant to their daily lives in real time. However, existing systems often fail to provide personalized responses that take into account the user's current time, location, and even weather information. As a result, users may experience inconvenience because they cannot obtain information that is optimal for their individual circumstances.
[1357] 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.
[1358] In this invention, the server includes a terminal for receiving input from a user, means for processing the received input text, means for acquiring time information when the input was received, a terminal for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, and a terminal for providing the generated response message to the user. This enables the user to obtain personalized information based on the current time and location in real time.
[1359] A "user" is an individual or group of people who use a system.
[1360] A "terminal" is an electronic device used by a user for input and output. Specific examples include smartphones and personal computers.
[1361] A "server" is a computer system that receives requests from users and processes them accordingly.
[1362] "Input text" refers to the character information that a user sends to the system through their device. A concrete example would be "What's the weather like today?".
[1363] "Time information" refers to data that indicates the time when the user entered the information.
[1364] "Location information" refers to data that includes the latitude and longitude of the user's current location.
[1365] "Weather information" refers to data that indicates weather conditions at a specific location. Specific examples include "sunny" and "temperature 30 degrees Celsius."
[1366] A "greeting message" is a greeting text that is generated based on a specific time of day. Examples include "Good morning" and "Hello."
[1367] A "response message" is the text of the response that the system generates in response to user input. This is personalized based on time, location, and weather information.
[1368] "Additional information" refers to supplementary text added to a response when certain conditions are met. A concrete example would be, "It looks like it might rain, so please take an umbrella."
[1369] This invention is a system that generates an optimal response to user input, taking into account time, location, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment.
[1370] System Configuration
[1371] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. Specifically, it uses the following hardware and software.
[1372] Terminal: This refers to devices such as smartphones and personal computers. The terminal's role is to receive input from the user, acquire location information, and transmit it to the server. It uses GPS functionality to acquire the user's location information.
[1373] Server: Used to process input text, location information, and time information, and to retrieve weather information from the weather API. The server is built using programming languages such as Python or Java.
[1374] External weather APIs: Use APIs such as OpenWeatherMap and Weatherstack to obtain the latest weather information for a specific location.
[1375] Program Processing Overview
[1376] The program of this system proceeds in the following steps. Specifically, the user enters text into the terminal, the server receives that text, retrieves various information, and generates the optimal response.
[1377] Receiving user input
[1378] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?" The terminal receives this input and sends the corresponding text data to the server. For example, it might send the text data using an HTTP request.
[1379] Acquisition of time information
[1380] The server obtains the time information from the system clock at the time it receives user input. This information is obtained using the Java method System.currentTimeMillis() or the Python method datetime.now(). This information is used to generate the greeting message.
[1381] Location information acquisition
[1382] The device obtains the user's current location information. This is done using the device's GPS function (for example, Android's LocationManager class). The obtained location information (latitude and longitude) is sent to the server via an HTTP request.
[1383] Obtaining weather information
[1384] The server accesses an external weather API based on the acquired location information (latitude and longitude). The server sends an API request (for example, an HTTP GET request) to retrieve the latest weather data (such as "sunny" or "temperature 30 degrees").
[1385] Generating a greeting message
[1386] The server generates an appropriate greeting based on the acquired time information. It generates "Good morning" if it is between 5 AM and 12 PM, "Good afternoon" if it is between 12 PM and 6 PM, and "Good evening" for all other times.
[1387] Generating a response
[1388] The server combines the retrieved weather information with a greeting to generate a response. For example, it might create a response like, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." The server dynamically combines the text, generating the response using methods like Java's String.format() or Python's f-strings.
[1389] Adding additional information
[1390] If the weather information includes the condition "rain," the server generates additional information such as, "It looks like it's going to rain, so please take an umbrella." This allows users to receive appropriate advice based on specific conditions.
[1391] Response to the user
[1392] The server sends the generated response to the device. This transmission is done using an HTTP response. The device then displays the received response to the user. Specifically, it is displayed in a text view on the screen (for example, Android's TextView).
[1393] Specific example
[1394] For example, suppose a user enters "What's the weather like today?" into their terminal at 8:00 AM. In this case, the system will operate as follows:
[1395] 1. The user enters "What's the weather like today?" into the device.
[1396] 2. The terminal sends the input text to the server.
[1397] 3. The server obtains the reception time (8:00 AM) from the system clock.
[1398] 4. The device uses its GPS function to obtain location information (latitude 35.6895, longitude 139.6917) and transmits it to the server.
[1399] 5. The server accesses an external weather API to obtain the latest weather information for Tokyo ("Sunny, temperature 30 degrees Celsius").
[1400] 6. The server generates the greeting "Good morning."
[1401] 7. The server generates a response message that reads, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[1402] 8. The server sends a response message to the terminal, which then displays it to the user.
[1403] Example of a prompt
[1404] The following are examples of prompts to input to a generative AI model.
[1405] An example of a prompt that a generative AI model uses to generate a response to the input "What's the weather like today?":
[1406] "The user entered 'What's the weather like today?'. The current location is latitude 35.6895, longitude 139.6917, and the current time is 8:00 AM. The latest weather information is 'Sunny, temperature 30 degrees Celsius'. Based on this information, generate a response that combines an appropriate greeting and weather information."
[1407] In this way, the present invention can provide users with more personalized information and improve convenience in their daily lives.
[1408] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1409] Step 1:
[1410] The user enters text into the terminal. Specifically, they enter the question, "What's the weather like today?" The terminal receives this input, generates text data, and sends it to the server. Input: The text entered by the user. Output: The text data sent to the server.
[1411] Step 2:
[1412] The server receives text data sent by the user. It analyzes the received text data to identify any information that needs to be addressed. For example, it might determine that weather information is needed from the text "What's the weather like today?". Input: Text data sent by the user. Output: Analyzed information.
[1413] Step 3:
[1414] The server obtains the time information from the system clock at the time it received the text data. Specifically, it uses the Java method System.currentTimeMillis() or the Python method datetime.now(). Input: Server's system clock. Output: Obtained time information.
[1415] Step 4:
[1416] The device obtains the user's current location information. It uses GPS functionality to obtain latitude and longitude. This information is generated and sent to the server. Input: GPS functionality built into the device. Output: Obtained location information.
[1417] Step 5:
[1418] The server receives location information sent from the device. Based on the received location information (latitude and longitude), it accesses an external weather API (e.g., OpenWeatherMap API) to obtain the latest weather information for the specified area. Input: Location information from the device. Output: Weather information obtained from the API.
[1419] Step 6:
[1420] The server generates an appropriate greeting based on the acquired time information. For example, it will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times. Input: Acquired time information. Output: Generated greeting.
[1421] Step 7:
[1422] The server generates a response by combining weather information it has obtained with a generated greeting. For example, it will generate text such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Obtained weather information and greeting. Output: Generated response.
[1423] Step 8:
[1424] This function adds additional information to the response message generated by the server. If the weather information includes a specific condition, such as "rain," it adds information such as "It looks like it's going to rain, so please take an umbrella." Input: Generated response message and weather information. Output: Response message with additional information.
[1425] Step 9:
[1426] The server sends the final response to the device. The device displays the received response. Specifically, it displays the response in a text view on the screen (for example, Android's TextView). Input: The response sent by the server. Output: The response displayed to the user.
[1427] This process allows users to quickly and conveniently obtain relevant information based on their time and location.
[1428] (Application Example 1)
[1429] 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".
[1430] Conventional systems did not allow users to receive personalized advice or information based on specific environmental information (such as weather or time). Furthermore, in food delivery services, efficient and effective information provision to delivery personnel and customers was not possible, resulting in low convenience. Therefore, there was a need for a system that provides real-time notifications regarding deliveries and appropriate advice based on weather conditions.
[1431] 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.
[1432] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, and means for generating a real-time notification that takes into account the scheduled delivery time and delivery status. As a result, the user can receive real-time information according to the current weather and delivery status, improving convenience for both delivery personnel and customers.
[1433] A "user" is someone who uses a system.
[1434] "Means of receiving input" refers to devices or software that have the function of capturing instructions from the user, such as text or voice.
[1435] "Time information" refers to data that indicates the date and time the user entered the information.
[1436] "Location information" refers to data that indicates the user's current location, and uses technologies such as GPS.
[1437] "Weather information" refers to meteorological data collected based on specific location information.
[1438] A "greeting message" is a polite message generated based on time information.
[1439] A "response message" is a message generated to address information requested by a user.
[1440] "Real-time notifications" are information delivered instantly based on the current situation and time.
[1441] "Estimated delivery time" refers to the time it is predicted that a delivery item will reach its destination.
[1442] "Delivery status" refers to information indicating the current stage of a delivery.
[1443] "Additional information" refers to supplementary information added to a basic response when certain conditions are met.
[1444] "Equipment suggestions" refer to advice that informs users of appropriate clothing and items to bring, depending on the weather and temperature.
[1445] This invention is a system that generates an optimal response to user input, taking into account time information, location information, and weather information. This system aims to improve user convenience by providing detailed information tailored to each individual's environment. The specific configuration and processing procedures for implementing this invention are described below.
[1446] System Configuration
[1447] This system consists of a terminal that receives user input, a server that processes the input and generates information, and an API that acquires external weather information. It also includes GPS functionality to acquire location information, which is used for delivery prediction and real-time notifications.
[1448] Program Processing Overview
[1449] hardware
[1450] Device: Smartphone (with GPS function)
[1451] Server: Cloud server or data center
[1452] External API: WeatherAPI
[1453] software
[1454] Programming language: Python
[1455] Library for obtaining weather information: requests
[1456] Library for obtaining time information: datetime
[1457] Generative AI model: GPT-3 or equivalent language model
[1458] Processing procedure
[1459] 1. Receiving user input
[1460] The user enters text via a smartphone application. For example, a question like "What's the weather like today?" might be asked.
[1461] The terminal receives this input and sends the input data to the server.
[1462] 2. Obtaining time information
[1463] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message.
[1464] 3. Acquisition of location information
[1465] The device uses GPS functionality to obtain the user's current location. The obtained location information (for example, latitude 35.6895, longitude 139.6917) is sent to the server.
[1466] 4. Obtaining weather information
[1467] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[1468] 5. Generating a greeting message
[1469] The server generates appropriate greetings based on time information obtained using a generative AI model. It will say "Good morning" between 5 AM and 12 PM, "Good afternoon" between 12 PM and 6 PM, and "Good evening" at all other times.
[1470] 6. Generating a response
[1471] The server combines the acquired weather information with a greeting, and further considers the user's inquiry to generate a response. For example, it might generate a specific message such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly."
[1472] 7. Adding additional information
[1473] The server adds additional information to the weather forecast if it includes specific conditions, such as "It looks like it's going to rain, so please take an umbrella."
[1474] 8. Responding to the user
[1475] The server generates a response message and sends it to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances.
[1476] Specific example
[1477] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly," and send it to the user's device. If the weather information includes rain, the server will provide a response message such as "Good morning! It looks like it's going to rain in Tokyo right now. Don't forget your umbrella."
[1478] Examples of prompt statements are as follows:
[1479] "Please generate a real-time notification that takes today's weather and estimated delivery time into consideration."
[1480] Example of a prompt:
[1481] "Please generate a message that says, 'Your delivery will be in X minutes,' taking into account the current weather information and estimated delivery time for the user while they are in Tokyo. Also, please include advice based on the outside weather information."
[1482] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1483] Step 1:
[1484] A user enters text via a smartphone application. For example, they might enter the question, "What's the weather like today?" The device receives this input and sends the input data to the server. Input: User-entered text. Output: Input data sent to the server.
[1485] Step 2:
[1486] The server obtains time information from the system clock at the time it receives user input. This information is used to generate a greeting message. Input: System clock data. Output: Time information.
[1487] Step 3:
[1488] The device uses GPS functionality to obtain the user's current location. The obtained location information is then sent to the server. Input: GPS data. Output: Location information.
[1489] Step 4:
[1490] The server accesses the WeatherAPI based on the acquired location information to retrieve the latest weather information for a specific area. Specifically, it includes the location information in the API request to obtain weather information. Input: Location information. Output: Weather information.
[1491] Step 5:
[1492] The server generates an appropriate greeting based on time information obtained using a generative AI model. For example, if the time is between 5 AM and 12 PM, it will generate "Good morning." Input: Time information. Output: Greeting message.
[1493] Step 6:
[1494] The server combines the acquired weather information and greeting, and further considers the user's inquiry to generate a response. Using a generation AI model, it can generate a response such as, "Good morning! It's sunny in Tokyo right now. It's going to be hot today at 30 degrees Celsius, so I recommend dressing lightly." Input: Weather information, greeting. Output: Response.
[1495] Step 7:
[1496] The server adds additional information to the weather forecast if it includes certain conditions, such as "It looks like it's going to rain, so please take an umbrella." Input: Weather information. Output: Response message (with additional information).
[1497] Step 8:
[1498] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information tailored to their individual circumstances. Input: Generated response. Output: Displayed to the user.
[1499] 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.
[1500] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[1501] System Configuration
[1502] This system consists of a terminal that receives user input, a server that processes the input and generates information, an API that acquires external weather information, and an emotion engine that recognizes the user's emotions.
[1503] Program Processing Overview
[1504] 1. Receive user input
[1505] The user enters text into the terminal. For example, they might enter the question, "What's the weather like today?"
[1506] The terminal receives this input and sends the corresponding text data to the server.
[1507] 2. Obtaining time information
[1508] The server obtains time information from the system clock at the time it receives user input. This information is used to generate the dependent greeting message.
[1509] 3. Acquisition of location information
[1510] The device obtains the user's current location information. This typically involves using GPS functionality. The obtained location information (e.g., latitude 35.6895, longitude 139.6917) is then sent to the server.
[1511] 4. Obtaining weather information
[1512] The server accesses an external weather API based on the acquired location information to retrieve the latest weather information for the specified area. This data may include, for example, "sunny" or "temperature 30 degrees."
[1513] 5. Generating a greeting message
[1514] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[1515] 6. Recognition of Emotions
[1516] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad" from the user's text.
[1517] 7. Generating a response
[1518] The server combines the acquired weather information, greeting, and emotion information recognized by the emotion engine to generate a response. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[1519] 8. Adding additional information
[1520] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella." Also, if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[1521] 9. Responding to the user
[1522] The server generates a response message, which is sent to the terminal and displayed to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[1523] Specific example
[1524] For example, if a user enters "What's the weather like today?" from Tokyo at 8:00 AM, and the emotion engine recognizes the user's emotion as "happy," the server will generate a response message such as "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot at 30 degrees Celsius, so you should dress lightly when you go out," and send it to the user's device. In addition, if the weather information includes rain, or if the emotion engine recognizes the user's emotion as "sad," additional information will be added accordingly.
[1525] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[1526] The following describes the processing flow.
[1527] Step 1:
[1528] The user enters text into the device. For example, they might enter the question, "What's the weather like today?"
[1529] Step 2:
[1530] The terminal receives user input and sends that text data to the server. The input is "What's the weather like today?".
[1531] Step 3:
[1532] When the server receives input from the user, it retrieves the current system time. For example, if the current time is 8:00 AM, it retrieves the time information "08:00".
[1533] Step 4:
[1534] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, the greeting will be "Good morning." Between 12 PM and 6 PM, it will be "Good afternoon," and at all other times, it will be "Good evening."
[1535] Step 5:
[1536] The device obtains the user's location information. This uses GPS functionality to obtain, for example, latitude 35.6895 and longitude 139.6917 (Tokyo).
[1537] Step 6:
[1538] The device sends the acquired location information to the server. The transmitted information is latitude 35.6895 and longitude 139.6917.
[1539] Step 7:
[1540] Based on the location information received by the server, it accesses an external weather API to obtain weather information. The server retrieves data such as "sunny" and "temperature 30 degrees."
[1541] Step 8:
[1542] The server retrieves weather information and sends the user's input text data to the emotion engine. The emotion engine analyzes the emotions and recognizes feelings such as "happy" or "sad" from the user's input text.
[1543] Step 9:
[1544] The server generates a response by combining weather information, a greeting, and emotional information recognized by the emotion engine. For example, if the greeting is "Good morning," the weather information is "It's sunny in Tokyo right now," and the emotion is "Happy," the response would be "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly."
[1545] Step 10:
[1546] When the server generates a response, it adds additional information as needed based on weather information that includes specific conditions or on sentiment information. For example, if the weather information includes "rain," it adds the message, "It looks like it's going to rain, so don't forget your umbrella." Also, if the sentiment engine recognizes that the user is "sad," it adds a caring message such as, "It's a little chilly, so please dress warmly."
[1547] Step 11:
[1548] The server generates a response message and sends it to the terminal. The content of the message will correspond to the user's current emotions and environment.
[1549] Step 12:
[1550] The device displays the response it received to the user. The user then sees a response such as, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees, so you should dress lightly."
[1551] Through these steps, users can obtain detailed information tailored to their environment and emotions at any given time.
[1552] (Example 2)
[1553] 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".
[1554] Conventional systems can provide weather information based on time and location data in response to user input, but they cannot generate responses that take into account the user's emotional state, making it difficult to provide a personalized user experience. Furthermore, the provision of additional information based on acquired weather data is limited, resulting in a lack of nuanced responses that respond to the user's emotions.
[1555] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Example 2 is realized by the following means. In this invention, the server includes means for recognizing the user's emotional state, means for generating a response sentence by combining weather information, a greeting, and emotional information, means for adding additional information when specific conditions are included in the weather information, and means for adding additional information based on emotional information. This makes it possible to generate an optimal response that takes the emotional state into account in response to the user's input and to provide a personalized user experience.
[1556] "Means of receiving user input" refers to devices or software that have the function of receiving text input from a user and transmitting it to other components within the system.
[1557] "Means for acquiring time information" refers to devices or software that have the function of obtaining the current date and time from the system clock and making it available for use in other processes within the system.
[1558] "Means for obtaining user location information" refers to devices or software that have the function of obtaining the user's current location information (latitude and longitude) using GPS or similar functions, and making it available for use in other processes within the system.
[1559] "Means for obtaining weather information" refers to devices or software that have the function of accessing external weather information APIs based on specified location information and obtaining the latest weather data.
[1560] "Means for generating greeting messages" refers to devices or software that have the function of generating appropriate greeting messages (such as "Good morning," "Good afternoon," and "Good evening") based on acquired time information.
[1561] "Means for recognizing a user's emotional state" refers to devices or software that analyze a user's input text to understand their emotions and recognize emotional states such as "happy" or "sad."
[1562] "Means for generating response messages" refers to devices or software that have the function of generating the optimal response message to provide to the user by combining acquired weather information, greeting messages, and emotional information.
[1563] "Means of providing a response to the user" refers to devices or software that have the function of sending the generated response to the user's terminal and displaying it to the user.
[1564] "Means of adding additional information" refers to devices or software that have the function of adding additional information (such as a message prompting the user to bring an umbrella or a message showing concern for the user) to the response text when specific conditions are included in weather information or sentiment information.
[1565] "Means of suggesting clothing" refers to devices or software that have the function of suggesting appropriate clothing based on the user's location and time information, taking into account weather and temperature.
[1566] This invention combines a system that generates optimal responses to user input based on time, location, and weather information with an emotion engine. This system recognizes the user's emotional state and adjusts the response accordingly, thereby providing a more personalized user experience.
[1567] System Configuration
[1568] This system consists of the following components:
[1569] 1. A terminal that receives user input.
[1570] 2. A server that processes input and generates information.
[1571] 3. API for obtaining external weather information
[1572] 4. Emotion engine that recognizes user emotions
[1573] System Implementation Method
[1574] 1. A terminal that receives user input.
[1575] The user enters text from their device. For example, they might enter the question, "What's the weather like today?"
[1576] The terminal receives this entered text data and sends it to the server.
[1577] 2. Server processing
[1578] Obtaining time information:
[1579] The server obtains time information from the system clock at the time it receives user input. This information is used to generate an appropriate greeting message.
[1580] Location information acquisition:
[1581] The device uses GPS functionality to obtain the user's current location information and transmit it to the server. For example, the obtained location information is latitude 35.6895 and longitude 139.6917.
[1582] Obtaining weather information:
[1583] The server accesses a weather information API based on the acquired location information to retrieve the latest weather information. This includes data such as "sunny" and "temperature 30 degrees."
[1584] Generating a greeting message:
[1585] The server generates an appropriate greeting based on the acquired time information. Between 5 AM and 12 PM, it will say "Good morning," between 12 PM and 6 PM, it will say "Good afternoon," and at all other times, it will say "Good evening."
[1586] Recognition of emotions:
[1587] The server sends the user's input text to the emotion engine, which analyzes the user's emotional state. For example, it recognizes emotions such as "happy" or "sad."
[1588] 3. Generating a response sentence
[1589] The server combines the acquired weather information, greetings, and emotional information recognized by the emotion engine to generate a response. For example, if the message is "Good morning," "It's sunny in Tokyo right now," and the recipient is happy, the response would be, "Good morning! It's sunny in Tokyo right now. It's a lovely day, and it's going to be hot today at 30 degrees, so you should dress lightly when you go out."
[1590] 4. Adding additional information
[1591] The server adds additional information as needed based on weather information that includes specific conditions or on emotional information. For example, if the weather information includes "rain," it adds information such as "It looks like it's going to rain, so don't forget your umbrella," and if the emotional engine recognizes that the user is "sad," it adds a caring message such as "It's a little chilly, so please dress warmly."
[1592] 5. Responding to the user
[1593] The server sends the generated response to the terminal, which then displays it to the user. This allows the user to receive information that is most relevant to their current environment and emotions.
[1594] Specific example
[1595] For example, if a user types "What's the weather like today?" from Tokyo at 8 AM and the emotion engine recognizes the emotion as "happy," the server will generate and send "Good morning! It's sunny in Tokyo right now. It's a nice day, and it's going to be hot at 30 degrees today, so you should dress lightly." to the device. If the weather information includes rain, or if the user's emotion is recognized as "sad," additional information will be added accordingly.
[1596] Example of a prompt
[1597] Example 1:
[1598] User input: What's the weather like today?
[1599] Time: 8:00 AM
[1600] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[1601] Emotion: Happy
[1602] Example 2:
[1603] User input: What's the weather like today?
[1604] Time: 2 PM
[1605] Location information: Latitude 35.6895, Longitude 139.6917 (Tokyo)
[1606] Emotion: Sad
[1607] This system allows users to receive optimal information tailored to the time, weather, and their mood, enabling them to enjoy a more personalized user experience.
[1608] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1609] Step 1: Receive User Input
[1610] The user enters text such as "What's the weather today?" into their terminal.
[1611] Input: User's text input.
[1612] The terminal receives this input text data and sends it to the specified server.
[1613] Output: The user's input text data sent to the server.
[1614] Step 2: Obtain Time Information
[1615] Upon receiving the user's input, the server obtains the current time information from the system clock.
[1616] Input: The user's input text data.
[1617] The server calls the system clock API to obtain the current date, month, year, and time.
[1618] Output: The current time information (e.g., 8:00 AM).
[1619] Step 3: Obtain Location Information
[1620] The terminal uses its built-in GPS function to obtain the user's current location information.
[1621] Input: The terminal's location information acquisition request.
[1622] The terminal calls the GPS module to obtain the user's location information (latitude, longitude) and sends it to the server.
[1623] Output: The user's location information sent to the server (e.g., latitude 35.6895, longitude 139.6917).
[1624] Step 4: Obtain weather information
[1625] The server accesses an external weather information API based on the acquired location information.
[1626] Input: User's location information.
[1627] The server sends a request to a weather information API to retrieve the latest weather information for the specified location. It then analyzes the response from the API and extracts the weather data.
[1628] Output: Latest weather information (e.g., sunny, temperature 30 degrees Celsius).
[1629] Step 5: Generating a greeting message
[1630] The server generates an appropriate greeting message based on the acquired time information.
[1631] Input: Current time information.
[1632] The server selects an appropriate greeting such as "Good morning," "Good afternoon," or "Good evening" based on the time information and stores it as text data.
[1633] Output: Generated greeting message (e.g., "Good morning").
[1634] Step 6: Recognizing Emotions
[1635] The server sends the user's input text to the emotion engine, which then analyzes the emotional state.
[1636] Input: User-input text data.
[1637] The emotion engine uses an NLP model to extract emotions from text and recognize feelings such as "happy" or "sad."
[1638] Output: Recognized emotion information (e.g., "happy").
[1639] Step 7: Generating the response
[1640] The server combines the acquired weather information, greetings, and emotional information to generate a response.
[1641] Input: Weather information, greeting message, emotional information.
[1642] The server combines this information to generate a response. For example, it might say, "Good morning! It's sunny in Tokyo right now. It's a lovely day, but it's going to be hot today at 30 degrees Celsius, so you should dress lightly when you go out."
[1643] Output: The generated response.
[1644] Step 8: Adding additional information
[1645] The server adds additional information based on weather and sentiment data.
[1646] Input: Generated response text, weather information, sentiment information.
[1647] If the weather information includes "rain," the server adds additional information such as "It looks like it's going to rain, so don't forget your umbrella." If the emotion information is "sad," it adds a message such as "It's a little chilly, so please dress warmly."
[1648] Output: A response message with additional information added.
[1649] Step 9: Responding to the user
[1650] The server sends the generated response message to the terminal, and the terminal displays the response message to the user.
[1651] Input: The generated response message.
[1652] The terminal receives a response message from the server and displays it on the screen.
[1653] Output: The response displayed to the user.
[1654] (Application Example 2)
[1655] 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".
[1656] Conventional user response systems can generate basic responses based on time and location information, but they struggle to generate personalized responses that take into account the user's emotional state. Furthermore, they cannot provide specific suggestions based on weather information or emotional state, resulting in a limited user experience. In particular, in the food delivery sector, there is a need for suggestions of dishes and restaurants tailored to when the user is tired or in a specific mood, but conventional systems have been unable to achieve this level of personalization.
[1657] 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.
[1658] In this invention, the server includes means for receiving input from a user, means for acquiring time information of the input, means for acquiring the user's location information, means for acquiring weather information based on the location information, means for generating a greeting message based on the time information, means for generating a response message by combining the weather information and the greeting message, means for providing the response message to the user, means for analyzing the user's emotional state from the input text, and means for adjusting the response message based on the emotional state. This makes it possible to generate personalized responses based on the user's time information, location information, weather information, and emotional state. Furthermore, by suggesting the most suitable dishes and restaurants according to the user's emotional state, it is possible to provide a more highly personalized user experience, particularly in the field of food delivery.
[1659] "Means of receiving input from the user" refers to an interface for the user to input text or other data, and includes devices and software that can transmit such input to the system in a processable format.
[1660] "Means for obtaining time information of input received" include devices and software that record the time when user input is received and provide that information in a format usable within the system.
[1661] "Means for obtaining user location information" refers to technologies for determining the user's current location, and includes devices and software with location information acquisition capabilities such as GPS.
[1662] "Means for obtaining weather information based on location information" include devices and software that access external weather information APIs, etc., based on the user's location information and obtain weather data for the region corresponding to the location information.
[1663] "Means for generating greeting messages based on time information" include devices and software that automatically generate appropriate greeting messages (for example, "Good morning") based on acquired time information.
[1664] "Means for generating response texts by combining weather information and greetings" include devices and software that integrate acquired weather information and greetings to generate response texts for the user.
[1665] "Means of providing a response to the user" include devices and software that provide the generated response to the user by displaying it on the user's terminal or by conveying it by voice.
[1666] "Means for analyzing emotional states from user input text" include devices and software that analyze user input text and recognize the user's emotional state (e.g., "happy," "sad," etc.) from its content.
[1667] "Means for adjusting response statements based on emotional state" include devices and software that personalize the content of response statements and adjust them to be more appropriate according to the recognized emotional state of the user.
[1668] "Means for adding additional information when weather information includes specific conditions" include devices or software that add additional information (for example, "don't forget your umbrella") to a response statement based on specific conditions (for example, "rain" or "cold") when the acquired weather information includes those conditions.
[1669] "Means for suggesting clothing based on weather and temperature" include devices and software that suggest appropriate clothing to users based on acquired weather and temperature information.
[1670] "Means of suggesting the most suitable dishes and restaurants based on emotional state" include devices and software that suggest the most suitable dishes and restaurants to use to a user based on the recognized emotional state of the user.
[1671] Modes for carrying out the invention
[1672] This invention is a system that generates an optimal response to user input based on time information, location information, weather information, and emotional state. This system is applied to food delivery services to enhance the user experience by making it more personalized.
[1673] System Configuration
[1674] This system consists of the following elements:
[1675] 1. A device that receives input from the user (e.g., a smartphone)
[1676] The user enters text through this device. For example, they might type "I'm tired" using a food delivery app.
[1677] 2. Means of obtaining time information (e.g., system clock)
[1678] The server records the time when the user made their input. This information is used to generate an appropriate greeting message.
[1679] 3. Means of obtaining location information (e.g., GPS function)
[1680] The device obtains the user's current location information and sends this data to the server. For example, it sends the latitude and longitude information for Tokyo.
[1681] 4. Means of obtaining weather information (e.g., external weather API)
[1682] The server accesses an external weather information API based on location data to retrieve weather data for the relevant area. This data includes information such as whether the weather is sunny, rainy, and temperature.
[1683] 5. Means for generating greeting messages (e.g., a greeting message generation algorithm based on the time of day)
[1684] The server generates a greeting message based on the acquired time information. For example, if it's morning, it will say "Good morning."
[1685] 6. Means for analyzing the user's emotional state (e.g., an emotion analysis engine)
[1686] The server analyzes the user's input text and recognizes their emotional state. For example, it recognizes the emotion "tired" from the input "tired".
[1687] 7. Means for generating a response (e.g., a response generation algorithm)
[1688] The server generates a response by combining a greeting, weather information, and emotional information. For example, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[1689] 8. Means for providing a response (e.g., terminal display function)
[1690] The server sends the generated response to the terminal and displays it to the user.
[1691] Hardware and software to be used
[1692] This system uses user devices such as smartphones and tablets, employing GPS functionality for location information acquisition and an external weather API (e.g., OpenWeatherMap API) for weather information acquisition. Furthermore, it uses a sentiment analysis engine incorporating natural language processing technology (e.g., Python's sentiment analysis library) for sentiment analysis.
[1693] Specific example
[1694] For example, if a user enters "tired" at 10 AM in Tokyo, the system retrieves weather information, analyzes the user's emotional state, and then generates a response such as, "Good morning! The current weather is sunny, and the temperature is 25 degrees Celsius. We recommend a relaxing meal." This allows the user to receive appropriate information based on their current situation.
[1695] Example of a prompt
[1696] "How can I suggest a relaxing delivery menu to a user who is feeling tired?"
[1697] This system allows users to receive optimal information and suggestions based on time, location, weather, and mood, enabling them to enjoy a more personalized experience, particularly in the food delivery sector.
[1698] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1699] Step 1:
[1700] The user enters text. The user opens a food delivery app on a device such as a smartphone and enters text (for example, "I'm tired") into the input field. The entered text is sent to the server by the device.
[1701] Step 2:
[1702] The server obtains time information. The server records the time it receives input from the user. This time information is obtained from the system clock.
[1703] Step 3:
[1704] The device acquires location information. The GPS function built into the device identifies the user's current location and obtains latitude and longitude data. This location information is sent to the server.
[1705] Step 4:
[1706] The server retrieves weather information. Based on the retrieved location information, the server accesses an external weather information API (for example, the OpenWeatherMap API) to obtain weather data for the relevant area (for example, the weather is "sunny" and the temperature is 25 degrees Celsius).
[1707] Step 5:
[1708] The server generates a greeting message. The server generates an appropriate greeting message based on the acquired time information. For example, if it is morning, it will generate "Good morning."
[1709] Step 6:
[1710] The server analyzes the user's emotional state. The server sends the user's input text to an emotion analysis engine (for example, the Python sentiment analysis library), which analyzes the emotional state (e.g., "tired") from the text and retrieves the result.
[1711] Step 7:
[1712] The server generates a response. The server combines the generated greeting, weather information, and analyzed sentiment information to create a response. For example, it might generate a response such as, "Good morning! The weather is sunny and the temperature is 25 degrees Celsius. We recommend a relaxing meal."
[1713] Step 8:
[1714] The server sends a response message to the terminal. The server sends the generated response message to the user's terminal. This response message is displayed on the user's terminal screen.
[1715] 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.
[1716] 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.
[1717] 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.
[1718] 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.
[1719] 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.
[1720] 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.
[1721] 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.
[1722] 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.
[1723] 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."
[1724] 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.
[1725] 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.
[1726] 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.
[1727] 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.
[1728] 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.
[1729] 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.
[1730] 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.
[1731] 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.
[1732] 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.
[1733] 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.
[1734] 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.
[1735] 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.
[1736] The following is further disclosed regarding the embodiments described above.
[1737] (Claim 1)
[1738] A means of receiving input from the user,
[1739] A means of obtaining time information when an input is received,
[1740] Means for obtaining the user's location information,
[1741] A means of obtaining weather information based on location information,
[1742] A means for generating a greeting message based on time information,
[1743] A method for generating a response by combining weather information and a greeting,
[1744] A means of providing a response to the user,
[1745] A system that includes this.
[1746] (Claim 2)
[1747] In generating a response statement, a means for adding additional information when the weather information includes specific conditions,
[1748] The system according to claim 1, including the following:
[1749] (Claim 3)
[1750] A method for suggesting clothing based on weather and temperature, using the user's location and time information.
[1751] The system according to claim 1, including the following:
[1752] "Example 1"
[1753] (Claim 1)
[1754] A terminal that receives input from the user,
[1755] A server that processes the received input text,
[1756] A server that receives input and acquires time information,
[1757] A device that acquires the user's location information,
[1758] A server that acquires weather information based on location information,
[1759] A server that generates greeting messages based on time information,
[1760] A server that generates a response by combining weather information and a greeting,
[1761] A terminal that provides the generated response to the user,
[1762] A system that includes this.
[1763] (Claim 2)
[1764] In generating response messages, a server adds additional information if the weather information includes specific conditions,
[1765] The system according to claim 1, including the following:
[1766] (Claim 3)
[1767] A server that suggests clothing based on the weather and temperature, using the user's location and time information.
[1768] The system according to claim 1, including the following:
[1769] "Application Example 1"
[1770] (Claim 1)
[1771] A means of receiving input from the user,
[1772] A means of obtaining time information when an input is received,
[1773] Means for obtaining the user's location information,
[1774] A means of obtaining weather information based on location information,
[1775] A means for generating a greeting message based on time information,
[1776] A method for generating a response by combining weather information and a greeting,
[1777] A means of providing a response to the user,
[1778] A means for generating real-time notifications that take into account the estimated delivery time and delivery status,
[1779] A system that includes this.
[1780] (Claim 2)
[1781] The system according to claim 1, comprising means for generating a response statement containing additional information based on weather information and delivery time.
[1782] (Claim 3)
[1783] The system according to claim 1, which includes means for suggesting equipment appropriate to the weather based on the user's location and time information.
[1784] "Example 2 of combining an emotion engine"
[1785] (Claim 1)
[1786] A means of receiving input from the user,
[1787] A means of obtaining time information when an input is received,
[1788] Means for obtaining the user's location information,
[1789] A means of obtaining weather information based on location information,
[1790] A means for generating a greeting message based on time information,
[1791] A means of recognizing the user's emotional state,
[1792] A means for generating a response sentence by combining weather information, greetings, and emotional information,
[1793] A means of providing a response to the user,
[1794] A system that includes this.
[1795] (Claim 2)
[1796] A means of adding additional information when weather information includes specific conditions,
[1797] A means of adding additional information based on emotional information,
[1798] The system according to claim 1, including the following:
[1799] (Claim 3)
[1800] A method for suggesting clothing based on weather and temperature, using the user's location and time information.
[1801] The system according to claim 1, including the following:
[1802] "Application example 2 when combining with an emotional engine"
[1803] (Claim 1)
[1804] A means of receiving input from the user,
[1805] A means of obtaining time information when an input is received,
[1806] Means for obtaining the user's location information,
[1807] A means of obtaining weather information based on location information,
[1808] A means for generating a greeting message based on time information,
[1809] A method for generating a response by combining weather information and a greeting,
[1810] A means of providing a response to the user,
[1811] A means of analyzing emotional states from user input text,
[1812] A means of adjusting response sentences based on emotional state,
[1813] A system that includes this.
[1814] (Claim 2)
[1815] In generating a response statement, a means for adding additional information when the weather information includes specific conditions,
[1816] The system according to claim 1, including the following:
[1817] (Claim 3)
[1818] A method for suggesting clothing based on weather and temperature, using the user's location and time information.
[1819] A means of suggesting the most suitable dishes and restaurants based on the user's emotional state,
[1820] The system according to claim 1, including the following: [Explanation of Symbols]
[1821] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means of receiving input from the user, A means of obtaining time information when an input is received, Means for obtaining the user's location information, A means of obtaining weather information based on location information, A means for generating a greeting message based on time information, A method for generating a response by combining weather information and a greeting, A means of providing a response to the user, A system that includes this.
2. In generating a response statement, a means for adding additional information when the weather information includes specific conditions, The system according to claim 1, including the following:
3. A method for suggesting clothing based on weather and temperature, using the user's location and time information. The system according to claim 1, including the following:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A