System

A system that inputs user preferences and dish information to search and present suitable wines addresses the challenge of selecting wines, enhancing user satisfaction by providing efficient and accurate wine recommendations.

JP2026014895APending Publication Date: 2026-01-29SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024116369
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-19
Publication Date
2026-01-29

AI Technical Summary

Technical Problem

Users find it difficult to select a wine that matches their tastes and the food they are eating, often resulting in unsatisfactory selections due to lack of knowledge and time-consuming efforts.

Method used

A system that inputs user preference and dish information, searches a database for suitable wines, and presents narrowed-down options, allowing users to easily find a matching wine.

Benefits of technology

Enables users to quickly and satisfactorily select wines that match their preferences and the food they are eating, increasing user satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026014895000001_ABST
    Figure 2026014895000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: means for inputting preference information and cooking information of a user; means for receiving the preference information and the cooking information of the user; means for searching and narrowing down an appropriate wine from a database based on the preference information and the cooking information; and means for presenting information of the narrowed-down wine to the user.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

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] Currently, many people find it difficult to select wine. In particular, they lack the knowledge to select a wine that matches their tastes and the food they are eating, and it is difficult to find a good quality wine at an affordable price. This increases the time and effort users spend selecting wine, and often results in an unsatisfactory selection. Therefore, a system is needed that allows even people with no wine knowledge to easily select an appropriate wine. [Means for solving the problem]

[0005] The present invention solves the above problems by providing a system including a means for inputting user preference information and dish information, a means for receiving the user preference information and dish information, a means for searching a database for suitable wines based on the preference information and dish information and narrowing down the search, and a means for presenting information on the narrowed down wines to the user, thereby enabling the user to easily find a wine that matches their preference and dish, and achieving a highly satisfying selection.

[0006] "User preference information" is information that indicates the user's personal tastes and preferences regarding the taste and type of wine.

[0007] "Cooking information" is information about the dish that the user is currently trying to make or is currently making.

[0008] "Input means" refers to an interface or method that allows a user to input information into the system, such as a keyboard, touch screen, or voice input.

[0009] The "receiving means" is a means that allows information input by a user to be received and taken into the system for processing.

[0010] A "database" is a collection of data that is organized in a particular format and is easily searchable and accessible.

[0011] The "search and narrowing down means" is a means for finding appropriate data from within a database based on information input by a user and narrowing down the candidates.

[0012] "Wine information" refers to detailed information about wine, such as the name, type, origin, price, taste, and food compatibility.

[0013] "Means for presenting to the user" refers to a method or interface for visually or audibly presenting the results of processing by the system to the user, such as a display or speaker. [Brief explanation of the drawings]

[0014] [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

[0015] 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.

[0016] First, the terms used in the following description will be explained.

[0017] 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).

[0018] 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.

[0019] 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.

[0020] 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.

[0021] 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."

[0022] [First embodiment]

[0023] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.

[0024] 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.

[0025] 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).

[0026] 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.

[0027] 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.

[0028] 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.

[0029] 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.

[0030] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0031] 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.

[0032] 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.

[0033] 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.

[0034] 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."

[0035] This invention is a system that selects and recommends optimal wines based on user input. This system involves a series of processes: inputting and receiving user preference information and food information, searching and narrowing down appropriate wines from a database based on that information, and presenting that information to the user.

[0036] System configuration

[0037] 1. User Input Method

[0038] The user uses the device to input their preferred wine, desired price range, and food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[0039] 2. Receipt of information

[0040] The terminal sends the input information to the server, which receives and analyzes the information.

[0041] 3. Database Matching

[0042] The server searches for an appropriate wine from a database based on the user's preference and food information. The database contains information such as the type of wine, price, and food compatibility.

[0043] 4. Wine selection and narrowing down

[0044] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the price range and food pairings specified by the user.

[0045] 5. Presentation of Information

[0046] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[0047] Specific examples

[0048] Example 1: Choosing a wine when you don't know your preferences

[0049] 1. The user types "I don't know what my favorite wine is" into the terminal.

[0050] 2. The server suggests basic information about the wine and the type of wine you would like to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[0051] 3. The user answers the question.

[0052] 4. The server recommends several wines based on the answers to the questions and sends this information to the terminal.

[0053] 5. The terminal displays a list of recommended wines to the user.

[0054] Example 2: Choosing a wine to pair with a dish

[0055] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what wine goes well with it."

[0056] 2. The server searches the database for wines that go well with grilled chicken.

[0057] 3. The server considers the customer's desired price range and selects a wine that is reasonably priced and goes well with the grilled chicken, and sends the information to the terminal.

[0058] 4. The device displays information about the recommended wine to the user.

[0059] Example 3: Looking for affordable wines

[0060] 1. The user types into the terminal, "Please tell me about some reasonably priced wines."

[0061] 2. The server searches the database for wines with a set price limit.

[0062] 3. The server will recommend several wines that fit the desired price range and send this information to the terminal.

[0063] 4. The device displays information about the recommended wine to the user.

[0064] In this way, the present invention allows users to easily select wines that match their preferences and the food they are eating. The various components of the system work together to increase user satisfaction and support the selection of the most suitable wine.

[0065] The processing flow will be explained below.

[0066] Step 1:

[0067] The user uses the user interface of the terminal to input information such as the preferred wine, budget, and dish information. For example, the user might input, "I like red wine, my budget is within 2000 yen, and today's dish is grilled chicken."

[0068] Step 2:

[0069] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[0070] Step 3:

[0071] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[0072] Step 4:

[0073] The server searches the database for wines that go well with the food based on the extracted food information. For example, it searches for wines that go well with "grilled chicken" and stores the results in a temporary list.

[0074] Step 5:

[0075] The server filters the temporary list to wines that match the user's taste and budget, for example, red wines under 2000 yen.

[0076] Step 6:

[0077] The server selects the best wines from the narrowed down list, based on the criteria that best meet the user's tastes and pair with the food.

[0078] Step 7:

[0079] The server compiles detailed information about the selected wine (such as name, price, taste, and food compatibility) and sends it to the terminal in JSON format.

[0080] Step 8:

[0081] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[0082] Step 9:

[0083] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[0084] This process allows users to easily find the wine that best suits their needs.

[0085] Example 1

[0086] 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."

[0087] The problem with existing beverage selection systems is that it is difficult for users to easily find a beverage that matches their preferences or the food they are eating. In particular, there is a need for a system that can efficiently receive information about a user's preferences and food, and select an appropriate beverage.

[0088] 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.

[0089] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, means for searching and narrowing down suitable beverages from a database based on the preference information and dish information, and means for presenting information on the narrowed-down beverages to the user, thereby enabling the user to easily find a beverage that matches their preference and dish.

[0090] "User preference information" is information that indicates the user's preferences and conditions for drinks.

[0091] "Food information" is information about the type and content of food that the user wants to enjoy with the drink.

[0092] A "digital interface" is any electronic interface or device used by a user to input information, including keyboards, touchscreens, and voice input.

[0093] "Means for receiving" refers to the function by which the server receives and analyzes the user's preference information and cooking information sent from the terminal.

[0094] A "database" is a digital data storage device that systematically organizes and stores a large amount of information and allows for searching and inquiry.

[0095] The "search and narrowing down means" is a function that extracts suitable information from a database based on the user's preference information and cooking information, and then selects the most suitable information from that database.

[0096] The "presentation means" is a function that displays and provides the narrowed down information in a format that is easy for the user to understand.

[0097] This invention is a system that selects and suggests optimal beverages based on user input. This system involves a series of processes: inputting and receiving user preference and food information, searching and narrowing down appropriate beverages from a database based on that information, and presenting that information to the user.

[0098] The elements of the system are configured as follows:

[0099] Hardware and Software Configuration

[0100] Hardware

[0101] Devices: Personal computers (PCs), smartphones, tablets, etc.

[0102] Server: A high-performance server (e.g., Apache HTTP Server running on a Linux OS)

[0103] software

[0104] Database: MySQL

[0105] User interface: Web browser (e.g. Google Chrome) using HTML / CSS and JavaScript

[0106] Program processing

[0107] User Input Phase

[0108] 1. Using a terminal, a user enters their preferred beverage, desired price range, and meal information on a login screen or homepage. Input can be done via keyboard, touchscreen, voice input, or other methods.

[0109] Information Reception Phase

[0110] 2. The device sends the information entered by the user to the server. The data is sent via an HTTP POST request, often in JSON format.

[0111] Information analysis phase

[0112] 3. The server receives and analyzes the information sent from the device. This analysis is performed using server-side scripts such as Python or Node.js.

[0113] Database lookup phase

[0114] 4. The server searches the database based on the parsed user information using an SQL query, such as "SELECT FROM drinks WHERE type="red wine" AND price <= 1500".

[0115] Refinement Phase

[0116] 5. The server narrows down the search results based on the user's criteria, using a Python library such as Pandas to filter and select the appropriate beverage.

[0117] Information transmission phase

[0118] 6. The server sends the selected drink information to the terminal in JSON format using an HTTP response.

[0119] Information display phase

[0120] 7. The device displays the received beverage information to the user using HTML / CSS and JavaScript in a list format on the screen.

[0121] Examples of specific examples and prompts

[0122] Example 1: Selecting a drink when preferences are unknown

[0123] 1. The user enters "I don't know what my favorite drink is" into the terminal.

[0124] 2. The server suggests basic information about the drink and the type of drink you want to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[0125] 3. The user answers the question.

[0126] 4. The server recommends some drinks based on the answers to the questions and sends the information to the terminal.

[0127] 5. The terminal displays a list of recommended drinks to the user.

[0128] Examples of prompts:

[0129] If a user types, "I don't know what my favorite drink is," ask them, "Do you prefer red or white wine?"

[0130] Example 2: Choosing a drink to go with your meal

[0131] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what drink goes well with it."

[0132] 2. The server searches the database for drinks that go well with grilled chicken.

[0133] 3. The server considers the customer's desired price range, selects a drink that goes well with the grilled chicken and is reasonably priced, and sends the information to the terminal.

[0134] 4. The terminal displays information about the recommended beverage to the user.

[0135] Examples of prompts:

[0136] For a user who enters "Today's menu is grilled chicken, and I would like to know what drinks go well with the dish," search for drinks that go well with grilled chicken and recommend them taking into account their desired price range.

[0137] Example 3: Looking for affordable drinks

[0138] 1. The user types into the terminal, "Tell me about some reasonably priced drinks."

[0139] 2. The server searches the database for drinks with a set price limit.

[0140] 3. The server recommends several drinks that fit the desired price range and sends this information to the terminal.

[0141] 4. The terminal displays information about the recommended beverage to the user.

[0142] Examples of prompts:

[0143] If a user types in "Tell me some reasonably priced drinks," the app will recommend some drinks that fit within the specified price range.

[0144] In this way, through specific processing steps and operations, the user can easily select a beverage that meets their preferences and requirements.

[0145] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0146] Step 1:

[0147] Users use their devices to input their preferred beverages, desired price range, and food information from a login screen or homepage. This input can be done using a keyboard, touch screen, or voice input. Information input by users may include, for example, "red wine," "budget under 1,500 yen," and "drinks that go well with chicken." This information is collected as input data.

[0148] Step 2:

[0149] The device sends the information entered by the user to the server using an HTTP POST request, with the data format being JSON. For example, the data sent will be in the following format:

[0150] json

[0151] {

[0152] "type": "red wine",

[0153] "price": 1500,

[0154] "pairing": "chicken"

[0155] }

[0156] The terminal then formats the entered data appropriately and sends it to the server.

[0157] Step 3:

[0158] The server receives and analyzes the information sent from the terminal. The received data is in JSON format, and it is analyzed to extract each piece of information. For example, the received JSON data is analyzed to extract the type, price, and pairing fields. This analysis process is generally performed using Python or Node.js. The analysis result is as follows:

[0159] Type of drink: Red wine

[0160] Price range: Under 1500 yen

[0161] Food Tip: Pair with chicken

[0162] Step 4:

[0163] The server searches the database based on the parsed user information. Here, it uses an SQL query to search the database for drinks that match the criteria. For example, the following SQL query is executed:

[0164] sql

[0165] SELECT FROM drinks WHERE type='red wine' AND price <= 1500 AND pairing='chicken'

[0166] By executing this query, information on beverages that match the criteria is retrieved from the database, and the retrieved data is saved in list format.

[0167] Step 5:

[0168] The server narrows down the search results based on the user's criteria. Here, data filtering is performed using Python's Pandas library, etc. Specifically, from the multiple beverage information obtained, the beverage that best meets the user's criteria is selected. For example, the one beverage that best meets the criteria of "budget under 1500 yen" and "goes well with chicken" is selected. The narrowed down data looks like this:

[0169] json

[0170] {

[0171] "name": "Chateau Mouton Rothschild",

[0172] "price": 1400,

[0173] "pairing": "chicken"

[0174] }

[0175] This data is used to select the optimal beverage.

[0176] Step 6:

[0177] The server sends the selected drink information to the terminal in JSON format. This is done using an HTTP response. Specifically, a JSON object containing the selected drink information is sent to the terminal. This JSON object has the following format:

[0178] json

[0179] {

[0180] "name": "Chateau Mouton Rothschild",

[0181] "price": 1400,

[0182] "pairing": "chicken"

[0183] }

[0184] Step 7:

[0185] The device displays the received beverage information to the user. HTML / CSS and JavaScript are used for display. Specifically, the device displays a list of "recommended beverages" on the screen and provides an interface for the user to select. For example, the following display may be displayed:

[0186] Recommended drinks:

[0187] 1. Chateau Mouton Rothschild - Price: 1,400 yen - Goes well with chicken

[0188] In this way, at each processing step, input data is received, analyzed, searched through a database, narrowed down, and finally the information is presented to the user, allowing the user to easily select a beverage that suits their preferences and conditions.

[0189] (Application example 1)

[0190] 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."

[0191] Conventional wine selection systems select appropriate wines based on information entered by users into a terminal, but these systems lack user convenience and are time-consuming, especially for busy consumers and users who are not familiar with wine.In addition, the methods for presenting information about the selected wines are limited, which does not sufficiently stimulate users' interest or desire to purchase.

[0192] 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.

[0193] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, and means for searching and narrowing down suitable beverages from a database based on the preference information and dish information. This allows the user to easily input information using voice input or touch gestures, the cloud server performs analysis in real time, and the user can intuitively check beverage information using a wearable display device.

[0194] "User preference information" refers to information about individual preferences such as the types and characteristics of beverages preferred by the user, taste trends, and past drinking experiences.

[0195] "Food information" refers to information such as the type, cooking method, and seasoning of the food that the user plans to enjoy with the drink selected by the user.

[0196] A "database" is an information system that systematically stores information such as types of beverages, their characteristics, prices, and compatibility with food.

[0197] "Search and filtering means" refers to the algorithms and processes used to identify matching beverages from the database using user input.

[0198] "Presenting means" refers to technology or devices for visually or audibly displaying or notifying the user of appropriate beverage information.

[0199] A "cloud server" is a server infrastructure that is distributed across the Internet and is capable of storing and processing information.

[0200] A "wearable display device" refers to an information display device that can be worn by a user on the body, and specifically refers to smart glasses, head-mounted displays, etc.

[0201] "Voice input" refers to the process or technique used to convert a user's speech into text data.

[0202] "Touch gestures" are interaction methods that allow users to input information using a touch screen or gesture recognizer.

[0203] In one embodiment of the present invention, the system effectively collects user preference information and cooking information, and then selects and presents the most suitable beverage based on the information.

[0204] First, a user puts on a wearable display device such as smart glasses. The user then uses voice input or touch gestures to input information such as their preferred drink, budget, and cooking information, allowing the user to input information intuitively and quickly.

[0205] The input information is then converted into text data by the smart glasses' internal processing unit and sent over the internet to a cloud server, which uses a generative AI model to analyze the user's input and search for the appropriate beverage from a database containing detailed information such as the type of beverage, price, and food pairings.

[0206] The cloud server selects several optimal drinks based on the user's preferences, food information, budget, etc. At this time, the generative AI model generates a prompt sentence based on the user's input, which is used as a query when searching the database.

[0207] The information on the selected beverages is displayed in real time on the smart glasses display. Users can scroll through the candidates using their gaze or gestures to check detailed information, allowing them to efficiently and easily select the perfect beverage.

[0208] Detailed function description

[0209] 1. Voice input and touch gestures:

[0210] The smart glasses' microphone allows users to speak into the glasses to input information, and the glasses' touch panel also allows users to input information using touch gestures.

[0211] 2. Cloud integration:

[0212] The input data is sent via the smart glasses' processing unit to a cloud server, which then analyzes the data using natural language processing technology.

[0213] 3. Generative AI Model:

[0214] The cloud server uses a generative AI model to generate prompts based on the user's input data, which are then used for database searches.

[0215] 4. Database search and filtering:

[0216] The cloud server searches for suitable drinks in a database that includes details such as the type of drink, its price, and whether it pairs with food, and then narrows down the drinks that match the user's preferences.

[0217] 5. Display:

[0218] The information on the selected drinks is displayed on the smart glasses' display, and the user can use their gaze or touch gestures to check the candidates and view detailed information.

[0219] Specific examples

[0220] For example, if a user says, "Tell me about an affordable red wine," the cloud server will analyze this and narrow down the selection from the database. The results will be displayed on the smart glasses' display, allowing the user to easily choose the perfect red wine.

[0221] An example of a prompt might be:

[0222] "The user uses their voice to input a red wine, under 2,000 yen, that goes well with grilled chicken. The cloud server analyzes the input, searches the database for a suitable red wine, and displays it on the smart glasses."

