System
A system that analyzes user inputs in natural language to filter and evaluate recipes based on specific parameters, addressing the challenge of finding suitable recipes on existing sites by offering personalized and efficient recipe suggestions.
Patent Information
- Application Number
- JP2024137983
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2026-03-04
AI Technical Summary
Existing recipe sites fail to quickly provide recipes that match users' specific needs and preferences due to a lack of effective search functions that respond to users' intentions and requests, making it difficult for users to find suitable recipes.
A system that allows users to input information such as dates, events, ingredient preferences, cooking methods, and nutritional balance in natural language, which is analyzed by a server using a natural language processing model to set parameters, filter recipes from a database, and evaluate and transmit the optimal recipes to a terminal for display.
Enables users to easily find recipes that perfectly suit their tastes and specific needs, facilitating a rich dietary lifestyle by providing quick and accurate recipe suggestions.
Smart Images

Figure 2026035140000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Existing recipe sites make it difficult for users to quickly find recipes that suit their specific needs and preferences. Furthermore, they often lack a recipe search function that responds to users' specific intentions and requests, which is time-consuming. As a result, users struggle to find the perfect recipe that perfectly suits their tastes and specific needs. [Means for solving the problem]
[0005] The present invention provides a system that provides a means for users to input information such as dates and times, events, ingredient preferences, cooking methods, and nutritional balance in natural language, and includes a means for transmitting the input data to a server. The server analyzes the input data using a natural language processing model to extract the user's intentions and requests. Based on the analysis results, the server sets user parameters and filters recipes from a database based on these. The system then evaluates the filtered recipes, selects the optimal recipes from the perspective of quality, and transmits the selected recipes to a terminal for display to the user. This allows users to easily find their ideal recipes and realize a rich diet.
[0006] "User" refers to an individual who uses this system to receive recipe suggestions.
[0007] "Natural language" refers to a language used by humans on a daily basis, and is distinguished from artificial languages such as program code.
[0008] "Date and time" indicates a specific date and time, and refers to information for setting a specific timing when the user needs the recipe.
[0009] An "event" refers to a gathering or occasion based on a specific purpose or situation, and refers to information indicating in what situation the user wants to use the recipe.
[0010] "Ingredient preferences" refer to specific foods or ingredients that a user particularly likes or wants to avoid.
[0011] "Cooking method" refers to the techniques or means used to prepare food using a specific method or procedure, such as heating, baking, steaming, or frying.
[0012] "Nutritional balance" refers to the appropriate amounts and ratios of nutrients needed to make a healthy meal, and is the standard for suggesting dishes that suit the user's health condition and dietary goals.
[0013] "Means" refer to the specific methods or processes employed to achieve a particular function or purpose.
[0014] "Terminal" refers to the device used by a user to operate the system, including smartphones, tablets, and personal computers.
[0015] "Server" refers to a central computer used for data processing and analysis, and includes computers located remotely, such as cloud services.
[0016] "Transmit" refers to the act of transferring data or information from one party to another.
[0017] A "natural language processing model" refers to artificial intelligence technology for understanding and analyzing human language.
[0018] "Analysis" refers to the act of breaking down complex information into understandable form.
[0019] "Parameters" refer to specific settings or conditions that determine system behavior.
[0020] A "database" refers to a system that systematically collects and stores information, allowing it to be searched and retrieved as needed.
[0021] "Filtering" refers to the act of selecting data based on set conditions.
[0022] "Evaluation" refers to the act of determining the value or quality of an object based on specific criteria.
[0023] A "recipe" is a set of instructions that shows the specific steps and ingredients needed to make a dish.
[0024] "Display" refers to the act of visually outputting information on a terminal screen, etc. [Brief explanation of the drawings]
[0025] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0026] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0027] First, the terms used in the following description will be explained.
[0028] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0029] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0030] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0031] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0032] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0033] [First embodiment]
[0034] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0035] 1, a 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.
[0036] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0037] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0038] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the 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.
[0039] 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 of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0040] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0041] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0042] 2, in the data processing device 12, a specific process 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" according to the technology of the present 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 process 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.
[0043] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0044] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0045] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0046] This invention is a system for suggesting optimal recipes based on a user's preferences and needs. Specifically, it involves a procedure in which the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes that information and suggests appropriate recipes. This system consists of three main elements: a terminal, a server, and the user.
[0047] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0048] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, the user's intentions and requests are extracted from the entered text and parameters are set based on this. For example, parameters such as the date, type of event, type of ingredients, cooking method, and nutritional balance are set.
[0049] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[0050] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[0051] Finally, the server sends the evaluated optimal recipe to the terminal and displays it to the user. The terminal displays the selected recipe, allowing the user to check the recipe and use it for actual cooking.
[0052] For example, if a user goes through the steps above and inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad and display it on the device.
[0053] In this way, the system of the present invention can quickly suggest recipes that best suit the user's needs, enabling them to realize a rich dietary lifestyle.
[0054] The processing flow will be explained below.
[0055] Step 1:
[0056] The user uses natural language to input information such as the date and time, event, food preferences, cooking method, and nutritional balance. Example: "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0057] Step 2:
[0058] The terminal captures the user's input and sends the natural language data to the server.
[0059] Step 3:
[0060] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[0061] Step 4:
[0062] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[0063] Step 5:
[0064] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[0065] Step 6:
[0066] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[0067] Step 7:
[0068] The server selects the best recipe. Based on the ratings, it chooses the recipe that best suits the user's needs.
[0069] Step 8:
[0070] The server sends the selected recipe to the terminal.
[0071] Step 9:
[0072] The device displays the received recipe to the user, who then checks the displayed recipe and uses it for actual cooking.
[0073] Example 1
[0074] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0075] Today, consumers desire to select dishes based on their diverse ingredient preferences and nutritional balance. However, conventional recipe search systems have difficulty quickly suggesting optimal recipes based on a user's specific needs and preferences. In particular, there is a need for accurate analysis of requests entered in natural language and the ability to identify appropriate recipes that meet individual needs. The present invention solves this problem by proposing a system that provides optimal recipes based on a user's individual preferences and circumstances.
[0076] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0077] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a generative AI model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes based on prompt statements and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user. This makes it possible to suggest optimal recipes according to the user's specific needs.
[0078] "User" refers to an individual or organization that uses the System to search for and select cooking recipes.
[0079] "Terminal" refers to a hardware device or software application that allows a user to perform input operations, including, for example, a smartphone, tablet, or PC.
[0080] "Server" refers to a computer system for receiving, processing, and analyzing input data from a user.
[0081] "Natural language" refers to a language form that humans use on a daily basis, and means a language form that users can input intuitively.
[0082] A "generative AI model" refers to an algorithm or system that uses machine learning and artificial intelligence to analyze user input.
[0083] A "prompt sentence" refers to a sentence or keyword that serves as input data for the generative AI model to analyze.
[0084] "Parameters" refer to the user's intentions and requests expressed as numbers or categories, and are elements that serve as the basis for recipe searches.
[0085] "Filtering" refers to the process of extracting recipes that meet the conditions from the database based on set parameters.
[0086] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes and selecting the most suitable recipe.
[0087] A "recipe" refers to a method for preparing a dish that includes cooking steps, necessary ingredients, nutritional information, etc.
[0088] "Database" refers to an information system for storing and managing recipe information and related data.
[0089] This invention is a system that suggests optimal cooking recipes based on information entered by the user in natural language. This system is mainly composed of three elements: a terminal, a server, and a user. The following provides a detailed explanation of the system's procedures and the hardware and software used.
[0090] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information specifically expresses the user's desires, and the system performs analysis based on this information.
[0091] The terminal sends the natural language data entered by the user to the server using a network protocol such as HTTP POST.
[0092] The server uses a generative AI model to analyze the received data, specifically using natural language processing tools such as Google® Cloud Natural Language API to extract the user's intent and desires from the input text and set parameters such as:
[0093] Date and time: "Next Friday"
[0094] Event: "Dinner with friends"
[0095] Food Favorites: "Chicken"
[0096] Cooking method: "Healthy"
[0097] Nutritional balance: "High"
[0098] Based on the set parameters, the server filters relevant recipes from a database, often using SQL for database queries, for example, a query to search for "healthy chicken recipes" is performed.
[0099] The filtered recipes are then rated internally using prompts to prioritize recipes that are professionally created or suitable for specific conditions. Evaluation criteria include user reviews, nutritional value, and event suitability. For example, a "healthy chicken dish suitable for a dinner party with friends" would be highly rated.
[0100] The selected recipe is sent to the device as JSON-formatted data. Specifically, a response is returned using HTTP communication. The device analyzes this data and displays the recipe on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc.
[0101] Specific examples
[0102] If the user types "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will begin parsing using the following prompt statement:
[0103] A user wants to invite friends over for dinner next Friday, loves chicken, and wants a healthy meal. Suggest a recipe that fits this criteria.
[0104] Based on this prompt, the server analyzes it and selects the most suitable recipe, for example, "grilled chicken salad," and displays it on the terminal.
[0105] In this way, the system of the present invention can quickly and accurately suggest appropriate recipes based on the user's specific needs.
[0106] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0107] Step 1:
[0108] The user enters information in natural language.
[0109] Input: The user types into the terminal in natural language, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0110] Output: Natural language text recorded as input data on the terminal.
[0111] Specific operation: The user inputs information in text format using the device's keyboard or voice input function, and the device temporarily stores the input data.
[0112] Step 2:
[0113] The terminal sends the user's input to the server.
[0114] Input: The natural language text entered in step 1.
[0115] Output: Natural language text data sent to the server.
[0116] What it does: The device generates an HTTP POST request and sends the user's input text as a payload to the server. This communication requires an internet connection.
[0117] Step 3:
[0118] The server uses a generative AI model to analyze the input data and extract the user's intent.
[0119] Input: Natural language text data sent to the server.
[0120] Output: Analysis results (parameter set) based on the user's intentions and requests.
[0121] How it works: The server inputs the received data into a generative AI model (e.g., a natural language processing API) for analysis. The analysis extracts the following parameters:
[0122] Date and time: "Next Friday"
[0123] Event: "Dinner with friends"
[0124] Food Favorites: "Chicken"
[0125] Cooking method: "Healthy"
[0126] Step 4:
[0127] The server sets the user's parameters based on the extracted information and filters recipes from the database.
[0128] Input: Analysis results (parameter set).
[0129] Output: A filtered list of recipe suggestions.
[0130] Specific operation: The server generates an SQL query based on the extracted parameters and searches the database. For example, it executes a query to search for "chicken" and "healthy" recipes.
[0131] Step 5:
[0132] The server evaluates the filtered recipes and selects the best recipe.
[0133] Input: A filtered list of recipe suggestions.
[0134] Output: Information on the best recipe.
[0135] Specific operation: The server applies a rating algorithm to the filtered recipes. The rating criteria include user reviews, nutritional value, and event suitability. For example, it might select "the best recipe for a dinner party with friends" based on a prompt.
[0136] Step 6:
[0137] The server sends the selected recipe to the terminal.
[0138] Input: Information about your best recipe.
[0139] Output: Recipe data sent to the terminal.
[0140] Specific operation: The server generates the selected recipe information in JSON format and sends it to the terminal as an HTTP response.
[0141] Step 7:
[0142] The device displays the best recipes to the user.
[0143] Input: Recipe data sent from the server.
[0144] Output: Recipe information displayed to the user.
[0145] Specific operation: The device parses the received JSON data and displays it on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc. The user can then view the information and perform the actual cooking.
[0146] (Application example 1)
[0147] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0148] In recent years, with the diversification of dietary habits and growing health consciousness, there is a demand for instantaneous suggestions of optimal recipes tailored to users' preferences and needs. However, previous systems were limited in the information that users could input, making it difficult to suggest recipes tailored to specific events or ingredient preferences. Furthermore, there was a lack of a way for users to visually check the suggested recipes while cooking. In particular, the lack of an intuitive interface using smart glasses or other devices hindered the improvement of the user experience. To solve these issues, more accurate natural language analysis and a system that visually suggests recipes are needed.
[0149] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0150] In this invention, the server includes: means for a user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to an eyeglass-type device, which visually displays it to the user. This allows the user to cook while visually checking the recipe through the smart glasses, thereby providing intuitive and efficient support for dietary habits.
[0151] A "user" is an individual or entity that provides information and receives recipe suggestions from the system.
[0152] "Natural language" means a language used by humans in everyday life, in any form including speech and text.
[0153] "Date and time" refers to a specific date and time when cooking and eating are planned.
[0154] "Event" means a gathering or activity for a particular purpose or occasion, such as a dinner or party.
[0155] "Ingredient preferences" is information about specific ingredients and their types that the user likes.
[0156] "Cooking method" refers to the specific method or procedure for cooking ingredients, including, for example, baking, simmering, boiling, etc.
[0157] "Nutritional balance" is a standard for evaluating whether a meal is nutritionally balanced.
[0158] An "eyeglasses-type device" is a device that provides visual information when worn by a user, and includes, for example, smart glasses.
[0159] A "natural language processing model" is a general term for algorithms and technologies used to analyze natural language and understand its meaning and intent.
[0160] A "database" is a structured collection of information for storing and managing recipes and related information.
[0161] A "server" is a computer system that receives requests from users and performs analysis and data processing.
[0162] "Filtering" is the process of sorting data based on specific criteria.
[0163] "Evaluation" is the process of determining the quality and suitability of a recipe and making the optimal selection.
[0164] A "suggestion" is an act of recommending or guiding a user based on specific conditions.
[0165] "Visually displaying" refers to a state in which visual information is provided to the user through the device, enabling confirmation and operation.
[0166] This invention is a system for suggesting recipes that are best suited to a user's needs.The server analyzes information entered by the user in natural language using an eyeglass-type device and visually provides appropriate recipes.
[0167] System Configuration
[0168] The system consists of the following components:
[0169] User: An individual who provides information and reviews suggested recipes.
[0170] Terminal (eyeglasses-type device): A device worn by the user that inputs natural language and displays visual information. For example, smart glasses are examples of such devices.
[0171] Server: A computer system that receives user input, performs natural language processing, database search, and evaluation.
[0172] Program processing
[0173] 1. User Input
[0174] The user wears the glasses-type device and uses voice input to make a request in natural language, such as "I would like a healthy menu for dinner tonight." The device converts this request into text data and sends it to the server.
[0175] 2. Natural Language Processing
[0176] The server analyzes the received text data using a natural language processing model (e.g., OpenAI® GPT-3®). It extracts date and time, event, ingredient preferences, cooking method, and nutritional balance from the input data and sets the user's parameters based on this.
[0177] 3. Filter and rate recipes
[0178] The server filters suitable recipes from the database based on the set parameters. For example, if you enter "I want healthy meals," the server will select only healthy recipes. The filtered recipes are then evaluated, and the highest quality recipes are prioritized.
[0179] 4. Visual representation of the recipe
[0180] The selected recipe is sent from the server to the glasses-type device, and the user can visually check the recipe on the device screen. This allows the user to check the recipe details while looking at the device, making cooking smoother.
[0181] Specific examples
[0182] For example, if a user says, "I'd like to invite friends over for a barbecue this weekend. I'd like a healthy menu with meat and vegetables," the server generates the following prompt and performs natural language processing:
[0183] User: I'm planning to invite friends over for a barbecue this weekend. I'd like a healthy menu that includes meat and vegetables.
[0184] system:
[0185] Based on this, recipes such as "Grilled Chicken Salad and Vegetable Speed Kebab" are suggested and displayed on the glasses-like device, allowing users to follow along as they cook.
[0186] Hardware and software used
[0187] Hardware: Smart glasses (e.g., Google Glass®, Microsoft® HoloLens®)
[0188] Software: Python, OpenAI GPT-3 API
[0189] With this configuration and processing, users can receive visually easy-to-understand recipe suggestions based on intuitive input in natural language, enabling them to realize a richer dietary life.
[0190] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0191] Step 1:
[0192] The user wears the glasses-type device and uses the voice input function to make a natural language request, such as "I would like a healthy menu for dinner tonight." This is a step to clearly communicate the user's wishes, and this input data is sent to the next process.
[0193] Input: The user's natural language voice request (e.g., "I'd like something healthy for dinner tonight").
[0194] Output: Audio data.
[0195] Step 2:
[0196] The device converts the user's voice data into text data, uses voice recognition software to generate text data from the voice data, and sends it to the server.
[0197] Input: User's voice data.
[0198] Output: Text data.
[0199] Step 3:
[0200] The server performs natural language processing based on the received text data. Specifically, it sends this text data to the OpenAI GPT-3 API and generates a prompt. At this stage, it analyzes the user's request (date and time, event, ingredient preferences, cooking method, nutritional balance, etc.) and extracts each parameter.
[0201] Input: Text data (user's natural language request).
[0202] Output: Analysis results (extracted parameters).
[0203] Step 4:
[0204] The server filters the database for relevant recipes based on the extracted parameters, applying criteria based on the user's preferences (healthy menus, specific ingredients, etc.) to select the appropriate recipes.
[0205] Input: Analysis results (extracted parameters).
[0206] Output: A filtered list of recipes.
[0207] Step 5:
[0208] The server evaluates the filtered recipes. As evaluation criteria, recipes created from an expert's perspective and recipes that best meet specific conditions are prioritized. The optimal recipe is selected based on the evaluation results.
[0209] Input: A filtered list of recipes.
[0210] Output: Optimal recipe.
[0211] Step 6:
[0212] The server then sends the selected optimal recipe to the glasses-type device, which then visually displays the received recipe to the user, allowing the user to visually check the recipe while cooking.
[0213] Enter: your optimal recipe.
[0214] Output: The recipe displayed on the glasses.
[0215] This allows users to visually check recipes through the smart glasses while cooking, and aims to seamlessly connect the entire process flow to improve the user experience.
[0216] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0217] This invention combines a system that suggests optimal recipes based on a user's preferences and needs with an emotion engine that recognizes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes this information to suggest appropriate recipes. It also includes a procedure that takes the user's emotional state into consideration using the emotion engine. This system consists of four main elements: a terminal, a server, an emotion engine, and a user.
[0218] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0219] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as the date, type of event, type of ingredient, cooking method, and nutritional balance are set.
[0220] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[0221] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[0222] Furthermore, the emotion engine analyzes the user's emotions and provides the analysis results to the server, which selects recipes according to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients with a relaxing effect will be suggested.
[0223] The server sends the best evaluated recipe to the device and displays it to the user. The device then displays the selected recipe, allowing the user to check it and use it for actual cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[0224] In this way, the system of the present invention can quickly suggest recipes that are best suited to the user's needs and emotional state, enabling them to realize a rich dietary lifestyle.
[0225] The processing flow will be explained below.
[0226] Step 1:
[0227] The user uses a terminal to input information such as the date and time, event, food preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0228] Step 2:
[0229] The terminal captures the user's input and sends the natural language data to the server.
[0230] Step 3:
[0231] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[0232] Step 4:
[0233] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[0234] Step 5:
[0235] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[0236] Step 6:
[0237] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[0238] Step 7:
[0239] The emotion engine analyzes user input to recognize the user's emotions, for example, analyzing phrases and words that indicate an emotional state while the user is typing and after they finish typing.
[0240] Step 8:
[0241] The emotion engine provides the user's emotional state to the server, for example, recognizing emotional states such as "stressed" or "happy."
[0242] Step 9:
[0243] The server selects the optimal recipe based on the user's ratings and emotional state. It adjusts the recipe selection process according to the user's emotional state, prioritizing recipes that use ingredients with relaxing or mood-boosting effects as needed.
[0244] Step 10:
[0245] The server sends the selected recipe to the terminal.
[0246] Step 11:
[0247] The device displays the received recipe to the user. The user can then check the displayed recipe and use it for cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[0248] Through the above process, users can quickly find the recipe that best suits their needs and emotional state, and create a rich diet.
[0249] Example 2
[0250] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0251] Conventional recipe recommendation systems often only offer general recipe suggestions, unable to fully consider the user's emotional state or detailed needs. This makes it difficult for users to find the optimal recipe that matches their specific desires and emotional state. Furthermore, they lack personalization, as they are unable to suggest recipes that take into account the user's stress level or emotional changes.
[0252] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing input data using a natural language processing model and extracting the user's intentions and requests, means for setting user parameters based on the extracted information, and means for recognizing the user's emotional state using an emotion analysis engine and adjusting the dish description based on the results. This makes it possible to propose optimal dish descriptions that take into account the user's specific needs and emotional state.
[0253] A "user" is someone who uses this system to input information and receive recipe suggestions.
[0254] A "terminal" is an electronic device used by a user to input information, and includes smartphones and personal computers.
[0255] "Servers" are computing devices and systems that receive and analyze information sent by users.
[0256] "Natural language" generally refers to language that humans use on a daily basis, and includes spoken language and written language.
[0257] A "natural language processing model" is an artificial intelligence technology that analyzes natural language data entered by a user and extracts meaning and intent.
[0258] A "parameter" is a specific condition or element extracted from information entered by a user.
[0259] A "database" is a system for storing and managing information about food descriptions and recipes.
[0260] "Dish Description" is detailed information about a particular dish, including ingredients, steps, and nutritional balance.
[0261] An "emotion analysis engine" is a technology that analyzes a user's emotional state from their input and behavior and detects their emotional state.
[0262] "Quality rating" is an evaluation criterion for comparing filtered food descriptions and selecting the best one.
[0263] MODE FOR CARRYING OUT THE INVENTION
[0264] This invention is a system that proposes optimal dish descriptions based on a user's preferences and needs, and is combined with a sentiment analysis engine that analyzes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server performs analysis based on that information. This analysis results in the proposal of appropriate dish descriptions, and the sentiment analysis engine also takes the user's emotional state into consideration.
[0265] The system consists of four main elements: the terminal, the server, the emotion analysis engine, and the user.
[0266] Hardware and software configuration:
[0267] 1. Terminal
[0268] Interface devices such as smartphones and computers
[0269] Software: web browser, mobile application
[0270] 2. Server
[0271] High-performance computers or cloud servers
[0272] Software: Natural language processing models (e.g., GPT-4 (registered trademark), BERT), database management systems (e.g., MySQL (registered trademark), PostgreSQL)
[0273] 3. Sentiment Analysis Engine
[0274] Software: Sentiment analysis algorithms (e.g., emotion analysis tools, audio and image analysis tools)
[0275] Program operation description:
[0276] The user uses a terminal to input information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0277] The device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. Through analysis, information such as date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as "next Friday," "dinner with friends," "chicken," and "healthy" are set.
[0278] The server filters suitable dish descriptions from the database based on the set parameters. The filtering process allows the selection of only those dish descriptions that meet the user's requirements, for example, prioritizing healthy dinner menus that use chicken.
[0279] The filtered food descriptions are then quality-evaluated internally, where expertly crafted recipes and recipes best suited to a specific event are prioritized over other descriptions, such as a grilled chicken salad for a formal dinner with friends.
[0280] The emotion analysis engine analyzes the user's emotions and provides the analysis results to the server, which then selects dish descriptions that correspond to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients that have a relaxing effect will be suggested.
[0281] The server sends the description of the best-rated dish to the device and displays it to the user. The device then displays the selected dish description, allowing the user to check the recipe and use it for actual cooking. For example, if a user enters, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a description of grilled chicken salad based on the results of the sentiment analysis engine and display it on the device.
[0282] Example prompt sentence:
[0283] A user is inviting friends over for dinner and wants a healthy meal with chicken. The sentiment analysis engine detects that the user is stressed. What can you suggest?
[0284] In this way, the system of the present invention can quickly provide advanced cooking instructions that take into account the user's needs and emotional state, thereby improving user satisfaction.
[0285] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0286] Step 1: User enters information into terminal
[0287] A user uses a device such as a smartphone or PC to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, a user might input, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This input data is acquired by the device's input device.
[0288] Step 2: The device sends the information to the server
[0289] The terminal transmits the natural language data entered by the user to a server over the Internet. During this transmission process, the data is properly formatted and securely transferred using the HTTPS protocol. The input is the natural language data entered by the user, and the output is the data transmitted to the server.
[0290] Step 3: The server parses the information and sets the parameters
[0291] The server analyzes the received natural language data using a generative AI model (e.g., GPT-4). This analysis automatically extracts parameters such as date and time, events, ingredient preferences, cooking methods, and nutritional balance. Data processing involves text analysis and information extraction. The input is natural language data, and the output is a set of analyzed parameters.
[0292] Step 4: The server filters suitable dish descriptions from the database
[0293] The server filters suitable dish descriptions from the database based on the configured parameters. This filtering process involves, for example, generating an SQL query to search the database. The input is the parsed parameter set, and the output is the filtered candidate dish descriptions.
[0294] Step 5: The sentiment analysis engine analyzes the user's sentiment
[0295] An emotion analysis engine performs emotion analysis using user input data and, in some cases, audio and image data. For example, it determines whether a user is feeling stressed through text analysis or audio and image analysis. The input is the user's emotional data, and the output is analyzed emotional state information.
[0296] Step 6: The server evaluates and decides on the best dish description
[0297] The server evaluates the filtered dish descriptions using a quality evaluation algorithm. It also takes into account the results of sentiment analysis to determine the optimal dish description. For example, for a stressed user, it selects a menu containing ingredients with a relaxing effect. The input is the filtered dish description and the user's emotional state information, and the output is the evaluated optimal dish description.
[0298] Step 7: The server sends the dish description to the device
[0299] The server sends the finalized dish description to the device. This process is also secured using HTTPS protocol. The input is the optimal dish description and the output is the data sent to the device.
[0300] Step 8: The device displays the recipe description to the user
[0301] The device displays the received recipe description on the user interface. For example, details such as ingredients, cooking steps, and nutritional balance are displayed. The user can check the information on the screen and use it to prepare the dish. The input is the recipe description data sent from the server, and the output is the information displayed to the user.
[0302] This processing step allows the system to quickly provide a description of the dish that best suits the user's needs and emotions.
[0303] (Application example 2)
[0304] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0305] Conventional food delivery services simply provide the user's food preferences and desired menu without considering the user's emotional state, and are unable to provide the essential satisfaction that users desire. Therefore, there is a need for a service that provides an optimal menu based on the user's physical and mental state and achieves a higher level of satisfaction. There is also a need for a system that provides a pleasant dining experience by suggesting ingredients and menus with healing and refreshing effects based on the user's stress and mood.
[0306] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0307] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user; and means for analyzing the user's emotions using an emotion engine that recognizes the user's emotional state and selecting a recipe taking the analysis results into consideration, thereby enabling the provision of optimal food delivery according to the user's emotional state.
[0308] "User" means a person or entity that receives meal suggestions using the system of the invention.
[0309] "Natural language" refers to the words and sentences humans use in their daily lives, and is the input format used by systems to analyze them.
[0310] "Date and time" refers to the specific date and time when the suggested recipe will be used.
[0311] An "event" is an activity or occasion that takes place on a particular day, and is a factor that influences the selection of recipes suggested by the system of the invention.
[0312] "Ingredient preferences" refers to information about ingredients that the user particularly likes and ingredients that the user wants to avoid.
[0313] "Cooking method" refers to the specific method or process used to prepare a dish.
[0314] "Nutritional balance" refers to the distribution of nutrients according to the health condition desired by the user.
[0315] "Server" refers to a computer device or system that analyzes, stores, and transmits data.
[0316] A "natural language processing model" refers to the algorithms and software that allow computers to analyze and understand human natural language.
[0317] "Parameters" refer to criteria and setting values extracted based on the user's intentions and requests.
[0318] A "database" refers to a system that systematically stores huge amounts of data and enables quick retrieval of necessary information.
[0319] A "recipe" refers to a list of instructions and ingredients needed to prepare a particular dish.
[0320] "Filtering" refers to the process of sorting data based on specific criteria.
[0321] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes.
[0322] "Emotion engine" refers to software or algorithms for analyzing a user's emotional state.
[0323] "Analysis results" refers to the information or conclusions obtained after analyzing data.
[0324] "Food delivery" refers to a service that delivers food ordered by a user to a specified location.
[0325] This invention relates to a system that suggests optimal food delivery based on a user's preferences and emotional state. The system of the present invention includes a means for the user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language, and the input data is sent to a server. The server analyzes the input data using a natural language processing model and extracts the user's intentions and requests. The server sets user parameters based on the extracted information and filters recipes from a database based on the set parameters. The filtered recipes are evaluated by the server, and the optimal recipe is selected from the perspective of quality. In addition, an emotion engine analyzes the user's emotional state, and a recipe is selected taking the analysis results into consideration. The selected recipe is sent from the server to a terminal and displayed to the user.
[0326] System program processing description
[0327] Hardware and software used:
[0328] Hardware: Smartphone (e.g. iPhone, Android)
[0329] Software: Natural language processing engine (e.g., GPT-3), emotion recognition engine (e.g., Affectiva SDK), database (e.g., MySQL), cloud server (e.g., AWS (registered trademark) EC2)
[0330] Specific processing:
[0331] 1. User Input: The user inputs information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language through a smartphone interface. For example, the user may input a specific request such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[0332] 2. Data transmission and analysis: The input information is sent from the device to the server. The server uses a natural language processing engine to analyze the input data and extract the user's intentions and requests. In this analysis step, parameters such as date and time, event, ingredient preferences, cooking method, and nutritional balance are set.
[0333] 3. Emotion analysis: The associated emotion recognition engine analyzes the user's emotional state. For example, if the user is feeling stressed, the analysis result is provided to the server. Based on this result, a recipe that suits the user's needs can be selected.
[0334] 4. Recipe Selection and Evaluation: The server filters recipes from the database based on the set parameters and the results of sentiment analysis to select the best recipes. At this stage, high-quality recipes and recipes that are best suited to a specific event are prioritized.
[0335] 5. Displaying the results: The final recipe is sent from the server to the device and displayed on the user's smartphone, allowing the user to see the best food delivery options that fit their emotional state and individual needs.
[0336] Examples:
[0337] When a user types into the app, "I'm tired and would like a relaxing meal," the emotion recognition engine determines the "stress" state, and based on this, the server suggests dishes containing "ingredients that have a relaxing effect" (for example, chamomile tea and salmon salad).
[0338] Example prompt sentence:
[0339] "I like pizza while watching a movie, but I'd like something healthy. I'm tired, so I'd like a relaxing meal."
[0340] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0341] Step 1:
[0342] User Input
[0343] Using a smartphone interface, users can input information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language, including specific requests such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[0344] Input: User's natural language input information
[0345] Output: Input natural language data
[0346] Step 2:
[0347] Data transmission
[0348] The device sends the input natural language data to the server, and the data entered by the user is sent to a cloud server via the Internet.
[0349] Input: Natural language data
[0350] Output: Data transfer to the server
[0351] Step 3:
[0352] natural language analysis
[0353] The server analyzes the received natural language data using a natural language processing engine (e.g., GPT-3). Specifically, it extracts keywords such as date and time, event, ingredient preferences, cooking method, and nutritional balance, and based on this, it clarifies the user's intentions and requests.
[0354] Input: Natural language data
[0355] Output: Extracted parameters (date, time, event, food preferences, etc.)
[0356] Step 4:
[0357] Emotion analysis
[0358] The server uses an emotion recognition engine (e.g., Affectiva SDK) to analyze the user's emotional state, including analyzing photos and videos sent by the user. The analysis results indicate the user's emotional state (e.g., stressed, relaxed, etc.).
[0359] Input: User photos, videos, and natural language input
[0360] Output: Analysis of the user's emotional state
[0361] Step 5:
[0362] Recipe Filtering
[0363] The server then filters suitable recipes from the database based on the extracted parameters and the results of sentiment analysis. The filtering process selects recipes that match the date and time, event, ingredient preferences, cooking method, nutritional balance, and emotional state.
[0364] Input: Extracted parameters, sentiment analysis results
[0365] Output: A filtered list of recipes
[0366] Step 6:
[0367] Recipe evaluation and selection
[0368] The server then evaluates the filtered recipes from a quality perspective, prioritizing recipes that are professionally relevant or best suited to a specific event. The server also takes into account the user's emotional state, so if the user is feeling stressed, recipes with a relaxing effect will be prioritized.
[0369] Input: A filtered list of recipes
[0370] Output: Selected optimal recipe
[0371] Step 7:
[0372] Sending and Viewing Recipes
[0373] The server then sends the selected optimal recipe to the device, which then displays it to the user. For example, the device might display a recipe for "Relaxing Grilled Chicken Salad."
[0374] Input: Selected optimal recipe
[0375] Output: The recipe displayed on the user's terminal
[0376] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the 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.
[0377] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0378] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0379] [Second embodiment]
[0380] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0381] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0382] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0383] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0384] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0385] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0386] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0387] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0388] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0389] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0390] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0391] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0392] This invention is a system for suggesting optimal recipes based on a user's preferences and needs. Specifically, it involves a procedure in which the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes that information and suggests appropriate recipes. This system consists of three main elements: a terminal, a server, and the user.
[0393] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0394] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, the user's intentions and requests are extracted from the entered text and parameters are set based on this. For example, parameters such as the date, type of event, type of ingredients, cooking method, and nutritional balance are set.
[0395] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[0396] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[0397] Finally, the server sends the evaluated optimal recipe to the terminal and displays it to the user. The terminal displays the selected recipe, allowing the user to check the recipe and use it for actual cooking.
[0398] For example, if a user goes through the steps above and inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad and display it on the device.
[0399] In this way, the system of the present invention can quickly suggest recipes that best suit the user's needs, enabling them to realize a rich dietary lifestyle.
[0400] The processing flow will be explained below.
[0401] Step 1:
[0402] The user uses natural language to input information such as the date and time, event, food preferences, cooking method, and nutritional balance. Example: "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0403] Step 2:
[0404] The terminal captures the user's input and sends the natural language data to the server.
[0405] Step 3:
[0406] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[0407] Step 4:
[0408] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[0409] Step 5:
[0410] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[0411] Step 6:
[0412] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[0413] Step 7:
[0414] The server selects the best recipe. Based on the ratings, it chooses the recipe that best suits the user's needs.
[0415] Step 8:
[0416] The server sends the selected recipe to the terminal.
[0417] Step 9:
[0418] The device displays the received recipe to the user, who then checks the displayed recipe and uses it for actual cooking.
[0419] Example 1
[0420] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0421] Today, consumers desire to select dishes based on their diverse ingredient preferences and nutritional balance. However, conventional recipe search systems have difficulty quickly suggesting optimal recipes based on a user's specific needs and preferences. In particular, there is a need for accurate analysis of requests entered in natural language and the ability to identify appropriate recipes that meet individual needs. The present invention solves this problem by proposing a system that provides optimal recipes based on a user's individual preferences and circumstances.
[0422] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0423] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a generative AI model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes based on prompt statements and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user. This makes it possible to suggest optimal recipes according to the user's specific needs.
[0424] "User" refers to an individual or organization that uses the System to search for and select cooking recipes.
[0425] "Terminal" refers to a hardware device or software application that allows a user to perform input operations, including, for example, a smartphone, tablet, or PC.
[0426] "Server" refers to a computer system for receiving, processing, and analyzing input data from a user.
[0427] "Natural language" refers to a language form that humans use on a daily basis, and means a language form that users can input intuitively.
[0428] A "generative AI model" refers to an algorithm or system that uses machine learning and artificial intelligence to analyze user input.
[0429] A "prompt sentence" refers to a sentence or keyword that serves as input data for the generative AI model to analyze.
[0430] "Parameters" refer to the user's intentions and requests expressed as numbers or categories, and are elements that serve as the basis for recipe searches.
[0431] "Filtering" refers to the process of extracting recipes that meet the conditions from the database based on set parameters.
[0432] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes and selecting the most suitable recipe.
[0433] A "recipe" refers to a method for preparing a dish that includes cooking steps, necessary ingredients, nutritional information, etc.
[0434] "Database" refers to an information system for storing and managing recipe information and related data.
[0435] This invention is a system that suggests optimal cooking recipes based on information entered by the user in natural language. This system is mainly composed of three elements: a terminal, a server, and a user. The following provides a detailed explanation of the system's procedures and the hardware and software used.
[0436] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information specifically expresses the user's desires, and the system performs analysis based on this information.
[0437] The terminal sends the natural language data entered by the user to the server using a network protocol such as HTTP POST.
[0438] The server uses a generative AI model to analyze the received data, specifically using natural language processing tools such as Google Cloud Natural Language API to extract the user's intent and desires from the input text and set parameters such as:
[0439] Date and time: "Next Friday"
[0440] Event: "Dinner with friends"
[0441] Food Favorites: "Chicken"
[0442] Cooking method: "Healthy"
[0443] Nutritional balance: "High"
[0444] Based on the set parameters, the server filters relevant recipes from a database, often using SQL for database queries, for example, a query to search for "healthy chicken recipes" is performed.
[0445] The filtered recipes are then rated internally using prompts to prioritize recipes that are professionally created or suitable for specific conditions. Evaluation criteria include user reviews, nutritional value, and event suitability. For example, a "healthy chicken dish suitable for a dinner party with friends" would be highly rated.
[0446] The selected recipe is sent to the device as JSON-formatted data. Specifically, a response is returned using HTTP communication. The device analyzes this data and displays the recipe on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc.
[0447] Specific examples
[0448] If the user types "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will begin parsing using the following prompt statement:
[0449] A user wants to invite friends over for dinner next Friday, loves chicken, and wants a healthy meal. Suggest a recipe that fits this criteria.
[0450] Based on this prompt, the server analyzes it and selects the most suitable recipe, for example, "grilled chicken salad," and displays it on the terminal.
[0451] In this way, the system of the present invention can quickly and accurately suggest appropriate recipes based on the user's specific needs.
[0452] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0453] Step 1:
[0454] The user enters information in natural language.
[0455] Input: The user types into the terminal in natural language, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0456] Output: Natural language text recorded as input data on the terminal.
[0457] Specific operation: The user inputs information in text format using the device's keyboard or voice input function, and the device temporarily stores the input data.
[0458] Step 2:
[0459] The terminal sends the user's input to the server.
[0460] Input: The natural language text entered in step 1.
[0461] Output: Natural language text data sent to the server.
[0462] What it does: The device generates an HTTP POST request and sends the user's input text as a payload to the server. This communication requires an internet connection.
[0463] Step 3:
[0464] The server uses a generative AI model to analyze the input data and extract the user's intent.
[0465] Input: Natural language text data sent to the server.
[0466] Output: Analysis results (parameter set) based on the user's intentions and requests.
[0467] How it works: The server inputs the received data into a generative AI model (e.g., a natural language processing API) for analysis. The analysis extracts the following parameters:
[0468] Date and time: "Next Friday"
[0469] Event: "Dinner with friends"
[0470] Food Favorites: "Chicken"
[0471] Cooking method: "Healthy"
[0472] Step 4:
[0473] The server sets the user's parameters based on the extracted information and filters recipes from the database.
[0474] Input: Analysis results (parameter set).
[0475] Output: A filtered list of recipe suggestions.
[0476] Specific operation: The server generates an SQL query based on the extracted parameters and searches the database. For example, it executes a query to search for "chicken" and "healthy" recipes.
[0477] Step 5:
[0478] The server evaluates the filtered recipes and selects the best recipe.
[0479] Input: A filtered list of recipe suggestions.
[0480] Output: Information on the best recipe.
[0481] Specific operation: The server applies a rating algorithm to the filtered recipes. The rating criteria include user reviews, nutritional value, and event suitability. For example, it might select "the best recipe for a dinner party with friends" based on a prompt.
[0482] Step 6:
[0483] The server sends the selected recipe to the terminal.
[0484] Input: Information about your best recipe.
[0485] Output: Recipe data sent to the terminal.
[0486] Specific operation: The server generates the selected recipe information in JSON format and sends it to the terminal as an HTTP response.
[0487] Step 7:
[0488] The device displays the best recipes to the user.
[0489] Input: Recipe data sent from the server.
[0490] Output: Recipe information displayed to the user.
[0491] Specific operation: The device parses the received JSON data and displays it on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc. The user can then view the information and perform the actual cooking.
[0492] (Application example 1)
[0493] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0494] In recent years, with the diversification of dietary habits and growing health consciousness, there is a demand for instantaneous suggestions of optimal recipes tailored to users' preferences and needs. However, previous systems were limited in the information that users could input, making it difficult to suggest recipes tailored to specific events or ingredient preferences. Furthermore, there was a lack of a way for users to visually check the suggested recipes while cooking. In particular, the lack of an intuitive interface using smart glasses or other devices hindered the improvement of the user experience. To solve these issues, more accurate natural language analysis and a system that visually suggests recipes are needed.
[0495] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0496] In this invention, the server includes: means for a user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to an eyeglass-type device, which visually displays it to the user. This allows the user to cook while visually checking the recipe through the smart glasses, thereby providing intuitive and efficient support for dietary habits.
[0497] A "user" is an individual or entity that provides information and receives recipe suggestions from the system.
[0498] "Natural language" means a language used by humans in everyday life, in any form including speech and text.
[0499] "Date and time" refers to a specific date and time when cooking and eating are planned.
[0500] "Event" means a gathering or activity for a particular purpose or occasion, such as a dinner or party.
[0501] "Ingredient preferences" is information about specific ingredients and their types that the user likes.
[0502] "Cooking method" refers to the specific method or procedure for cooking ingredients, including, for example, baking, simmering, boiling, etc.
[0503] "Nutritional balance" is a standard for evaluating whether a meal is nutritionally balanced.
[0504] An "eyeglasses-type device" is a device that provides visual information when worn by a user, and includes, for example, smart glasses.
[0505] A "natural language processing model" is a general term for algorithms and technologies used to analyze natural language and understand its meaning and intent.
[0506] A "database" is a structured collection of information for storing and managing recipes and related information.
[0507] A "server" is a computer system that receives requests from users and performs analysis and data processing.
[0508] "Filtering" is the process of sorting data based on specific criteria.
[0509] "Evaluation" is the process of determining the quality and suitability of a recipe and making the optimal selection.
[0510] A "suggestion" is an act of recommending or guiding a user based on specific conditions.
[0511] "Visually displaying" refers to a state in which visual information is provided to the user through the device, enabling confirmation and operation.
[0512] This invention is a system for suggesting recipes that are best suited to a user's needs.The server analyzes information entered by the user in natural language using an eyeglass-type device and visually provides appropriate recipes.
[0513] System Configuration
[0514] The system consists of the following components:
[0515] User: An individual who provides information and reviews suggested recipes.
[0516] Terminal (eyeglasses-type device): A device worn by the user that inputs natural language and displays visual information. For example, smart glasses are examples of such devices.
[0517] Server: A computer system that receives user input, performs natural language processing, database search, and evaluation.
[0518] Program processing
[0519] 1. User Input
[0520] The user wears the glasses-type device and uses voice input to make a request in natural language, such as "I would like a healthy menu for dinner tonight." The device converts this request into text data and sends it to the server.
[0521] 2. Natural Language Processing
[0522] The server analyzes the received text data using a natural language processing model (e.g., OpenAI GPT-3), extracting date and time, events, ingredient preferences, cooking methods, and nutritional balance from the input data, and sets the user's parameters based on this.
[0523] 3. Filter and rate recipes
[0524] The server filters suitable recipes from the database based on the set parameters. For example, if you enter "I want healthy meals," the server will select only healthy recipes. The filtered recipes are then evaluated, and the highest quality recipes are prioritized.
[0525] 4. Visual representation of the recipe
[0526] The selected recipe is sent from the server to the glasses-type device, and the user can visually check the recipe on the device screen. This allows the user to check the recipe details while looking at the device, making cooking smoother.
[0527] Specific examples
[0528] For example, if a user says, "I'd like to invite friends over for a barbecue this weekend. I'd like a healthy menu with meat and vegetables," the server generates the following prompt and performs natural language processing:
[0529] User: I'm planning to invite friends over for a barbecue this weekend. I'd like a healthy menu that includes meat and vegetables.
[0530] system:
[0531] Based on this, recipes such as "Grilled Chicken Salad and Vegetable Speed Kebab" are suggested and displayed on the glasses-like device, allowing users to follow along as they cook.
[0532] Hardware and software used
[0533] Hardware: Smart glasses (e.g., Google Glass, Microsoft HoloLens)
[0534] Software: Python, OpenAI GPT-3 API
[0535] With this configuration and processing, users can receive visually easy-to-understand recipe suggestions based on intuitive input in natural language, enabling them to realize a richer dietary life.
[0536] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0537] Step 1:
[0538] The user wears the glasses-type device and uses the voice input function to make a natural language request, such as "I would like a healthy menu for dinner tonight." This is a step to clearly communicate the user's wishes, and this input data is sent to the next process.
[0539] Input: The user's natural language voice request (e.g., "I'd like something healthy for dinner tonight").
[0540] Output: Audio data.
[0541] Step 2:
[0542] The device converts the user's voice data into text data, uses voice recognition software to generate text data from the voice data, and sends it to the server.
[0543] Input: User's voice data.
[0544] Output: Text data.
[0545] Step 3:
[0546] The server performs natural language processing based on the received text data. Specifically, it sends this text data to the OpenAI GPT-3 API and generates a prompt. At this stage, it analyzes the user's request (date and time, event, ingredient preferences, cooking method, nutritional balance, etc.) and extracts each parameter.
[0547] Input: Text data (user's natural language request).
[0548] Output: Analysis results (extracted parameters).
[0549] Step 4:
[0550] The server filters the database for relevant recipes based on the extracted parameters, applying criteria based on the user's preferences (healthy menus, specific ingredients, etc.) to select the appropriate recipes.
[0551] Input: Analysis results (extracted parameters).
[0552] Output: A filtered list of recipes.
[0553] Step 5:
[0554] The server evaluates the filtered recipes. As evaluation criteria, recipes created from an expert's perspective and recipes that best meet specific conditions are prioritized. The optimal recipe is selected based on the evaluation results.
[0555] Input: A filtered list of recipes.
[0556] Output: Optimal recipe.
[0557] Step 6:
[0558] The server then sends the selected optimal recipe to the glasses-type device, which then visually displays the received recipe to the user, allowing the user to visually check the recipe while cooking.
[0559] Enter: your optimal recipe.
[0560] Output: The recipe displayed on the glasses.
[0561] This allows users to visually check recipes through the smart glasses while cooking, and aims to seamlessly connect the entire process flow to improve the user experience.
[0562] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0563] This invention combines a system that suggests optimal recipes based on a user's preferences and needs with an emotion engine that recognizes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes this information to suggest appropriate recipes. It also includes a procedure that takes the user's emotional state into consideration using the emotion engine. This system consists of four main elements: a terminal, a server, an emotion engine, and a user.
[0564] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0565] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as the date, type of event, type of ingredient, cooking method, and nutritional balance are set.
[0566] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[0567] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[0568] Furthermore, the emotion engine analyzes the user's emotions and provides the analysis results to the server, which selects recipes according to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients with a relaxing effect will be suggested.
[0569] The server sends the best evaluated recipe to the device and displays it to the user. The device then displays the selected recipe, allowing the user to check it and use it for actual cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[0570] In this way, the system of the present invention can quickly suggest recipes that are best suited to the user's needs and emotional state, enabling them to realize a rich dietary lifestyle.
[0571] The processing flow will be explained below.
[0572] Step 1:
[0573] The user uses a terminal to input information such as the date and time, event, food preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0574] Step 2:
[0575] The terminal captures the user's input and sends the natural language data to the server.
[0576] Step 3:
[0577] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[0578] Step 4:
[0579] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[0580] Step 5:
[0581] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[0582] Step 6:
[0583] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[0584] Step 7:
[0585] The emotion engine analyzes user input to recognize the user's emotions, for example, analyzing phrases and words that indicate an emotional state while the user is typing and after they finish typing.
[0586] Step 8:
[0587] The emotion engine provides the user's emotional state to the server, for example, recognizing emotional states such as "stressed" or "happy."
[0588] Step 9:
[0589] The server selects the optimal recipe based on the user's ratings and emotional state. It adjusts the recipe selection process according to the user's emotional state, prioritizing recipes that use ingredients with relaxing or mood-boosting effects as needed.
[0590] Step 10:
[0591] The server sends the selected recipe to the terminal.
[0592] Step 11:
[0593] The device displays the received recipe to the user. The user can then check the displayed recipe and use it for cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[0594] Through the above process, users can quickly find the recipe that best suits their needs and emotional state, and create a rich diet.
[0595] Example 2
[0596] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0597] Conventional recipe recommendation systems often only offer general recipe suggestions, unable to fully consider the user's emotional state or detailed needs. This makes it difficult for users to find the optimal recipe that matches their specific desires and emotional state. Furthermore, they lack personalization, as they are unable to suggest recipes that take into account the user's stress level or emotional changes.
[0598] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing input data using a natural language processing model and extracting the user's intentions and requests, means for setting user parameters based on the extracted information, and means for recognizing the user's emotional state using an emotion analysis engine and adjusting the dish description based on the results. This makes it possible to propose optimal dish descriptions that take into account the user's specific needs and emotional state.
[0599] A "user" is someone who uses this system to input information and receive recipe suggestions.
[0600] A "terminal" is an electronic device used by a user to input information, and includes smartphones and personal computers.
[0601] "Servers" are computing devices and systems that receive and analyze information sent by users.
[0602] "Natural language" generally refers to language that humans use on a daily basis, and includes spoken language and written language.
[0603] A "natural language processing model" is an artificial intelligence technology that analyzes natural language data entered by a user and extracts meaning and intent.
[0604] A "parameter" is a specific condition or element extracted from information entered by a user.
[0605] A "database" is a system for storing and managing information about food descriptions and recipes.
[0606] "Dish Description" is detailed information about a particular dish, including ingredients, steps, and nutritional balance.
[0607] An "emotion analysis engine" is a technology that analyzes a user's emotional state from their input and behavior and detects their emotional state.
[0608] "Quality rating" is an evaluation criterion for comparing filtered food descriptions and selecting the best one.
[0609] MODE FOR CARRYING OUT THE INVENTION
[0610] This invention is a system that proposes optimal dish descriptions based on a user's preferences and needs, and is combined with a sentiment analysis engine that analyzes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server performs analysis based on that information. This analysis results in the proposal of appropriate dish descriptions, and the sentiment analysis engine also takes the user's emotional state into consideration.
[0611] The system consists of four main elements: the terminal, the server, the emotion analysis engine, and the user.
[0612] Hardware and software configuration:
[0613] 1. Terminal
[0614] Interface devices such as smartphones and computers
[0615] Software: web browser, mobile application
[0616] 2. Server
[0617] High-performance computers or cloud servers
[0618] Software: Natural language processing models (e.g., GPT-4, BERT), database management systems (e.g., MySQL, PostgreSQL)
[0619] 3. Sentiment Analysis Engine
[0620] Software: Sentiment analysis algorithms (e.g., emotion analysis tools, audio and image analysis tools)
[0621] Program operation description:
[0622] The user uses a terminal to input information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0623] The device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. Through analysis, information such as date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as "next Friday," "dinner with friends," "chicken," and "healthy" are set.
[0624] The server filters suitable dish descriptions from the database based on the set parameters. The filtering process allows the selection of only those dish descriptions that meet the user's requirements, for example, prioritizing healthy dinner menus that use chicken.
[0625] The filtered food descriptions are then quality-evaluated internally, where expertly crafted recipes and recipes best suited to a specific event are prioritized over other descriptions, such as a grilled chicken salad for a formal dinner with friends.
[0626] The emotion analysis engine analyzes the user's emotions and provides the analysis results to the server, which then selects dish descriptions that correspond to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients that have a relaxing effect will be suggested.
[0627] The server sends the description of the best-rated dish to the device and displays it to the user. The device then displays the selected dish description, allowing the user to check the recipe and use it for actual cooking. For example, if a user enters, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a description of grilled chicken salad based on the results of the sentiment analysis engine and display it on the device.
[0628] Example prompt sentence:
[0629] A user is inviting friends over for dinner and wants a healthy meal with chicken. The sentiment analysis engine detects that the user is stressed. What can you suggest?
[0630] In this way, the system of the present invention can quickly provide advanced cooking instructions that take into account the user's needs and emotional state, thereby improving user satisfaction.
[0631] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0632] Step 1: User enters information into terminal
[0633] A user uses a device such as a smartphone or PC to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, a user might input, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This input data is acquired by the device's input device.
[0634] Step 2: The device sends the information to the server
[0635] The terminal transmits the natural language data entered by the user to a server over the Internet. During this transmission process, the data is properly formatted and securely transferred using the HTTPS protocol. The input is the natural language data entered by the user, and the output is the data transmitted to the server.
[0636] Step 3: The server parses the information and sets the parameters
[0637] The server analyzes the received natural language data using a generative AI model (e.g., GPT-4). This analysis automatically extracts parameters such as date and time, events, ingredient preferences, cooking methods, and nutritional balance. Data processing involves text analysis and information extraction. The input is natural language data, and the output is a set of analyzed parameters.
[0638] Step 4: The server filters suitable dish descriptions from the database
[0639] The server filters suitable dish descriptions from the database based on the configured parameters. This filtering process involves, for example, generating an SQL query to search the database. The input is the parsed parameter set, and the output is the filtered candidate dish descriptions.
[0640] Step 5: The sentiment analysis engine analyzes the user's sentiment
[0641] An emotion analysis engine performs emotion analysis using user input data and, in some cases, audio and image data. For example, it determines whether a user is feeling stressed through text analysis or audio and image analysis. The input is the user's emotional data, and the output is analyzed emotional state information.
[0642] Step 6: The server evaluates and decides on the best dish description
[0643] The server evaluates the filtered dish descriptions using a quality evaluation algorithm. It also takes into account the results of sentiment analysis to determine the optimal dish description. For example, for a stressed user, it selects a menu containing ingredients with a relaxing effect. The input is the filtered dish description and the user's emotional state information, and the output is the evaluated optimal dish description.
[0644] Step 7: The server sends the dish description to the device
[0645] The server sends the finalized dish description to the device. This process is also secured using HTTPS protocol. The input is the optimal dish description and the output is the data sent to the device.
[0646] Step 8: The device displays the recipe description to the user
[0647] The device displays the received recipe description on the user interface. For example, details such as ingredients, cooking steps, and nutritional balance are displayed. The user can check the information on the screen and use it to prepare the dish. The input is the recipe description data sent from the server, and the output is the information displayed to the user.
[0648] This processing step allows the system to quickly provide a description of the dish that best suits the user's needs and emotions.
[0649] (Application example 2)
[0650] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0651] Conventional food delivery services simply provide the user's food preferences and desired menu without considering the user's emotional state, and are unable to provide the essential satisfaction that users desire. Therefore, there is a need for a service that provides an optimal menu based on the user's physical and mental state and achieves a higher level of satisfaction. There is also a need for a system that provides a pleasant dining experience by suggesting ingredients and menus with healing and refreshing effects based on the user's stress and mood.
[0652] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0653] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user; and means for analyzing the user's emotions using an emotion engine that recognizes the user's emotional state and selecting a recipe taking the analysis results into consideration, thereby enabling the provision of optimal food delivery according to the user's emotional state.
[0654] "User" means a person or entity that receives meal suggestions using the system of the invention.
[0655] "Natural language" refers to the words and sentences humans use in their daily lives, and is the input format used by systems to analyze them.
[0656] "Date and time" refers to the specific date and time when the suggested recipe will be used.
[0657] An "event" is an activity or occasion that takes place on a particular day, and is a factor that influences the selection of recipes suggested by the system of the invention.
[0658] "Ingredient preferences" refers to information about ingredients that the user particularly likes and ingredients that the user wants to avoid.
[0659] "Cooking method" refers to the specific method or process used to prepare a dish.
[0660] "Nutritional balance" refers to the distribution of nutrients according to the health condition desired by the user.
[0661] "Server" refers to a computer device or system that analyzes, stores, and transmits data.
[0662] A "natural language processing model" refers to the algorithms and software that allow computers to analyze and understand human natural language.
[0663] "Parameters" refer to criteria and setting values extracted based on the user's intentions and requests.
[0664] A "database" refers to a system that systematically stores huge amounts of data and enables quick retrieval of necessary information.
[0665] A "recipe" refers to a list of instructions and ingredients needed to prepare a particular dish.
[0666] "Filtering" refers to the process of sorting data based on specific criteria.
[0667] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes.
[0668] "Emotion engine" refers to software or algorithms for analyzing a user's emotional state.
[0669] "Analysis results" refers to the information or conclusions obtained after analyzing data.
[0670] "Food delivery" refers to a service that delivers food ordered by a user to a specified location.
[0671] This invention relates to a system that suggests optimal food delivery based on a user's preferences and emotional state. The system of the present invention includes a means for the user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language, and the input data is sent to a server. The server analyzes the input data using a natural language processing model and extracts the user's intentions and requests. The server sets user parameters based on the extracted information and filters recipes from a database based on the set parameters. The filtered recipes are evaluated by the server, and the optimal recipe is selected from the perspective of quality. In addition, an emotion engine analyzes the user's emotional state, and a recipe is selected taking the analysis results into consideration. The selected recipe is sent from the server to a terminal and displayed to the user.
[0672] System program processing description
[0673] Hardware and software used:
[0674] Hardware: Smartphone (e.g. iPhone, Android device)
[0675] Software: Natural language processing engine (e.g., GPT-3), emotion recognition engine (e.g., Affectiva SDK), database (e.g., MySQL), cloud server (e.g., AWS EC2)
[0676] Specific processing:
[0677] 1. User Input: The user inputs information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language through a smartphone interface. For example, the user may input a specific request such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[0678] 2. Data transmission and analysis: The input information is sent from the device to the server. The server uses a natural language processing engine to analyze the input data and extract the user's intentions and requests. In this analysis step, parameters such as date and time, event, ingredient preferences, cooking method, and nutritional balance are set.
[0679] 3. Emotion analysis: The associated emotion recognition engine analyzes the user's emotional state. For example, if the user is feeling stressed, the analysis result is provided to the server. Based on this result, a recipe that suits the user's needs can be selected.
[0680] 4. Recipe Selection and Evaluation: The server filters recipes from the database based on the set parameters and the results of sentiment analysis to select the best recipes. At this stage, high-quality recipes and recipes that are best suited to a specific event are prioritized.
[0681] 5. Displaying the results: The final recipe is sent from the server to the device and displayed on the user's smartphone, allowing the user to see the best food delivery options that fit their emotional state and individual needs.
[0682] Examples:
[0683] When a user types into the app, "I'm tired and would like a relaxing meal," the emotion recognition engine determines the "stress" state, and based on this, the server suggests dishes containing "ingredients that have a relaxing effect" (for example, chamomile tea and salmon salad).
[0684] Example prompt sentence:
[0685] "I like pizza while watching a movie, but I'd like something healthy. I'm tired, so I'd like a relaxing meal."
[0686] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0687] Step 1:
[0688] User Input
[0689] Using a smartphone interface, users can input information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language, including specific requests such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[0690] Input: User's natural language input information
[0691] Output: Input natural language data
[0692] Step 2:
[0693] Data transmission
[0694] The device sends the input natural language data to the server, and the data entered by the user is sent to a cloud server via the Internet.
[0695] Input: Natural language data
[0696] Output: Data transfer to the server
[0697] Step 3:
[0698] natural language analysis
[0699] The server analyzes the received natural language data using a natural language processing engine (e.g., GPT-3). Specifically, it extracts keywords such as date and time, event, ingredient preferences, cooking method, and nutritional balance, and based on this, it clarifies the user's intentions and requests.
[0700] Input: Natural language data
[0701] Output: Extracted parameters (date, time, event, food preferences, etc.)
[0702] Step 4:
[0703] Emotion analysis
[0704] The server uses an emotion recognition engine (e.g., Affectiva SDK) to analyze the user's emotional state, including analyzing photos and videos sent by the user. The analysis results indicate the user's emotional state (e.g., stressed, relaxed, etc.).
[0705] Input: User photos, videos, and natural language input
[0706] Output: Analysis of the user's emotional state
[0707] Step 5:
[0708] Recipe Filtering
[0709] The server then filters suitable recipes from the database based on the extracted parameters and the results of sentiment analysis. The filtering process selects recipes that match the date and time, event, ingredient preferences, cooking method, nutritional balance, and emotional state.
[0710] Input: Extracted parameters, sentiment analysis results
[0711] Output: A filtered list of recipes
[0712] Step 6:
[0713] Recipe evaluation and selection
[0714] The server then evaluates the filtered recipes from a quality perspective, prioritizing recipes that are professionally relevant or best suited to a specific event. The server also takes into account the user's emotional state, so if the user is feeling stressed, recipes with a relaxing effect will be prioritized.
[0715] Input: A filtered list of recipes
[0716] Output: Selected optimal recipe
[0717] Step 7:
[0718] Sending and Viewing Recipes
[0719] The server then sends the selected optimal recipe to the device, which then displays it to the user. For example, the device might display a recipe for "Relaxing Grilled Chicken Salad."
[0720] Input: Selected optimal recipe
[0721] Output: The recipe displayed on the user's terminal
[0722] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0723] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0724] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0725] [Third embodiment]
[0726] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0727] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0728] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0729] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0730] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0731] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0732] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0733] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0734] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0735] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0736] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0737] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0738] This invention is a system for suggesting optimal recipes based on a user's preferences and needs. Specifically, it involves a procedure in which the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes that information and suggests appropriate recipes. This system consists of three main elements: a terminal, a server, and the user.
[0739] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0740] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, the user's intentions and requests are extracted from the entered text and parameters are set based on this. For example, parameters such as the date, type of event, type of ingredients, cooking method, and nutritional balance are set.
[0741] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[0742] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[0743] Finally, the server sends the evaluated optimal recipe to the terminal and displays it to the user. The terminal displays the selected recipe, allowing the user to check the recipe and use it for actual cooking.
[0744] For example, if a user goes through the steps above and inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad and display it on the device.
[0745] In this way, the system of the present invention can quickly suggest recipes that best suit the user's needs, enabling them to realize a rich dietary lifestyle.
[0746] The processing flow will be explained below.
[0747] Step 1:
[0748] The user uses natural language to input information such as the date and time, event, food preferences, cooking method, and nutritional balance. Example: "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0749] Step 2:
[0750] The terminal captures the user's input and sends the natural language data to the server.
[0751] Step 3:
[0752] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[0753] Step 4:
[0754] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[0755] Step 5:
[0756] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[0757] Step 6:
[0758] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[0759] Step 7:
[0760] The server selects the best recipe. Based on the ratings, it chooses the recipe that best suits the user's needs.
[0761] Step 8:
[0762] The server sends the selected recipe to the terminal.
[0763] Step 9:
[0764] The device displays the received recipe to the user, who then checks the displayed recipe and uses it for actual cooking.
[0765] Example 1
[0766] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0767] Today, consumers desire to select dishes based on their diverse ingredient preferences and nutritional balance. However, conventional recipe search systems have difficulty quickly suggesting optimal recipes based on a user's specific needs and preferences. In particular, there is a need for accurate analysis of requests entered in natural language and the ability to identify appropriate recipes that meet individual needs. The present invention solves this problem by proposing a system that provides optimal recipes based on a user's individual preferences and circumstances.
[0768] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0769] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a generative AI model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes based on prompt statements and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user. This makes it possible to suggest optimal recipes according to the user's specific needs.
[0770] "User" refers to an individual or organization that uses the System to search for and select cooking recipes.
[0771] "Terminal" refers to a hardware device or software application that allows a user to perform input operations, including, for example, a smartphone, tablet, or PC.
[0772] "Server" refers to a computer system for receiving, processing, and analyzing input data from a user.
[0773] "Natural language" refers to a language form that humans use on a daily basis, and means a language form that users can input intuitively.
[0774] A "generative AI model" refers to an algorithm or system that uses machine learning and artificial intelligence to analyze user input.
[0775] A "prompt sentence" refers to a sentence or keyword that serves as input data for the generative AI model to analyze.
[0776] "Parameters" refer to the user's intentions and requests expressed as numbers or categories, and are elements that serve as the basis for recipe searches.
[0777] "Filtering" refers to the process of extracting recipes that meet the conditions from the database based on set parameters.
[0778] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes and selecting the most suitable recipe.
[0779] A "recipe" refers to a method for preparing a dish that includes cooking steps, necessary ingredients, nutritional information, etc.
[0780] "Database" refers to an information system for storing and managing recipe information and related data.
[0781] This invention is a system that suggests optimal cooking recipes based on information entered by the user in natural language. This system is mainly composed of three elements: a terminal, a server, and a user. The following provides a detailed explanation of the system's procedures and the hardware and software used.
[0782] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information specifically expresses the user's desires, and the system performs analysis based on this information.
[0783] The terminal sends the natural language data entered by the user to the server using a network protocol such as HTTP POST.
[0784] The server uses a generative AI model to analyze the received data, specifically using natural language processing tools such as Google Cloud Natural Language API to extract the user's intent and desires from the input text and set parameters such as:
[0785] Date and time: "Next Friday"
[0786] Event: "Dinner with friends"
[0787] Food Favorites: "Chicken"
[0788] Cooking method: "Healthy"
[0789] Nutritional balance: "High"
[0790] Based on the set parameters, the server filters relevant recipes from a database, often using SQL for database queries, for example, a query to search for "healthy chicken recipes" is performed.
[0791] The filtered recipes are then rated internally using prompts to prioritize recipes that are professionally created or suitable for specific conditions. Evaluation criteria include user reviews, nutritional value, and event suitability. For example, a "healthy chicken dish suitable for a dinner party with friends" would be highly rated.
[0792] The selected recipe is sent to the device as JSON-formatted data. Specifically, a response is returned using HTTP communication. The device analyzes this data and displays the recipe on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc.
[0793] Specific examples
[0794] If the user types "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will begin parsing using the following prompt statement:
[0795] A user wants to invite friends over for dinner next Friday, loves chicken, and wants a healthy meal. Suggest a recipe that fits this criteria.
[0796] Based on this prompt, the server analyzes it and selects the most suitable recipe, for example, "grilled chicken salad," and displays it on the terminal.
[0797] In this way, the system of the present invention can quickly and accurately suggest appropriate recipes based on the user's specific needs.
[0798] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0799] Step 1:
[0800] The user enters information in natural language.
[0801] Input: The user types into the terminal in natural language, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0802] Output: Natural language text recorded as input data on the terminal.
[0803] Specific operation: The user inputs information in text format using the device's keyboard or voice input function, and the device temporarily stores the input data.
[0804] Step 2:
[0805] The terminal sends the user's input to the server.
[0806] Input: The natural language text entered in step 1.
[0807] Output: Natural language text data sent to the server.
[0808] What it does: The device generates an HTTP POST request and sends the user's input text as a payload to the server. This communication requires an internet connection.
[0809] Step 3:
[0810] The server uses a generative AI model to analyze the input data and extract the user's intent.
[0811] Input: Natural language text data sent to the server.
[0812] Output: Analysis results (parameter set) based on the user's intentions and requests.
[0813] How it works: The server inputs the received data into a generative AI model (e.g., a natural language processing API) for analysis. The analysis extracts the following parameters:
[0814] Date and time: "Next Friday"
[0815] Event: "Dinner with friends"
[0816] Food Favorites: "Chicken"
[0817] Cooking method: "Healthy"
[0818] Step 4:
[0819] The server sets the user's parameters based on the extracted information and filters recipes from the database.
[0820] Input: Analysis results (parameter set).
[0821] Output: A filtered list of recipe suggestions.
[0822] Specific operation: The server generates an SQL query based on the extracted parameters and searches the database. For example, it executes a query to search for "chicken" and "healthy" recipes.
[0823] Step 5:
[0824] The server evaluates the filtered recipes and selects the best recipe.
[0825] Input: A filtered list of recipe suggestions.
[0826] Output: Information on the best recipe.
[0827] Specific operation: The server applies a rating algorithm to the filtered recipes. The rating criteria include user reviews, nutritional value, and event suitability. For example, it might select "the best recipe for a dinner party with friends" based on a prompt.
[0828] Step 6:
[0829] The server sends the selected recipe to the terminal.
[0830] Input: Information about your best recipe.
[0831] Output: Recipe data sent to the terminal.
[0832] Specific operation: The server generates the selected recipe information in JSON format and sends it to the terminal as an HTTP response.
[0833] Step 7:
[0834] The device displays the best recipes to the user.
[0835] Input: Recipe data sent from the server.
[0836] Output: Recipe information displayed to the user.
[0837] Specific operation: The device parses the received JSON data and displays it on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc. The user can then view the information and perform the actual cooking.
[0838] (Application example 1)
[0839] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0840] In recent years, with the diversification of dietary habits and growing health consciousness, there is a demand for instantaneous suggestions of optimal recipes tailored to users' preferences and needs. However, previous systems were limited in the information that users could input, making it difficult to suggest recipes tailored to specific events or ingredient preferences. Furthermore, there was a lack of a way for users to visually check the suggested recipes while cooking. In particular, the lack of an intuitive interface using smart glasses or other devices hindered the improvement of the user experience. To solve these issues, more accurate natural language analysis and a system that visually suggests recipes are needed.
[0841] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0842] In this invention, the server includes: means for a user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to an eyeglass-type device, which visually displays it to the user. This allows the user to cook while visually checking the recipe through the smart glasses, thereby providing intuitive and efficient support for dietary habits.
[0843] A "user" is an individual or entity that provides information and receives recipe suggestions from the system.
[0844] "Natural language" means a language used by humans in everyday life, in any form including speech and text.
[0845] "Date and time" refers to a specific date and time when cooking and eating are planned.
[0846] "Event" means a gathering or activity for a particular purpose or occasion, such as a dinner or party.
[0847] "Ingredient preferences" is information about specific ingredients and their types that the user likes.
[0848] "Cooking method" refers to the specific method or procedure for cooking ingredients, including, for example, baking, simmering, boiling, etc.
[0849] "Nutritional balance" is a standard for evaluating whether a meal is nutritionally balanced.
[0850] An "eyeglasses-type device" is a device that provides visual information when worn by a user, and includes, for example, smart glasses.
[0851] A "natural language processing model" is a general term for algorithms and technologies used to analyze natural language and understand its meaning and intent.
[0852] A "database" is a structured collection of information for storing and managing recipes and related information.
[0853] A "server" is a computer system that receives requests from users and performs analysis and data processing.
[0854] "Filtering" is the process of sorting data based on specific criteria.
[0855] "Evaluation" is the process of determining the quality and suitability of a recipe and making the optimal selection.
[0856] A "suggestion" is an act of recommending or guiding a user based on specific conditions.
[0857] "Visually displaying" refers to a state in which visual information is provided to the user through the device, enabling confirmation and operation.
[0858] This invention is a system for suggesting recipes that are best suited to a user's needs.The server analyzes information entered by the user in natural language using an eyeglass-type device and visually provides appropriate recipes.
[0859] System Configuration
[0860] The system consists of the following components:
[0861] User: An individual who provides information and reviews suggested recipes.
[0862] Terminal (eyeglasses-type device): A device worn by the user that inputs natural language and displays visual information. For example, smart glasses are examples of such devices.
[0863] Server: A computer system that receives user input, performs natural language processing, database search, and evaluation.
[0864] Program processing
[0865] 1. User Input
[0866] The user wears the glasses-type device and uses voice input to make a request in natural language, such as "I would like a healthy menu for dinner tonight." The device converts this request into text data and sends it to the server.
[0867] 2. Natural Language Processing
[0868] The server analyzes the received text data using a natural language processing model (e.g., OpenAI GPT-3), extracting date and time, events, ingredient preferences, cooking methods, and nutritional balance from the input data, and sets the user's parameters based on this.
[0869] 3. Filter and rate recipes
[0870] The server filters suitable recipes from the database based on the set parameters. For example, if you enter "I want healthy meals," the server will select only healthy recipes. The filtered recipes are then evaluated, and the highest quality recipes are prioritized.
[0871] 4. Visual representation of the recipe
[0872] The selected recipe is sent from the server to the glasses-type device, and the user can visually check the recipe on the device screen. This allows the user to check the recipe details while looking at the device, making cooking smoother.
[0873] Specific examples
[0874] For example, if a user says, "I'd like to invite friends over for a barbecue this weekend. I'd like a healthy menu with meat and vegetables," the server generates the following prompt and performs natural language processing:
[0875] User: I'm planning to invite friends over for a barbecue this weekend. I'd like a healthy menu that includes meat and vegetables.
[0876] system:
[0877] Based on this, recipes such as "Grilled Chicken Salad and Vegetable Speed Kebab" are suggested and displayed on the glasses-like device, allowing users to follow along as they cook.
[0878] Hardware and software used
[0879] Hardware: Smart glasses (e.g., Google Glass, Microsoft HoloLens)
[0880] Software: Python, OpenAI GPT-3 API
[0881] With this configuration and processing, users can receive visually easy-to-understand recipe suggestions based on intuitive input in natural language, enabling them to realize a richer dietary life.
[0882] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0883] Step 1:
[0884] The user wears the glasses-type device and uses the voice input function to make a natural language request, such as "I would like a healthy menu for dinner tonight." This is a step to clearly communicate the user's wishes, and this input data is sent to the next process.
[0885] Input: The user's natural language voice request (e.g., "I'd like something healthy for dinner tonight").
[0886] Output: Audio data.
[0887] Step 2:
[0888] The device converts the user's voice data into text data, uses voice recognition software to generate text data from the voice data, and sends it to the server.
[0889] Input: User's voice data.
[0890] Output: Text data.
[0891] Step 3:
[0892] The server performs natural language processing based on the received text data. Specifically, it sends this text data to the OpenAI GPT-3 API and generates a prompt. At this stage, it analyzes the user's request (date and time, event, ingredient preferences, cooking method, nutritional balance, etc.) and extracts each parameter.
[0893] Input: Text data (user's natural language request).
[0894] Output: Analysis results (extracted parameters).
[0895] Step 4:
[0896] The server filters the database for relevant recipes based on the extracted parameters, applying criteria based on the user's preferences (healthy menus, specific ingredients, etc.) to select the appropriate recipes.
[0897] Input: Analysis results (extracted parameters).
[0898] Output: A filtered list of recipes.
[0899] Step 5:
[0900] The server evaluates the filtered recipes. As evaluation criteria, recipes created from an expert's perspective and recipes that best meet specific conditions are prioritized. The optimal recipe is selected based on the evaluation results.
[0901] Input: A filtered list of recipes.
[0902] Output: Optimal recipe.
[0903] Step 6:
[0904] The server then sends the selected optimal recipe to the glasses-type device, which then visually displays the received recipe to the user, allowing the user to visually check the recipe while cooking.
[0905] Enter: your optimal recipe.
[0906] Output: The recipe displayed on the glasses.
[0907] This allows users to visually check recipes through the smart glasses while cooking, and aims to seamlessly connect the entire process flow to improve the user experience.
[0908] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0909] This invention combines a system that suggests optimal recipes based on a user's preferences and needs with an emotion engine that recognizes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes this information to suggest appropriate recipes. It also includes a procedure that takes the user's emotional state into consideration using the emotion engine. This system consists of four main elements: a terminal, a server, an emotion engine, and a user.
[0910] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0911] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as the date, type of event, type of ingredient, cooking method, and nutritional balance are set.
[0912] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[0913] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[0914] Furthermore, the emotion engine analyzes the user's emotions and provides the analysis results to the server, which selects recipes according to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients with a relaxing effect will be suggested.
[0915] The server sends the best evaluated recipe to the device and displays it to the user. The device then displays the selected recipe, allowing the user to check it and use it for actual cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[0916] In this way, the system of the present invention can quickly suggest recipes that are best suited to the user's needs and emotional state, enabling them to realize a rich dietary lifestyle.
[0917] The processing flow will be explained below.
[0918] Step 1:
[0919] The user uses a terminal to input information such as the date and time, event, food preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[0920] Step 2:
[0921] The terminal captures the user's input and sends the natural language data to the server.
[0922] Step 3:
[0923] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[0924] Step 4:
[0925] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[0926] Step 5:
[0927] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[0928] Step 6:
[0929] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[0930] Step 7:
[0931] The emotion engine analyzes user input to recognize the user's emotions, for example, analyzing phrases and words that indicate an emotional state while the user is typing and after they finish typing.
[0932] Step 8:
[0933] The emotion engine provides the user's emotional state to the server, for example, recognizing emotional states such as "stressed" or "happy."
[0934] Step 9:
[0935] The server selects the optimal recipe based on the user's ratings and emotional state. It adjusts the recipe selection process according to the user's emotional state, prioritizing recipes that use ingredients with relaxing or mood-boosting effects as needed.
[0936] Step 10:
[0937] The server sends the selected recipe to the terminal.
[0938] Step 11:
[0939] The device displays the received recipe to the user. The user can then check the displayed recipe and use it for cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[0940] Through the above process, users can quickly find the recipe that best suits their needs and emotional state, and create a rich diet.
[0941] Example 2
[0942] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0943] Conventional recipe recommendation systems often only offer general recipe suggestions, unable to fully consider the user's emotional state or detailed needs. This makes it difficult for users to find the optimal recipe that matches their specific desires and emotional state. Furthermore, they lack personalization, as they are unable to suggest recipes that take into account the user's stress level or emotional changes.
[0944] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing input data using a natural language processing model and extracting the user's intentions and requests, means for setting user parameters based on the extracted information, and means for recognizing the user's emotional state using an emotion analysis engine and adjusting the dish description based on the results. This makes it possible to propose optimal dish descriptions that take into account the user's specific needs and emotional state.
[0945] A "user" is someone who uses this system to input information and receive recipe suggestions.
[0946] A "terminal" is an electronic device used by a user to input information, and includes smartphones and personal computers.
[0947] "Servers" are computing devices and systems that receive and analyze information sent by users.
[0948] "Natural language" generally refers to language that humans use on a daily basis, and includes spoken language and written language.
[0949] A "natural language processing model" is an artificial intelligence technology that analyzes natural language data entered by a user and extracts meaning and intent.
[0950] A "parameter" is a specific condition or element extracted from information entered by a user.
[0951] A "database" is a system for storing and managing information about food descriptions and recipes.
[0952] "Dish Description" is detailed information about a particular dish, including ingredients, steps, and nutritional balance.
[0953] An "emotion analysis engine" is a technology that analyzes a user's emotional state from their input and behavior and detects their emotional state.
[0954] "Quality rating" is an evaluation criterion for comparing filtered food descriptions and selecting the best one.
[0955] MODE FOR CARRYING OUT THE INVENTION
[0956] This invention is a system that proposes optimal dish descriptions based on a user's preferences and needs, and is combined with a sentiment analysis engine that analyzes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server performs analysis based on that information. This analysis results in the proposal of appropriate dish descriptions, and the sentiment analysis engine also takes the user's emotional state into consideration.
[0957] The system consists of four main elements: the terminal, the server, the emotion analysis engine, and the user.
[0958] Hardware and software configuration:
[0959] 1. Terminal
[0960] Interface devices such as smartphones and computers
[0961] Software: web browser, mobile application
[0962] 2. Server
[0963] High-performance computers or cloud servers
[0964] Software: Natural language processing models (e.g., GPT-4, BERT), database management systems (e.g., MySQL, PostgreSQL)
[0965] 3. Sentiment Analysis Engine
[0966] Software: Sentiment analysis algorithms (e.g., emotion analysis tools, audio and image analysis tools)
[0967] Program operation description:
[0968] The user uses a terminal to input information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[0969] The device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. Through analysis, information such as date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as "next Friday," "dinner with friends," "chicken," and "healthy" are set.
[0970] The server filters suitable dish descriptions from the database based on the set parameters. The filtering process allows the selection of only those dish descriptions that meet the user's requirements, for example, prioritizing healthy dinner menus that use chicken.
[0971] The filtered food descriptions are then quality-evaluated internally, where expertly crafted recipes and recipes best suited to a specific event are prioritized over other descriptions, such as a grilled chicken salad for a formal dinner with friends.
[0972] The emotion analysis engine analyzes the user's emotions and provides the analysis results to the server, which then selects dish descriptions that correspond to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients that have a relaxing effect will be suggested.
[0973] The server sends the description of the best-rated dish to the device and displays it to the user. The device then displays the selected dish description, allowing the user to check the recipe and use it for actual cooking. For example, if a user enters, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a description of grilled chicken salad based on the results of the sentiment analysis engine and display it on the device.
[0974] Example prompt sentence:
[0975] A user is inviting friends over for dinner and wants a healthy meal with chicken. The sentiment analysis engine detects that the user is stressed. What can you suggest?
[0976] In this way, the system of the present invention can quickly provide advanced cooking instructions that take into account the user's needs and emotional state, thereby improving user satisfaction.
[0977] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0978] Step 1: User enters information into terminal
[0979] A user uses a device such as a smartphone or PC to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, a user might input, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This input data is acquired by the device's input device.
[0980] Step 2: The device sends the information to the server
[0981] The terminal transmits the natural language data entered by the user to a server over the Internet. During this transmission process, the data is properly formatted and securely transferred using the HTTPS protocol. The input is the natural language data entered by the user, and the output is the data transmitted to the server.
[0982] Step 3: The server parses the information and sets the parameters
[0983] The server analyzes the received natural language data using a generative AI model (e.g., GPT-4). This analysis automatically extracts parameters such as date and time, events, ingredient preferences, cooking methods, and nutritional balance. Data processing involves text analysis and information extraction. The input is natural language data, and the output is a set of analyzed parameters.
[0984] Step 4: The server filters suitable dish descriptions from the database
[0985] The server filters suitable dish descriptions from the database based on the configured parameters. This filtering process involves, for example, generating an SQL query to search the database. The input is the parsed parameter set, and the output is the filtered candidate dish descriptions.
[0986] Step 5: The sentiment analysis engine analyzes the user's sentiment
[0987] An emotion analysis engine performs emotion analysis using user input data and, in some cases, audio and image data. For example, it determines whether a user is feeling stressed through text analysis or audio and image analysis. The input is the user's emotional data, and the output is analyzed emotional state information.
[0988] Step 6: The server evaluates and decides on the best dish description
[0989] The server evaluates the filtered dish descriptions using a quality evaluation algorithm. It also takes into account the results of sentiment analysis to determine the optimal dish description. For example, for a stressed user, it selects a menu containing ingredients with a relaxing effect. The input is the filtered dish description and the user's emotional state information, and the output is the evaluated optimal dish description.
[0990] Step 7: The server sends the dish description to the device
[0991] The server sends the finalized dish description to the device. This process is also secured using HTTPS protocol. The input is the optimal dish description and the output is the data sent to the device.
[0992] Step 8: The device displays the recipe description to the user
[0993] The device displays the received recipe description on the user interface. For example, details such as ingredients, cooking steps, and nutritional balance are displayed. The user can check the information on the screen and use it to prepare the dish. The input is the recipe description data sent from the server, and the output is the information displayed to the user.
[0994] This processing step allows the system to quickly provide a description of the dish that best suits the user's needs and emotions.
[0995] (Application example 2)
[0996] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0997] Conventional food delivery services simply provide the user's food preferences and desired menu without considering the user's emotional state, and are unable to provide the essential satisfaction that users desire. Therefore, there is a need for a service that provides an optimal menu based on the user's physical and mental state and achieves a higher level of satisfaction. There is also a need for a system that provides a pleasant dining experience by suggesting ingredients and menus with healing and refreshing effects based on the user's stress and mood.
[0998] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0999] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user; and means for analyzing the user's emotions using an emotion engine that recognizes the user's emotional state and selecting a recipe taking the analysis results into consideration, thereby enabling the provision of optimal food delivery according to the user's emotional state.
[1000] "User" means a person or entity that receives meal suggestions using the system of the invention.
[1001] "Natural language" refers to the words and sentences humans use in their daily lives, and is the input format used by systems to analyze them.
[1002] "Date and time" refers to the specific date and time when the suggested recipe will be used.
[1003] An "event" is an activity or occasion that takes place on a particular day, and is a factor that influences the selection of recipes suggested by the system of the invention.
[1004] "Ingredient preferences" refers to information about ingredients that the user particularly likes and ingredients that the user wants to avoid.
[1005] "Cooking method" refers to the specific method or process used to prepare a dish.
[1006] "Nutritional balance" refers to the distribution of nutrients according to the health condition desired by the user.
[1007] "Server" refers to a computer device or system that analyzes, stores, and transmits data.
[1008] A "natural language processing model" refers to the algorithms and software that allow computers to analyze and understand human natural language.
[1009] "Parameters" refer to criteria and setting values extracted based on the user's intentions and requests.
[1010] A "database" refers to a system that systematically stores huge amounts of data and enables quick retrieval of necessary information.
[1011] A "recipe" refers to a list of instructions and ingredients needed to prepare a particular dish.
[1012] "Filtering" refers to the process of sorting data based on specific criteria.
[1013] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes.
[1014] "Emotion engine" refers to software or algorithms for analyzing a user's emotional state.
[1015] "Analysis results" refers to the information or conclusions obtained after analyzing data.
[1016] "Food delivery" refers to a service that delivers food ordered by a user to a specified location.
[1017] This invention relates to a system that suggests optimal food delivery based on a user's preferences and emotional state. The system of the present invention includes a means for the user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language, and the input data is sent to a server. The server analyzes the input data using a natural language processing model and extracts the user's intentions and requests. The server sets user parameters based on the extracted information and filters recipes from a database based on the set parameters. The filtered recipes are evaluated by the server, and the optimal recipe is selected from the perspective of quality. In addition, an emotion engine analyzes the user's emotional state, and a recipe is selected taking the analysis results into consideration. The selected recipe is sent from the server to a terminal and displayed to the user.
[1018] System program processing description
[1019] Hardware and software used:
[1020] Hardware: Smartphone (e.g. iPhone, Android device)
[1021] Software: Natural language processing engine (e.g., GPT-3), emotion recognition engine (e.g., Affectiva SDK), database (e.g., MySQL), cloud server (e.g., AWS EC2)
[1022] Specific processing:
[1023] 1. User Input: The user inputs information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language through a smartphone interface. For example, the user may input a specific request such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[1024] 2. Data transmission and analysis: The input information is sent from the device to the server. The server uses a natural language processing engine to analyze the input data and extract the user's intentions and requests. In this analysis step, parameters such as date and time, event, ingredient preferences, cooking method, and nutritional balance are set.
[1025] 3. Emotion analysis: The associated emotion recognition engine analyzes the user's emotional state. For example, if the user is feeling stressed, the analysis result is provided to the server. Based on this result, a recipe that suits the user's needs can be selected.
[1026] 4. Recipe Selection and Evaluation: The server filters recipes from the database based on the set parameters and the results of sentiment analysis to select the best recipes. At this stage, high-quality recipes and recipes that are best suited to a specific event are prioritized.
[1027] 5. Displaying the results: The final recipe is sent from the server to the device and displayed on the user's smartphone, allowing the user to see the best food delivery options that fit their emotional state and individual needs.
[1028] Examples:
[1029] When a user types into the app, "I'm tired and would like a relaxing meal," the emotion recognition engine determines the "stress" state, and based on this, the server suggests dishes containing "ingredients that have a relaxing effect" (for example, chamomile tea and salmon salad).
[1030] Example prompt sentence:
[1031] "I like pizza while watching a movie, but I'd like something healthy. I'm tired, so I'd like a relaxing meal."
[1032] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1033] Step 1:
[1034] User Input
[1035] Using a smartphone interface, users can input information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language, including specific requests such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[1036] Input: User's natural language input information
[1037] Output: Input natural language data
[1038] Step 2:
[1039] Data transmission
[1040] The device sends the input natural language data to the server, and the data entered by the user is sent to a cloud server via the Internet.
[1041] Input: Natural language data
[1042] Output: Data transfer to the server
[1043] Step 3:
[1044] natural language analysis
[1045] The server analyzes the received natural language data using a natural language processing engine (e.g., GPT-3). Specifically, it extracts keywords such as date and time, event, ingredient preferences, cooking method, and nutritional balance, and based on this, it clarifies the user's intentions and requests.
[1046] Input: Natural language data
[1047] Output: Extracted parameters (date, time, event, food preferences, etc.)
[1048] Step 4:
[1049] Emotion analysis
[1050] The server uses an emotion recognition engine (e.g., Affectiva SDK) to analyze the user's emotional state, including analyzing photos and videos sent by the user. The analysis results indicate the user's emotional state (e.g., stressed, relaxed, etc.).
[1051] Input: User photos, videos, and natural language input
[1052] Output: Analysis of the user's emotional state
[1053] Step 5:
[1054] Recipe Filtering
[1055] The server then filters suitable recipes from the database based on the extracted parameters and the results of sentiment analysis. The filtering process selects recipes that match the date and time, event, ingredient preferences, cooking method, nutritional balance, and emotional state.
[1056] Input: Extracted parameters, sentiment analysis results
[1057] Output: A filtered list of recipes
[1058] Step 6:
[1059] Recipe evaluation and selection
[1060] The server then evaluates the filtered recipes from a quality perspective, prioritizing recipes that are professionally relevant or best suited to a specific event. The server also takes into account the user's emotional state, so if the user is feeling stressed, recipes with a relaxing effect will be prioritized.
[1061] Input: A filtered list of recipes
[1062] Output: Selected optimal recipe
[1063] Step 7:
[1064] Sending and Viewing Recipes
[1065] The server then sends the selected optimal recipe to the device, which then displays it to the user. For example, the device might display a recipe for "Relaxing Grilled Chicken Salad."
[1066] Input: Selected optimal recipe
[1067] Output: The recipe displayed on the user's terminal
[1068] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1069] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1070] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1071] [Fourth embodiment]
[1072] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1073] 7, a 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.
[1074] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1075] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1076] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1077] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1078] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1079] The control object 443 includes a display device, LEDs in the eyes, and motors for driving 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 emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1080] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1081] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[1082] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1083] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1084] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1085] This invention is a system for suggesting optimal recipes based on a user's preferences and needs. Specifically, it involves a procedure in which the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes that information and suggests appropriate recipes. This system consists of three main elements: a terminal, a server, and the user.
[1086] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[1087] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, the user's intentions and requests are extracted from the entered text and parameters are set based on this. For example, parameters such as the date, type of event, type of ingredients, cooking method, and nutritional balance are set.
[1088] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[1089] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[1090] Finally, the server sends the evaluated optimal recipe to the terminal and displays it to the user. The terminal displays the selected recipe, allowing the user to check the recipe and use it for actual cooking.
[1091] For example, if a user goes through the steps above and inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad and display it on the device.
[1092] In this way, the system of the present invention can quickly suggest recipes that best suit the user's needs, enabling them to realize a rich dietary lifestyle.
[1093] The processing flow will be explained below.
[1094] Step 1:
[1095] The user uses natural language to input information such as the date and time, event, food preferences, cooking method, and nutritional balance. Example: "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[1096] Step 2:
[1097] The terminal captures the user's input and sends the natural language data to the server.
[1098] Step 3:
[1099] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[1100] Step 4:
[1101] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[1102] Step 5:
[1103] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[1104] Step 6:
[1105] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[1106] Step 7:
[1107] The server selects the best recipe. Based on the ratings, it chooses the recipe that best suits the user's needs.
[1108] Step 8:
[1109] The server sends the selected recipe to the terminal.
[1110] Step 9:
[1111] The device displays the received recipe to the user, who then checks the displayed recipe and uses it for actual cooking.
[1112] Example 1
[1113] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1114] Today, consumers desire to select dishes based on their diverse ingredient preferences and nutritional balance. However, conventional recipe search systems have difficulty quickly suggesting optimal recipes based on a user's specific needs and preferences. In particular, there is a need for accurate analysis of requests entered in natural language and the ability to identify appropriate recipes that meet individual needs. The present invention solves this problem by proposing a system that provides optimal recipes based on a user's individual preferences and circumstances.
[1115] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1116] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a generative AI model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes based on prompt statements and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user. This makes it possible to suggest optimal recipes according to the user's specific needs.
[1117] "User" refers to an individual or organization that uses the System to search for and select cooking recipes.
[1118] "Terminal" refers to a hardware device or software application that allows a user to perform input operations, including, for example, a smartphone, tablet, or PC.
[1119] "Server" refers to a computer system for receiving, processing, and analyzing input data from a user.
[1120] "Natural language" refers to a language form that humans use on a daily basis, and means a language form that users can input intuitively.
[1121] A "generative AI model" refers to an algorithm or system that uses machine learning and artificial intelligence to analyze user input.
[1122] A "prompt sentence" refers to a sentence or keyword that serves as input data for the generative AI model to analyze.
[1123] "Parameters" refer to the user's intentions and requests expressed as numbers or categories, and are elements that serve as the basis for recipe searches.
[1124] "Filtering" refers to the process of extracting recipes that meet the conditions from the database based on set parameters.
[1125] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes and selecting the most suitable recipe.
[1126] A "recipe" refers to a method for preparing a dish that includes cooking steps, necessary ingredients, nutritional information, etc.
[1127] "Database" refers to an information system for storing and managing recipe information and related data.
[1128] This invention is a system that suggests optimal cooking recipes based on information entered by the user in natural language. This system is mainly composed of three elements: a terminal, a server, and a user. The following provides a detailed explanation of the system's procedures and the hardware and software used.
[1129] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information specifically expresses the user's desires, and the system performs analysis based on this information.
[1130] The terminal sends the natural language data entered by the user to the server using a network protocol such as HTTP POST.
[1131] The server uses a generative AI model to analyze the received data, specifically using natural language processing tools such as Google Cloud Natural Language API to extract the user's intent and desires from the input text and set parameters such as:
[1132] Date and time: "Next Friday"
[1133] Event: "Dinner with friends"
[1134] Food Favorites: "Chicken"
[1135] Cooking method: "Healthy"
[1136] Nutritional balance: "High"
[1137] Based on the set parameters, the server filters relevant recipes from a database, often using SQL for database queries, for example, a query to search for "healthy chicken recipes" is performed.
[1138] The filtered recipes are then rated internally using prompts to prioritize recipes that are professionally created or suitable for specific conditions. Evaluation criteria include user reviews, nutritional value, and event suitability. For example, a "healthy chicken dish suitable for a dinner party with friends" would be highly rated.
[1139] The selected recipe is sent to the device as JSON-formatted data. Specifically, a response is returned using HTTP communication. The device analyzes this data and displays the recipe on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc.
[1140] Specific examples
[1141] If the user types "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will begin parsing using the following prompt statement:
[1142] A user wants to invite friends over for dinner next Friday, loves chicken, and wants a healthy meal. Suggest a recipe that fits this criteria.
[1143] Based on this prompt, the server analyzes it and selects the most suitable recipe, for example, "grilled chicken salad," and displays it on the terminal.
[1144] In this way, the system of the present invention can quickly and accurately suggest appropriate recipes based on the user's specific needs.
[1145] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1146] Step 1:
[1147] The user enters information in natural language.
[1148] Input: The user types into the terminal in natural language, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[1149] Output: Natural language text recorded as input data on the terminal.
[1150] Specific operation: The user inputs information in text format using the device's keyboard or voice input function, and the device temporarily stores the input data.
[1151] Step 2:
[1152] The terminal sends the user's input to the server.
[1153] Input: The natural language text entered in step 1.
[1154] Output: Natural language text data sent to the server.
[1155] What it does: The device generates an HTTP POST request and sends the user's input text as a payload to the server. This communication requires an internet connection.
[1156] Step 3:
[1157] The server uses a generative AI model to analyze the input data and extract the user's intent.
[1158] Input: Natural language text data sent to the server.
[1159] Output: Analysis results (parameter set) based on the user's intentions and requests.
[1160] How it works: The server inputs the received data into a generative AI model (e.g., a natural language processing API) for analysis. The analysis extracts the following parameters:
[1161] Date and time: "Next Friday"
[1162] Event: "Dinner with friends"
[1163] Food Favorites: "Chicken"
[1164] Cooking method: "Healthy"
[1165] Step 4:
[1166] The server sets the user's parameters based on the extracted information and filters recipes from the database.
[1167] Input: Analysis results (parameter set).
[1168] Output: A filtered list of recipe suggestions.
[1169] Specific operation: The server generates an SQL query based on the extracted parameters and searches the database. For example, it executes a query to search for "chicken" and "healthy" recipes.
[1170] Step 5:
[1171] The server evaluates the filtered recipes and selects the best recipe.
[1172] Input: A filtered list of recipe suggestions.
[1173] Output: Information on the best recipe.
[1174] Specific operation: The server applies a rating algorithm to the filtered recipes. The rating criteria include user reviews, nutritional value, and event suitability. For example, it might select "the best recipe for a dinner party with friends" based on a prompt.
[1175] Step 6:
[1176] The server sends the selected recipe to the terminal.
[1177] Input: Information about your best recipe.
[1178] Output: Recipe data sent to the terminal.
[1179] Specific operation: The server generates the selected recipe information in JSON format and sends it to the terminal as an HTTP response.
[1180] Step 7:
[1181] The device displays the best recipes to the user.
[1182] Input: Recipe data sent from the server.
[1183] Output: Recipe information displayed to the user.
[1184] Specific operation: The device parses the received JSON data and displays it on the user interface. The displayed information includes the recipe name, ingredients, steps, nutritional information, etc. The user can then view the information and perform the actual cooking.
[1185] (Application example 1)
[1186] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1187] In recent years, with the diversification of dietary habits and growing health consciousness, there is a demand for instantaneous suggestions of optimal recipes tailored to users' preferences and needs. However, previous systems were limited in the information that users could input, making it difficult to suggest recipes tailored to specific events or ingredient preferences. Furthermore, there was a lack of a way for users to visually check the suggested recipes while cooking. In particular, the lack of an intuitive interface using smart glasses or other devices hindered the improvement of the user experience. To solve these issues, more accurate natural language analysis and a system that visually suggests recipes are needed.
[1188] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1189] In this invention, the server includes: means for a user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; and means for the server to transmit the selected recipe to an eyeglass-type device, which visually displays it to the user. This allows the user to cook while visually checking the recipe through the smart glasses, thereby providing intuitive and efficient support for dietary habits.
[1190] A "user" is an individual or entity that provides information and receives recipe suggestions from the system.
[1191] "Natural language" means a language used by humans in everyday life, in any form including speech and text.
[1192] "Date and time" refers to a specific date and time when cooking and eating are planned.
[1193] "Event" means a gathering or activity for a particular purpose or occasion, such as a dinner or party.
[1194] "Ingredient preferences" is information about specific ingredients and their types that the user likes.
[1195] "Cooking method" refers to the specific method or procedure for cooking ingredients, including, for example, baking, simmering, boiling, etc.
[1196] "Nutritional balance" is a standard for evaluating whether a meal is nutritionally balanced.
[1197] An "eyeglasses-type device" is a device that provides visual information when worn by a user, and includes, for example, smart glasses.
[1198] A "natural language processing model" is a general term for algorithms and technologies used to analyze natural language and understand its meaning and intent.
[1199] A "database" is a structured collection of information for storing and managing recipes and related information.
[1200] A "server" is a computer system that receives requests from users and performs analysis and data processing.
[1201] "Filtering" is the process of sorting data based on specific criteria.
[1202] "Evaluation" is the process of determining the quality and suitability of a recipe and making the optimal selection.
[1203] A "suggestion" is an act of recommending or guiding a user based on specific conditions.
[1204] "Visually displaying" refers to a state in which visual information is provided to the user through the device, enabling confirmation and operation.
[1205] This invention is a system for suggesting recipes that are best suited to a user's needs.The server analyzes information entered by the user in natural language using an eyeglass-type device and visually provides appropriate recipes.
[1206] System Configuration
[1207] The system consists of the following components:
[1208] User: An individual who provides information and reviews suggested recipes.
[1209] Terminal (eyeglasses-type device): A device worn by the user that inputs natural language and displays visual information. For example, smart glasses are examples of such devices.
[1210] Server: A computer system that receives user input, performs natural language processing, database search, and evaluation.
[1211] Program processing
[1212] 1. User Input
[1213] The user wears the glasses-type device and uses voice input to make a request in natural language, such as "I would like a healthy menu for dinner tonight." The device converts this request into text data and sends it to the server.
[1214] 2. Natural Language Processing
[1215] The server analyzes the received text data using a natural language processing model (e.g., OpenAI GPT-3), extracting date and time, events, ingredient preferences, cooking methods, and nutritional balance from the input data, and sets the user's parameters based on this.
[1216] 3. Filter and rate recipes
[1217] The server filters suitable recipes from the database based on the set parameters. For example, if you enter "I want healthy meals," the server will select only healthy recipes. The filtered recipes are then evaluated, and the highest quality recipes are prioritized.
[1218] 4. Visual representation of the recipe
[1219] The selected recipe is sent from the server to the glasses-type device, and the user can visually check the recipe on the device screen. This allows the user to check the recipe details while looking at the device, making cooking smoother.
[1220] Specific examples
[1221] For example, if a user says, "I'd like to invite friends over for a barbecue this weekend. I'd like a healthy menu with meat and vegetables," the server generates the following prompt and performs natural language processing:
[1222] User: I'm planning to invite friends over for a barbecue this weekend. I'd like a healthy menu that includes meat and vegetables.
[1223] system:
[1224] Based on this, recipes such as "Grilled Chicken Salad and Vegetable Speed Kebab" are suggested and displayed on the glasses-like device, allowing users to follow along as they cook.
[1225] Hardware and software used
[1226] Hardware: Smart glasses (e.g., Google Glass, Microsoft HoloLens)
[1227] Software: Python, OpenAI GPT-3 API
[1228] With this configuration and processing, users can receive visually easy-to-understand recipe suggestions based on intuitive input in natural language, enabling them to realize a richer dietary life.
[1229] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1230] Step 1:
[1231] The user wears the glasses-type device and uses the voice input function to make a natural language request, such as "I would like a healthy menu for dinner tonight." This is a step to clearly communicate the user's wishes, and this input data is sent to the next process.
[1232] Input: The user's natural language voice request (e.g., "I'd like something healthy for dinner tonight").
[1233] Output: Audio data.
[1234] Step 2:
[1235] The device converts the user's voice data into text data, uses voice recognition software to generate text data from the voice data, and sends it to the server.
[1236] Input: User's voice data.
[1237] Output: Text data.
[1238] Step 3:
[1239] The server performs natural language processing based on the received text data. Specifically, it sends this text data to the OpenAI GPT-3 API and generates a prompt. At this stage, it analyzes the user's request (date and time, event, ingredient preferences, cooking method, nutritional balance, etc.) and extracts each parameter.
[1240] Input: Text data (user's natural language request).
[1241] Output: Analysis results (extracted parameters).
[1242] Step 4:
[1243] The server filters the database for relevant recipes based on the extracted parameters, applying criteria based on the user's preferences (healthy menus, specific ingredients, etc.) to select the appropriate recipes.
[1244] Input: Analysis results (extracted parameters).
[1245] Output: A filtered list of recipes.
[1246] Step 5:
[1247] The server evaluates the filtered recipes. As evaluation criteria, recipes created from an expert's perspective and recipes that best meet specific conditions are prioritized. The optimal recipe is selected based on the evaluation results.
[1248] Input: A filtered list of recipes.
[1249] Output: Optimal recipe.
[1250] Step 6:
[1251] The server then sends the selected optimal recipe to the glasses-type device, which then visually displays the received recipe to the user, allowing the user to visually check the recipe while cooking.
[1252] Enter: your optimal recipe.
[1253] Output: The recipe displayed on the glasses.
[1254] This allows users to visually check recipes through the smart glasses while cooking, and aims to seamlessly connect the entire process flow to improve the user experience.
[1255] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1256] This invention combines a system that suggests optimal recipes based on a user's preferences and needs with an emotion engine that recognizes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server analyzes this information to suggest appropriate recipes. It also includes a procedure that takes the user's emotional state into consideration using the emotion engine. This system consists of four main elements: a terminal, a server, an emotion engine, and a user.
[1257] First, the user uses a terminal to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[1258] Next, the device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. In this analysis step, information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as the date, type of event, type of ingredient, cooking method, and nutritional balance are set.
[1259] The server filters suitable recipes from the database based on the parameters you set. This filtering process allows you to select only recipes that meet your needs, for example, prioritizing healthy dinner menus that use chicken.
[1260] The filtered recipes are then quality-evaluated on the server, where professionally crafted recipes or recipes best suited to a specific event are prioritized over other recipes, such as a grilled chicken salad for a formal dinner with friends.
[1261] Furthermore, the emotion engine analyzes the user's emotions and provides the analysis results to the server, which selects recipes according to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients with a relaxing effect will be suggested.
[1262] The server sends the best evaluated recipe to the device and displays it to the user. The device then displays the selected recipe, allowing the user to check it and use it for actual cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[1263] In this way, the system of the present invention can quickly suggest recipes that are best suited to the user's needs and emotional state, enabling them to realize a rich dietary lifestyle.
[1264] The processing flow will be explained below.
[1265] Step 1:
[1266] The user uses a terminal to input information such as the date and time, event, food preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu."
[1267] Step 2:
[1268] The terminal captures the user's input and sends the natural language data to the server.
[1269] Step 3:
[1270] The server passes the received natural language data to a natural language processing model for analysis. Specifically, information such as date and time, events, ingredient preferences, cooking methods, and nutritional balance is extracted from the input sentence.
[1271] Step 4:
[1272] The server sets parameters based on the analysis results, such as the date and time, type of event, ingredients, cooking method, and nutritional balance, based on the extracted information.
[1273] Step 5:
[1274] The server filters the recipes in the database based on the parameters you set, selecting recipes that match your needs.
[1275] Step 6:
[1276] The server evaluates the quality of the filtered recipes, prioritizing, for example, professionally crafted menus or recipes best suited to a particular event.
[1277] Step 7:
[1278] The emotion engine analyzes user input to recognize the user's emotions, for example, analyzing phrases and words that indicate an emotional state while the user is typing and after they finish typing.
[1279] Step 8:
[1280] The emotion engine provides the user's emotional state to the server, for example, recognizing emotional states such as "stressed" or "happy."
[1281] Step 9:
[1282] The server selects the optimal recipe based on the user's ratings and emotional state. It adjusts the recipe selection process according to the user's emotional state, prioritizing recipes that use ingredients with relaxing or mood-boosting effects as needed.
[1283] Step 10:
[1284] The server sends the selected recipe to the terminal.
[1285] Step 11:
[1286] The device displays the received recipe to the user. The user can then check the displayed recipe and use it for cooking. For example, if a user inputs, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a recipe for grilled chicken salad based on the analysis results of the emotion engine and display it on the device.
[1287] Through the above process, users can quickly find the recipe that best suits their needs and emotional state, and create a rich diet.
[1288] Example 2
[1289] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1290] Conventional recipe recommendation systems often only offer general recipe suggestions, unable to fully consider the user's emotional state or detailed needs. This makes it difficult for users to find the optimal recipe that matches their specific desires and emotional state. Furthermore, they lack personalization, as they are unable to suggest recipes that take into account the user's stress level or emotional changes.
[1291] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for analyzing input data using a natural language processing model and extracting the user's intentions and requests, means for setting user parameters based on the extracted information, and means for recognizing the user's emotional state using an emotion analysis engine and adjusting the dish description based on the results. This makes it possible to propose optimal dish descriptions that take into account the user's specific needs and emotional state.
[1292] A "user" is someone who uses this system to input information and receive recipe suggestions.
[1293] A "terminal" is an electronic device used by a user to input information, and includes smartphones and personal computers.
[1294] "Servers" are computing devices and systems that receive and analyze information sent by users.
[1295] "Natural language" generally refers to language that humans use on a daily basis, and includes spoken language and written language.
[1296] A "natural language processing model" is an artificial intelligence technology that analyzes natural language data entered by a user and extracts meaning and intent.
[1297] A "parameter" is a specific condition or element extracted from information entered by a user.
[1298] A "database" is a system for storing and managing information about food descriptions and recipes.
[1299] "Dish Description" is detailed information about a particular dish, including ingredients, steps, and nutritional balance.
[1300] An "emotion analysis engine" is a technology that analyzes a user's emotional state from their input and behavior and detects their emotional state.
[1301] "Quality rating" is an evaluation criterion for comparing filtered food descriptions and selecting the best one.
[1302] MODE FOR CARRYING OUT THE INVENTION
[1303] This invention is a system that proposes optimal dish descriptions based on a user's preferences and needs, and is combined with a sentiment analysis engine that analyzes the user's emotions. Specifically, the user inputs information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language, and the server performs analysis based on that information. This analysis results in the proposal of appropriate dish descriptions, and the sentiment analysis engine also takes the user's emotional state into consideration.
[1304] The system consists of four main elements: the terminal, the server, the emotion analysis engine, and the user.
[1305] Hardware and software configuration:
[1306] 1. Terminal
[1307] Interface devices such as smartphones and computers
[1308] Software: web browser, mobile application
[1309] 2. Server
[1310] High-performance computers or cloud servers
[1311] Software: Natural language processing models (e.g., GPT-4, BERT), database management systems (e.g., MySQL, PostgreSQL)
[1312] 3. Sentiment Analysis Engine
[1313] Software: Sentiment analysis algorithms (e.g., emotion analysis tools, audio and image analysis tools)
[1314] Program operation description:
[1315] The user uses a terminal to input information such as date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, the user might input information such as, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This information expresses the user's specific needs in natural language.
[1316] The device sends the natural language data entered by the user to the server. The server receives this data and analyzes it using a natural language processing model. Through analysis, information such as date and time, event, ingredient preferences, cooking method, and nutritional balance is extracted from the entered text, and parameters are set based on this information. For example, parameters such as "next Friday," "dinner with friends," "chicken," and "healthy" are set.
[1317] The server filters suitable dish descriptions from the database based on the set parameters. The filtering process allows the selection of only those dish descriptions that meet the user's requirements, for example, prioritizing healthy dinner menus that use chicken.
[1318] The filtered food descriptions are then quality-evaluated internally, where expertly crafted recipes and recipes best suited to a specific event are prioritized over other descriptions, such as a grilled chicken salad for a formal dinner with friends.
[1319] The emotion analysis engine analyzes the user's emotions and provides the analysis results to the server, which then selects dish descriptions that correspond to the user's emotional state. For example, if the user is feeling stressed, a menu using ingredients that have a relaxing effect will be suggested.
[1320] The server sends the description of the best-rated dish to the device and displays it to the user. The device then displays the selected dish description, allowing the user to check the recipe and use it for actual cooking. For example, if a user enters, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu," the server will select a description of grilled chicken salad based on the results of the sentiment analysis engine and display it on the device.
[1321] Example prompt sentence:
[1322] A user is inviting friends over for dinner and wants a healthy meal with chicken. The sentiment analysis engine detects that the user is stressed. What can you suggest?
[1323] In this way, the system of the present invention can quickly provide advanced cooking instructions that take into account the user's needs and emotional state, thereby improving user satisfaction.
[1324] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1325] Step 1: User enters information into terminal
[1326] A user uses a device such as a smartphone or PC to input information such as the date and time, event, ingredient preferences, cooking method, and nutritional balance in natural language. For example, a user might input, "I'd like to invite friends over for dinner next Friday. I like chicken and would like a healthy menu." This input data is acquired by the device's input device.
[1327] Step 2: The device sends the information to the server
[1328] The terminal transmits the natural language data entered by the user to a server over the Internet. During this transmission process, the data is properly formatted and securely transferred using the HTTPS protocol. The input is the natural language data entered by the user, and the output is the data transmitted to the server.
[1329] Step 3: The server parses the information and sets the parameters
[1330] The server analyzes the received natural language data using a generative AI model (e.g., GPT-4). This analysis automatically extracts parameters such as date and time, events, ingredient preferences, cooking methods, and nutritional balance. Data processing involves text analysis and information extraction. The input is natural language data, and the output is a set of analyzed parameters.
[1331] Step 4: The server filters suitable dish descriptions from the database
[1332] The server filters suitable dish descriptions from the database based on the configured parameters. This filtering process involves, for example, generating an SQL query to search the database. The input is the parsed parameter set, and the output is the filtered candidate dish descriptions.
[1333] Step 5: The sentiment analysis engine analyzes the user's sentiment
[1334] An emotion analysis engine performs emotion analysis using user input data and, in some cases, audio and image data. For example, it determines whether a user is feeling stressed through text analysis or audio and image analysis. The input is the user's emotional data, and the output is analyzed emotional state information.
[1335] Step 6: The server evaluates and decides on the best dish description
[1336] The server evaluates the filtered dish descriptions using a quality evaluation algorithm. It also takes into account the results of sentiment analysis to determine the optimal dish description. For example, for a stressed user, it selects a menu containing ingredients with a relaxing effect. The input is the filtered dish description and the user's emotional state information, and the output is the evaluated optimal dish description.
[1337] Step 7: The server sends the dish description to the device
[1338] The server sends the finalized dish description to the device. This process is also secured using HTTPS protocol. The input is the optimal dish description and the output is the data sent to the device.
[1339] Step 8: The device displays the recipe description to the user
[1340] The device displays the received recipe description on the user interface. For example, details such as ingredients, cooking steps, and nutritional balance are displayed. The user can check the information on the screen and use it to prepare the dish. The input is the recipe description data sent from the server, and the output is the information displayed to the user.
[1341] This processing step allows the system to quickly provide a description of the dish that best suits the user's needs and emotions.
[1342] (Application example 2)
[1343] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1344] Conventional food delivery services simply provide the user's food preferences and desired menu without considering the user's emotional state, and are unable to provide the essential satisfaction that users desire. Therefore, there is a need for a service that provides an optimal menu based on the user's physical and mental state and achieves a higher level of satisfaction. There is also a need for a system that provides a pleasant dining experience by suggesting ingredients and menus with healing and refreshing effects based on the user's stress and mood.
[1345] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1346] In this invention, the server includes: means for a user to input date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language; means for transmitting the data input in natural language to the server; means for the server to analyze the input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; means for the server to filter recipes from a database based on the set parameters; means for the server to evaluate the filtered recipes and select the optimal recipe from the perspective of quality; means for the server to transmit the selected recipe to a terminal and for the terminal to display it to the user; and means for analyzing the user's emotions using an emotion engine that recognizes the user's emotional state and selecting a recipe taking the analysis results into consideration, thereby enabling the provision of optimal food delivery according to the user's emotional state.
[1347] "User" means a person or entity that receives meal suggestions using the system of the invention.
[1348] "Natural language" refers to the words and sentences humans use in their daily lives, and is the input format used by systems to analyze them.
[1349] "Date and time" refers to the specific date and time when the suggested recipe will be used.
[1350] An "event" is an activity or occasion that takes place on a particular day, and is a factor that influences the selection of recipes suggested by the system of the invention.
[1351] "Ingredient preferences" refers to information about ingredients that the user particularly likes and ingredients that the user wants to avoid.
[1352] "Cooking method" refers to the specific method or process used to prepare a dish.
[1353] "Nutritional balance" refers to the distribution of nutrients according to the health condition desired by the user.
[1354] "Server" refers to a computer device or system that analyzes, stores, and transmits data.
[1355] A "natural language processing model" refers to the algorithms and software that allow computers to analyze and understand human natural language.
[1356] "Parameters" refer to criteria and setting values extracted based on the user's intentions and requests.
[1357] A "database" refers to a system that systematically stores huge amounts of data and enables quick retrieval of necessary information.
[1358] A "recipe" refers to a list of instructions and ingredients needed to prepare a particular dish.
[1359] "Filtering" refers to the process of sorting data based on specific criteria.
[1360] "Evaluation" refers to the process of judging the quality and suitability of the filtered recipes.
[1361] "Emotion engine" refers to software or algorithms for analyzing a user's emotional state.
[1362] "Analysis results" refers to the information or conclusions obtained after analyzing data.
[1363] "Food delivery" refers to a service that delivers food ordered by a user to a specified location.
[1364] This invention relates to a system that suggests optimal food delivery based on a user's preferences and emotional state. The system of the present invention includes a means for the user to input date and time, events, ingredient preferences, cooking methods, nutritional balance, etc. in natural language, and the input data is sent to a server. The server analyzes the input data using a natural language processing model and extracts the user's intentions and requests. The server sets user parameters based on the extracted information and filters recipes from a database based on the set parameters. The filtered recipes are evaluated by the server, and the optimal recipe is selected from the perspective of quality. In addition, an emotion engine analyzes the user's emotional state, and a recipe is selected taking the analysis results into consideration. The selected recipe is sent from the server to a terminal and displayed to the user.
[1365] System program processing description
[1366] Hardware and software used:
[1367] Hardware: Smartphone (e.g. iPhone, Android device)
[1368] Software: Natural language processing engine (e.g., GPT-3), emotion recognition engine (e.g., Affectiva SDK), database (e.g., MySQL), cloud server (e.g., AWS EC2)
[1369] Specific processing:
[1370] 1. User Input: The user inputs information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language through a smartphone interface. For example, the user may input a specific request such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[1371] 2. Data transmission and analysis: The input information is sent from the device to the server. The server uses a natural language processing engine to analyze the input data and extract the user's intentions and requests. In this analysis step, parameters such as date and time, event, ingredient preferences, cooking method, and nutritional balance are set.
[1372] 3. Emotion analysis: The associated emotion recognition engine analyzes the user's emotional state. For example, if the user is feeling stressed, the analysis result is provided to the server. Based on this result, a recipe that suits the user's needs can be selected.
[1373] 4. Recipe Selection and Evaluation: The server filters recipes from the database based on the set parameters and the results of sentiment analysis to select the best recipes. At this stage, high-quality recipes and recipes that are best suited to a specific event are prioritized.
[1374] 5. Displaying the results: The final recipe is sent from the server to the device and displayed on the user's smartphone, allowing the user to see the best food delivery options that fit their emotional state and individual needs.
[1375] Examples:
[1376] When a user types into the app, "I'm tired and would like a relaxing meal," the emotion recognition engine determines the "stress" state, and based on this, the server suggests dishes containing "ingredients that have a relaxing effect" (for example, chamomile tea and salmon salad).
[1377] Example prompt sentence:
[1378] "I like pizza while watching a movie, but I'd like something healthy. I'm tired, so I'd like a relaxing meal."
[1379] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1380] Step 1:
[1381] User Input
[1382] Using a smartphone interface, users can input information about the date, time, event, food preferences, cooking method, and nutritional balance in natural language, including specific requests such as, "I like pizza to eat while watching a movie, but I'd prefer it to be healthy."
[1383] Input: User's natural language input information
[1384] Output: Input natural language data
[1385] Step 2:
[1386] Data transmission
[1387] The device sends the input natural language data to the server, and the data entered by the user is sent to a cloud server via the Internet.
[1388] Input: Natural language data
[1389] Output: Data transfer to the server
[1390] Step 3:
[1391] natural language analysis
[1392] The server analyzes the received natural language data using a natural language processing engine (e.g., GPT-3). Specifically, it extracts keywords such as date and time, event, ingredient preferences, cooking method, and nutritional balance, and based on this, it clarifies the user's intentions and requests.
[1393] Input: Natural language data
[1394] Output: Extracted parameters (date, time, event, food preferences, etc.)
[1395] Step 4:
[1396] Emotion analysis
[1397] The server uses an emotion recognition engine (e.g., Affectiva SDK) to analyze the user's emotional state, including analyzing photos and videos sent by the user. The analysis results indicate the user's emotional state (e.g., stressed, relaxed, etc.).
[1398] Input: User photos, videos, and natural language input
[1399] Output: Analysis of the user's emotional state
[1400] Step 5:
[1401] Recipe Filtering
[1402] The server then filters suitable recipes from the database based on the extracted parameters and the results of sentiment analysis. The filtering process selects recipes that match the date and time, event, ingredient preferences, cooking method, nutritional balance, and emotional state.
[1403] Input: Extracted parameters, sentiment analysis results
[1404] Output: A filtered list of recipes
[1405] Step 6:
[1406] Recipe evaluation and selection
[1407] The server then evaluates the filtered recipes from a quality perspective, prioritizing recipes that are professionally relevant or best suited to a specific event. The server also takes into account the user's emotional state, so if the user is feeling stressed, recipes with a relaxing effect will be prioritized.
[1408] Input: A filtered list of recipes
[1409] Output: Selected optimal recipe
[1410] Step 7:
[1411] Sending and Viewing Recipes
[1412] The server then sends the selected optimal recipe to the device, which then displays it to the user. For example, the device might display a recipe for "Relaxing Grilled Chicken Salad."
[1413] Input: Selected optimal recipe
[1414] Output: The recipe displayed on the user's terminal
[1415] 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 control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1416] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1417] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1418] The emotion identification model 59 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 an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1419] FIG. 9 illustrates an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1420] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1421] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1422] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1423] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs 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 a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1424] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1425] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1426] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1427] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1428] 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.
[1429] It is not necessary to store all 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 all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1430] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1431] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with 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). Also, the hardware resource that executes the specific processing may be a single processor.
[1432] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1433] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1434] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1435] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1436] The following is further disclosed regarding the above embodiment.
[1437] (Claim 1)
[1438] A means for users to input date and time, events, food preferences, cooking methods, nutritional balance, etc. in natural language;
[1439] means for transmitting data entered in natural language to a server;
[1440] A means for the server to analyze input data using a natural language processing model and extract the user's intentions and requests;
[1441] means for the server to set user parameters based on the extracted information;
[1442] a means for the server to filter recipes from the database based on configured parameters;
[1443] A means for the server to evaluate the filtered recipes and select the best recipe from the viewpoint of quality;
[1444] a means for the server to transmit the selected recipe to the terminal, and for the terminal to display the recipe to the user;
[1445] A system including:
[1446] (Claim 2)
[1447] The system according to claim 1, further comprising means for suggesting healthy menus and dishes suitable for a particular event when the user inputs the date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language.
[1448] (Claim 3)
[1449] 2. The system according to claim 1, further comprising means for preferentially evaluating recipes created from a professional perspective when evaluating the quality of the recipes.
[1450] "Example 1"
[1451] (Claim 1)
[1452] A means for users to input date and time, events, food preferences, cooking methods, nutritional balance, etc. in natural language;
[1453] means for transmitting data entered in natural language to a server;
[1454] The server uses a generative AI model to analyze input data and extract the user's intentions and requests.
[1455] means for the server to set user parameters based on the extracted information;
[1456] a means for the server to filter recipes from the database based on configured parameters;
[1457] A means for the server to evaluate the filtered recipes based on the prompt sentence and select the best recipe from the viewpoint of quality;
[1458] a means for the server to transmit the selected recipe to the terminal, and for the terminal to display the recipe to the user;
[1459] A system including:
[1460] (Claim 2)
[1461] The system according to claim 1, further comprising means for suggesting healthy menus and dishes suitable for a particular event when the user inputs the date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language.
[1462] (Claim 3)
[1463] 2. The system according to claim 1, further comprising means for preferentially evaluating recipes created from an expert's perspective when evaluating the quality of the recipes.
[1464] "Application Example 1"
[1465] (Claim 1)
[1466] A means for users to input date and time, events, food preferences, cooking methods, nutritional balance, etc. in natural language;
[1467] means for transmitting data entered in natural language to a server;
[1468] A means for the server to analyze input data using a natural language processing model and extract the user's intentions and requests;
[1469] means for the server to set user parameters based on the extracted information;
[1470] a means for the server to filter recipes from the database based on configured parameters;
[1471] A means for the server to evaluate the filtered recipes and select the best recipe from the viewpoint of quality;
[1472] a means for transmitting the selected recipe from the server to the eyeglass-type device, and for the eyeglass-type device to visually display the recipe to the user;
[1473] A system including:
[1474] (Claim 2)
[1475] 10. The system of claim 1, further comprising means for suggesting healthy menus and dishes suitable for a particular event.
[1476] (Claim 3)
[1477] 2. The system according to claim 1, further comprising means for preferentially evaluating recipes created from an expert's perspective when evaluating the quality of the recipes.
[1478] "Example 2: Combining Emotion Engines"
[1479] (Claim 1)
[1480] A means for users to input date and time, events, food preferences, cooking methods, nutritional balance, etc. in natural language;
[1481] means for transmitting data entered in natural language to a server;
[1482] A means for the server to analyze input data using a natural language processing model and extract the user's intentions and requests;
[1483] means for the server to set user parameters based on the extracted information;
[1484] a means for the server to filter dish descriptions from the database based on configured parameters;
[1485] a means for the server to evaluate the filtered dish descriptions and select the most suitable dish description in terms of quality;
[1486] A means for recognizing a user's emotional state using an emotion analysis engine and adjusting the food description based on the results;
[1487] a means for the server to transmit a description of the selected dish to the terminal, and for the terminal to display the description to the user;
[1488] A system including:
[1489] (Claim 2)
[1490] The system according to claim 1, further comprising means for suggesting healthy dishes or dishes suitable for a particular event when the user inputs the date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language.
[1491] (Claim 3)
[1492] 2. The system according to claim 1, further comprising means for preferentially evaluating food descriptions created from an expert's perspective when evaluating the quality of the food descriptions.
[1493] "Application example 2 when combining emotion engines"
[1494] (Claim 1)
[1495] A means for users to input date and time, events, food preferences, cooking methods, nutritional balance, etc. in natural language;
[1496] means for transmitting data entered in natural language to a server;
[1497] A means for the server to analyze input data using a natural language processing model and extract the user's intentions and requests;
[1498] means for the server to set user parameters based on the extracted information;
[1499] a means for the server to filter recipes from the database based on configured parameters;
[1500] A means for the server to evaluate the filtered recipes and select the best recipe from the viewpoint of quality;
[1501] a means for the server to transmit the selected recipe to the terminal, and for the terminal to display the recipe to the user;
[1502] a means for analyzing the user's emotions using an emotion engine that recognizes the user's emotional state and selecting a recipe in consideration of the analysis result;
[1503] A system including:
[1504] (Claim 2)
[1505] When users input information such as the date and time, event, food preferences, cooking method, and nutritional balance in natural language, the system will suggest healthy menus and dishes suitable for specific events.
[1506] 2. The system according to claim 1, further comprising means for suggesting an optimal menu according to the emotional state of the user.
[1507] (Claim 3)
[1508] When evaluating the quality of recipes, we need a way to prioritize recipes created from a professional perspective.
[1509] 10. The system of claim 1, further comprising means for using the sentiment analysis engine's evaluation to prioritize recipes that best suit the user's emotional state. [Explanation of symbols]
[1510] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. A means for users to input date and time, events, food preferences, cooking methods, nutritional balance, etc. in natural language; means for transmitting data entered in natural language to a server; A means for the server to analyze input data using a natural language processing model and extract the user's intentions and requests; means for the server to set user parameters based on the extracted information; a means for the server to filter recipes from the database based on configured parameters; A means for the server to evaluate the filtered recipes and select the best recipe from the viewpoint of quality; a means for the server to transmit the selected recipe to the terminal, and for the terminal to display the recipe to the user; A system including:
2. The system according to claim 1, further comprising means for suggesting healthy menus and dishes suitable for a particular event when the user inputs the date and time, event, ingredient preferences, cooking method, nutritional balance, etc. in natural language.
3. 2. The system according to claim 1, further comprising means for preferentially evaluating recipes created from a professional perspective when evaluating the quality of the recipes.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A