[0223] In this way, the system helps the user to easily select the appropriate beverage, which is very convenient, especially for busy consumers and beginners.

[0224] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0225] Step 1:

[0226] User Input

[0227] The user puts on the smart glasses and inputs their preferred drink and food information using voice input or touch gestures. The input data includes the type of drink (e.g., red wine), budget (e.g., under 2,000 yen), and food (e.g., grilled chicken). This inputs the user's preferences and requests into the device as initial data.

[0228] Input: Favorite drink, budget, food information

[0229] Output: Text format of input data

[0230] Step 2:

[0231] Data transmission

[0232] The device converts the user's input data into text format and sends it to the cloud server. The data sent to the cloud server is JSON format data that includes the user ID, type of drink, budget, and dish information.

[0233] Input: Text input data

[0234] Output: JSON formatted transmission data

[0235] Step 3:

[0236] Data reception and analysis

[0237] The cloud server receives the data sent from the device and analyzes it using a generative AI model. The cloud server extracts the user's preferences and requests from the received data and generates a prompt. Based on the generated prompt, a query to the beverage database is constructed.

[0238] Input: JSON format data to be sent

[0239] Output: Analysis data, prompt statements, database queries

[0240] Step 4:

[0241] Database search

[0242] The cloud server searches for an appropriate drink from the drink database based on the generated prompt. The search criteria include the type of drink, price, and food compatibility information. The search results then list drinks that meet the user's requirements.

[0243] Input: Database query

[0244] Output: A list of drinks from the search results

[0245] Step 5:

[0246] Narrow down

[0247] The cloud server narrows down the database search results to the beverages that best fit the user's input criteria. The filtering criteria are applied based on the user's preferences and budget. The optimal beverage is determined, and its details are prepared.

[0248] Input: Search results list of drinks

[0249] Output: Detailed information about the selected beverages

[0250] Step 6:

[0251] Information presentation

[0252] The cloud server sends detailed information about the selected beverages to the device, including the name, description, price, image, and food pairing information. The device receives this information and displays it in real time on the smart glasses display.

[0253] Input: Detailed information of the selected beverage

[0254] Output: Drink information displayed on the smart glasses display

[0255] Step 7:

[0256] User confirmation and selection

[0257] The user can check the beverage information displayed on the smart glasses screen using their eyes or touch gestures to select the most suitable beverage. After selection, the smart glasses can also search again or provide additional information as needed.

[0258] Input: Drink information displayed on the screen

[0259] Output: User's selected drink information

[0260] Through the above steps, the user can efficiently and easily select the optimal beverage.

[0261] 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.

[0262] This invention is a system that selects and recommends the most suitable wine by combining information on the user's preferences and cuisine with an emotion engine that recognizes the user's emotions. This system includes a series of processes that receive information input by the user, search and narrow down the appropriate wines from a database based on that information, and finally present the selected wine information to the user.

[0263] System configuration

[0264] 1. User Input Method

[0265] The user uses the terminal to input their preferred wine, desired price range, food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[0266] 2. Receipt of information

[0267] The terminal sends the input information to the server, which receives and analyzes the information.

[0268] 3. Emotion Engine

[0269] The emotion engine is designed to recognize user emotions. It can analyze the user's facial expressions, voice, or text input to generate valid emotion data.

[0270] 4. Database Matching

[0271] The server searches for an appropriate wine from a database containing information on the type of wine, price, and food pairings based on the user's preference information, food information, and emotion data.

[0272] 5. Wine selection and narrowing down

[0273] The server narrows down the search results to the wine that best suits the user's preferences, taking into account the price range and food pairings specified by the user, as well as emotional data.

[0274] 6. Presentation of Information

[0275] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[0276] Specific examples

[0277] Example 1: Wine selection using an emotion engine

[0278] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal, and then uses the emotion engine to check their current emotional state (e.g., stressed, happy, etc.).

[0279] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0280] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[0281] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[0282] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[0283] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0284] Example 2: Suggesting wines suitable for relieving stress

[0285] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[0286] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0287] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[0288] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[0289] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[0290] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0291] In this way, by combining emotion engines, it becomes possible to select wines according to the user's emotional state, enabling more personalized recommendations. By linking together the various components of the system, it is possible to further increase user satisfaction.

[0292] The processing flow will be explained below.

[0293] Step 1:

[0294] The user uses the user interface of the terminal to input information about the wine they like, their budget, and the food they are eating. For example, they might input, "I like red wine," "My budget is under 2000 yen," and "Today's food is grilled chicken."

[0295] Step 2:

[0296] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[0297] Step 3:

[0298] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[0299] Step 4:

[0300] The device records video and audio to capture the user's facial expressions and voice, providing the basic data for the emotion engine to operate.

[0301] Step 5:

[0302] The emotion engine analyzes captured video and audio data to identify the user's current emotional state, using facial recognition and voice analysis algorithms to quantify the level of stress or joy the user is experiencing.

[0303] Step 6:

[0304] The device converts the emotion data obtained from the emotion engine back into JSON format and sends it to the server using an HTTP request.

[0305] Step 7:

[0306] The server combines wine preferences, budget, food information, and emotional data to search for a suitable wine from its database, for example, "a red wine that pairs well with grilled chicken and is effective at relieving stress."

[0307] Step 8:

[0308] The server then narrows down the search results to wines that best fit the user's criteria, taking into account the price range and food pairings specified by the user, as well as emotional data.

[0309] Step 9:

[0310] The server compiles detailed information about the selected wines (such as name, price, taste, compatibility with food, and information on the effect on emotional state) and sends it to the terminal in JSON format.

[0311] Step 10:

[0312] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[0313] Step 11:

[0314] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[0315] This process flow allows users to easily find wines that match their preferences and emotional state, enabling a more personalized selection.

[0316] Example 2

[0317] 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."

[0318] Conventional wine selection systems suggest appropriate wines based on user preferences and food information, but they are unable to take into account the user's emotional state. As a result, personalized wine selections based on the user's emotional state cannot be made, resulting in low satisfaction.

[0319] 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 a means for inputting user preference information and food information via a terminal, a means for transmitting the user preference information and food information to the server, a means for searching and narrowing down suitable wines from a database based on the preference information and food information, a means for using an emotion analysis engine to consider the user's emotional state when searching and narrowing down the wines, and a means for presenting information on the narrowed down wines including the emotion data to the user. This enables personalized wine selection according to the user's emotional state.

[0320] "User preference information" is information about the type, flavor, price range, etc. of wine that the user prefers.

[0321] "Cuisine information" is information about the cuisine that the user wants to pair with the drink. Specific examples include the type of main dish and its seasoning.

[0322] A "terminal" is an electronic device, such as a computer, smartphone, or tablet, that a user uses to enter information.

[0323] A "server" is a central processing unit that receives requests from users and executes the processing.

[0324] A "database" is an information storage system that stores various information about wine.

[0325] An "emotion analysis engine" is software or hardware that analyzes a user's facial expression, voice, or text input to determine the user's emotional state.

[0326] A "graphical user interface (GUI)" is an interface that allows a user to visually input or confirm information.

[0327] "Wine information" refers to detailed information about the selected wine, including the brand, price, characteristics, and description of pairings.

[0328] "Emotion data" is information that indicates the emotional state of the user, generated by the emotion analysis engine.

[0329] The system of the present invention is designed to select and recommend the most suitable wine based on the user's preferences, food information, and emotional state. The system includes multiple hardware and software components.

[0330] User Input Method

[0331] Users input their preferred wine, desired price range, and food information via the device. They can then have their current emotional state analyzed using the emotion engine. Input methods include keyboard, touch screen, and voice input. For example, if a user voice-inputs into the device, "What wine goes well with grilled chicken?", the emotion analysis function can analyze the user's state as "I'm feeling stressed."

[0332] Receiving and Sending Information

[0333] The device combines the information entered by the user with data from the emotion engine to generate JSON format data, which it then sends to the server using an HTTP request. The device also performs error checking to ensure the data was sent correctly.

[0334] Data analysis and searching

[0335] The server receives the data sent from the device and analyzes the user's preference information, food information, and emotion data. Based on this information, it searches for relevant wine information from a wine database, which stores information on wine types, prices, and food pairings.

[0336] Using a sentiment analysis engine

[0337] When searching and filtering wines, the server uses an emotion analysis engine that analyzes the user's facial expressions, voice, and text input to determine the user's emotional state, allowing it to select the wine that best suits the user's current emotional state.

[0338] Narrowing down and presenting information

[0339] The server narrows down the most suitable wines by taking into account the user's preference information, food information, and emotional data. The selected wine information is converted into JSON format and sent to the device. The device receives the wine information sent from the server and displays it on the user interface. The user can confirm the presented wine information.

[0340] Specific examples

[0341] Example 1: Wine selection using an emotion engine

[0342] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal and then uses the emotion engine to check their current emotional state (e.g., feeling stressed).

[0343] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0344] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[0345] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[0346] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[0347] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0348] Example 2: Suggesting wines suitable for relieving stress

[0349] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[0350] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0351] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[0352] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[0353] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[0354] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0355] In this way, by combining emotion engines, it becomes possible to select wines that suit the user's emotional state. By having each of the system's means work in tandem, user satisfaction can be further increased.

[0356] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0357] Step 1: Enter your user information

[0358] Specific description:

[0359] The user inputs information about their preferred wine (e.g., red wine), desired price range (e.g., 2,000-3,000 yen), and food information (e.g., grilled chicken) into the device. The emotion engine is then activated to analyze the user's current emotional state (e.g., feeling stressed).

[0360] Input: User preference information, food information, emotional state

[0361] Output: Integrated user information and sentiment data (converted to JSON format)

[0362] Specific behavior:

[0363] The user speaks into the device, asking, "What wine goes well with grilled chicken?" and the device uses the emotion analysis function to determine that the user is feeling stressed. The device converts the voice data into text and generates JSON data along with the emotion analysis results.

[0364] Step 2: Submit your information

[0365] Specific description:

[0366] The device sends the generated JSON format data to the server using an HTTP request, and performs an error check to determine whether the data was sent successfully.

[0367] Input: JSON format user information and emotion data

[0368] Output: HTTP request sent successfully to the server

[0369] Specific behavior:

[0370] The device sends a "POST / wine-recommendation HTTP / 1.1" request and receives a status code of 200 (OK) from the server, confirming that the transmission was successful.

[0371] Step 3: Receiving and analyzing information

[0372] Specific description:

[0373] The server receives the HTTP request sent from the device and parses the JSON data to extract the user's preference information, cooking information, and emotion data.

[0374] Input: JSON data sent in the HTTP request

[0375] Output: Extracted user preference information, food information, and emotion data (converted into internal data structure)

[0376] Specific behavior:

[0377] The server retrieves the JSON data from the request body, parses fields such as "user_preference," "food_info," and "emotion_data," and extracts each item.

[0378] Step 4: Database Search

[0379] Specific description:

[0380] The server queries the wine database based on the extracted user preference information, food information, and emotion data to search for related wine information.

[0381] Input: User preference information, food information, emotional data

[0382] Output: Search results as a list of wine candidates (internal data storage)

[0383] Specific behavior:

[0384] The server executes "SELECT FROM wines WHERE food_pairing = 'Grilled Chicken' AND price BETWEEN 2000 AND 3000" and temporarily stores the wine list obtained from the database.

[0385] Step 5: Consider sentiment data and optimize

[0386] Specific description:

[0387] The server selects the most suitable wine from the temporarily stored wine information, taking into account the user's emotional data. This process uses an emotion analysis engine.

[0388] Input: wine candidate list, sentiment data

[0389] Output: Best wine information (converted to JSON format)

[0390] Specific behavior:

[0391] The server uses a sentiment analysis engine to select the "best wine for stress relief" by taking into account the emotional data. The selected wine information is converted into JSON format.

[0392] Step 6: Submit and display wine information

[0393] Specific description:

[0394] The server sends information about the selected wine to the terminal as an HTTP response, and the terminal displays the received information on the user interface and provides it to the user.

[0395] Input: Best wine information (JSON format)

[0396] Output: Wine information displayed in the user interface

[0397] Specific behavior:

[0398] The server returns the selected wine information to the terminal along with a "200 OK" status, and the terminal displays details such as the brand, price, and comments on the user interface.

[0399] Through the above processing steps, it becomes possible to select and suggest the most suitable wine according to the user's emotional state.

[0400] (Application example 2)

[0401] 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."

[0402] Conventional wine selection systems recommend wines based on user preferences and food information, but because they do not consider the user's emotions, they are unable to provide personalized recommendations tailored to each user's emotional state. Furthermore, the information related to the recommended wines is limited, resulting in a lack of content that helps users deepen their understanding of wines. This makes it difficult to increase user satisfaction.

[0403] 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.

[0404] In this invention, the server includes a user input means, a means for receiving preference information and food information, a means for recognizing the user's emotions using an emotion engine, a means for searching and narrowing down suitable wines from a database and generating wine information including related content, and a means for presenting the wine information and related content to the user. This enables personalized recommendations by selecting the optimal wine according to the user's emotional state and providing a variety of content such as related video links.

[0405] "User preference information" is information that represents an individual user's tastes and preferences regarding wine.

[0406] "Cuisine information" is information about specific cuisine that the user would like to pair with wine.

[0407] The "means for receiving" refers to a method by which the system receives the preference information and dish information input by the user.

[0408] The "emotion engine" is a component that recognizes a user's emotions through facial expression, voice, or text analysis and generates valid emotion data.

[0409] The "search and narrowing down means" refers to a method of searching for the most suitable wine from a database based on the received preference information, food information, and emotional data, and ultimately narrowing down the candidates.

[0410] A "database" is a recording medium that includes information such as wine types, prices, and food compatibility information.

[0411] The "related content distribution service" is a service that provides users with videos and explanatory information related to the selected wine.

[0412] A "user interface" is an interactive means for users to input information, and is displayed on the screen of a computer or smartphone.

[0413] "Wine information" is detailed data on wine types, prices, food pairings, etc.

[0414] "Video link" means a hyperlink for accessing video content on the Internet.

[0415] This invention is a system that selects the optimal wine based on the user's preference information, food information, and user emotion data, and provides the user with related video content. This system is implemented as an application that runs primarily on a mobile device such as a smartphone. A specific implementation of this system is described below.

[0416] First, the user installs and launches the smartphone application. The application provides a user interface for inputting their wine preferences, food information, and price range. The user inputs the information using a keyboard or touch screen. Furthermore, facial expression recognition and voice analysis are performed to recognize the user's current emotional state using an emotion engine. This generates the user's emotional data.

[0417] The device sends the input preference information, food information, and emotion data to the server. The data is usually packaged in JSON format and sent using an HTTP request. The server receives the data and analyzes the input information. Based on the analyzed data, it searches for an appropriate wine from a database that contains information on the type of wine, price, and food pairing.

[0418] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the user's emotional data. This narrowing down process takes into account the price range and cuisine information entered by the user, as well as the recognized emotional data. For example, if the user is feeling stressed, the server will recommend wines that are good for relieving stress.

[0419] Next, the server sends recommendation information to the device, including information about the selected wines and related video content (e.g., videos about the wine's production process and reviews). The device receives this information and displays detailed information about the wines and video links on the user interface. This allows the user to enjoy not only the information about the selected wines but also the video content related to those wines at the same time.

[0420] Examples of specific hardware and software used

[0421] Hardware: Smartphones, servers

[0422] Software: Python program, Emotion Engine module, Database module

[0423] Examples of concrete examples and prompts

[0424] For example, if a user requests a wine that "pairs well with steak" and the emotion engine recognizes that the user's current emotion is "relaxed," the system will recommend a "red wine that pairs well with steak to enhance relaxation." It will also provide a video showing the wine's production process and a professional review.

[0425] Example prompt sentence:

[0426] User: "I want to know what red wine goes well with steak."

[0427] Emotion Engine: "The user is currently relaxed"

[0428] Result: "The following red wines pair well with steak for a relaxing experience... [Wine information and video link]"

[0429] This process allows users to simultaneously enjoy both personalized wine selections and related video content.

[0430] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0431] Step 1:

[0432] A user launches a smartphone application and inputs their wine preferences, food information, and price range using a keyboard, touchscreen, or voice input, forming the user's input data.

[0433] Step 2:

[0434] The device receives the information entered by the user and converts it into JSON format. It then uses an emotion engine to perform facial expression recognition and voice analysis to obtain the user's emotional data. The emotion engine uses a generative AI model to analyze the user's emotions. The input is the user's emotional state (text, voice, and facial expression data), and the output is emotional data (e.g., relaxed, stressed, etc.).

[0435] Step 3:

[0436] The device packages the user's preference information, cooking information, and emotion data and sends them to the server using an HTTP request. The input is data converted to JSON format, and the output is the result of the transmission to the server.

[0437] Step 4:

[0438] The server analyzes the received information and extracts the user's preference information, food information, and emotion data. The input is JSON data, and the output is the analyzed information (preference information, food information, emotion data).

[0439] Step 5:

[0440] The server searches a database for suitable wines based on the analyzed information. The database contains information on wine types, prices, and food pairings. The server performs a database search based on the entered user information and emotion data. The input is the analysis results data, and the output is a list of search results wines.

[0441] Step 6:

[0442] The server narrows down the search results to wines that best fit the user's preferences. This narrowing down takes into account the price range, food information, and emotional data specified by the user. The input is a list of wines from the search results, and the output is the narrowed down wine information.

[0443] Step 7:

[0444] The server generates recommendation information including the narrowed-down wine information and related video content. The server retrieves video links and other information from the database of related content distribution services and provides them to the user. The input is the narrowed-down wine information, and the output is recommendation information including the wine information and related video links.

[0445] Step 8:

[0446] The server sends the generated recommendation information to the terminal. The terminal displays the received data on the user interface, allowing the user to view detailed information about the selected wine and related video content. The input is the recommendation information data, and the output is the display on the user interface.

[0447] 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.

[0448] 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.

[0449] 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.

[0450] [Second embodiment]

[0451] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0452] 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.

[0453] 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).

[0454] 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.

[0455] 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.

[0456] 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).

[0457] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.

[0458] 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.

[0459] 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.

[0460] 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.

[0461] 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.

[0462] 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."

[0463] This invention is a system that selects and recommends optimal wines based on user input. This system involves a series of processes: inputting and receiving user preference information and food information, searching and narrowing down appropriate wines from a database based on that information, and presenting that information to the user.

[0464] System configuration

[0465] 1. User Input Method

[0466] The user uses the device to input their preferred wine, desired price range, and food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[0467] 2. Receipt of information

[0468] The terminal sends the input information to the server, which receives and analyzes the information.

[0469] 3. Database Matching

[0470] The server searches for an appropriate wine from a database based on the user's preference and food information. The database contains information such as the type of wine, price, and food compatibility.

[0471] 4. Wine selection and narrowing down

[0472] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the price range and food pairings specified by the user.

[0473] 5. Presentation of Information

[0474] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[0475] Specific examples

[0476] Example 1: Choosing a wine when you don't know your preferences

[0477] 1. The user types "I don't know what my favorite wine is" into the terminal.

[0478] 2. The server suggests basic information about the wine and the type of wine you would like to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[0479] 3. The user answers the question.

[0480] 4. The server recommends several wines based on the answers to the questions and sends this information to the terminal.

[0481] 5. The terminal displays a list of recommended wines to the user.

[0482] Example 2: Choosing a wine to pair with a dish

[0483] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what wine goes well with it."

[0484] 2. The server searches the database for wines that go well with grilled chicken.

[0485] 3. The server considers the customer's desired price range and selects a wine that is reasonably priced and goes well with the grilled chicken, and sends the information to the terminal.

[0486] 4. The device displays information about the recommended wine to the user.

[0487] Example 3: Looking for affordable wines

[0488] 1. The user types into the terminal, "Please tell me about some reasonably priced wines."

[0489] 2. The server searches the database for wines with a set price limit.

[0490] 3. The server will recommend several wines that fit the desired price range and send this information to the terminal.

[0491] 4. The device displays information about the recommended wine to the user.

[0492] In this way, the present invention allows users to easily select wines that match their preferences and the food they are eating. The various components of the system work together to increase user satisfaction and support the selection of the most suitable wine.

[0493] The processing flow will be explained below.

[0494] Step 1:

[0495] The user uses the user interface of the terminal to input information such as the preferred wine, budget, and dish information. For example, the user might input, "I like red wine, my budget is within 2000 yen, and today's dish is grilled chicken."

[0496] Step 2:

[0497] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[0498] Step 3:

[0499] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[0500] Step 4:

[0501] The server searches the database for wines that go well with the food based on the extracted food information. For example, it searches for wines that go well with "grilled chicken" and stores the results in a temporary list.

[0502] Step 5:

[0503] The server filters the temporary list to wines that match the user's taste and budget, for example, red wines under 2000 yen.

[0504] Step 6:

[0505] The server selects the best wines from the narrowed down list, based on the criteria that best meet the user's tastes and pair with the food.

[0506] Step 7:

[0507] The server compiles detailed information about the selected wine (such as name, price, taste, and food compatibility) and sends it to the terminal in JSON format.

[0508] Step 8:

[0509] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[0510] Step 9:

[0511] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[0512] This process allows users to easily find the wine that best suits their needs.

[0513] Example 1

[0514] 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."

[0515] The problem with existing beverage selection systems is that it is difficult for users to easily find a beverage that matches their preferences or the food they are eating. In particular, there is a need for a system that can efficiently receive information about a user's preferences and food, and select an appropriate beverage.

[0516] 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.

[0517] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, means for searching and narrowing down suitable beverages from a database based on the preference information and dish information, and means for presenting information on the narrowed-down beverages to the user, thereby enabling the user to easily find a beverage that matches their preference and dish.

[0518] "User preference information" is information that indicates the user's preferences and conditions for drinks.

[0519] "Food information" is information about the type and content of food that the user wants to enjoy with the drink.

[0520] A "digital interface" is any electronic interface or device used by a user to input information, including keyboards, touchscreens, and voice input.

[0521] "Means for receiving" refers to the function by which the server receives and analyzes the user's preference information and cooking information sent from the terminal.

[0522] A "database" is a digital data storage device that systematically organizes and stores a large amount of information and allows for searching and inquiry.

[0523] The "search and narrowing down means" is a function that extracts suitable information from a database based on the user's preference information and cooking information, and then selects the most suitable information from that database.

[0524] The "presentation means" is a function that displays and provides the narrowed down information in a format that is easy for the user to understand.

[0525] This invention is a system that selects and suggests optimal beverages based on user input. This system involves a series of processes: inputting and receiving user preference and food information, searching and narrowing down appropriate beverages from a database based on that information, and presenting that information to the user.

[0526] The elements of the system are configured as follows:

[0527] Hardware and Software Configuration

[0528] Hardware

[0529] Devices: Personal computers (PCs), smartphones, tablets, etc.

[0530] Server: A high-performance server (e.g., Apache HTTP Server running on a Linux OS)

[0531] software

[0532] Database: MySQL

[0533] User interface: Web browser (e.g. Google Chrome) using HTML / CSS and JavaScript

[0534] Program processing

[0535] User Input Phase

[0536] 1. Using a terminal, a user enters their preferred beverage, desired price range, and meal information on a login screen or homepage. Input can be done via keyboard, touchscreen, voice input, or other methods.

[0537] Information Reception Phase

[0538] 2. The device sends the information entered by the user to the server. The data is sent via an HTTP POST request, often in JSON format.

[0539] Information analysis phase

[0540] 3. The server receives and analyzes the information sent from the device. This analysis is performed using server-side scripts such as Python or Node.js.

[0541] Database lookup phase

[0542] 4. The server searches the database based on the parsed user information using an SQL query, such as "SELECT FROM drinks WHERE type="red wine" AND price <= 1500".

[0543] Refinement Phase

[0544] 5. The server narrows down the search results based on the user's criteria, using a Python library such as Pandas to filter and select the appropriate beverage.

[0545] Information transmission phase

[0546] 6. The server sends the selected drink information to the terminal in JSON format using an HTTP response.

[0547] Information display phase

[0548] 7. The device displays the received beverage information to the user using HTML / CSS and JavaScript in a list format on the screen.

[0549] Examples of specific examples and prompts

[0550] Example 1: Selecting a drink when preferences are unknown

[0551] 1. The user enters "I don't know what my favorite drink is" into the terminal.

[0552] 2. The server suggests basic information about the drink and the type of drink you want to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[0553] 3. The user answers the question.

[0554] 4. The server recommends some drinks based on the answers to the questions and sends the information to the terminal.

[0555] 5. The terminal displays a list of recommended drinks to the user.

[0556] Examples of prompts:

[0557] If a user types, "I don't know what my favorite drink is," ask them, "Do you prefer red or white wine?"

[0558] Example 2: Choosing a drink to go with your meal

[0559] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what drink goes well with it."

[0560] 2. The server searches the database for drinks that go well with grilled chicken.

[0561] 3. The server considers the customer's desired price range, selects a drink that goes well with the grilled chicken and is reasonably priced, and sends the information to the terminal.

[0562] 4. The terminal displays information about the recommended beverage to the user.

[0563] Examples of prompts:

[0564] For a user who enters "Today's menu is grilled chicken, and I would like to know what drinks go well with the dish," search for drinks that go well with grilled chicken and recommend them taking into account their desired price range.

[0565] Example 3: Looking for affordable drinks

[0566] 1. The user types into the terminal, "Tell me about some reasonably priced drinks."

[0567] 2. The server searches the database for drinks with a set price limit.

[0568] 3. The server recommends several drinks that fit the desired price range and sends this information to the terminal.

[0569] 4. The terminal displays information about the recommended beverage to the user.

[0570] Examples of prompts:

[0571] If a user types in "Tell me some reasonably priced drinks," the app will recommend some drinks that fit within the specified price range.

[0572] In this way, through specific processing steps and operations, the user can easily select a beverage that meets their preferences and requirements.

[0573] The flow of the identification process in the first embodiment will be described with reference to FIG.

[0574] Step 1:

[0575] Users use their devices to input their preferred beverages, desired price range, and food information from a login screen or homepage. This input can be done using a keyboard, touch screen, or voice input. Information input by users may include, for example, "red wine," "budget under 1,500 yen," and "drinks that go well with chicken." This information is collected as input data.

[0576] Step 2:

[0577] The device sends the information entered by the user to the server using an HTTP POST request, with the data format being JSON. For example, the data sent will be in the following format:

[0578] json

[0579] {

[0580] "type": "red wine",

[0581] "price": 1500,

[0582] "pairing": "chicken"

[0583] }

[0584] The terminal then formats the entered data appropriately and sends it to the server.

[0585] Step 3:

[0586] The server receives and analyzes the information sent from the terminal. The received data is in JSON format, and it is analyzed to extract each piece of information. For example, the received JSON data is analyzed to extract the type, price, and pairing fields. This analysis process is generally performed using Python or Node.js. The analysis result is as follows:

[0587] Type of drink: Red wine

[0588] Price range: Under 1500 yen

[0589] Food Tip: Pair with chicken

[0590] Step 4:

[0591] The server searches the database based on the parsed user information. Here, it uses an SQL query to search the database for drinks that match the criteria. For example, the following SQL query is executed:

[0592] sql

[0593] SELECT FROM drinks WHERE type='red wine' AND price <= 1500 AND pairing='chicken'

[0594] By executing this query, information on beverages that match the criteria is retrieved from the database, and the retrieved data is saved in list format.

[0595] Step 5:

[0596] The server narrows down the search results based on the user's criteria. Here, data filtering is performed using Python's Pandas library, etc. Specifically, from the multiple beverage information obtained, the beverage that best meets the user's criteria is selected. For example, the one beverage that best meets the criteria of "budget under 1500 yen" and "goes well with chicken" is selected. The narrowed down data looks like this:

[0597] json

[0598] {

[0599] "name": "Chateau Mouton Rothschild",

[0600] "price": 1400,

[0601] "pairing": "chicken"

[0602] }

[0603] This data is used to select the optimal beverage.

[0604] Step 6:

[0605] The server sends the selected drink information to the terminal in JSON format. This is done using an HTTP response. Specifically, a JSON object containing the selected drink information is sent to the terminal. This JSON object has the following format:

[0606] json

[0607] {

[0608] "name": "Chateau Mouton Rothschild",

[0609] "price": 1400,

[0610] "pairing": "chicken"

[0611] }

[0612] Step 7:

[0613] The device displays the received beverage information to the user. HTML / CSS and JavaScript are used for display. Specifically, the device displays a list of "recommended beverages" on the screen and provides an interface for the user to select. For example, the following display may be displayed:

[0614] Recommended drinks:

[0615] 1. Chateau Mouton Rothschild - Price: 1,400 yen - Goes well with chicken

[0616] In this way, at each processing step, input data is received, analyzed, searched through a database, narrowed down, and finally the information is presented to the user, allowing the user to easily select a beverage that suits their preferences and conditions.

[0617] (Application example 1)

[0618] 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."

[0619] Conventional wine selection systems select appropriate wines based on information entered by users into a terminal, but these systems lack user convenience and are time-consuming, especially for busy consumers and users who are not familiar with wine.In addition, the methods for presenting information about the selected wines are limited, which does not sufficiently stimulate users' interest or desire to purchase.

[0620] 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.

[0621] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, and means for searching and narrowing down suitable beverages from a database based on the preference information and dish information. This allows the user to easily input information using voice input or touch gestures, the cloud server performs analysis in real time, and the user can intuitively check beverage information using a wearable display device.

[0622] "User preference information" refers to information about individual preferences such as the types and characteristics of beverages preferred by the user, taste trends, and past drinking experiences.

[0623] "Food information" refers to information such as the type, cooking method, and seasoning of the food that the user plans to enjoy with the drink selected by the user.

[0624] A "database" is an information system that systematically stores information such as types of beverages, their characteristics, prices, and compatibility with food.

[0625] "Search and filtering means" refers to the algorithms and processes used to identify matching beverages from the database using user input.

[0626] "Presenting means" refers to technology or devices for visually or audibly displaying or notifying the user of appropriate beverage information.

[0627] A "cloud server" is a server infrastructure that is distributed across the Internet and is capable of storing and processing information.

[0628] A "wearable display device" refers to an information display device that can be worn by a user on the body, and specifically refers to smart glasses, head-mounted displays, etc.

[0629] "Voice input" refers to the process or technique used to convert a user's speech into text data.

[0630] "Touch gestures" are interaction methods that allow users to input information using a touch screen or gesture recognizer.

[0631] In one embodiment of the present invention, the system effectively collects user preference information and cooking information, and then selects and presents the most suitable beverage based on the information.

[0632] First, a user puts on a wearable display device such as smart glasses. The user then uses voice input or touch gestures to input information such as their preferred drink, budget, and cooking information, allowing the user to input information intuitively and quickly.

[0633] The input information is then converted into text data by the smart glasses' internal processing unit and sent over the internet to a cloud server, which uses a generative AI model to analyze the user's input and search for the appropriate beverage from a database containing detailed information such as the type of beverage, price, and food pairings.

[0634] The cloud server selects several optimal drinks based on the user's preferences, food information, budget, etc. At this time, the generative AI model generates a prompt sentence based on the user's input, which is used as a query when searching the database.

[0635] The information on the selected beverages is displayed in real time on the smart glasses display. Users can scroll through the candidates using their gaze or gestures to check detailed information, allowing them to efficiently and easily select the perfect beverage.

[0636] Detailed function description

[0637] 1. Voice input and touch gestures:

[0638] The smart glasses' microphone allows users to speak into the glasses to input information, and the glasses' touch panel also allows users to input information using touch gestures.

[0639] 2. Cloud integration:

[0640] The input data is sent via the smart glasses' processing unit to a cloud server, which then analyzes the data using natural language processing technology.

[0641] 3. Generative AI Model:

[0642] The cloud server uses a generative AI model to generate prompts based on the user's input data, which are then used for database searches.

[0643] 4. Database search and filtering:

[0644] The cloud server searches for suitable drinks in a database that includes details such as the type of drink, its price, and whether it pairs with food, and then narrows down the drinks that match the user's preferences.

[0645] 5. Display:

[0646] The information on the selected drinks is displayed on the smart glasses' display, and the user can use their gaze or touch gestures to check the candidates and view detailed information.

[0647] Specific examples

[0648] For example, if a user says, "Tell me about an affordable red wine," the cloud server will analyze this and narrow down the selection from the database. The results will be displayed on the smart glasses' display, allowing the user to easily choose the perfect red wine.

[0649] An example of a prompt might be:

[0650] "The user uses their voice to input a red wine, under 2,000 yen, that goes well with grilled chicken. The cloud server analyzes the input, searches the database for a suitable red wine, and displays it on the smart glasses."

[0651] In this way, the system helps the user to easily select the appropriate beverage, which is very convenient, especially for busy consumers and beginners.

[0652] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[0653] Step 1:

[0654] User Input

[0655] The user puts on the smart glasses and inputs their preferred drink and food information using voice input or touch gestures. The input data includes the type of drink (e.g., red wine), budget (e.g., under 2,000 yen), and food (e.g., grilled chicken). This inputs the user's preferences and requests into the device as initial data.

[0656] Input: Favorite drink, budget, food information

[0657] Output: Text format of input data

[0658] Step 2:

[0659] Data transmission

[0660] The device converts the user's input data into text format and sends it to the cloud server. The data sent to the cloud server is JSON format data that includes the user ID, type of drink, budget, and dish information.

[0661] Input: Text input data

[0662] Output: JSON formatted transmission data

[0663] Step 3:

[0664] Data reception and analysis

[0665] The cloud server receives the data sent from the device and analyzes it using a generative AI model. The cloud server extracts the user's preferences and requests from the received data and generates a prompt. Based on the generated prompt, a query to the beverage database is constructed.

[0666] Input: JSON format data to be sent

[0667] Output: Analysis data, prompt statements, database queries

[0668] Step 4:

[0669] Database search

[0670] The cloud server searches for an appropriate drink from the drink database based on the generated prompt. The search criteria include the type of drink, price, and food compatibility information. The search results then list drinks that meet the user's requirements.

[0671] Input: Database query

[0672] Output: A list of drinks from the search results

[0673] Step 5:

[0674] Narrow down

[0675] The cloud server narrows down the database search results to the beverages that best fit the user's input criteria. The filtering criteria are applied based on the user's preferences and budget. The optimal beverage is determined, and its details are prepared.

[0676] Input: Search results list of drinks

[0677] Output: Detailed information about the selected beverages

[0678] Step 6:

[0679] Information presentation

[0680] The cloud server sends detailed information about the selected beverages to the device, including the name, description, price, image, and food pairing information. The device receives this information and displays it in real time on the smart glasses display.

[0681] Input: Detailed information of the selected beverage

[0682] Output: Drink information displayed on the smart glasses display

[0683] Step 7:

[0684] User confirmation and selection

[0685] The user can check the beverage information displayed on the smart glasses screen using their eyes or touch gestures to select the most suitable beverage. After selection, the smart glasses can also search again or provide additional information as needed.

[0686] Input: Drink information displayed on the screen

[0687] Output: User's selected drink information

[0688] Through the above steps, the user can efficiently and easily select the optimal beverage.

[0689] 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.

[0690] This invention is a system that selects and recommends the most suitable wine by combining information on the user's preferences and cuisine with an emotion engine that recognizes the user's emotions. This system includes a series of processes that receive information input by the user, search and narrow down the appropriate wines from a database based on that information, and finally present the selected wine information to the user.

[0691] System configuration

[0692] 1. User Input Method

[0693] The user uses the terminal to input their preferred wine, desired price range, food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[0694] 2. Receipt of information

[0695] The terminal sends the input information to the server, which receives and analyzes the information.

[0696] 3. Emotion Engine

[0697] The emotion engine is designed to recognize user emotions. It can analyze the user's facial expressions, voice, or text input to generate valid emotion data.

[0698] 4. Database Matching

[0699] The server searches for an appropriate wine from a database containing information on the type of wine, price, and food pairings based on the user's preference information, food information, and emotion data.

[0700] 5. Wine selection and narrowing down

[0701] The server narrows down the search results to the wine that best suits the user's preferences, taking into account the price range and food pairings specified by the user, as well as emotional data.

[0702] 6. Presentation of Information

[0703] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[0704] Specific examples

[0705] Example 1: Wine selection using an emotion engine

[0706] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal, and then uses the emotion engine to check their current emotional state (e.g., stressed, happy, etc.).

[0707] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0708] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[0709] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[0710] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[0711] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0712] Example 2: Suggesting wines suitable for relieving stress

[0713] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[0714] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0715] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[0716] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[0717] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[0718] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0719] In this way, by combining emotion engines, it becomes possible to select wines according to the user's emotional state, enabling more personalized recommendations. By linking together the various components of the system, it is possible to further increase user satisfaction.

[0720] The processing flow will be explained below.

[0721] Step 1:

[0722] The user uses the user interface of the terminal to input information about the wine they like, their budget, and the food they are eating. For example, they might input, "I like red wine," "My budget is under 2000 yen," and "Today's food is grilled chicken."

[0723] Step 2:

[0724] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[0725] Step 3:

[0726] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[0727] Step 4:

[0728] The device records video and audio to capture the user's facial expressions and voice, providing the basic data for the emotion engine to operate.

[0729] Step 5:

[0730] The emotion engine analyzes captured video and audio data to identify the user's current emotional state, using facial recognition and voice analysis algorithms to quantify the level of stress or joy the user is experiencing.

[0731] Step 6:

[0732] The device converts the emotion data obtained from the emotion engine back into JSON format and sends it to the server using an HTTP request.

[0733] Step 7:

[0734] The server combines wine preferences, budget, food information, and emotional data to search for a suitable wine from its database, for example, "a red wine that pairs well with grilled chicken and is effective at relieving stress."

[0735] Step 8:

[0736] The server then narrows down the search results to wines that best fit the user's criteria, taking into account the price range and food pairings specified by the user, as well as emotional data.

[0737] Step 9:

[0738] The server compiles detailed information about the selected wines (such as name, price, taste, compatibility with food, and information on the effect on emotional state) and sends it to the terminal in JSON format.

[0739] Step 10:

[0740] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[0741] Step 11:

[0742] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[0743] This process flow allows users to easily find wines that match their preferences and emotional state, enabling a more personalized selection.

[0744] Example 2

[0745] 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."

[0746] Conventional wine selection systems suggest appropriate wines based on user preferences and food information, but they are unable to take into account the user's emotional state. As a result, personalized wine selections based on the user's emotional state cannot be made, resulting in low satisfaction.

[0747] 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 a means for inputting user preference information and food information via a terminal, a means for transmitting the user preference information and food information to the server, a means for searching and narrowing down suitable wines from a database based on the preference information and food information, a means for using an emotion analysis engine to consider the user's emotional state when searching and narrowing down the wines, and a means for presenting information on the narrowed down wines including the emotion data to the user. This enables personalized wine selection according to the user's emotional state.

[0748] "User preference information" is information about the type, flavor, price range, etc. of wine that the user prefers.

[0749] "Cuisine information" is information about the cuisine that the user wants to pair with the drink. Specific examples include the type of main dish and its seasoning.

[0750] A "terminal" is an electronic device, such as a computer, smartphone, or tablet, that a user uses to enter information.

[0751] A "server" is a central processing unit that receives requests from users and executes the processing.

[0752] A "database" is an information storage system that stores various information about wine.

[0753] An "emotion analysis engine" is software or hardware that analyzes a user's facial expression, voice, or text input to determine the user's emotional state.

[0754] A "graphical user interface (GUI)" is an interface that allows a user to visually input or confirm information.

[0755] "Wine information" refers to detailed information about the selected wine, including the brand, price, characteristics, and description of pairings.

[0756] "Emotion data" is information that indicates the emotional state of the user, generated by the emotion analysis engine.

[0757] The system of the present invention is designed to select and recommend the most suitable wine based on the user's preferences, food information, and emotional state. The system includes multiple hardware and software components.

[0758] User Input Method

[0759] Users input their preferred wine, desired price range, and food information via the device. They can then have their current emotional state analyzed using the emotion engine. Input methods include keyboard, touch screen, and voice input. For example, if a user voice-inputs into the device, "What wine goes well with grilled chicken?", the emotion analysis function can analyze the user's state as "I'm feeling stressed."

[0760] Receiving and Sending Information

[0761] The device combines the information entered by the user with data from the emotion engine to generate JSON format data, which it then sends to the server using an HTTP request. The device also performs error checking to ensure the data was sent correctly.

[0762] Data analysis and searching

[0763] The server receives the data sent from the device and analyzes the user's preference information, food information, and emotion data. Based on this information, it searches for relevant wine information from a wine database, which stores information on wine types, prices, and food pairings.

[0764] Using a sentiment analysis engine

[0765] When searching and filtering wines, the server uses an emotion analysis engine that analyzes the user's facial expressions, voice, and text input to determine the user's emotional state, allowing it to select the wine that best suits the user's current emotional state.

[0766] Narrowing down and presenting information

[0767] The server narrows down the most suitable wines by taking into account the user's preference information, food information, and emotional data. The selected wine information is converted into JSON format and sent to the device. The device receives the wine information sent from the server and displays it on the user interface. The user can confirm the presented wine information.

[0768] Specific examples

[0769] Example 1: Wine selection using an emotion engine

[0770] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal and then uses the emotion engine to check their current emotional state (e.g., feeling stressed).

[0771] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0772] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[0773] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[0774] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[0775] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0776] Example 2: Suggesting wines suitable for relieving stress

[0777] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[0778] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[0779] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[0780] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[0781] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[0782] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[0783] In this way, by combining emotion engines, it becomes possible to select wines that suit the user's emotional state. By having each of the system's means work in tandem, user satisfaction can be further increased.

[0784] The flow of the identification process in the second embodiment will be described with reference to FIG.

[0785] Step 1: Enter your user information

[0786] Specific description:

[0787] The user inputs information about their preferred wine (e.g., red wine), desired price range (e.g., 2,000-3,000 yen), and food information (e.g., grilled chicken) into the device. The emotion engine is then activated to analyze the user's current emotional state (e.g., feeling stressed).

[0788] Input: User preference information, food information, emotional state

[0789] Output: Integrated user information and sentiment data (converted to JSON format)

[0790] Specific behavior:

[0791] The user speaks into the device, asking, "What wine goes well with grilled chicken?" and the device uses the emotion analysis function to determine that the user is feeling stressed. The device converts the voice data into text and generates JSON data along with the emotion analysis results.

[0792] Step 2: Submit your information

[0793] Specific description:

[0794] The device sends the generated JSON format data to the server using an HTTP request, and performs an error check to determine whether the data was sent successfully.

[0795] Input: JSON format user information and emotion data

[0796] Output: HTTP request sent successfully to the server

[0797] Specific behavior:

[0798] The device sends a "POST / wine-recommendation HTTP / 1.1" request and receives a status code of 200 (OK) from the server, confirming that the transmission was successful.

[0799] Step 3: Receiving and analyzing information

[0800] Specific description:

[0801] The server receives the HTTP request sent from the device and parses the JSON data to extract the user's preference information, cooking information, and emotion data.

[0802] Input: JSON data sent in the HTTP request

[0803] Output: Extracted user preference information, food information, and emotion data (converted into internal data structure)

[0804] Specific behavior:

[0805] The server retrieves the JSON data from the request body, parses fields such as "user_preference," "food_info," and "emotion_data," and extracts each item.

[0806] Step 4: Database Search

[0807] Specific description:

[0808] The server queries the wine database based on the extracted user preference information, food information, and emotion data to search for related wine information.

[0809] Input: User preference information, food information, emotional data

[0810] Output: Search results as a list of wine candidates (internal data storage)

[0811] Specific behavior:

[0812] The server executes "SELECT FROM wines WHERE food_pairing = 'Grilled Chicken' AND price BETWEEN 2000 AND 3000" and temporarily stores the wine list obtained from the database.

[0813] Step 5: Consider sentiment data and optimize

[0814] Specific description:

[0815] The server selects the most suitable wine from the temporarily stored wine information, taking into account the user's emotional data. This process uses an emotion analysis engine.

[0816] Input: wine candidate list, sentiment data

[0817] Output: Best wine information (converted to JSON format)

[0818] Specific behavior:

[0819] The server uses a sentiment analysis engine to select the "best wine for stress relief" by taking into account the emotional data. The selected wine information is converted into JSON format.

[0820] Step 6: Submit and display wine information

[0821] Specific description:

[0822] The server sends information about the selected wine to the terminal as an HTTP response, and the terminal displays the received information on the user interface and provides it to the user.

[0823] Input: Best wine information (JSON format)

[0824] Output: Wine information displayed in the user interface

[0825] Specific behavior:

[0826] The server returns the selected wine information to the terminal along with a "200 OK" status, and the terminal displays details such as the brand, price, and comments on the user interface.

[0827] Through the above processing steps, it becomes possible to select and suggest the most suitable wine according to the user's emotional state.

[0828] (Application example 2)

[0829] 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."

[0830] Conventional wine selection systems recommend wines based on user preferences and food information, but because they do not consider the user's emotions, they are unable to provide personalized recommendations tailored to each user's emotional state. Furthermore, the information related to the recommended wines is limited, resulting in a lack of content that helps users deepen their understanding of wines. This makes it difficult to increase user satisfaction.

[0831] 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.

[0832] In this invention, the server includes a user input means, a means for receiving preference information and food information, a means for recognizing the user's emotions using an emotion engine, a means for searching and narrowing down suitable wines from a database and generating wine information including related content, and a means for presenting the wine information and related content to the user. This enables personalized recommendations by selecting the optimal wine according to the user's emotional state and providing a variety of content such as related video links.

[0833] "User preference information" is information that represents an individual user's tastes and preferences regarding wine.

[0834] "Cuisine information" is information about specific cuisine that the user would like to pair with wine.

[0835] The "means for receiving" refers to a method by which the system receives the preference information and dish information input by the user.

[0836] The "emotion engine" is a component that recognizes a user's emotions through facial expression, voice, or text analysis and generates valid emotion data.

[0837] The "search and narrowing down means" refers to a method of searching for the most suitable wine from a database based on the received preference information, food information, and emotional data, and ultimately narrowing down the candidates.

[0838] A "database" is a recording medium that includes information such as wine types, prices, and food compatibility information.

[0839] The "related content distribution service" is a service that provides users with videos and explanatory information related to the selected wine.

[0840] A "user interface" is an interactive means for users to input information, and is displayed on the screen of a computer or smartphone.

[0841] "Wine information" is detailed data on wine types, prices, food pairings, etc.

[0842] "Video link" means a hyperlink for accessing video content on the Internet.

[0843] This invention is a system that selects the optimal wine based on the user's preference information, food information, and user emotion data, and provides the user with related video content. This system is implemented as an application that runs primarily on a mobile device such as a smartphone. A specific implementation of this system is described below.

[0844] First, the user installs and launches the smartphone application. The application provides a user interface for inputting their wine preferences, food information, and price range. The user inputs the information using a keyboard or touch screen. Furthermore, facial expression recognition and voice analysis are performed to recognize the user's current emotional state using an emotion engine. This generates the user's emotional data.

[0845] The device sends the input preference information, food information, and emotion data to the server. The data is usually packaged in JSON format and sent using an HTTP request. The server receives the data and analyzes the input information. Based on the analyzed data, it searches for an appropriate wine from a database that contains information on the type of wine, price, and food pairing.

[0846] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the user's emotional data. This narrowing down process takes into account the price range and cuisine information entered by the user, as well as the recognized emotional data. For example, if the user is feeling stressed, the server will recommend wines that are good for relieving stress.

[0847] Next, the server sends recommendation information to the device, including information about the selected wines and related video content (e.g., videos about the wine's production process and reviews). The device receives this information and displays detailed information about the wines and video links on the user interface. This allows the user to enjoy not only the information about the selected wines but also the video content related to those wines at the same time.

[0848] Examples of specific hardware and software used

[0849] Hardware: Smartphones, servers

[0850] Software: Python program, Emotion Engine module, Database module

[0851] Examples of concrete examples and prompts

[0852] For example, if a user requests a wine that "pairs well with steak" and the emotion engine recognizes that the user's current emotion is "relaxed," the system will recommend a "red wine that pairs well with steak to enhance relaxation." It will also provide a video showing the wine's production process and a professional review.

[0853] Example prompt sentence:

[0854] User: "I want to know what red wine goes well with steak."

[0855] Emotion Engine: "The user is currently relaxed"

[0856] Result: "The following red wines pair well with steak for a relaxing experience... [Wine information and video link]"

[0857] This process allows users to simultaneously enjoy both personalized wine selections and related video content.

[0858] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[0859] Step 1:

[0860] A user launches a smartphone application and inputs their wine preferences, food information, and price range using a keyboard, touchscreen, or voice input, forming the user's input data.

[0861] Step 2:

[0862] The device receives the information entered by the user and converts it into JSON format. It then uses an emotion engine to perform facial expression recognition and voice analysis to obtain the user's emotional data. The emotion engine uses a generative AI model to analyze the user's emotions. The input is the user's emotional state (text, voice, and facial expression data), and the output is emotional data (e.g., relaxed, stressed, etc.).

[0863] Step 3:

[0864] The device packages the user's preference information, cooking information, and emotion data and sends them to the server using an HTTP request. The input is data converted to JSON format, and the output is the result of the transmission to the server.

[0865] Step 4:

[0866] The server analyzes the received information and extracts the user's preference information, food information, and emotion data. The input is JSON data, and the output is the analyzed information (preference information, food information, emotion data).

[0867] Step 5:

[0868] The server searches a database for suitable wines based on the analyzed information. The database contains information on wine types, prices, and food pairings. The server performs a database search based on the entered user information and emotion data. The input is the analysis results data, and the output is a list of search results wines.

[0869] Step 6:

[0870] The server narrows down the search results to wines that best fit the user's preferences. This narrowing down takes into account the price range, food information, and emotional data specified by the user. The input is a list of wines from the search results, and the output is the narrowed down wine information.

[0871] Step 7:

[0872] The server generates recommendation information including the narrowed-down wine information and related video content. The server retrieves video links and other information from the database of related content distribution services and provides them to the user. The input is the narrowed-down wine information, and the output is recommendation information including the wine information and related video links.

[0873] Step 8:

[0874] The server sends the generated recommendation information to the terminal. The terminal displays the received data on the user interface, allowing the user to view detailed information about the selected wine and related video content. The input is the recommendation information data, and the output is the display on the user interface.

[0875] 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.

[0876] 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.

[0877] 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.

[0878] [Third embodiment]

[0879] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[0880] 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.

[0881] 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).

[0882] 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.

[0883] 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.

[0884] 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).

[0885] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.

[0886] 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.

[0887] 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.

[0888] 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.

[0889] 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.

[0890] 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."

[0891] This invention is a system that selects and recommends optimal wines based on user input. This system involves a series of processes: inputting and receiving user preference information and food information, searching and narrowing down appropriate wines from a database based on that information, and presenting that information to the user.

[0892] System configuration

[0893] 1. User Input Method

[0894] The user uses the device to input their preferred wine, desired price range, and food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[0895] 2. Receipt of information

[0896] The terminal sends the input information to the server, which receives and analyzes the information.

[0897] 3. Database Matching

[0898] The server searches for an appropriate wine from a database based on the user's preference and food information. The database contains information such as the type of wine, price, and food compatibility.

[0899] 4. Wine selection and narrowing down

[0900] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the price range and food pairings specified by the user.

[0901] 5. Presentation of Information

[0902] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[0903] Specific examples

[0904] Example 1: Choosing a wine when you don't know your preferences

[0905] 1. The user types "I don't know what my favorite wine is" into the terminal.

[0906] 2. The server suggests basic information about the wine and the type of wine you would like to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[0907] 3. The user answers the question.

[0908] 4. The server recommends several wines based on the answers to the questions and sends this information to the terminal.

[0909] 5. The terminal displays a list of recommended wines to the user.

[0910] Example 2: Choosing a wine to pair with a dish

[0911] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what wine goes well with it."

[0912] 2. The server searches the database for wines that go well with grilled chicken.

[0913] 3. The server considers the customer's desired price range and selects a wine that is reasonably priced and goes well with the grilled chicken, and sends the information to the terminal.

[0914] 4. The device displays information about the recommended wine to the user.

[0915] Example 3: Looking for affordable wines

[0916] 1. The user types into the terminal, "Please tell me about some reasonably priced wines."

[0917] 2. The server searches the database for wines with a set price limit.

[0918] 3. The server will recommend several wines that fit the desired price range and send this information to the terminal.

[0919] 4. The device displays information about the recommended wine to the user.

[0920] In this way, the present invention allows users to easily select wines that match their preferences and the food they are eating. The various components of the system work together to increase user satisfaction and support the selection of the most suitable wine.

[0921] The processing flow will be explained below.

[0922] Step 1:

[0923] The user uses the user interface of the terminal to input information such as the preferred wine, budget, and dish information. For example, the user might input, "I like red wine, my budget is within 2000 yen, and today's dish is grilled chicken."

[0924] Step 2:

[0925] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[0926] Step 3:

[0927] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[0928] Step 4:

[0929] The server searches the database for wines that go well with the food based on the extracted food information. For example, it searches for wines that go well with "grilled chicken" and stores the results in a temporary list.

[0930] Step 5:

[0931] The server filters the temporary list to wines that match the user's taste and budget, for example, red wines under 2000 yen.

[0932] Step 6:

[0933] The server selects the best wines from the narrowed down list, based on the criteria that best meet the user's tastes and pair with the food.

[0934] Step 7:

[0935] The server compiles detailed information about the selected wine (such as name, price, taste, and food compatibility) and sends it to the terminal in JSON format.

[0936] Step 8:

[0937] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[0938] Step 9:

[0939] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[0940] This process allows users to easily find the wine that best suits their needs.

[0941] Example 1

[0942] 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."

[0943] The problem with existing beverage selection systems is that it is difficult for users to easily find a beverage that matches their preferences or the food they are eating. In particular, there is a need for a system that can efficiently receive information about a user's preferences and food, and select an appropriate beverage.

[0944] 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.

[0945] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, means for searching and narrowing down suitable beverages from a database based on the preference information and dish information, and means for presenting information on the narrowed-down beverages to the user, thereby enabling the user to easily find a beverage that matches their preference and dish.

[0946] "User preference information" is information that indicates the user's preferences and conditions for drinks.

[0947] "Food information" is information about the type and content of food that the user wants to enjoy with the drink.

[0948] A "digital interface" is any electronic interface or device used by a user to input information, including keyboards, touchscreens, and voice input.

[0949] "Means for receiving" refers to the function by which the server receives and analyzes the user's preference information and cooking information sent from the terminal.

[0950] A "database" is a digital data storage device that systematically organizes and stores a large amount of information and allows for searching and inquiry.

[0951] The "search and narrowing down means" is a function that extracts suitable information from a database based on the user's preference information and cooking information, and then selects the most suitable information from that database.

[0952] The "presentation means" is a function that displays and provides the narrowed down information in a format that is easy for the user to understand.

[0953] This invention is a system that selects and suggests optimal beverages based on user input. This system involves a series of processes: inputting and receiving user preference and food information, searching and narrowing down appropriate beverages from a database based on that information, and presenting that information to the user.

[0954] The elements of the system are configured as follows:

[0955] Hardware and Software Configuration

[0956] Hardware

[0957] Devices: Personal computers (PCs), smartphones, tablets, etc.

[0958] Server: A high-performance server (e.g., Apache HTTP Server running on a Linux OS)

[0959] software

[0960] Database: MySQL

[0961] User interface: Web browser (e.g. Google Chrome) using HTML / CSS and JavaScript

[0962] Program processing

[0963] User Input Phase

[0964] 1. Using a terminal, a user enters their preferred beverage, desired price range, and meal information on a login screen or homepage. Input can be done via keyboard, touchscreen, voice input, or other methods.

[0965] Information Reception Phase

[0966] 2. The device sends the information entered by the user to the server. The data is sent via an HTTP POST request, often in JSON format.

[0967] Information analysis phase

[0968] 3. The server receives and analyzes the information sent from the device. This analysis is performed using server-side scripts such as Python or Node.js.

[0969] Database lookup phase

[0970] 4. The server searches the database based on the parsed user information using an SQL query, such as "SELECT FROM drinks WHERE type="red wine" AND price <= 1500".

[0971] Refinement Phase

[0972] 5. The server narrows down the search results based on the user's criteria, using a Python library such as Pandas to filter and select the appropriate beverage.

[0973] Information transmission phase

[0974] 6. The server sends the selected drink information to the terminal in JSON format using an HTTP response.

[0975] Information display phase

[0976] 7. The device displays the received beverage information to the user using HTML / CSS and JavaScript in a list format on the screen.

[0977] Examples of specific examples and prompts

[0978] Example 1: Selecting a drink when preferences are unknown

[0979] 1. The user enters "I don't know what my favorite drink is" into the terminal.

[0980] 2. The server suggests basic information about the drink and the type of drink you want to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[0981] 3. The user answers the question.

[0982] 4. The server recommends some drinks based on the answers to the questions and sends the information to the terminal.

[0983] 5. The terminal displays a list of recommended drinks to the user.

[0984] Examples of prompts:

[0985] If a user types, "I don't know what my favorite drink is," ask them, "Do you prefer red or white wine?"

[0986] Example 2: Choosing a drink to go with your meal

[0987] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what drink goes well with it."

[0988] 2. The server searches the database for drinks that go well with grilled chicken.

[0989] 3. The server considers the customer's desired price range, selects a drink that goes well with the grilled chicken and is reasonably priced, and sends the information to the terminal.

[0990] 4. The terminal displays information about the recommended beverage to the user.

[0991] Examples of prompts:

[0992] For a user who enters "Today's menu is grilled chicken, and I would like to know what drinks go well with the dish," search for drinks that go well with grilled chicken and recommend them taking into account their desired price range.

[0993] Example 3: Looking for affordable drinks

[0994] 1. The user types into the terminal, "Tell me about some reasonably priced drinks."

[0995] 2. The server searches the database for drinks with a set price limit.

[0996] 3. The server recommends several drinks that fit the desired price range and sends this information to the terminal.

[0997] 4. The terminal displays information about the recommended beverage to the user.

[0998] Examples of prompts:

[0999] If a user types in "Tell me some reasonably priced drinks," the app will recommend some drinks that fit within the specified price range.

[1000] In this way, through specific processing steps and operations, the user can easily select a beverage that meets their preferences and requirements.

[1001] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1002] Step 1:

[1003] Users use their devices to input their preferred beverages, desired price range, and food information from a login screen or homepage. This input can be done using a keyboard, touch screen, or voice input. Information input by users may include, for example, "red wine," "budget under 1,500 yen," and "drinks that go well with chicken." This information is collected as input data.

[1004] Step 2:

[1005] The device sends the information entered by the user to the server using an HTTP POST request, with the data format being JSON. For example, the data sent will be in the following format:

[1006] json

[1007] {

[1008] "type": "red wine",

[1009] "price": 1500,

[1010] "pairing": "chicken"

[1011] }

[1012] The terminal then formats the entered data appropriately and sends it to the server.

[1013] Step 3:

[1014] The server receives and analyzes the information sent from the terminal. The received data is in JSON format, and it is analyzed to extract each piece of information. For example, the received JSON data is analyzed to extract the type, price, and pairing fields. This analysis process is generally performed using Python or Node.js. The analysis result is as follows:

[1015] Type of drink: Red wine

[1016] Price range: Under 1500 yen

[1017] Food Tip: Pair with chicken

[1018] Step 4:

[1019] The server searches the database based on the parsed user information. Here, it uses an SQL query to search the database for drinks that match the criteria. For example, the following SQL query is executed:

[1020] sql

[1021] SELECT FROM drinks WHERE type='red wine' AND price <= 1500 AND pairing='chicken'

[1022] By executing this query, information on beverages that match the criteria is retrieved from the database, and the retrieved data is saved in list format.

[1023] Step 5:

[1024] The server narrows down the search results based on the user's criteria. Here, data filtering is performed using Python's Pandas library, etc. Specifically, from the multiple beverage information obtained, the beverage that best meets the user's criteria is selected. For example, the one beverage that best meets the criteria of "budget under 1500 yen" and "goes well with chicken" is selected. The narrowed down data looks like this:

[1025] json

[1026] {

[1027] "name": "Chateau Mouton Rothschild",

[1028] "price": 1400,

[1029] "pairing": "chicken"

[1030] }

[1031] This data is used to select the optimal beverage.

[1032] Step 6:

[1033] The server sends the selected drink information to the terminal in JSON format. This is done using an HTTP response. Specifically, a JSON object containing the selected drink information is sent to the terminal. This JSON object has the following format:

[1034] json

[1035] {

[1036] "name": "Chateau Mouton Rothschild",

[1037] "price": 1400,

[1038] "pairing": "chicken"

[1039] }

[1040] Step 7:

[1041] The device displays the received beverage information to the user. HTML / CSS and JavaScript are used for display. Specifically, the device displays a list of "recommended beverages" on the screen and provides an interface for the user to select. For example, the following display may be displayed:

[1042] Recommended drinks:

[1043] 1. Chateau Mouton Rothschild - Price: 1,400 yen - Goes well with chicken

[1044] In this way, at each processing step, input data is received, analyzed, searched through a database, narrowed down, and finally the information is presented to the user, allowing the user to easily select a beverage that suits their preferences and conditions.

[1045] (Application example 1)

[1046] 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."

[1047] Conventional wine selection systems select appropriate wines based on information entered by users into a terminal, but these systems lack user convenience and are time-consuming, especially for busy consumers and users who are not familiar with wine.In addition, the methods for presenting information about the selected wines are limited, which does not sufficiently stimulate users' interest or desire to purchase.

[1048] 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.

[1049] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, and means for searching and narrowing down suitable beverages from a database based on the preference information and dish information. This allows the user to easily input information using voice input or touch gestures, the cloud server performs analysis in real time, and the user can intuitively check beverage information using a wearable display device.

[1050] "User preference information" refers to information about individual preferences such as the types and characteristics of beverages preferred by the user, taste trends, and past drinking experiences.

[1051] "Food information" refers to information such as the type, cooking method, and seasoning of the food that the user plans to enjoy with the drink selected by the user.

[1052] A "database" is an information system that systematically stores information such as types of beverages, their characteristics, prices, and compatibility with food.

[1053] "Search and filtering means" refers to the algorithms and processes used to identify matching beverages from the database using user input.

[1054] "Presenting means" refers to technology or devices for visually or audibly displaying or notifying the user of appropriate beverage information.

[1055] A "cloud server" is a server infrastructure that is distributed across the Internet and is capable of storing and processing information.

[1056] A "wearable display device" refers to an information display device that can be worn by a user on the body, and specifically refers to smart glasses, head-mounted displays, etc.

[1057] "Voice input" refers to the process or technique used to convert a user's speech into text data.

[1058] "Touch gestures" are interaction methods that allow users to input information using a touch screen or gesture recognizer.

[1059] In one embodiment of the present invention, the system effectively collects user preference information and cooking information, and then selects and presents the most suitable beverage based on the information.

[1060] First, a user puts on a wearable display device such as smart glasses. The user then uses voice input or touch gestures to input information such as their preferred drink, budget, and cooking information, allowing the user to input information intuitively and quickly.

[1061] The input information is then converted into text data by the smart glasses' internal processing unit and sent over the internet to a cloud server, which uses a generative AI model to analyze the user's input and search for the appropriate beverage from a database containing detailed information such as the type of beverage, price, and food pairings.

[1062] The cloud server selects several optimal drinks based on the user's preferences, food information, budget, etc. At this time, the generative AI model generates a prompt sentence based on the user's input, which is used as a query when searching the database.

[1063] The information on the selected beverages is displayed in real time on the smart glasses display. Users can scroll through the candidates using their gaze or gestures to check detailed information, allowing them to efficiently and easily select the perfect beverage.

[1064] Detailed function description

[1065] 1. Voice input and touch gestures:

[1066] The smart glasses' microphone allows users to speak into the glasses to input information, and the glasses' touch panel also allows users to input information using touch gestures.

[1067] 2. Cloud integration:

[1068] The input data is sent via the smart glasses' processing unit to a cloud server, which then analyzes the data using natural language processing technology.

[1069] 3. Generative AI Model:

[1070] The cloud server uses a generative AI model to generate prompts based on the user's input data, which are then used for database searches.

[1071] 4. Database search and filtering:

[1072] The cloud server searches for suitable drinks in a database that includes details such as the type of drink, its price, and whether it pairs with food, and then narrows down the drinks that match the user's preferences.

[1073] 5. Display:

[1074] The information on the selected drinks is displayed on the smart glasses' display, and the user can use their gaze or touch gestures to check the candidates and view detailed information.

[1075] Specific examples

[1076] For example, if a user says, "Tell me about an affordable red wine," the cloud server will analyze this and narrow down the selection from the database. The results will be displayed on the smart glasses' display, allowing the user to easily choose the perfect red wine.

[1077] An example of a prompt might be:

[1078] "The user uses their voice to input a red wine, under 2,000 yen, that goes well with grilled chicken. The cloud server analyzes the input, searches the database for a suitable red wine, and displays it on the smart glasses."

[1079] In this way, the system helps the user to easily select the appropriate beverage, which is very convenient, especially for busy consumers and beginners.

[1080] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1081] Step 1:

[1082] User Input

[1083] The user puts on the smart glasses and inputs their preferred drink and food information using voice input or touch gestures. The input data includes the type of drink (e.g., red wine), budget (e.g., under 2,000 yen), and food (e.g., grilled chicken). This inputs the user's preferences and requests into the device as initial data.

[1084] Input: Favorite drink, budget, food information

[1085] Output: Text format of input data

[1086] Step 2:

[1087] Data transmission

[1088] The device converts the user's input data into text format and sends it to the cloud server. The data sent to the cloud server is JSON format data that includes the user ID, type of drink, budget, and dish information.

[1089] Input: Text input data

[1090] Output: JSON formatted transmission data

[1091] Step 3:

[1092] Data reception and analysis

[1093] The cloud server receives the data sent from the device and analyzes it using a generative AI model. The cloud server extracts the user's preferences and requests from the received data and generates a prompt. Based on the generated prompt, a query to the beverage database is constructed.

[1094] Input: JSON format data to be sent

[1095] Output: Analysis data, prompt statements, database queries

[1096] Step 4:

[1097] Database search

[1098] The cloud server searches for an appropriate drink from the drink database based on the generated prompt. The search criteria include the type of drink, price, and food compatibility information. The search results then list drinks that meet the user's requirements.

[1099] Input: Database query

[1100] Output: A list of drinks from the search results

[1101] Step 5:

[1102] Narrow down

[1103] The cloud server narrows down the database search results to the beverages that best fit the user's input criteria. The filtering criteria are applied based on the user's preferences and budget. The optimal beverage is determined, and its details are prepared.

[1104] Input: Search results list of drinks

[1105] Output: Detailed information about the selected beverages

[1106] Step 6:

[1107] Information presentation

[1108] The cloud server sends detailed information about the selected beverages to the device, including the name, description, price, image, and food pairing information. The device receives this information and displays it in real time on the smart glasses display.

[1109] Input: Detailed information of the selected beverage

[1110] Output: Drink information displayed on the smart glasses display

[1111] Step 7:

[1112] User confirmation and selection

[1113] The user can check the beverage information displayed on the smart glasses screen using their eyes or touch gestures to select the most suitable beverage. After selection, the smart glasses can also search again or provide additional information as needed.

[1114] Input: Drink information displayed on the screen

[1115] Output: User's selected drink information

[1116] Through the above steps, the user can efficiently and easily select the optimal beverage.

[1117] 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.

[1118] This invention is a system that selects and recommends the most suitable wine by combining information on the user's preferences and cuisine with an emotion engine that recognizes the user's emotions. This system includes a series of processes that receive information input by the user, search and narrow down the appropriate wines from a database based on that information, and finally present the selected wine information to the user.

[1119] System configuration

[1120] 1. User Input Method

[1121] The user uses the terminal to input their preferred wine, desired price range, food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[1122] 2. Receipt of information

[1123] The terminal sends the input information to the server, which receives and analyzes the information.

[1124] 3. Emotion Engine

[1125] The emotion engine is designed to recognize user emotions. It can analyze the user's facial expressions, voice, or text input to generate valid emotion data.

[1126] 4. Database Matching

[1127] The server searches for an appropriate wine from a database containing information on the type of wine, price, and food pairings based on the user's preference information, food information, and emotion data.

[1128] 5. Wine selection and narrowing down

[1129] The server narrows down the search results to the wine that best suits the user's preferences, taking into account the price range and food pairings specified by the user, as well as emotional data.

[1130] 6. Presentation of Information

[1131] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[1132] Specific examples

[1133] Example 1: Wine selection using an emotion engine

[1134] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal, and then uses the emotion engine to check their current emotional state (e.g., stressed, happy, etc.).

[1135] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1136] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[1137] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[1138] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[1139] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1140] Example 2: Suggesting wines suitable for relieving stress

[1141] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[1142] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1143] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[1144] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[1145] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[1146] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1147] In this way, by combining emotion engines, it becomes possible to select wines according to the user's emotional state, enabling more personalized recommendations. By linking together the various components of the system, it is possible to further increase user satisfaction.

[1148] The processing flow will be explained below.

[1149] Step 1:

[1150] The user uses the user interface of the terminal to input information about the wine they like, their budget, and the food they are eating. For example, they might input, "I like red wine," "My budget is under 2000 yen," and "Today's food is grilled chicken."

[1151] Step 2:

[1152] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[1153] Step 3:

[1154] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[1155] Step 4:

[1156] The device records video and audio to capture the user's facial expressions and voice, providing the basic data for the emotion engine to operate.

[1157] Step 5:

[1158] The emotion engine analyzes captured video and audio data to identify the user's current emotional state, using facial recognition and voice analysis algorithms to quantify the level of stress or joy the user is experiencing.

[1159] Step 6:

[1160] The device converts the emotion data obtained from the emotion engine back into JSON format and sends it to the server using an HTTP request.

[1161] Step 7:

[1162] The server combines wine preferences, budget, food information, and emotional data to search for a suitable wine from its database, for example, "a red wine that pairs well with grilled chicken and is effective at relieving stress."

[1163] Step 8:

[1164] The server then narrows down the search results to wines that best fit the user's criteria, taking into account the price range and food pairings specified by the user, as well as emotional data.

[1165] Step 9:

[1166] The server compiles detailed information about the selected wines (such as name, price, taste, compatibility with food, and information on the effect on emotional state) and sends it to the terminal in JSON format.

[1167] Step 10:

[1168] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[1169] Step 11:

[1170] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[1171] This process flow allows users to easily find wines that match their preferences and emotional state, enabling a more personalized selection.

[1172] Example 2

[1173] 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."

[1174] Conventional wine selection systems suggest appropriate wines based on user preferences and food information, but they are unable to take into account the user's emotional state. As a result, personalized wine selections based on the user's emotional state cannot be made, resulting in low satisfaction.

[1175] 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 a means for inputting user preference information and food information via a terminal, a means for transmitting the user preference information and food information to the server, a means for searching and narrowing down suitable wines from a database based on the preference information and food information, a means for using an emotion analysis engine to consider the user's emotional state when searching and narrowing down the wines, and a means for presenting information on the narrowed down wines including the emotion data to the user. This enables personalized wine selection according to the user's emotional state.

[1176] "User preference information" is information about the type, flavor, price range, etc. of wine that the user prefers.

[1177] "Cuisine information" is information about the cuisine that the user wants to pair with the drink. Specific examples include the type of main dish and its seasoning.

[1178] A "terminal" is an electronic device, such as a computer, smartphone, or tablet, that a user uses to enter information.

[1179] A "server" is a central processing unit that receives requests from users and executes the processing.

[1180] A "database" is an information storage system that stores various information about wine.

[1181] An "emotion analysis engine" is software or hardware that analyzes a user's facial expression, voice, or text input to determine the user's emotional state.

[1182] A "graphical user interface (GUI)" is an interface that allows a user to visually input or confirm information.

[1183] "Wine information" refers to detailed information about the selected wine, including the brand, price, characteristics, and description of pairings.

[1184] "Emotion data" is information that indicates the emotional state of the user, generated by the emotion analysis engine.

[1185] The system of the present invention is designed to select and recommend the most suitable wine based on the user's preferences, food information, and emotional state. The system includes multiple hardware and software components.

[1186] User Input Method

[1187] Users input their preferred wine, desired price range, and food information via the device. They can then have their current emotional state analyzed using the emotion engine. Input methods include keyboard, touch screen, and voice input. For example, if a user voice-inputs into the device, "What wine goes well with grilled chicken?", the emotion analysis function can analyze the user's state as "I'm feeling stressed."

[1188] Receiving and Sending Information

[1189] The device combines the information entered by the user with data from the emotion engine to generate JSON format data, which it then sends to the server using an HTTP request. The device also performs error checking to ensure the data was sent correctly.

[1190] Data analysis and searching

[1191] The server receives the data sent from the device and analyzes the user's preference information, food information, and emotion data. Based on this information, it searches for relevant wine information from a wine database, which stores information on wine types, prices, and food pairings.

[1192] Using a sentiment analysis engine

[1193] When searching and filtering wines, the server uses an emotion analysis engine that analyzes the user's facial expressions, voice, and text input to determine the user's emotional state, allowing it to select the wine that best suits the user's current emotional state.

[1194] Narrowing down and presenting information

[1195] The server narrows down the most suitable wines by taking into account the user's preference information, food information, and emotional data. The selected wine information is converted into JSON format and sent to the device. The device receives the wine information sent from the server and displays it on the user interface. The user can confirm the presented wine information.

[1196] Specific examples

[1197] Example 1: Wine selection using an emotion engine

[1198] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal and then uses the emotion engine to check their current emotional state (e.g., feeling stressed).

[1199] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1200] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[1201] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[1202] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[1203] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1204] Example 2: Suggesting wines suitable for relieving stress

[1205] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[1206] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1207] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[1208] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[1209] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[1210] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1211] In this way, by combining emotion engines, it becomes possible to select wines that suit the user's emotional state. By having each of the system's means work in tandem, user satisfaction can be further increased.

[1212] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1213] Step 1: Enter your user information

[1214] Specific description:

[1215] The user inputs information about their preferred wine (e.g., red wine), desired price range (e.g., 2,000-3,000 yen), and food information (e.g., grilled chicken) into the device. The emotion engine is then activated to analyze the user's current emotional state (e.g., feeling stressed).

[1216] Input: User preference information, food information, emotional state

[1217] Output: Integrated user information and sentiment data (converted to JSON format)

[1218] Specific behavior:

[1219] The user speaks into the device, asking, "What wine goes well with grilled chicken?" and the device uses the emotion analysis function to determine that the user is feeling stressed. The device converts the voice data into text and generates JSON data along with the emotion analysis results.

[1220] Step 2: Submit your information

[1221] Specific description:

[1222] The device sends the generated JSON format data to the server using an HTTP request, and performs an error check to determine whether the data was sent successfully.

[1223] Input: JSON format user information and emotion data

[1224] Output: HTTP request sent successfully to the server

[1225] Specific behavior:

[1226] The device sends a "POST / wine-recommendation HTTP / 1.1" request and receives a status code of 200 (OK) from the server, confirming that the transmission was successful.

[1227] Step 3: Receiving and analyzing information

[1228] Specific description:

[1229] The server receives the HTTP request sent from the device and parses the JSON data to extract the user's preference information, cooking information, and emotion data.

[1230] Input: JSON data sent in the HTTP request

[1231] Output: Extracted user preference information, food information, and emotion data (converted into internal data structure)

[1232] Specific behavior:

[1233] The server retrieves the JSON data from the request body, parses fields such as "user_preference," "food_info," and "emotion_data," and extracts each item.

[1234] Step 4: Database Search

[1235] Specific description:

[1236] The server queries the wine database based on the extracted user preference information, food information, and emotion data to search for related wine information.

[1237] Input: User preference information, food information, emotional data

[1238] Output: Search results as a list of wine candidates (internal data storage)

[1239] Specific behavior:

[1240] The server executes "SELECT FROM wines WHERE food_pairing = 'Grilled Chicken' AND price BETWEEN 2000 AND 3000" and temporarily stores the wine list obtained from the database.

[1241] Step 5: Consider sentiment data and optimize

[1242] Specific description:

[1243] The server selects the most suitable wine from the temporarily stored wine information, taking into account the user's emotional data. This process uses an emotion analysis engine.

[1244] Input: wine candidate list, sentiment data

[1245] Output: Best wine information (converted to JSON format)

[1246] Specific behavior:

[1247] The server uses a sentiment analysis engine to select the "best wine for stress relief" by taking into account the emotional data. The selected wine information is converted into JSON format.

[1248] Step 6: Submit and display wine information

[1249] Specific description:

[1250] The server sends information about the selected wine to the terminal as an HTTP response, and the terminal displays the received information on the user interface and provides it to the user.

[1251] Input: Best wine information (JSON format)

[1252] Output: Wine information displayed in the user interface

[1253] Specific behavior:

[1254] The server returns the selected wine information to the terminal along with a "200 OK" status, and the terminal displays details such as the brand, price, and comments on the user interface.

[1255] Through the above processing steps, it becomes possible to select and suggest the most suitable wine according to the user's emotional state.

[1256] (Application example 2)

[1257] 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."

[1258] Conventional wine selection systems recommend wines based on user preferences and food information, but because they do not consider the user's emotions, they are unable to provide personalized recommendations tailored to each user's emotional state. Furthermore, the information related to the recommended wines is limited, resulting in a lack of content that helps users deepen their understanding of wines. This makes it difficult to increase user satisfaction.

[1259] 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.

[1260] In this invention, the server includes a user input means, a means for receiving preference information and food information, a means for recognizing the user's emotions using an emotion engine, a means for searching and narrowing down suitable wines from a database and generating wine information including related content, and a means for presenting the wine information and related content to the user. This enables personalized recommendations by selecting the optimal wine according to the user's emotional state and providing a variety of content such as related video links.

[1261] "User preference information" is information that represents an individual user's tastes and preferences regarding wine.

[1262] "Cuisine information" is information about specific cuisine that the user would like to pair with wine.

[1263] The "means for receiving" refers to a method by which the system receives the preference information and dish information input by the user.

[1264] The "emotion engine" is a component that recognizes a user's emotions through facial expression, voice, or text analysis and generates valid emotion data.

[1265] The "search and narrowing down means" refers to a method of searching for the most suitable wine from a database based on the received preference information, food information, and emotional data, and ultimately narrowing down the candidates.

[1266] A "database" is a recording medium that includes information such as wine types, prices, and food compatibility information.

[1267] The "related content distribution service" is a service that provides users with videos and explanatory information related to the selected wine.

[1268] A "user interface" is an interactive means for users to input information, and is displayed on the screen of a computer or smartphone.

[1269] "Wine information" is detailed data on wine types, prices, food pairings, etc.

[1270] "Video link" means a hyperlink for accessing video content on the Internet.

[1271] This invention is a system that selects the optimal wine based on the user's preference information, food information, and user emotion data, and provides the user with related video content. This system is implemented as an application that runs primarily on a mobile device such as a smartphone. A specific implementation of this system is described below.

[1272] First, the user installs and launches the smartphone application. The application provides a user interface for inputting their wine preferences, food information, and price range. The user inputs the information using a keyboard or touch screen. Furthermore, facial expression recognition and voice analysis are performed to recognize the user's current emotional state using an emotion engine. This generates the user's emotional data.

[1273] The device sends the input preference information, food information, and emotion data to the server. The data is usually packaged in JSON format and sent using an HTTP request. The server receives the data and analyzes the input information. Based on the analyzed data, it searches for an appropriate wine from a database that contains information on the type of wine, price, and food pairing.

[1274] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the user's emotional data. This narrowing down process takes into account the price range and cuisine information entered by the user, as well as the recognized emotional data. For example, if the user is feeling stressed, the server will recommend wines that are good for relieving stress.

[1275] Next, the server sends recommendation information to the device, including information about the selected wines and related video content (e.g., videos about the wine's production process and reviews). The device receives this information and displays detailed information about the wines and video links on the user interface. This allows the user to enjoy not only the information about the selected wines but also the video content related to those wines at the same time.

[1276] Examples of specific hardware and software used

[1277] Hardware: Smartphones, servers

[1278] Software: Python program, Emotion Engine module, Database module

[1279] Examples of concrete examples and prompts

[1280] For example, if a user requests a wine that "pairs well with steak" and the emotion engine recognizes that the user's current emotion is "relaxed," the system will recommend a "red wine that pairs well with steak to enhance relaxation." It will also provide a video showing the wine's production process and a professional review.

[1281] Example prompt sentence:

[1282] User: "I want to know what red wine goes well with steak."

[1283] Emotion Engine: "The user is currently relaxed"

[1284] Result: "The following red wines pair well with steak for a relaxing experience... [Wine information and video link]"

[1285] This process allows users to simultaneously enjoy both personalized wine selections and related video content.

[1286] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1287] Step 1:

[1288] A user launches a smartphone application and inputs their wine preferences, food information, and price range using a keyboard, touchscreen, or voice input, forming the user's input data.

[1289] Step 2:

[1290] The device receives the information entered by the user and converts it into JSON format. It then uses an emotion engine to perform facial expression recognition and voice analysis to obtain the user's emotional data. The emotion engine uses a generative AI model to analyze the user's emotions. The input is the user's emotional state (text, voice, and facial expression data), and the output is emotional data (e.g., relaxed, stressed, etc.).

[1291] Step 3:

[1292] The device packages the user's preference information, cooking information, and emotion data and sends them to the server using an HTTP request. The input is data converted to JSON format, and the output is the result of the transmission to the server.

[1293] Step 4:

[1294] The server analyzes the received information and extracts the user's preference information, food information, and emotion data. The input is JSON data, and the output is the analyzed information (preference information, food information, emotion data).

[1295] Step 5:

[1296] The server searches a database for suitable wines based on the analyzed information. The database contains information on wine types, prices, and food pairings. The server performs a database search based on the entered user information and emotion data. The input is the analysis results data, and the output is a list of search results wines.

[1297] Step 6:

[1298] The server narrows down the search results to wines that best fit the user's preferences. This narrowing down takes into account the price range, food information, and emotional data specified by the user. The input is a list of wines from the search results, and the output is the narrowed down wine information.

[1299] Step 7:

[1300] The server generates recommendation information including the narrowed-down wine information and related video content. The server retrieves video links and other information from the database of related content distribution services and provides them to the user. The input is the narrowed-down wine information, and the output is recommendation information including the wine information and related video links.

[1301] Step 8:

[1302] The server sends the generated recommendation information to the terminal. The terminal displays the received data on the user interface, allowing the user to view detailed information about the selected wine and related video content. The input is the recommendation information data, and the output is the display on the user interface.

[1303] 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.

[1304] 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.

[1305] 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.

[1306] [Fourth embodiment]

[1307] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1308] 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.

[1309] 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).

[1310] 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.

[1311] 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.

[1312] 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).

[1313] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for 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.

[1314] 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.

[1315] 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.

[1316] 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.

[1317] 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.

[1318] 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.

[1319] 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."

[1320] This invention is a system that selects and recommends optimal wines based on user input. This system involves a series of processes: inputting and receiving user preference information and food information, searching and narrowing down appropriate wines from a database based on that information, and presenting that information to the user.

[1321] System configuration

[1322] 1. User Input Method

[1323] The user uses the device to input their preferred wine, desired price range, and food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[1324] 2. Receipt of information

[1325] The terminal sends the input information to the server, which receives and analyzes the information.

[1326] 3. Database Matching

[1327] The server searches for an appropriate wine from a database based on the user's preference and food information. The database contains information such as the type of wine, price, and food compatibility.

[1328] 4. Wine selection and narrowing down

[1329] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the price range and food pairings specified by the user.

[1330] 5. Presentation of Information

[1331] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[1332] Specific examples

[1333] Example 1: Choosing a wine when you don't know your preferences

[1334] 1. The user types "I don't know what my favorite wine is" into the terminal.

[1335] 2. The server suggests basic information about the wine and the type of wine you would like to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[1336] 3. The user answers the question.

[1337] 4. The server recommends several wines based on the answers to the questions and sends this information to the terminal.

[1338] 5. The terminal displays a list of recommended wines to the user.

[1339] Example 2: Choosing a wine to pair with a dish

[1340] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what wine goes well with it."

[1341] 2. The server searches the database for wines that go well with grilled chicken.

[1342] 3. The server considers the customer's desired price range and selects a wine that is reasonably priced and goes well with the grilled chicken, and sends the information to the terminal.

[1343] 4. The device displays information about the recommended wine to the user.

[1344] Example 3: Looking for affordable wines

[1345] 1. The user types into the terminal, "Please tell me about some reasonably priced wines."

[1346] 2. The server searches the database for wines with a set price limit.

[1347] 3. The server will recommend several wines that fit the desired price range and send this information to the terminal.

[1348] 4. The device displays information about the recommended wine to the user.

[1349] In this way, the present invention allows users to easily select wines that match their preferences and the food they are eating. The various components of the system work together to increase user satisfaction and support the selection of the most suitable wine.

[1350] The processing flow will be explained below.

[1351] Step 1:

[1352] The user uses the user interface of the terminal to input information such as the preferred wine, budget, and dish information. For example, the user might input, "I like red wine, my budget is within 2000 yen, and today's dish is grilled chicken."

[1353] Step 2:

[1354] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[1355] Step 3:

[1356] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[1357] Step 4:

[1358] The server searches the database for wines that go well with the food based on the extracted food information. For example, it searches for wines that go well with "grilled chicken" and stores the results in a temporary list.

[1359] Step 5:

[1360] The server filters the temporary list to wines that match the user's taste and budget, for example, red wines under 2000 yen.

[1361] Step 6:

[1362] The server selects the best wines from the narrowed down list, based on the criteria that best meet the user's tastes and pair with the food.

[1363] Step 7:

[1364] The server compiles detailed information about the selected wine (such as name, price, taste, and food compatibility) and sends it to the terminal in JSON format.

[1365] Step 8:

[1366] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[1367] Step 9:

[1368] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[1369] This process allows users to easily find the wine that best suits their needs.

[1370] Example 1

[1371] 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."

[1372] The problem with existing beverage selection systems is that it is difficult for users to easily find a beverage that matches their preferences or the food they are eating. In particular, there is a need for a system that can efficiently receive information about a user's preferences and food, and select an appropriate beverage.

[1373] 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.

[1374] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, means for searching and narrowing down suitable beverages from a database based on the preference information and dish information, and means for presenting information on the narrowed-down beverages to the user, thereby enabling the user to easily find a beverage that matches their preference and dish.

[1375] "User preference information" is information that indicates the user's preferences and conditions for drinks.

[1376] "Food information" is information about the type and content of food that the user wants to enjoy with the drink.

[1377] A "digital interface" is any electronic interface or device used by a user to input information, including keyboards, touchscreens, and voice input.

[1378] "Means for receiving" refers to the function by which the server receives and analyzes the user's preference information and cooking information sent from the terminal.

[1379] A "database" is a digital data storage device that systematically organizes and stores a large amount of information and allows for searching and inquiry.

[1380] The "search and narrowing down means" is a function that extracts suitable information from a database based on the user's preference information and cooking information, and then selects the most suitable information from that database.

[1381] The "presentation means" is a function that displays and provides the narrowed down information in a format that is easy for the user to understand.

[1382] This invention is a system that selects and suggests optimal beverages based on user input. This system involves a series of processes: inputting and receiving user preference and food information, searching and narrowing down appropriate beverages from a database based on that information, and presenting that information to the user.

[1383] The elements of the system are configured as follows:

[1384] Hardware and Software Configuration

[1385] Hardware

[1386] Devices: Personal computers (PCs), smartphones, tablets, etc.

[1387] Server: A high-performance server (e.g., Apache HTTP Server running on a Linux OS)

[1388] software

[1389] Database: MySQL

[1390] User interface: Web browser (e.g. Google Chrome) using HTML / CSS and JavaScript

[1391] Program processing

[1392] User Input Phase

[1393] 1. Using a terminal, a user enters their preferred beverage, desired price range, and meal information on a login screen or homepage. Input can be done via keyboard, touchscreen, voice input, or other methods.

[1394] Information Reception Phase

[1395] 2. The device sends the information entered by the user to the server. The data is sent via an HTTP POST request, often in JSON format.

[1396] Information analysis phase

[1397] 3. The server receives and analyzes the information sent from the device. This analysis is performed using server-side scripts such as Python or Node.js.

[1398] Database lookup phase

[1399] 4. The server searches the database based on the parsed user information using an SQL query, such as "SELECT FROM drinks WHERE type="red wine" AND price <= 1500".

[1400] Refinement Phase

[1401] 5. The server narrows down the search results based on the user's criteria, using a Python library such as Pandas to filter and select the appropriate beverage.

[1402] Information transmission phase

[1403] 6. The server sends the selected drink information to the terminal in JSON format using an HTTP response.

[1404] Information display phase

[1405] 7. The device displays the received beverage information to the user using HTML / CSS and JavaScript in a list format on the screen.

[1406] Examples of specific examples and prompts

[1407] Example 1: Selecting a drink when preferences are unknown

[1408] 1. The user enters "I don't know what my favorite drink is" into the terminal.

[1409] 2. The server suggests basic information about the drink and the type of drink you want to try, and asks the user a few questions (e.g., "Do you prefer red or white wine?").

[1410] 3. The user answers the question.

[1411] 4. The server recommends some drinks based on the answers to the questions and sends the information to the terminal.

[1412] 5. The terminal displays a list of recommended drinks to the user.

[1413] Examples of prompts:

[1414] If a user types, "I don't know what my favorite drink is," ask them, "Do you prefer red or white wine?"

[1415] Example 2: Choosing a drink to go with your meal

[1416] 1. The user types into the terminal, "Today's menu is grilled chicken, and I would like to know what drink goes well with it."

[1417] 2. The server searches the database for drinks that go well with grilled chicken.

[1418] 3. The server considers the customer's desired price range, selects a drink that goes well with the grilled chicken and is reasonably priced, and sends the information to the terminal.

[1419] 4. The terminal displays information about the recommended beverage to the user.

[1420] Examples of prompts:

[1421] For a user who enters "Today's menu is grilled chicken, and I would like to know what drinks go well with the dish," search for drinks that go well with grilled chicken and recommend them taking into account their desired price range.

[1422] Example 3: Looking for affordable drinks

[1423] 1. The user types into the terminal, "Tell me about some reasonably priced drinks."

[1424] 2. The server searches the database for drinks with a set price limit.

[1425] 3. The server recommends several drinks that fit the desired price range and sends this information to the terminal.

[1426] 4. The terminal displays information about the recommended beverage to the user.

[1427] Examples of prompts:

[1428] If a user types in "Tell me some reasonably priced drinks," the app will recommend some drinks that fit within the specified price range.

[1429] In this way, through specific processing steps and operations, the user can easily select a beverage that meets their preferences and requirements.

[1430] The flow of the identification process in the first embodiment will be described with reference to FIG.

[1431] Step 1:

[1432] Users use their devices to input their preferred beverages, desired price range, and food information from a login screen or homepage. This input can be done using a keyboard, touch screen, or voice input. Information input by users may include, for example, "red wine," "budget under 1,500 yen," and "drinks that go well with chicken." This information is collected as input data.

[1433] Step 2:

[1434] The device sends the information entered by the user to the server using an HTTP POST request, with the data format being JSON. For example, the data sent will be in the following format:

[1435] json

[1436] {

[1437] "type": "red wine",

[1438] "price": 1500,

[1439] "pairing": "chicken"

[1440] }

[1441] The terminal then formats the entered data appropriately and sends it to the server.

[1442] Step 3:

[1443] The server receives and analyzes the information sent from the terminal. The received data is in JSON format, and it is analyzed to extract each piece of information. For example, the received JSON data is analyzed to extract the type, price, and pairing fields. This analysis process is generally performed using Python or Node.js. The analysis result is as follows:

[1444] Type of drink: Red wine

[1445] Price range: Under 1500 yen

[1446] Food Tip: Pair with chicken

[1447] Step 4:

[1448] The server searches the database based on the parsed user information. Here, it uses an SQL query to search the database for drinks that match the criteria. For example, the following SQL query is executed:

[1449] sql

[1450] SELECT FROM drinks WHERE type='red wine' AND price <= 1500 AND pairing='chicken'

[1451] By executing this query, information on beverages that match the criteria is retrieved from the database, and the retrieved data is saved in list format.

[1452] Step 5:

[1453] The server narrows down the search results based on the user's criteria. Here, data filtering is performed using Python's Pandas library, etc. Specifically, from the multiple beverage information obtained, the beverage that best meets the user's criteria is selected. For example, the one beverage that best meets the criteria of "budget under 1500 yen" and "goes well with chicken" is selected. The narrowed down data looks like this:

[1454] json

[1455] {

[1456] "name": "Chateau Mouton Rothschild",

[1457] "price": 1400,

[1458] "pairing": "chicken"

[1459] }

[1460] This data is used to select the optimal beverage.

[1461] Step 6:

[1462] The server sends the selected drink information to the terminal in JSON format. This is done using an HTTP response. Specifically, a JSON object containing the selected drink information is sent to the terminal. This JSON object has the following format:

[1463] json

[1464] {

[1465] "name": "Chateau Mouton Rothschild",

[1466] "price": 1400,

[1467] "pairing": "chicken"

[1468] }

[1469] Step 7:

[1470] The device displays the received beverage information to the user. HTML / CSS and JavaScript are used for display. Specifically, the device displays a list of "recommended beverages" on the screen and provides an interface for the user to select. For example, the following display may be displayed:

[1471] Recommended drinks:

[1472] 1. Chateau Mouton Rothschild - Price: 1,400 yen - Goes well with chicken

[1473] In this way, at each processing step, input data is received, analyzed, searched through a database, narrowed down, and finally the information is presented to the user, allowing the user to easily select a beverage that suits their preferences and conditions.

[1474] (Application example 1)

[1475] 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."

[1476] Conventional wine selection systems select appropriate wines based on information entered by users into a terminal, but these systems lack user convenience and are time-consuming, especially for busy consumers and users who are not familiar with wine.In addition, the methods for presenting information about the selected wines are limited, which does not sufficiently stimulate users' interest or desire to purchase.

[1477] 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.

[1478] In this invention, the server includes means for inputting user preference information and dish information, means for receiving the user preference information and dish information, and means for searching and narrowing down suitable beverages from a database based on the preference information and dish information. This allows the user to easily input information using voice input or touch gestures, the cloud server performs analysis in real time, and the user can intuitively check beverage information using a wearable display device.

[1479] "User preference information" refers to information about individual preferences such as the types and characteristics of beverages preferred by the user, taste trends, and past drinking experiences.

[1480] "Food information" refers to information such as the type, cooking method, and seasoning of the food that the user plans to enjoy with the drink selected by the user.

[1481] A "database" is an information system that systematically stores information such as types of beverages, their characteristics, prices, and compatibility with food.

[1482] "Search and filtering means" refers to the algorithms and processes used to identify matching beverages from the database using user input.

[1483] "Presenting means" refers to technology or devices for visually or audibly displaying or notifying the user of appropriate beverage information.

[1484] A "cloud server" is a server infrastructure that is distributed across the Internet and is capable of storing and processing information.

[1485] A "wearable display device" refers to an information display device that can be worn by a user on the body, and specifically refers to smart glasses, head-mounted displays, etc.

[1486] "Voice input" refers to the process or technique used to convert a user's speech into text data.

[1487] "Touch gestures" are interaction methods that allow users to input information using a touch screen or gesture recognizer.

[1488] In one embodiment of the present invention, the system effectively collects user preference information and cooking information, and then selects and presents the most suitable beverage based on the information.

[1489] First, a user puts on a wearable display device such as smart glasses. The user then uses voice input or touch gestures to input information such as their preferred drink, budget, and cooking information, allowing the user to input information intuitively and quickly.

[1490] The input information is then converted into text data by the smart glasses' internal processing unit and sent over the internet to a cloud server, which uses a generative AI model to analyze the user's input and search for the appropriate beverage from a database containing detailed information such as the type of beverage, price, and food pairings.

[1491] The cloud server selects several optimal drinks based on the user's preferences, food information, budget, etc. At this time, the generative AI model generates a prompt sentence based on the user's input, which is used as a query when searching the database.

[1492] The information on the selected beverages is displayed in real time on the smart glasses display. Users can scroll through the candidates using their gaze or gestures to check detailed information, allowing them to efficiently and easily select the perfect beverage.

[1493] Detailed function description

[1494] 1. Voice input and touch gestures:

[1495] The smart glasses' microphone allows users to speak into the glasses to input information, and the glasses' touch panel also allows users to input information using touch gestures.

[1496] 2. Cloud integration:

[1497] The input data is sent via the smart glasses' processing unit to a cloud server, which then analyzes the data using natural language processing technology.

[1498] 3. Generative AI Model:

[1499] The cloud server uses a generative AI model to generate prompts based on the user's input data, which are then used for database searches.

[1500] 4. Database search and filtering:

[1501] The cloud server searches for suitable drinks in a database that includes details such as the type of drink, its price, and whether it pairs with food, and then narrows down the drinks that match the user's preferences.

[1502] 5. Display:

[1503] The information on the selected drinks is displayed on the smart glasses' display, and the user can use their gaze or touch gestures to check the candidates and view detailed information.

[1504] Specific examples

[1505] For example, if a user says, "Tell me about an affordable red wine," the cloud server will analyze this and narrow down the selection from the database. The results will be displayed on the smart glasses' display, allowing the user to easily choose the perfect red wine.

[1506] An example of a prompt might be:

[1507] "The user uses their voice to input a red wine, under 2,000 yen, that goes well with grilled chicken. The cloud server analyzes the input, searches the database for a suitable red wine, and displays it on the smart glasses."

[1508] In this way, the system helps the user to easily select the appropriate beverage, which is very convenient, especially for busy consumers and beginners.

[1509] The flow of the specific processing in the application example 1 will be described with reference to FIG.

[1510] Step 1:

[1511] User Input

[1512] The user puts on the smart glasses and inputs their preferred drink and food information using voice input or touch gestures. The input data includes the type of drink (e.g., red wine), budget (e.g., under 2,000 yen), and food (e.g., grilled chicken). This inputs the user's preferences and requests into the device as initial data.

[1513] Input: Favorite drink, budget, food information

[1514] Output: Text format of input data

[1515] Step 2:

[1516] Data transmission

[1517] The device converts the user's input data into text format and sends it to the cloud server. The data sent to the cloud server is JSON format data that includes the user ID, type of drink, budget, and dish information.

[1518] Input: Text input data

[1519] Output: JSON formatted transmission data

[1520] Step 3:

[1521] Data reception and analysis

[1522] The cloud server receives the data sent from the device and analyzes it using a generative AI model. The cloud server extracts the user's preferences and requests from the received data and generates a prompt. Based on the generated prompt, a query to the beverage database is constructed.

[1523] Input: JSON format data to be sent

[1524] Output: Analysis data, prompt statements, database queries

[1525] Step 4:

[1526] Database search

[1527] The cloud server searches for an appropriate drink from the drink database based on the generated prompt. The search criteria include the type of drink, price, and food compatibility information. The search results then list drinks that meet the user's requirements.

[1528] Input: Database query

[1529] Output: A list of drinks from the search results

[1530] Step 5:

[1531] Narrow down

[1532] The cloud server narrows down the database search results to the beverages that best fit the user's input criteria. The filtering criteria are applied based on the user's preferences and budget. The optimal beverage is determined, and its details are prepared.

[1533] Input: Search results list of drinks

[1534] Output: Detailed information about the selected beverages

[1535] Step 6:

[1536] Information presentation

[1537] The cloud server sends detailed information about the selected beverages to the device, including the name, description, price, image, and food pairing information. The device receives this information and displays it in real time on the smart glasses display.

[1538] Input: Detailed information of the selected beverage

[1539] Output: Drink information displayed on the smart glasses display

[1540] Step 7:

[1541] User confirmation and selection

[1542] The user can check the beverage information displayed on the smart glasses screen using their eyes or touch gestures to select the most suitable beverage. After selection, the smart glasses can also search again or provide additional information as needed.

[1543] Input: Drink information displayed on the screen

[1544] Output: User's selected drink information

[1545] Through the above steps, the user can efficiently and easily select the optimal beverage.

[1546] 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.

[1547] This invention is a system that selects and recommends the most suitable wine by combining information on the user's preferences and cuisine with an emotion engine that recognizes the user's emotions. This system includes a series of processes that receive information input by the user, search and narrow down the appropriate wines from a database based on that information, and finally present the selected wine information to the user.

[1548] System configuration

[1549] 1. User Input Method

[1550] The user uses the terminal to input their preferred wine, desired price range, food information, etc. This input is done through an interface such as a keyboard, touch screen, or voice input.

[1551] 2. Receipt of information

[1552] The terminal sends the input information to the server, which receives and analyzes the information.

[1553] 3. Emotion Engine

[1554] The emotion engine is designed to recognize user emotions. It can analyze the user's facial expressions, voice, or text input to generate valid emotion data.

[1555] 4. Database Matching

[1556] The server searches for an appropriate wine from a database containing information on the type of wine, price, and food pairings based on the user's preference information, food information, and emotion data.

[1557] 5. Wine selection and narrowing down

[1558] The server narrows down the search results to the wine that best suits the user's preferences, taking into account the price range and food pairings specified by the user, as well as emotional data.

[1559] 6. Presentation of Information

[1560] The server sends information about the selected wine to the terminal, which receives the information and displays it to the user.

[1561] Specific examples

[1562] Example 1: Wine selection using an emotion engine

[1563] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal, and then uses the emotion engine to check their current emotional state (e.g., stressed, happy, etc.).

[1564] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1565] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[1566] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[1567] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[1568] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1569] Example 2: Suggesting wines suitable for relieving stress

[1570] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[1571] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1572] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[1573] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[1574] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[1575] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1576] In this way, by combining emotion engines, it becomes possible to select wines according to the user's emotional state, enabling more personalized recommendations. By linking together the various components of the system, it is possible to further increase user satisfaction.

[1577] The processing flow will be explained below.

[1578] Step 1:

[1579] The user uses the user interface of the terminal to input information about the wine they like, their budget, and the food they are eating. For example, they might input, "I like red wine," "My budget is under 2000 yen," and "Today's food is grilled chicken."

[1580] Step 2:

[1581] The device converts the information entered by the user into JSON format and sends it to the server using an HTTP request, while also validating the input information to ensure it is in the correct format.

[1582] Step 3:

[1583] The server parses the received JSON data and extracts each item (preferred wine, budget, food information), and stores the parsed results in an internal data structure.

[1584] Step 4:

[1585] The device records video and audio to capture the user's facial expressions and voice, providing the basic data for the emotion engine to operate.

[1586] Step 5:

[1587] The emotion engine analyzes captured video and audio data to identify the user's current emotional state, using facial recognition and voice analysis algorithms to quantify the level of stress or joy the user is experiencing.

[1588] Step 6:

[1589] The device converts the emotion data obtained from the emotion engine back into JSON format and sends it to the server using an HTTP request.

[1590] Step 7:

[1591] The server combines wine preferences, budget, food information, and emotional data to search for a suitable wine from its database, for example, "a red wine that pairs well with grilled chicken and is effective at relieving stress."

[1592] Step 8:

[1593] The server then narrows down the search results to wines that best fit the user's criteria, taking into account the price range and food pairings specified by the user, as well as emotional data.

[1594] Step 9:

[1595] The server compiles detailed information about the selected wines (such as name, price, taste, compatibility with food, and information on the effect on emotional state) and sends it to the terminal in JSON format.

[1596] Step 10:

[1597] The terminal parses the received wine information and displays it in a user interface, allowing the user to select a wine based on this information.

[1598] Step 11:

[1599] The user can select a wine from the displayed list and check its detailed information. If the user wishes to search again with different criteria, the user can enter new information.

[1600] This process flow allows users to easily find wines that match their preferences and emotional state, enabling a more personalized selection.

[1601] Example 2

[1602] 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."

[1603] Conventional wine selection systems suggest appropriate wines based on user preferences and food information, but they are unable to take into account the user's emotional state. As a result, personalized wine selections based on the user's emotional state cannot be made, resulting in low satisfaction.

[1604] 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 a means for inputting user preference information and food information via a terminal, a means for transmitting the user preference information and food information to the server, a means for searching and narrowing down suitable wines from a database based on the preference information and food information, a means for using an emotion analysis engine to consider the user's emotional state when searching and narrowing down the wines, and a means for presenting information on the narrowed down wines including the emotion data to the user. This enables personalized wine selection according to the user's emotional state.

[1605] "User preference information" is information about the type, flavor, price range, etc. of wine that the user prefers.

[1606] "Cuisine information" is information about the cuisine that the user wants to pair with the drink. Specific examples include the type of main dish and its seasoning.

[1607] A "terminal" is an electronic device, such as a computer, smartphone, or tablet, that a user uses to enter information.

[1608] A "server" is a central processing unit that receives requests from users and executes the processing.

[1609] A "database" is an information storage system that stores various information about wine.

[1610] An "emotion analysis engine" is software or hardware that analyzes a user's facial expression, voice, or text input to determine the user's emotional state.

[1611] A "graphical user interface (GUI)" is an interface that allows a user to visually input or confirm information.

[1612] "Wine information" refers to detailed information about the selected wine, including the brand, price, characteristics, and description of pairings.

[1613] "Emotion data" is information that indicates the emotional state of the user, generated by the emotion analysis engine.

[1614] The system of the present invention is designed to select and recommend the most suitable wine based on the user's preferences, food information, and emotional state. The system includes multiple hardware and software components.

[1615] User Input Method

[1616] Users input their preferred wine, desired price range, and food information via the device. They can then have their current emotional state analyzed using the emotion engine. Input methods include keyboard, touch screen, and voice input. For example, if a user voice-inputs into the device, "What wine goes well with grilled chicken?", the emotion analysis function can analyze the user's state as "I'm feeling stressed."

[1617] Receiving and Sending Information

[1618] The device combines the information entered by the user with data from the emotion engine to generate JSON format data, which it then sends to the server using an HTTP request. The device also performs error checking to ensure the data was sent correctly.

[1619] Data analysis and searching

[1620] The server receives the data sent from the device and analyzes the user's preference information, food information, and emotion data. Based on this information, it searches for relevant wine information from a wine database, which stores information on wine types, prices, and food pairings.

[1621] Using a sentiment analysis engine

[1622] When searching and filtering wines, the server uses an emotion analysis engine that analyzes the user's facial expressions, voice, and text input to determine the user's emotional state, allowing it to select the wine that best suits the user's current emotional state.

[1623] Narrowing down and presenting information

[1624] The server narrows down the most suitable wines by taking into account the user's preference information, food information, and emotional data. The selected wine information is converted into JSON format and sent to the device. The device receives the wine information sent from the server and displays it on the user interface. The user can confirm the presented wine information.

[1625] Specific examples

[1626] Example 1: Wine selection using an emotion engine

[1627] 1. The user types "I want to know what wine goes well with grilled chicken" into the terminal and then uses the emotion engine to check their current emotional state (e.g., feeling stressed).

[1628] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1629] 3. The server analyzes the user's preference information, food information, and emotional data and extracts each item.

[1630] 4. Based on the extracted food information and emotional data, the server searches the database for a wine that goes well with "grilled chicken" and is appropriate for the current emotional state.

[1631] 5. The server considers the user's emotional state, narrows down the selected wines to the most suitable one, and sends this information to the terminal.

[1632] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1633] Example 2: Suggesting wines suitable for relieving stress

[1634] 1. The user types "I want a red wine that's not too expensive" into the terminal and then uses the emotion engine to check their current emotional state (e.g., stress).

[1635] 2. The device converts the information and emotion data entered by the user into JSON format and sends it to the server using an HTTP request.

[1636] 3. The server analyzes the user's preference information and emotional data and extracts each item.

[1637] 4. Based on the extracted preference information and emotional data, the server searches the database for "affordable red wines that are good for relieving stress."

[1638] 5. The server narrows down the most suitable wines and sends that information to the terminal.

[1639] 6. The terminal displays the received wine information on the user interface and provides it to the user.

[1640] In this way, by combining emotion engines, it becomes possible to select wines that suit the user's emotional state. By having each of the system's means work in tandem, user satisfaction can be further increased.

[1641] The flow of the identification process in the second embodiment will be described with reference to FIG.

[1642] Step 1: Enter your user information

[1643] Specific description:

[1644] The user inputs information about their preferred wine (e.g., red wine), desired price range (e.g., 2,000-3,000 yen), and food information (e.g., grilled chicken) into the device. The emotion engine is then activated to analyze the user's current emotional state (e.g., feeling stressed).

[1645] Input: User preference information, food information, emotional state

[1646] Output: Integrated user information and sentiment data (converted to JSON format)

[1647] Specific behavior:

[1648] The user speaks into the device, asking, "What wine goes well with grilled chicken?" and the device uses the emotion analysis function to determine that the user is feeling stressed. The device converts the voice data into text and generates JSON data along with the emotion analysis results.

[1649] Step 2: Submit your information

[1650] Specific description:

[1651] The device sends the generated JSON format data to the server using an HTTP request, and performs an error check to determine whether the data was sent successfully.

[1652] Input: JSON format user information and emotion data

[1653] Output: HTTP request sent successfully to the server

[1654] Specific behavior:

[1655] The device sends a "POST / wine-recommendation HTTP / 1.1" request and receives a status code of 200 (OK) from the server, confirming that the transmission was successful.

[1656] Step 3: Receiving and analyzing information

[1657] Specific description:

[1658] The server receives the HTTP request sent from the device and parses the JSON data to extract the user's preference information, cooking information, and emotion data.

[1659] Input: JSON data sent in the HTTP request

[1660] Output: Extracted user preference information, food information, and emotion data (converted into internal data structure)

[1661] Specific behavior:

[1662] The server retrieves the JSON data from the request body, parses fields such as "user_preference," "food_info," and "emotion_data," and extracts each item.

[1663] Step 4: Database Search

[1664] Specific description:

[1665] The server queries the wine database based on the extracted user preference information, food information, and emotion data to search for related wine information.

[1666] Input: User preference information, food information, emotional data

[1667] Output: Search results as a list of wine candidates (internal data storage)

[1668] Specific behavior:

[1669] The server executes "SELECT FROM wines WHERE food_pairing = 'Grilled Chicken' AND price BETWEEN 2000 AND 3000" and temporarily stores the wine list obtained from the database.

[1670] Step 5: Consider sentiment data and optimize

[1671] Specific description:

[1672] The server selects the most suitable wine from the temporarily stored wine information, taking into account the user's emotional data. This process uses an emotion analysis engine.

[1673] Input: wine candidate list, sentiment data

[1674] Output: Best wine information (converted to JSON format)

[1675] Specific behavior:

[1676] The server uses a sentiment analysis engine to select the "best wine for stress relief" by taking into account the emotional data. The selected wine information is converted into JSON format.

[1677] Step 6: Submit and display wine information

[1678] Specific description:

[1679] The server sends information about the selected wine to the terminal as an HTTP response, and the terminal displays the received information on the user interface and provides it to the user.

[1680] Input: Best wine information (JSON format)

[1681] Output: Wine information displayed in the user interface

[1682] Specific behavior:

[1683] The server returns the selected wine information to the terminal along with a "200 OK" status, and the terminal displays details such as the brand, price, and comments on the user interface.

[1684] Through the above processing steps, it becomes possible to select and suggest the most suitable wine according to the user's emotional state.

[1685] (Application example 2)

[1686] 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."

[1687] Conventional wine selection systems recommend wines based on user preferences and food information, but because they do not consider the user's emotions, they are unable to provide personalized recommendations tailored to each user's emotional state. Furthermore, the information related to the recommended wines is limited, resulting in a lack of content that helps users deepen their understanding of wines. This makes it difficult to increase user satisfaction.

[1688] 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.

[1689] In this invention, the server includes a user input means, a means for receiving preference information and food information, a means for recognizing the user's emotions using an emotion engine, a means for searching and narrowing down suitable wines from a database and generating wine information including related content, and a means for presenting the wine information and related content to the user. This enables personalized recommendations by selecting the optimal wine according to the user's emotional state and providing a variety of content such as related video links.

[1690] "User preference information" is information that represents an individual user's tastes and preferences regarding wine.

[1691] "Cuisine information" is information about specific cuisine that the user would like to pair with wine.

[1692] The "means for receiving" refers to a method by which the system receives the preference information and dish information input by the user.

[1693] The "emotion engine" is a component that recognizes a user's emotions through facial expression, voice, or text analysis and generates valid emotion data.

[1694] The "search and narrowing down means" refers to a method of searching for the most suitable wine from a database based on the received preference information, food information, and emotional data, and ultimately narrowing down the candidates.

[1695] A "database" is a recording medium that includes information such as wine types, prices, and food compatibility information.

[1696] The "related content distribution service" is a service that provides users with videos and explanatory information related to the selected wine.

[1697] A "user interface" is an interactive means for users to input information, and is displayed on the screen of a computer or smartphone.

[1698] "Wine information" is detailed data on wine types, prices, food pairings, etc.

[1699] "Video link" means a hyperlink for accessing video content on the Internet.

[1700] This invention is a system that selects the optimal wine based on the user's preference information, food information, and user emotion data, and provides the user with related video content. This system is implemented as an application that runs primarily on a mobile device such as a smartphone. A specific implementation of this system is described below.

[1701] First, the user installs and launches the smartphone application. The application provides a user interface for inputting their wine preferences, food information, and price range. The user inputs the information using a keyboard or touch screen. Furthermore, facial expression recognition and voice analysis are performed to recognize the user's current emotional state using an emotion engine. This generates the user's emotional data.

[1702] The device sends the input preference information, food information, and emotion data to the server. The data is usually packaged in JSON format and sent using an HTTP request. The server receives the data and analyzes the input information. Based on the analyzed data, it searches for an appropriate wine from a database that contains information on the type of wine, price, and food pairing.

[1703] The server then narrows down the search results to the wines that best fit the user's preferences, taking into account the user's emotional data. This narrowing down process takes into account the price range and cuisine information entered by the user, as well as the recognized emotional data. For example, if the user is feeling stressed, the server will recommend wines that are good for relieving stress.

[1704] Next, the server sends recommendation information to the device, including information about the selected wines and related video content (e.g., videos about the wine's production process and reviews). The device receives this information and displays detailed information about the wines and video links on the user interface. This allows the user to enjoy not only the information about the selected wines but also the video content related to those wines at the same time.

[1705] Examples of specific hardware and software used

[1706] Hardware: Smartphones, servers

[1707] Software: Python program, Emotion Engine module, Database module

[1708] Examples of concrete examples and prompts

[1709] For example, if a user requests a wine that "pairs well with steak" and the emotion engine recognizes that the user's current emotion is "relaxed," the system will recommend a "red wine that pairs well with steak to enhance relaxation." It will also provide a video showing the wine's production process and a professional review.

[1710] Example prompt sentence:

[1711] User: "I want to know what red wine goes well with steak."

[1712] Emotion Engine: "The user is currently relaxed"

[1713] Result: "The following red wines pair well with steak for a relaxing experience... [Wine information and video link]"

[1714] This process allows users to simultaneously enjoy both personalized wine selections and related video content.

[1715] The flow of the specific processing in the application example 2 will be described with reference to FIG.

[1716] Step 1:

[1717] A user launches a smartphone application and inputs their wine preferences, food information, and price range using a keyboard, touchscreen, or voice input, forming the user's input data.

[1718] Step 2:

[1719] The device receives the information entered by the user and converts it into JSON format. It then uses an emotion engine to perform facial expression recognition and voice analysis to obtain the user's emotional data. The emotion engine uses a generative AI model to analyze the user's emotions. The input is the user's emotional state (text, voice, and facial expression data), and the output is emotional data (e.g., relaxed, stressed, etc.).

[1720] Step 3:

[1721] The device packages the user's preference information, cooking information, and emotion data and sends them to the server using an HTTP request. The input is data converted to JSON format, and the output is the result of the transmission to the server.

[1722] Step 4:

[1723] The server analyzes the received information and extracts the user's preference information, food information, and emotion data. The input is JSON data, and the output is the analyzed information (preference information, food information, emotion data).

[1724] Step 5:

[1725] The server searches a database for suitable wines based on the analyzed information. The database contains information on wine types, prices, and food pairings. The server performs a database search based on the entered user information and emotion data. The input is the analysis results data, and the output is a list of search results wines.

[1726] Step 6:

[1727] The server narrows down the search results to wines that best fit the user's preferences. This narrowing down takes into account the price range, food information, and emotional data specified by the user. The input is a list of wines from the search results, and the output is the narrowed down wine information.

[1728] Step 7:

[1729] The server generates recommendation information including the narrowed-down wine information and related video content. The server retrieves video links and other information from the database of related content distribution services and provides them to the user. The input is the narrowed-down wine information, and the output is recommendation information including the wine information and related video links.

[1730] Step 8:

[1731] The server sends the generated recommendation information to the terminal. The terminal displays the received data on the user interface, allowing the user to view detailed information about the selected wine and related video content. The input is the recommendation information data, and the output is the display on the user interface.

[1732] 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.

[1733] 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.

[1734] 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 robot 414.

[1735] 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.

[1736] FIG. 9 is a diagram illustrating 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 actions 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.

[1737] 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.

[1738] 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).

[1739] 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.

[1740] 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."

[1741] 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.

[1742] 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).

[1743] 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.

[1744] 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.

[1745] 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.

[1746] 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.

[1747] 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.

[1748] 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.

[1749] 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.

[1750] 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.

[1751] 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.

[1752] 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.

[1753] The following is further disclosed regarding the above embodiment.

[1754] (Claim 1)

[1755] a means for allowing a user to input preference information and cooking information;

[1756] means for receiving the user's preference information and cooking information;

[1757] a means for searching and narrowing down suitable wines from a database based on the preference information and food information;

[1758] a means for presenting information about the narrowed down wines to a user;

[1759] A system including:

[1760] (Claim 2)

[1761] 2. The system according to claim 1, wherein the means for inputting the user's preference information and cooking information is means for inputting information through a user interface.

[1762] (Claim 3)

[1763] 10. The system of claim 1, wherein the narrowed down wine information includes descriptive information about suitable wines.

[1764] "Example 1"

[1765] (Claim 1)

[1766] a means for allowing a user to input preference information and cooking information;

[1767] means for receiving the user's preference information and cooking information;

[1768] a means for searching and narrowing down suitable beverages from a database based on the preference information and food information;

[1769] a means for presenting information about the narrowed-down beverages to a user;

[1770] A system including:

[1771] (Claim 2)

[1772] 2. The system according to claim 1, wherein the means for inputting the user's preference information and cooking information comprises means for inputting the information through a digital interface.

[1773] (Claim 3)

[1774] The system of claim 1 , wherein the refined beverage information includes descriptive information about suitable beverages.

[1775] "Application Example 1"

[1776] (Claim 1)

[1777] a means for allowing a user to input preference information and cooking information;

[1778] means for receiving the user's preference information and cooking information;

[1779] a means for searching and narrowing down suitable beverages from a database based on the preference information and food information;

[1780] a means for presenting information about the narrowed-down beverages to a user;

[1781] A means for inputting information by voice input and touch gestures and transmitting the information to a cloud server;

[1782] means for displaying information utilizing a user-wearable display device;

[1783] A system including:

[1784] (Claim 2)

[1785] 2. The system according to claim 1, wherein the means for inputting the user's preference information and cooking information is means for inputting information through a user interface.

[1786] (Claim 3)

[1787] The system of claim 1 , wherein the refined beverage information includes descriptive information about suitable beverages.

[1788] "Example 2: Combining Emotion Engines"

[1789] (Claim 1)

[1790] a means for allowing a user to input preference information and cooking information via a terminal;

[1791] means for transmitting the user's preference information and dish information to a server;

[1792] a means for searching and narrowing down suitable wines from a database based on the preference information and food information;

[1793] means for using a sentiment analysis engine to take into account the emotional state of a user when searching and narrowing down the wines;

[1794] a means for presenting information about the narrowed down wines, including the emotion data, to a user;

[1795] A system including:

[1796] (Claim 2)

[1797] 2. The system according to claim 1, wherein the means for inputting the user's preference information and cooking information comprises means for inputting information through a graphical user interface.

[1798] (Claim 3)

[1799] The system of claim 1 , wherein the narrowed down wine information includes emotion data and descriptive information about suitable wines.

[1800] "Application example 2 when combining emotion engines"

[1801] (Claim 1)

[1802] a means for allowing a user to input preference information and cooking information;

[1803] means for receiving the user's preference information and cooking information;

[1804] an emotion engine for recognizing a user's emotion;

[1805] a means for searching and narrowing down suitable wines from a database based on the preference information, food information, and emotion data;

[1806] a means for presenting information about the narrowed down wines and related content distribution services to the user;

[1807] A system including:

[1808] (Claim 2)

[1809] 2. The system according to claim 1, wherein the means for inputting the user's preference information, cooking information, and emotion data is means for inputting information through a user interface.

[1810] (Claim 3)

[1811] 10. The system of claim 1, wherein the refined wine information and related content includes descriptive information and video links about suitable wines. [Explanation of symbols]

[1812] 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 allowing a user to input preference information and cooking information; means for receiving the user's preference information and cooking information; a means for searching and narrowing down suitable wines from a database based on the preference information and food information; a means for presenting information about the narrowed down wines to a user; A system including:

2. 2. The system according to claim 1, wherein the means for inputting the user's preference information and cooking information is a means for inputting information through a user interface.

3. The system of claim 1 , wherein the narrowed wine information includes descriptive information about suitable wines.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A